COMP2013 - Systems Engineering Project 1
Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).-----------------------------------------------------------------------------------
- Code
- COMP2013 Systems Engineering Project I
- Year
- 2
- Prerequisites
- Term
- 1
- Taught By
- Graham Roberts (67%)
Jan Kautz (33%) - Aims
- This is a practical course that covers the process of developing a larger software application with a graphical user interface (GUI) capable of displaying graphics and images. It looks at how development projects are organised at the programming level, the core tools and development practices used, testing, graphics and graphical user interfaces, and the packaging and delivery of applications.
The course includes a substantial group project component, where students will work in small groups on the development of a large software application. The design and implementation work will be documented in a group report, while an individual report will evaluate and reflect on the group work done. There is a also a group presentation to show the results of the group work. In addition, there are several smaller individual formative courseworks.
- Learning Outcomes
- To be able to: (a) explore, understand and work with larger code bases, (b) to configure a development environment and install a working tool-chain, (c) to competently use core tools such as IDEs and version control, (d) to properly test an application, (e) to understand the principles of computer graphics and basic image manipulation, (f) to understand and be able to construct a GUI for an application, (g) to be able to design and implement a larger application as a member of a programming team, (h) to deliver and deploy a complete, working and tested application.
Content:
Tools and Configuration
* Configuring a development environment with a working tool-chain
* Using IDE's, plugins and build tools
* Version control
* Continuous integration
Testing
* Unit testing
* Test-Driven Development (TDD)
* Refactoring
Graphics and Graphical User Interfaces
* The graphics pipeline
* Basic image processing
* Coordinate systems, colour and colour models
* Shapes curves and fonts
* Constructing a graphical user interface (GUI)
* GUI components, assembly and event handling
Application Development
* Developing a larger, correctly structured and tested solution to a real world problem
* Modules, packages and components
* Delivery and deployment
Team Working and Transferrable Skills
* Working as a programming team
* Using a shared repository as part of the development process
* Writing documentation and reports
* Giving a presentation
Method of Instruction:
Lab classes, online material
Assessment:
The course has the following assessment components:
* Binary assessed individual courseworks (10%)
* Group project work (50%)
* Group presentation (10%)
* Individual report (25%)
To pass this course, students must:
* Obtain an overall pass mark of 40% for all coursework components combined
* Fully participate in all group components
* Submit an individual report
Resources:
See the Moodle site












