PRINCIPLES OF SOFTWARE ENGINEERING
Course description
This course explores basic truths, rules or assumptions about software engineering that hold regardless of the technique, tool or language selected. The course introduces students to principles in software development i.e. all that is involved between the conception of the desired software through to the final manifestation of the software (software product).
Course Objectives
The course aims to provide students with understanding and skills in:
i) Software Development process and the core activities at various levels of development
ii) Requirements analysis of a simple software system
iii) Managing a Software Development process
iv) Designing, implementing and deploying a software product
v) Managing a team of software developers
vi) Software Documentation
vii) Validation, Verification and testing a software Product.
Learning outcomes
Upon successful completion, the student should be able to:
(i) Demonstrate mastery of the software development process, describing core activities at various levels of software development;
(ii) Perform requirement analysis of a simple software system;
(iii) Show ability to manage a software development process;
(iv) Design, oversee implementation and deployment of a software product;
(v) Manage a team of developers;
(vi) Demonstrate skills in at least one tool of software documentation;
(vii) Work in a team to design, develop, test and validate a software product.