The module is intended to develop an understanding of the problems associated with the development of significant computing systems (that is, systems that are too large to be designed and developed by a single person,and are designed to be used by many users) and to appreciate the techniques and tools necessary to develop such systems efficiently, in a cost-effective manner.
A. Appreciate and describe the issues and methods involved in designing and building computer systems to meet business goals. B. Understand how user requirements are elicited and incorporated into the design of a computing system while being able to identify and analyse relevant legal, social, ethical and professional concerns informed by professional codes of conduct. C. Appreciate the need to ensure that the implementation of a design is adequately tested to ensure that the completed system meets the specifications. D. Apply an object-oriented approach to the design and development of software systems and their components. E. Adopt a holistic and proportionate approach to the mitigation of security risks using a risk management process to identify, evaluate and mitigate and risks associated with a software engineering activities. F. Discuss the role of quality management systems and continuous improvement in Software Engineering.
Students will be expected to attend three hours of formal lectures, as well as to participate in one hour of supervised practical classes in a typical week. In addition, students will be expected to devote six hours of unsupervised time to private study: private study will provide time for reflection and consideration of lecture material and background reading.