Software Engineering  MSc

Overview

British Computer Society logo

This full time or part time MSc course is accredited by the British Computer Society for partial fulfillment of the academic requirement for Chartered IT Professional.


Scholarships and bursaries

The School offers a range of generous scholarships and bursaries to applicants for this course:

Last year, over 80% of UK/EU postgraduate students received one of our scholarships, bursaries or prizes and over one third of international (non-EU) students received financial support from the School.


This industry-focused Software Engineering MSc course will extend your computing education, experience and skills by providing you with a thorough knowledge of software development as a technological and engineering discipline.

The MSc course is delivered by acknowledged experts in software engineering and draws on our world class research in this area.

It will prepare you for positions in software houses, consultancies and with major software users, such as the financial sector, where there is a significant demand for professionals with a deep knowledge of advanced software development and a rigorous engineering practice.

After the completion of the course candidates may consider a PhD degree, towards and academic/research career.

nullComputing and Information Systems Brochure

Download our course brochure with fees and funding information.

The course aims to develop:

  • skills in analysing user requirements and designing appropriate software solutions
  • skills in designing and creating complex software systems to solve real world problems
  • skills in evaluating and using advanced software engineering environments, design methods and programming languages
  • skills in evaluating and responding to recent trends in interoperability and software development.

Why study Software Engineering at City University London?

  • Up-to-the-minute curriculum with a strong practical core.
  • Rather than attempting a broad survey of computing, this course focuses on the various stages of the development of software.
  • A focus on key industrial technologies, including object-oriented programming languages such as C++, design patterns, software architectures and service-oriented architecture, as well as modelling languages such as UML and XML.
  • An area of high demand by employers.
  • City University London is a European centre of excellence for software engineering research, directly informing our teaching, ensuring that you're exposed to cutting-edge technologies taught by experts in their field.
  • You will be able to access lecture materials and engage in discussions with student colleagues, teaching staff and the course team.

Postgraduate Open Evenings

Come and talk to course directors at one of our postgraduate open evenings.

This course is accredited by the British Computer Society (BCS). Graduates from the MSc Software Engineering course are exempt from the BCS Certificate, Diploma and Diploma Project.

Course Fees:

  • Full-time EU: £9,000 (2014 fees)
  • Part-time EU: £4,500 (per year) (2014 fees)
  • Full-time Non EU: £13,500 (2014 fees)
  • Part-time Non EU: £6,750 (per year) (2014 fees)
More...

Start Date:

22nd September 2014

How to Apply

Entry Requirements

The minimum entry requirement is a good second class Honours degree from a UK university, a recognised equivalent from an accredited international institution or an equivalent professional qualification. Previous academic and commercial experience will also be considered. Applicants should have significant previous exposure to computing, especially programming and relational databases.

Other Suitable Qualifications

INTO Postgraduate preparation Programmes

If you do not qualify for direct entry, our partner INTO City University London offers academic preparation programmes which focus on the skills you need. Successful completion of the Graduate Diploma in Science and Engineering at INTO City University London means guaranteed progression to this degree.

English Requirements

For those students whose first language is not English, one of the following qualifications is also required:

  • IELTS: 6.5 (minimum of 6.0 in all four components)
  • TOEFL (internet based): 90

INTO English Language Programmes

If you need to improve your English language skills before you enter this course, our partner, INTO City University London offers a range of English language courses. These intensive and flexible courses are designed to improve your English ability for entry to this degree. Please click the links below for more information.

English for Postgraduate Study

Pre-sessional English

Visa Requirements

City University London retains Highly Trusted Status from UKBA, enabling us to sponsor international students to study in the UK.

The way that you apply may vary depending on the length of your course at City, there are different rules for:

  • Students on courses of more than 6 months
  • Students on courses of less than 6 months
  • Students on a pre-sessional English Language course

For more information see our main Visa page.

Course Content

The focus of the course is on advanced engineering concepts and methods, as well as design issues for the development of high-quality complex software systems. These are explored using industrial strength technologies, such as the C++ and Java object-oriented programming languages and the UML modelling language.

