Module Handbook

You can use this search form for searching subject module.

Subject name: Software Development - Back


Topic Content:

Expected Learning Outcomes 
 Upon completion of this course the students will be able to:
•	Describe the features typically offered by an object-oriented programming language, including support for classes, visibility, inheritance, interfaces, polymorphism and dynamic binding.
•	Explain key principles and best practice associated with object-oriented software development. These include abstraction, information hiding, programming to interfaces, resilience to change, and reuse.
•	Put into practice object-oriented programming knowledge and develop a relatively large, with respect to software developed on prerequisite courses, object-oriented software application.
•	Describe the principles of application-level multithreading: threading, condition synchronisation and mutual exclusion; and primitives associated with these.
•	Develop a multithreaded application that uses threads appropriately and correctly.
•	Describe and apply contemporary techniques that can be used to help develop software that meets its specification. These include source code inspection and basic software testing techniques: black box, white box and unit testing