Software Engineering - CO510

Location Term Level Credits (ECTS) Current Convenor 2019-20
Canterbury Autumn and Spring
View Timetable
5 30 (15) MR D Barnes

Pre-requisites

Pre-requisite: COMP3340: People and Computing
COMP3200: Introduction to Object-Oriented Programming
COMP5200: Further Object-Oriented Programming

Restrictions

None

2019-20

Overview

This module provides an introduction to basic design principles of systems, including modelling principles and the use of tools, and design patterns. It also looks into different software processes, and introduces software testing. Regarding software project management, topics All the issues cover in the module will form the basis of the group project, which entails the design, implementation and evaluation of a simple software system.
This module provides an introduction to basic design principles of systems, including modelling principles and the use of tools, and design patterns. It also looks into different software processes, and introduces software testing. Regarding software project management, topics like risk management, quality assurances are covered. Under professional practice the module covers codes of ethics and professional conduct. All the issues cover in the module will form the basis of the group project, which entails the design, implementation and evaluation of a simple software system.

Details

This module appears in:


Contact hours

Total contact hours: 70
Private study hours: 230
Total study hours: 300

Method of assessment

Main assessment methods
3-stage modelling portfolio – 10%
5-stage development in groups – 40%
Examination (2 hours) – 50%

Indicative reading

K. Beck. Extreme Programming Explained: Embrace Change. Addison Wesley. Upper Saddle River, NJ, USA. 2000.
G. Booch, J. Rumbaugh, I. Jacobson. The Unified Modeling Language Users Guide. Addison Wesley. 1999
G. Booch, J. Rumbaugh, I. Jacobson. The Unified Software Development Process. Addison Wesley. 1999.
P. Coad, E. Lefebvre, J. De Luca. JAVA Modeling in Color with UML: Enterprise Components and Process. Prentice Hall. 1999.
A. Cockburn. Writing Effective Use Cases. Addison-Wesley. Boston, Ma, USA. 2001.
E. M. Hall. Managing Risk: Methods for Software Systems Development. Addison-Wesley. Reading, MA, USA. 1998.
D. G. Johnson, H. Nissenbaum. Computers, Ethics and Social Values. Prentice-Hall. 1995
E. A. Kallman, J. P. Grillo. Ethical Decision Making and Information Technology: An Introduction with Cases. 3rd Edition. McGraw-Hill. 1999
D. Kulak, E. Guiney. Use Cases: Requirements in Context. Addison-Wesley. Boston, Ma, USA. 2000.
J. Newkirk, R. C. Martin. Extreme Programming in Practice. Addison Wesley. Upper Saddle River, NJ, USA. 2001.
Mauro Pezze, Michal Young. Software Testing and Analysis: Process, Principles and Techniques. John Wiley & Sons. 2007.
R. Pooley, P. Stevens. Using UML Software Engineering with Objects and Components. Addison-Wesley. 2001.
G. Schneider, J. P. Winters. Applying Use Cases: A Practical Guide. Addison-Wesley. 2001.
I. Sommerville. Software Engineering.9th Edition. Harlow, England, UK. 2010.

See the library reading list for this module (Canterbury)

Learning outcomes

Understand the principles and practice of the development of software systems (broadly defined) – from requirements specification, design, validation, implementation, and evolution
Apply design principles and patterns while developing software systems
Create UML diagrams for modelling aspects of the domain and the software
Design and implement test plans, and apply a wide variety of testing techniques effectively and efficiently
Demonstrate the vital role of planning, documentation, estimation, quality, time, cost and risk evaluation in the business context
Show an understanding of system design, including, design simplicity, appropriateness, and styles of system thinking and focused problem solving
Show an understanding of the professional and legal duties software engineers owe to their employers, employees, customers and the wider public
Use the appropriate tools and techniques when working in groups

University of Kent makes every effort to ensure that module information is accurate for the relevant academic session and to provide educational services as described. However, courses, services and other matters may be subject to change. Please read our full disclaimer.