The course will cover significant trends in systems development, including service-oriented architecture, open-source systems and XML-enabled interoperable services. The course is delivered by acknowledged experts in software engineering and draws on our world class research in this area.      

Course Structure

6 Core Module(s):

Advanced Database Technologies

  • Describe the different ways of representing and accessing data
  • Discuss the importance and characteristics of distributed databases
  • Describe the issues associated with interoperability of database systems
  • Represent and manipulate data expressed in XML.

Requirements Engineering

  • Demonstrate an in-depth understanding of the range of problems which arise in requirement engineering
  • Demonstrate an in-depth understanding of the state-of-the-art practices and leading academic research that are aimed at addressing the range of problems which arise in requirements engineering
  • Demonstrate a systematic understanding of the differences between alternative requirements modelling techniques
  • Apply start-of-the-art requirements methods and techniques to acquire, model and analyse requirements for complex systems.

Research, Methods and Professional Issues

click here to find out more

Service Oriented Architectures

  • Demonstrate deep understanding of the service orientation in business and software systems
  • Demonstrate ability to device and deploy service oriented architectures
  • Demonstrate deep understanding of enabling technologies and standards for service oriented systems
  • Demonstrate deep understanding of service level agreements and their specification, negotiation and management.

Software Systems Design

  • Demonstrate a systematic understanding of software system design and its connections with requirements engineering, system analysis, system implementation and system verification
  • Use UML as a software system design language
  • Demonstrate a systematic understanding of software architectural styles and use them to create or transform software architecture models
  • Use design patterns, object frameworks and formal specifications techniques in developing detailed system design model with provable properties.

Advanced Programming: Concurrency

  • Learn the theoretical foundations of concurrency
  • Learn about its main pitfalls (synchronization, deadlocks, resource starvation, etc.), the solutions to these, and how to automatically verify your designs
  • Develop correct multi-threaded systems.

Then one from:

Business Engineering with ERP Solutions

  • Explain the fundamental principles of ERP technology and second generation ERP systems, and evaluate their business and technical benefits in context
  • Analyse the critical success factors for ERP system implementation in context
  • Use Accelerated SAP (ASAP) methodology in solving complex problems
  • Perform complex business process modelling using the EPC notation.

Mobile and Pervasive Computing

  • Definitions and motivations: mobile, pervasive and ubiquitous computing; physicality and physical interaction.
  • Theoretical foundations of pervasive computing: context-aware interaction, resource and device constraints.
  • Implementing pervasive systems: sensor, actuators, embedded systems, apps, programming languages and approaches, device types and choices.
  • Capturing needs and requirements for pervasive systems: techniques and challenges.
  • Multi-sensory communication using pervasive computing.

The module is project based - you will implement a hardware/software system (however no prior knowledge of electronics is assumed).

Data visualisation

Find out more

Open Source Systems

Find out more

And one from:

Programming in C++

  • Analyse substantial well-written C++ programs and adapt them to new requirements
  • Design and create classes and programs in C++ that are correct, robust and capable of being understood, reused and modified by others
  • Apply various object oriented features, including inheritance, multiple inheritance and genericity, to enhance software quality
  • Demonstrate a systematic understanding of the core features of C++ and their application to programming problems.

Programming with Java

  • Create object oriented models of some aspect of the real world with a spatial context
  • Break down a problem into logical steps (an algorithm)
  • Interpret an existing Java program of moderate complexity by identifying its structure, state and behaviour
  • Convert algorithms and object-oriented models into clear, well documented Java; develop and share Java code as part of a team.

Read the full 2014 course specification

Teaching and Assessment

The course is available in a full time (12 months) and a part time (up to 28 months; daytime study) mode.

Students successfully completing eight taught modules and the dissertation for their individual project will be awarded 180 credits and a Master's level qualification. Alternatively, students who do not complete the dissertation but have successfully completed eight taught modules will be awarded 120 credits and a postgraduate diploma. Successful completion of four taught modules (60 credits) will lead to the award of a postgraduate certificate.

Each module is assessed through a combination of coursework and examination.

