CS3003 UG Study Guide 2020-21
CS3003 UG Study Guide 2020-21
TABLE OF CONTENTS
Module details
Access to support material and additional information
Introduction/aims/background
Learning outcomes
Method of teaching
Lecture Seminar Programme
Reading List
Assessment
Deliverables and Feedback - important dates
Additional Vital Information
MODULE DETAILS
Module Leader Professor Steve Counsell
Department Computer Science
Credits 20
Other staff Dr Giuseppe Destefanis
3 GTAs
Contact and private study time Lectures 11 hours
Labs/Seminars 15 hours
Coursework Study 60 hours
General Study 114 hours
Total 200 hours
Assessment Method Coursework and Examination.
Coursework Task 1 – Threshold coursework.
Examination Task 2 – Unseen examination to determine final
module grade.
INTRODUCTION/AIMS/BACKGROUND
Software engineering is a discipline concerned with the development and maintenance of useful software
which conforms to agreed quality standards. The process of developing quality software is a challenge
informed by many software engineering issues. The main aims of the module are first, to provide a grounding
in topics that directly influence the quality of software; second, to provide an understanding of the key
artifacts that inform software quality both from a process and product perspective; in particular, the use of
and application of software metrics. Finally, the module aims to articulate the state-of-the-art in terms of
topics such as code analysis, software structure and software testing.
LEARNING OUTCOMES
Whatever module or programme of study you are studying for at Brunel University London, there are learning
outcomes (LO) that you must meet/achieve in order to be awarded the credits which comprise the module
and programme of study. In order to get a pass grade (D- or above) in this module, you must meet these
learning outcomes below, that is, you must demonstrate ability to:
LO1: Describe the attributes of quality software and the implications of poorly designed software.
LO2: Describe and evaluate the processes and techniques which may be used to produce quality software
and be able to create software artefacts which display these attributes.
LO3: Critically evaluate, select and appraise software metrics in order to assess software process and product
attributes.
METHOD OF TEACHING
The module will be delivered through the use of lectures, practical workshops and seminars as follows:
Term 1: there will be a weekly one-hour lecture that will look at the core topics in the module. During Term 1
there will also be one-hour practical lab sessions and one-hour seminar sessions. Labs and seminars will focus
mainly on techniques for the analysis of software. Understanding and applying these techniques are crucial to
you achieving a pass grade in your coursework. The effectiveness of the labs and seminars depends critically
on your doing the preparatory work. Attendance at the lectures, labs and seminars is compulsory.
As is the case for all modules in higher education, you will need to do significant private study – you can do
this by yourself, with others in the class or (more likely) a combination of the two. We expect you to read
texts and journal papers related to the topics covered in the module, including but not limited to reading that
we will set for you. You will also have to prepare for each seminar. At this level of study, you are expected to
not only understand a topic but to be able to apply this knowledge in a critical and reflective manner. Reading
around the topics will be greatly beneficial in developing your understanding of software engineering and will
support you in the assessment tasks.
Term 1
Week Lecture Topic Lecturer Week Commencing
1 Introducing the module and Software Steve Counsell 28th Sept.
Engineering
2 Software maintenance and Evolution Steve Counsell 5th Oct.
3 Software metrics Steve Counsell 12th Oct.
4 Test-driven development Giuseppe Destefanis 19th Oct.
5 Software structure, refactoring and Steve Counsell 26th Oct.
code smells
6 Software complexity Steve Counsell 2nd Nov.
Coursework released 3rd Nov.
7 ASK week N/A 9th Nov
8 Software fault-proneness Steve Counsell 16th Nov.
9 Clean code Steve Counsell 23th Nov.
10 Human factors in software engineering Giuseppe Destefanis 30th Nov.
11 SE techniques applied in action Steve Counsell 7th Dec.
12 Guest Lecture (tba) Guest Lecture 14th Dec.
th
Coursework hand-in Monday 14
December
Please note: Week 7 in Term 1 is ASK week and there are no scheduled lectures, labs or tutorials during this
week.
READING LIST
There is no core text in software engineering that the course will follow. Much of the material will be on-line
resources and you will be pointed to these sources and reading at the end of every lecture. Many of the
following books can be found in the library. Some relevant chapters and pointed to by lectures can be found
in: Sommerville I. (2016) Software engineering. Harlow, Essex, England: Pearson.
Pressman R. S. and Maxim B. R. (2015) Software engineering: a practitioner’s approach. New York, NY:
McGraw-Hill Education.
Fenton N. E. and Bieman J. (2015) Software metrics: a rigorous and practical approach. Boca Raton: CRC Press,
Taylor & Francis Group
Fowler M. and Beck K. (2000) Refactoring: improving the design of existing code. Boston, MA: Addison-
Wesley.
The above are therefore suggestions, but you are encouraged to search for and make use of other sources.
It is important that you learn to become self-reliant and able to access and assimilate material for yourself.
Many of the topics necessary for this project will not be covered by lectures. Therefore you will need to work
through the exercises and guidance material provided in labs, via Blackboard or from your own investigations.
ASSESSMENT
This module is assessed by a single assessment element separated into two un-weighted tasks. The
assessment addresses all learning outcomes for this module.
Task 1: Threshold Coursework – The coursework specification will be distributed on Tuesday 3 rd November
2020, with a submission deadline of Monday 14th December 2020 at 11.00am. The maximum grade/mark you
can achieve for this assessment is D-/40%, which demonstrates performance in the module at threshold
level. Passing the threshold coursework means that you have passed the module overall. The assessment of
The clear expectation is that you will submit your coursework by the submission deadline stated in the study
guide. In line with the University’s policy on the late submission of coursework (revised in July 2016),
coursework submitted up to 48 hours late will be accepted, but capped at a threshold pass (D-). Work
submitted over 48 hours after the stated deadline will be graded as Non Submission (NS), without accepted
Mitigating Circumstances. Work submitted more than 5 days late will not normally be accepted.
The Department policy is that all coursework must be submitted electronically via the University’s Wiseflow
system. Please navigate to the pages for this module for further details. You will get feedback on your
performance via the Wiseflow Learn pages for this module. If do not receive your feedback by the given date,
you should first contact the module leader. If it proves necessary, you should also contact your Level Co-
ordinator.