Module Details

The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module.
Title SOFTWARE ENGINEERING I
Code COMP201
Coordinator Mr T Carroll
Computer Science
Thomas.Carroll2@liverpool.ac.uk
Year CATS Level Semester CATS Value
Session 2019-20 Level 5 FHEQ First Semester 15

Aims

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.


Learning Outcomes

(LO1) Realise the problems in designing and building significant computer systems;

(LO2) Understand the need to design systems that fully meet the requirements of the intended users including functional and non functional elements;

(LO3) Appreciate the need to ensure that the implementation of a design is adequately tested to ensure that the completed system meets the specifications;

(LO4) Be fully aware of the principles and practice of an O-O approach to the design and development of computer systems;

(LO5) Be able to apply these principles in practice;

(LO6) Produce O-O requirements and design documentation in UML which demonstrates the features of good design such as loose coupling and high cohesion;

(LO7) Be able to demonstrate how to effectively  implent an O-O design in an O-O languuge such as Java or Python;

(S1) Information skills - Information accessing:[Locating relevant information] [Identifying and evaluating information sources]

(S2) Skills in using technology - Using common applications (work processing, databases, spreadsheets etc.)

(S3) Time and project management - Personal action planning


Syllabus

 

Introduction (1 lecture)   What is software engineering; the goals of software engineering; Why is software engineering important commercial considerations Software processes (2 lectures) Waterfall Model, Evolutionary development, Formal systems development, Reuse oriented development, risk analysis Requirement analysis (5 lectures) what are requirements and why are they important requirements elicitation and validation user and system requirements functional/nonfunctional requirements security analysis and requirements techniques for describing system requirements System models (3 lectures) Behavioural modelling, data modelling, and object modelling Formal specification (2 lectures) formal specification in the software process formal specification languages Design and Design Methodologies (4 lectures) design of software components and devices modularity as a tool for handling complexity unit versus system design properties of good design (cohesion, loose coupling,...) top-dow n design and its problems safety, correctness and security Concepts of Object-Oriented Design (2 lectures) objects and classes public and private aspects of objects inheritance, aggregation and composition Unified Modelling Language (5 lectures) what is UML? - brief history object oriented analysis with UML : use cases object oriented analysis with UML : concept diagrams object oriented design with UML : collaboration diagrams object oriented design with UML : object models object oriented design with UML : state charts Software Testing (3 lectures) black box testing generating test cases: boundary analysis, equivalence partitioning white box testing security testing Software projects (3 lectures) Overview of project stages, areas of risk in each stage Establishing a business case; establishing project objectives, goals, and measures of success Project planning and estimation; critical path analysis, risk identification Project monitoring; monitor and control finances; control, assure, and manage quality


Teaching and Learning Strategies

Teaching Method 1 - Lecture
Description:
Attendance Recorded: Not yet decided

Teaching Method 2 - Laboratory Work
Description:
Attendance Recorded: Not yet decided


Teaching Schedule

  Lectures Seminars Tutorials Lab Practicals Fieldwork Placement Other TOTAL
Study Hours 30

    10

    40
Timetable (if known)              
Private Study 110
TOTAL HOURS 150

Assessment

EXAM Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
Written Exam There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When) :1  120 minutes.    60       
CONTINUOUS Duration Timing
(Semester)
% of
final
mark
Resit/resubmission
opportunity
Penalty for late
submission
Notes
CA1 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When) :1  24 hours    20       
CA2 There is a resit opportunity. Standard UoL penalty applies for late submission. This is not an anonymous assessment. Assessment Schedule (When) :1  24 hours    20       

Recommended Texts

Reading lists are managed at readinglists.liverpool.ac.uk. Click here to access the reading lists for this module.