FULL-TIME study timetable: 2013/2014 PART-TIME study timetable: 2013/2014
Semester 1 YEAR 1, Semester 1
Software Systems Design Monday morning Requirements Engineering Friday morning
Requirements Engineering Friday morning Option module B - see below
Research methods and professional Issues Friday afternoon YEAR 1, Semester 2
Option module B - see below Advanced Databases Thursday morning
Option module A- see below  
Semester 2 YEAR 2, Semester 1
Advanced Programming: Concurrency Thursday afternoon Software Systems Design Monday morning
Service Oriented Architectures Tuesday morning Research Methods and Professional Issues Friday afternoon
Advanced Databases Thursday morning
Option module A - see below   YEAR 2, Semester 2
    Advanced Programming: Concurrency Thursday afternoon
    Service Oriented Architectures Tuesday morning


Option module A
Semester 2 (full-time), Year 1 Semester 2 (part-time)
Data Visualization Friday morning

Business Engineering with ERP Solutions

Wednesday morning

Open Source Systems

Mobile and Pervasive Computing

Friday afternoon

Wednesday afternoon

* Option module B: students elect to take either Programming in C++ (Wednesday afternoon) or Programming with Java (Tuesday afternoon).

Note: The University reserves the right to make changes to syllabuses, course options and modules as necessary.

Read the full 2014 course specification

Recommended Reading

In order to have a more or less common starting point, brush up your Java using a book such as:

  • Oates, B.J. (2006) Researching Information Systems and Computing (Sage Publications)
  • Eckel, B. (2002) Thinking in Java - 3rd edition (Prentice Hall PTR) (the link is to a free electronic version)
  • Horstmann, C. (2003) Computing concepts with Java 2 essentials - 3rd edition (Wiley)

If you already know Java, then read the Java IAQ (Infrequently Asked Questions), written by Peter Norvig (of NASA and now Google fame).

You may also wish to undertake some preparatory reading on UML and Object-Oriented Engineering, though it is not necessary since they will be covered in detail during the course.

  • Arlow, J. and Neustadt, I. (2005) UML 2 and the unified process: Practical object-oriented analysis and design - 2nd edition (Addison Wesley)
  • Bruegge, B. and Dutoit, A. (2004) Object-oriented software engineering using UML: Patterns and Java - 2nd edition (Prentice Hall)

Note: module leaders may choose to use different or additional texts to the ones listed above.

Fees

  • Full-time EU: £9,000 (2014 fees)
  • Part-time EU: £4,500 (per year) (2014 fees)
  • Full-time Non EU: £13,500 (2014 fees)
  • Part-time Non EU: £6,750 (per year) (2014 fees)

If a student leaves the University after commencing but before completing their course, the University reserves the right to charge the student the tuition / course fee for the full academic year (or full course for capacity limited post-graduate courses - up to a maximum of 2 years fees) in question. The student may be charged the full fee for that year or course as applicable unless the student is able to present justification to the University that exceptional and unforeseeable reasons for their withdrawal exist.

How to pay

The University has introduced an instalment payment scheme which is available to certain categories of students, including taught postgraduate students. For students following the normal academic year, the annual fee may be paid in two equal instalments: the first on registering, the second on 31 January. If you wish to pay your fees by instalment you must pay the first instalment at or before registration, by cheque or credit/debit card. You must also supply your bank details or credit card details for payment of your second instalment which will be deducted automatically from your bank or credit card account on 31st January.

Further details about the payment of fees.


Please Note - Applicants who already hold a HE qualification and are applying for another HE course at an Equal or Lower Level Qualification (ELQ)

UK/EU students who already hold a Higher Education qualification and are applying to start another Higher Education course at an equivalent or lower level (ELQ) should note that they will have to pay higher fees for their course from 2009/10 onwards. The exact fee will vary by course. You are advised to contact your admission tutor to discuss the fees.

