CO320 Introduction to Object Oriented Programming
CO323 Databases and the Web
CO547 Agile Software Development
OverviewThe module studies in detail the activities and artefacts associated with software development process as performed by a development team (i.e. programming in the large).
Topics covered include
• Software development paradigms
• Requirements acquisition, requirements stability
• Project management: planning and scheduling, staffing, cost estimation, risk assessment and mitigation,
• Software architectures and design processes
• Verification and validation, software testing
• Configuration management, change control, version control
• Software quality assurance, software metrics, Capability Maturity Model • Ethics and professional responsibility
This module appears in:
22 hours of lectures
11 hours of supervised practical classes
Method of assessment
The aim of this module is to provide an opportunity for students to focus on the basic engineering processes: specification, design, development, verification and validation, and management that are employed in the construction of large and complex software systems.
Students who successfully complete this module will be able to:
Describe, explain and carry out the processes used in the production of quality software
Describe the processes, techniques and deliverables associated with requirements engineering
Describe a variety of approaches employed in software development and indicate the circumstances where such approaches may be appropriate
Appreciate a range of software architectures and design processes.
Understand the role of verification and validation, and the importance of testing.
Identify the roles and responsibilities of members of a software development team and the methods of intercommunication.
Understand project management including project scheduling, staffing, cost estimation and budgeting, configuration management, quality assurance and process improvement.
Discuss the professional and legal duties software engineers owe to their employers, employees, customers and the wider public