Software Engineering
| Code | School | Level | Credits | Semesters |
| COMP1023 | Computer Science | 1 | 10 | Spring Malaysia |
- Code
- COMP1023
- School
- Computer Science
- Level
- 1
- Credits
- 10
- Semesters
- Spring Malaysia
Summary
This module is part of the Software Engineering theme in the School of Computer Science.
This module will introduce the concept of Software Engineering as a discipline and will provide an overview of the whole software development process. A selection of fundamental topics in Software Engineering will be covered in depth:
- Software development methodologies and the software lifecycle, including the waterfall model, extreme programming, etc.
- Formal requirements and specification, focussing on how to turn an informal design brief into a formal specification.
- Software testing, evaluation and debugging, including practical use of modern debugging toolkits.
- Software evolution and maintenance, including version control and collaborative development systems.
Target Students
Available to Level 1 students in the School of Computer Science. Available to inter-campus mobility students and other exchange students in computer science. This module is not available to students not listed above, without explicit approval from the module convenor(s). This module is part of the Software Engineering theme in the School of Computer Science.
Classes
- One 2-hour lecture each week for 12 weeks
- One 1-hour computing each week for 12 weeks
- One 1-hour computing each week for 12 weeks
Activities may take place every teaching week of the Semester or only in specified weeks. It is usually specified above if an activity only takes place in some weeks of a Semester
Assessment
- 50% Coursework 1: Practical assignment based on weekly laboratory portfolio
- 50% Exam 1 (1-hour): 1 hr written examination
Educational Aims
The aim of this module is to provide a general understanding of Software Engineering; the typical phases of the software lifecycle with particular reference to practical Requirements and Specification, Software Design, and Implementation & Testing techniques. It serves to prepare students for the various software development projects undertaken throughout their studies.Learning Outcomes
Knowledge and Understanding:
The different approaches to managing the software engineering process.
The practice of producing specifications from informal briefs.
Intellectual Skills:
Understand how to determine formal software requirements.
Understand how to create and deploy an effective plan for testing software systems.
Professional Skills:
The ability to apply software engineering methodologies in practical scenarios.
The ability to understand how good software is closely related to the needs of users.
The ability to evaluate, select and deploy appropriate tools and techniques.
Transferable Skills:
The ability to develop project plans.
The ability to produce and critique possible solutions to a design problem.
Conveners
- Dr Radu Bogdan Muschevici