Course unit details:
Software Engineering 1

Course unit fact file
Unit code COMP23311
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 1
Offered by Department of Computer Science
Available as a free choice unit? No

Overview

While software engineering tends to involve a lot of programming, it is not synonymous with programming. Software Engineering is more concerned with the processes that are involved in the definition, creation, improvement, deployment, and maintenance of software artifacts. The course is a mixture of theoretical and practical work. The course allows students the opportunity to not only acquire the technical skills beneficial to a career in Software Engineering, but to also develop a critical understanding of how various social and technical phenomena may affect the profession going into the future.  

Pre/co-requisites

Unit title Unit code Requirement type Description
Introduction to Programming 1 COMP16321 Pre-Requisite Compulsory
Introduction to Programming 2 COMP16412 Pre-Requisite Compulsory
Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.

Aims

The unit aims to acquaint students with software engineering as an intellectual discipline and as a profession and equip them with basic knowledge and skills required of a competent junior software engineer.

Learning outcomes

ILO 1: Interpret, evaluate, and create a variety of technical analyses and assessments (e.g., of libraries or technologies) and present results at various levels of detail (e.g., to colleagues vs. to managers vs. to customers). 

ILO 2: Perform basic development management tasks (e.g., planning, estimation, problem description, issue tracking)

ILO 3: Describe fundamental concepts in software engineering (including complex systems, stages of development lifecycle, quality assurance, testing). 

ILO 4: Design and implement a small scale, “from scratch” software engineering project from start to finish comparable to what would be needed for a 3rd year project. 

ILO 5: Assess the effects of social and technical trends on projects and the profession (e.g., how generative AI affects product development and, as a product, society). 

ILO 6: Perform basic software construction tasks (e.g., design, debugging, refactoring, artifact management) in the context of a development project. 

ILO 7: Describe relations between technical details and business, social, and ethical values. 

Syllabus

Key topics:

  • Core definitions, i.e., what is software engineering?
    • Systems vs. Projects
    • Relation to (complex) system engineering
  • Claims and evidence
    • What sorts of claims do we make about projects and systems?
    • What sorts of evidence can we mobilize for these claims?
  • Complexity and its management
  • System and project qualities, their measurement, and assurance
  • Testing as a primary evidence and development mechanism
  • Various software construction tasks
    • Designing, debugging, performance analysis
  • Ethical, business, and social issues
  • Software engineering professionalism
  • Software system security
  • The current LLM driven transformation of software engineering

Teaching and learning methods

Lectures
1 introductory lecture in semester 1, week 1.

Workshops
One 2 hour workshop each week.  In these sessions, you will gain practical, hands-on experience of the techniques being taught.

Team Study Sessions
Two 1 hour sessions per week.  In these sessions you will:

  • Work with your team on the team coursework
  • Meet your industrial mentor (2 sessions per team)
  • Get your team coursework marked in a face-to-face interview (3 sessions per team).

Offline Study
A number of off-line study activities and readings are provided, that build on and consolidate the topics covered in workshops.  These are compulsory and are assessed in the coursework and exam.

Employability skills

Analytical skills
Group/team working
Innovation/creativity
Leadership
Project management
Oral communication
Problem solving
Written communication

Assessment methods

Method Weight
Written exam 70%
Practical skills assessment 30%

Feedback methods

Staff and TAs will be on hand to provide face-to-face informal feedback during workshops and team study sessions.

The RoboTA system will provide continuous feedback on aspects of the team marking system, using the Jenkins continuous integration system.

TAs will also provide written and verbal feedback on coursework, once marking is complete.

Recommended reading

Code complete    McConnell, Steve.    Microsoft Press    2004    ISBN: 0735635072

Pro Git     Chacon, Scott,    Apress    2014    ISBN: 9781484200766

The pragmatic programmer : from journeyman to master     Hunt, Andrew, 1964-    Addison-Wesley    2000    ISBN: 020161622

Beginning software engineering    Stephens, Rod, 1961- author.    Wrox, a Wiley Brand    2015    ISBN: 9781119209515

Software engineering     Sommerville, Ian,    Pearson Education Limited    2016    ISBN: 9781292096148

Making software [electronic resource] : what really works, and why we believe it     Oram, Andrew.; Wilson, Greg,    O'Reilly    2011    ISBN: 9780596808310

Python programming : a step-by-step guide to learning the language     Dhaliwal, C. K.,    CRC Press     2025    ISBN: 9781032691053

Study hours

Scheduled activity hours
Assessment written exam 3
Lectures 22
Tutorials 8
Independent study hours
Independent study 67

Teaching staff

Staff member Role
Thomas Carroll Unit coordinator

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.

course textbook https://software-eng.netlify.app/

 

 

Fees and funding

Fees

Tuition fees for home students commencing their studies in September 2027 will be £10,050 per annum. Tuition fees for international students will be £39,700 per annum.

For general information please see the undergraduate finance pages.

Policy on additional costs

All students should normally be able to complete their programme of study without incurring additional study costs over and above the tuition fee for that programme. Any unavoidable additional compulsory costs totalling more than 1% of the annual home undergraduate fee per annum, regardless of whether the programme in question is undergraduate or postgraduate taught, will be made clear to you at the point of application. Further information can be found in the University's Policy on additional costs incurred by students on undergraduate and postgraduate taught programmes (PDF document, 91KB).

Scholarships/sponsorships

The University of Manchester is committed to attracting and supporting the very best students. We have a focus on nurturing talent and ability and we want to make sure that you have the opportunity to study here, regardless of your financial circumstances.

For information about scholarships and bursaries please visit our  undergraduate student finance pages .

Return to course details

Regulated by the Office for Students

The University of Manchester is regulated by the Office for Students (OfS). The OfS aims to help students succeed in Higher Education by ensuring they receive excellent information and guidance, get high quality education that prepares them for the future and by protecting their interests. More information can be found at the OfS website.

You can find regulations and policies relating to student life at The University of Manchester, including our Degree Regulations and Complaints Procedure, on our regulations website.