BSc. Comp 211 - APPLICATION DEVELOPMENT
BACKGROUND AND RATIONALE
Application Development module introduces learners to application development process. Understanding of programming techniques is essential for practitioners across computer science and IT disciplines. Building on programming skills and experience with UML and object oriented languages; this module considers advanced object oriented techniques together with issues of user interface design, software re-use, software quality and a structured approach to software design and implementation. Emphasis is placed on use of modern integrated development environment to develop data-driven applications with a graphical user interface. Programming techniques will be taught following a problem solving, case-study based approach to learning programming skills.
LEARNING OUTCOMES
At the end of this module, learners should be able to:
- Know and explain the features of object-oriented programming languages, comparison and evaluation of programming languages.
- Know and apply practical knowledge of UML
- Know and apply UML knowledge to design object oriented, interactive, data-driven, applications.
- Know and apply knowledge of modern IDE with an object oriented programming language to create interactive, data-driven, applications.
- Know and demonstrate knowledge of theoretical and practical skill in the design, implementation and testing of applications making use of object oriented approaches such as classes, message passing, overloading, data connectivity, inheritance, threads and patterns.
COURSE CONTENT
UNIT 1: Features of object-oriented programming languages, comparison and evaluation of programming languages.
UNIT 2: UML in practice: class, component, activity, use case, sequence and state diagrams.
UNIT 3: Use of an Integrated Development Environment to implement UML based designs.
UNIT 4: Events, errors and exceptions, classes revisited.
UNIT 5: Inheritance, containers and collections.
UNIT 6: User interface design, facilities for building GUI interfaces, user input validation.
UNIT 7: Database connectivity, querying and protection.
UNIT 8: Multithreading, issues of concurrency.
UNIT 9: Debugging and testing of object-oriented programs, TDD.
UNIT 10: Object Oriented design patterns.
ASSESSMENT
PRESCRIBED READING
Ryan Mitchell Web Scraping with Python (2018). Collecting More Data from the Modern Web. Sebastopol: O’Reilly Media
Miguel Grinberg (2018). Flask Web Development: Developing Web Applications with Python. Sebastopol: O’Reilly Media.
RECOMMENDED READING
Seppe vanden Broucke and Bart Baesens (2018). Practical Web Scraping for Data Science: Best Practices and Examples with Python. Leuven: Seppe vanden Broucke and Bart Baesens
BSc. Comp 212 - PROFESSIONAL PROJECT MANAGEMENT
BACKGROUND AND RATIONALE
Professional Project Management module introduces learners to professional project management. The module provides a thorough understanding of project management principles, tools and techniques with specialisation in IT based projects. The module explains the process of project, programme and portfolio management. It describes the critical path method (activity on node, activity on arrow), explains the process of project risk evaluation as well as mitigation; explains the process of data protection, highlights the relevant laws on computer misuse; describes malicious communications; highlights the concept of copyright and intellectual property; and ends with explaining the current software tools, including Microsoft project.
COURSE CONTENTS
UNIT 1: Project, Programme and Portfolio Management
1.2: Project Lifecycles
1.3: Traditional as well as agile approach
1.4: Role of Project Manager
1.5: Project Appraisals
1.6: Project Charters
1.7: Business Case
1.8: Requirements
1.9: MoSCoW prioritization
1.10: Stakeholder Management
1.11: Scope Management
1.12: Resource Planning
1.13: Costing
1.14: Scheduling
UNIT 2: Critical Path Method (activity on node, activity on arrow)
UNIT 3: Project Risk evaluation as well as mitigation
UNIT 4: Data Protection
UNIT 5: Computer Misuse Laws
UNIT 6: Malicious Communications
UNIT 7: Copyright and Intellectual property
UNIT 8: Current software tools
UNIT 9: including Microsoft Project
ASSESSMENT
PRESCRIBED READING
Jennifer Greene and Andrew Stellman (2018). Head First PMP. Sebastopol: O’Reilly Media, Inc.
Paul Sanghera (2019). PMP IN DEPTH: PROJECT MANAGEMENT PROFESSIONAL CERTIFICATION STUDY GUIDE FOR THE PMP EXAM. San Francisco: Paul Sanghera
RECOMMENDED READING
Kim Heldman (2018). PMP: Project Management Professional Exam Study Guide. Indianapolis: John Wiley and Sons
BSc. Comp 213 - USER INTERFACE DESIGN
BACKGROUND AND RATIONALE
User interface design module introduces learners to interface design. The module starts by explaining the current theories, practices and principles of user interface design and evaluation. It explains how user-centred design helps in building user interfaces which are accessible, ease to learn and user friendly. It explains the concept of colour theory, front terminology, layout and graphic designs elements in visual user interface design.
LEARNING OUTCOMES
At the end of this module learners should be able to:
– Know and explain the issues, principles and practices involved in developing and evaluating interfaces for interactive applications
– Know and demonstrate awareness of human-computer interface standards and guidelines
– Know and apply appropriate principles, concepts and models within a user-centred design process for the development and evaluation of interactive system interfaces
– Know and apply the knowledge in designing solutions that are suitable to different users and contexts
– Know and explain the ethical and social implications of policies, legal and professional standards and codes of conduct to the design of user interfaces
– Know and explain the impact of user interface on the individual and society.
COURSE CONTENTS
UNIT 1: HCI context;
UNIT 2: Principles of graphical user interfaces (GUIs);
UNIT 3: Managing design processes for user-centred design;
UNIT 4: User research and user personas;
UNIT 5: Ideation and prototyping;
UNIT 6: Information Architecture;
UNIT 7: Standards,
UNIT 8: guidelines, principles and theories;
UNIT 9: Design patterns;
UNIT 10: Designing for different devices;
UNIT 11: Evaluating interface designs (e.g. usability, heuristics);
UNIT 12: Interface visual design (e.g. colour, fonts, layout) and interaction methods;
UNIT 13: Accessibility design;
UNIT 14: Contemporary and emergent interactive technologies (e.g. touch, speech, VR).
ASSESSMENT
PRESCRIBED READINGS
Shneiderman, Plaisant, Cohen, Jacobs and Elmqvist (2018). Designing the User Interface: Strategies for Human-Computer Interaction. Harlow: Pearson Education.
Sharp, Rogers and Preece (2019). Interaction Design. Beyond HumanComputer Interaction. Indianapolis: John Wiley and Sons
RECOMMENDED READINGS
Dix A, Findlay J, Abowd G.D and Beale R (2004) Human Computer Interaction. Harlow: Pearson Education
BSc. Comp 214 - WEB PROGRAMMING 1
BACKGROUND AND RATIONALE
Web Programming module introduces learners to web programming. The module starts with explaining the process of reviewing HTML/CSS and HTML Forms, client/server relationship and HTTP client-side scripting and CSS frameworks. The module then explains the relational databases that is, creating, updating and normalization in MySQL, server-side PHP PDO programming. It explains the concept of website security including basic data encryption. Explains the process of Content Management systems. Explains the process of accessibility and user-testing then ends with explaining the ethical, legal and social Issues in web programming.
LEARNING OUTCOMES
At the end of this modules learners should be able to:
– Know and explain the process of reviewing HTML/CSS and HTML Forms, client/server relationship and HTTP client-side scripting and CSS frameworks.
– Know and explain the concept of website security including basic data encryption.
– Know and explain the process of content management systems.
– Develop a web application with relational database connectivity using a variety of technologies, specifically HTML5, PHP PDO and MYSQL
– Know and explain issues surrounding Internet and intranet technologies, such as browser dependency, accessibility, legal and security concerns.
– Critically analyse and evaluate Internet related business problems.
COURSE CONTENTS
UNIT 1: Review of HTML/CSS and HTML Forms. Client / Server relationship – HTTP Client-side scripting and CSS frameworks
UNIT 2: Relational databases: creating, updating and normalisation in MySQL, Server-side PHP PDO programming.
UNIT 3: Website security including basic data encryption.
UNIT 4: Understanding of Content Management Systems.
UNIT 5: Accessibility and user-testing.
UNIT 6: Ethical, Legal and Social Issues.
ASSESSMENT
PRESCRIBED READINGS
Jennifer Niederst Robbins (2018). LEARNING WEB DESIGN: A BEGINNER’S GUIDE TO HTML, CSS, JAVASCRIPT, AND WEB GRAPHICS. Sebastopol: O’Reilly Media
Elisabeth Robson and Eric Freeman (2012). Head First HTML and CSS: A BrainFriendly Guide. Sebastopol: O’Reilly Media
RECOMMENDED READINGS
Sven Lennartz and Vitaly Friedman (2011). Mastering Photoshop for Web Designers. Freiburg: Smashing Media