The new rules and regulations have been introduced by the Government and not City University London. The Government instructed the Higher Education Funding Council for England (HEFCE) to withdraw institutional funding for ELQ students (both Home and EU) - those studying for an equivalent or lower level qualification. This means that UK Universities will no longer receive any government funding to support Home/EU ELQ students. The additional fee for students has been introduced by City University London to help recover some (but not all) of the withdrawn funding. If you already hold an MA qualification, this means that you are classed as an ELQ student.

If a student leaves the University after commencing but before completing their course, the University reserves the right to charge the student the tuition / course fee for the full academic year (or full course for capacity limited post-graduate courses - up to a maximum of 2 years fees) in question. The student may be charged the full fee for that year or course as applicable unless the student is able to present justification to the University that exceptional and unforeseeable reasons for their withdrawal exist.

Funding

For up-to-date information about tuition fees, living costs and financial support, visit Postgraduate Fees and Finance.

Scholarships and bursaries

The School offers a range of generous scholarships and bursaries to applicants for this course:

Last year, over 80% of UK/EU postgraduate students received one of our scholarships, bursaries or prizes and over one third of international (non-EU) students received financial support from the School.

Scholarships


Placements

Internships offer an exceptional opportunity to make you stand out in a competitive job market place. We have extensive experience in helping students to secure placement employment in the IT industry.

More information on Internships in Industry.

Career Prospects

The MSc in Software Engineering is based on a very significant demand for graduates with a good knowledge of computing. This demand arises from consultancies, software houses, major software users such as banks, large manufacturers, retailers, and the public services, defence, aerospace and telecommunications companies.

Typical entrants to the course have a degree in an engineering or scientific discipline, and wish to either move into the software engineering field or to the development of software for their current field. Entrants must have previous exposure to computing, especially to programming and relational databases (from either academic or professional experience).

From this base, the course provides solid technical coverage of advanced software development, including such widely used languages as C++, UML and XML for which demand is particularly high. The course is therefore quite demanding; its success in providing advanced academic education along these lines is evident from the fact that recent graduates of the course are currently employed in a wide spectrum of organisations.

Of course, the employment value of a master's degree is not just short term. Although on-the-job training and experience as well as technology specific skills are valuable, they can be rather narrow and difficult to validate, and to transfer. The structure of this course ensures that there is a proper balance between the development of particular skills and a solid education in the enduring principles and concepts that underlie complex software system development.


Alumni jobs

Job title Company name
Chief Information Officer Jolly Board
Developer Consultant Symbian
International Elected Chairman NATO Data Management Services
IT Project Manager Evered Consultancy Services Ltd
IT Systems Analyst Procter & Gamble Hellas Ltd
IT Trainer Manchester College Of Arts And Technology
Project Manager IBM International Business Machines
Software Consultant Tripos Uk Ltd
Software Developer IDBS
Systems Management Consultant Logica
Technical Consultant Rule Financial
 

MSc in Software Engineering

We invite all suitable applicants living within a 200-mile radius of London to an open and/or interview session; these are held monthly between March and July. Overseas and more distant applicants are sent a questionnaire, which may be supplemented by a telephone interview or email discussion. Such students are welcome to visit the Department if they are in or near London at some stage.

 

Please read through the application guidance notes before you apply.

You should submit your application by one of the following two methods:

1. Completing the online form; or

2. Completing a hard copy of the application form and sending this to the address below.

Please ensure you include your supporting documentation with your application. If you are applying online you should note that confidential references are only acceptable as originals sent in signed and sealed envelopes by post to the address below. References attached as supporting documentation to an online application cannot be considered.

International students: it is important you submit your application to us in sufficient time for you to arrange your visa before the start of the course.

Online applications

Apply online for an MSc (full-time, part-time)

You will be able to attach electronic copies of your supporting documents. However, you will be required to submit your confidential references in hard copy (in signed and sealed envelopes) to the address below, together with any supporting documents you do not attach when applying online.

Postal applications

You can download and print off the paper application form here.

Alternatively, to receive an application pack in the post please contact the Programmes Office:

Tel: +44 (0) 20 7040 0248
Fax: +44 (0) 20 7040 0233
Email: compsci-pg@city.ac.uk 

(The application pack includes the application form, application guidance notes and the School's postgraduate prospectus)