Courses
  1. Undergraduate
  2. Postgraduate
  3. Research Degrees
  4. CPD
  5. Short Courses
  6. Clearing
  1. Software Engineering
    1. 2017
    2. 2016
Courses

Software Engineering

MSc |
This industry-focused course is for Computer Science graduates and experienced professional programmers interested in developing high-quality, complex software systems.

Key Information

Start date

Autumn 2017

Duration

Full-time: 12 months
Part-time: up to 28 months

UK/EU

Full-time: £9,000 (2016/17 fee; 2017/18 TBC October 2016)

Part-time: £4,500 per year (2016/17 fee; 2017/18 TBC October 2016)

Non-EU

Full-time: £15,000 (2016/17 fee; 2017/18 TBC October 2016)

Part-time: £7,500 per year (2016/17 fee; 2017/18 fee TBC October 2016)

Who is it for?

This industry-focused course is for Computer Science graduates and experienced professional programmers interested in developing high-quality, complex software systems and aiming at a high-quality career in the industry, e.g. software houses, consultancies, and major software users across different sectors.

Students will have a keen interest in designing complex software systems, coding them in a programming language using the latest technologies (SOA, cloud, etc.), and ensuring that they are of high quality and that they actually meet the needs of their stakeholders.

Objectives

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

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

The course covers significant trends in systems development, including service-oriented architecture, cloud computing, and big data. The course is delivered by acknowledged experts and draws on City's world-class research in Systems and Software Engineering, which has one of the largest groups of academics working in this area in London, covering almost all aspects - from requirements, to designing reliable systems for the nuclear industry.

Accreditation

British Computer Society logo

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. Please contact BCS directly for information about partial accreditation and further details regarding the CITP registration process: http://www.bcs.org

Requirements and how to apply

Entry requirements

Applicants should hold at least a lower second class honours degree, or the equivalent from an international institution or an equivalent professional qualification.

Previous academic and commercial experience is also considered. Applicants should have significant previous exposure to computing, especially programming (preferably in Java or C#) and relational databases.

Other suitable qualifications

If you do not qualify for direct entry, you may wish to follow a Graduate Diploma pathway to the programme through one of our partners.

INTO City, University of London

Don't meet the entry requirements? INTO City, University of London offers a range of academic and English language programmes to help prepare you for study at City, University of London. You'll learn from experienced teachers in a dedicated international study centre.

These programmes are designed for international students who do not meet the required academic and English language requirements for direct entry. To prepare for this degree course, learn more about the Graduate Diploma in Informatics - Science and Engineering.

English requirements

For overseas students whose first language is not English, the following qualification is required:

  • IELTS: 6.5 (minimum of 6.0 in all four components)

Due to changes in the UKVI's list of SELTs we are no longer able to accept TOEFL as evidence of English language for students who require a CAS as of April 2014.

English language programmes

Don't meet the English language requirements? INTO City, University of London offers English language programmes to help prepare you for study at university. These intensive and flexible courses are designed to improve your English ability for entry to degree courses. Learn more about INTO's English for University Study programme.

Visa requirements

If you are not from the European Economic Area / Switzerland and you are coming to study in the UK, you may need to apply for a visa or entry clearance to come to the UK to study.

The way that you apply may vary depending on the length of your course. There are different rules for:

  • Students on courses of more than six months
  • Students on courses of less than six months
  • Students on a pre-sessional English language course.

If you require a Tier 4 student visa to study in the UK, you cannot undertake any City courses on a part-time basis.

For more information see our main Visa page.

How to apply

Thank you for having decided to apply to study a postgraduate course at the School of Mathematics, Computer Science and Engineering. Please note that the deadline for applications for the 2017/18 academic year is 31st August 2017.

In order for your application to be considered, please ensure that you upload the following documentation with your application:

  • For all applicants, please upload your degree certificate and transcript of marks from your first degree (if you do not have your final results at the time of making your application, please upload a provisional certificate/interim transcript of marks). A transcript is required in order to have your application processed.
  • If your first language is not English, or you require a Tier 4 visa to study in the UK, please upload a Proof of English Proficiency if you have already obtained it. A list of accepted qualifications can be found here.
  • If you require a Tier 4 student visa to undertake a Master's programme in the UK, please upload a detailed personal statement outlining why you wish to study this specific course, at City University London, as well as explaining how your past studies have prepared you for this course and how it will help you to progress in your career.
  • If you are applying for a Part-time course, or have relevant work experience relating to the degree you are applying for, please upload a copy of your current CV/resume.

You can apply in the following ways:

Postal applications and supporting documents

We encourage online applications, however if you are unable to do this, please send a completed paper application form, together with supporting documents, to:

Postgraduate Courses Office, A302
School of Mathematics, Computer Science & Engineering
City, University of London
Northampton Square
London
EC1V 0HB

Contact information for the Postgraduate Team

Tel: +44 (0)20 7040 0248
Email: smcsepg@city.ac.uk

No. 5
in the UK on LinkedIn in 2015 for "Best Graduate universities for Software Developers".
SAP TERP10 Certification
can be applied for at substantial discount.

Funding

Explore up-to-date information about funding options, available financial support and typical living costs.

More about funding

If a student leaves City after commencing but before completing their course, City 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 that exceptional and unforeseeable reasons for their withdrawal exist.

How to pay

City 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 31st 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.

Funding

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

Future Finance Loans

Future Finance offers students loans of between £2,500 and £40,000 to help cover tuition fees and living expenses. All students and courses are considered. All loans are subject to credit checks and approval for further details please visit the City Finance website.

Placements

Postgraduate students on a Computing and Information Systems course are offered the opportunity to complete up to six months of professional experience as part of their degree.

Our longstanding internship scheme gives students the chance to apply the knowledge and skills gained from their taught modules within a real business environment. An internship also provides students with professional development opportunities that enhance their technical skills and business knowledge.

Internships delivered by City, University of London offer an exceptional opportunity to help students stand out in the competitive IT industry job market. The structure of the course extends the period for dissertation submission to January, allowing students to work full-time for up to six months. Students will be supported by our outstanding Professional Liaison Unit (PLU) should they wish to consider undertaking this route.

Benefits of completing an internship at City are:

  • Develop new skills - Internships offer on-the-job learning that will help enhance your skill set and add to your CV.
  • Exclusive opportunities - The PLU is a dedicated team of internship and professional development specialists. We hold longstanding relationships with a large range of employers and proactively seek out exclusive internship opportunities to suit your needs and interests.
  • Central point of contact - You will be assigned a Work-Based Learning Advisor who will provide help and support throughout the internship process, from applying to roles through to completion of your Masters.
  • Enhance your employability - Organisations are very keen to employ graduates with existing professional experience. It is common for internship providers to offer interns full-time positions on completion of their Masters.
  • Gain an insight into an organisation and industry - This will help you with future career planning.
  • Give you a head start in your chosen field - With the experience you gain, you may be able to enter an organisation at a higher level on completion of your studies.
  • Develop your network of professional contacts - This will be useful when you come to apply for positions and roles within your preferred area.
  • Earn while you learn - The majority of internships provide a competitive salary.

Learn a language for free

We offer a free language course for City, University of London students.

Find out how to apply

Teaching and learning

Software Engineering MSc is available full-time (12 months) as well as part-time (up to 28 months).

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.

Assessment

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

Modules

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

The focus of the course is on advanced engineering concepts and methods, as well as design issues for the systematic 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 covers significant trends in systems development, including service-oriented architecture, mobile and pervasive computing, cloud computing, big data, and XML-enabled interoperable services. The course is delivered by acknowledged experts and draws on City's world-class research in Systems and Software Engineering. City has one of the largest groups of academics working in the area in London, working on almost all aspects of the area - from requirements, to designing reliable systems for the nuclear industry.

Core modules

There are five core modules:

Advanced Database Technologies (15 credits)

  • 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.

Research Methods and Professional Issues (15 credits)

  • Research activity in terms of the effectiveness of its approach and implementation
  • Understand and apply a range of research methodologies such as inductive and deductive reasoning, explanation and prediction in the evaluation of published research
  • Recognise and use a range of secondary data sources when performing a research task
  • Communicate effectively with individuals and groups using a range of media
  • Evaluate the legal, ethical and professional dimensions of typical information professions and information industry practices.

Service Oriented Architectures (15 credits)

  • 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 (15 credits)

  • 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 (15 credits)

  • 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.

Elective modules

You will be required to take three elective modules, choosing from the following:

Advanced Algorithms and Data Structures (15 credits)

  • Revisit basic data structures and algorithms with more in-depth analysis
  • Introduce advanced algorithms and data structures for diverse applications, such as logic programming, machine learning, simulation, signal processing, and information retrieval
  • Develop new algorithms or variants for a given purpose.

Big Data (15 credits)

  • Understand the theory and techniques for data acquisition, cleansing, and aggregation.
  • Identify and understand the principles and functionalities of Big Data programming models and tools
  • Acquire, process, and manage large heterogeneous data collections
  • Develop algorithms and systems for information and knowledge extraction from large data collections.

Programming in C++ (15 credits)

  • 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.

Business Engineering with ERP Solutions (15 credits)

  • 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 (15 credits)

  • 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 Visualization (15 credits)

  • Create graphics and applications that reveal the structure in data sets
  • Apply the seven stages of visualization to analyse and present data graphically
  • Use 'Processing'; the open source programming language and environment to develop interactive applications for visualization.

Cloud Computing (15 credits)

  • Models of computing on-demand: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS).
  • Cloud computing technologies: virtualisation, resource management, dataflow-computation frameworks (e.g., MapReduce), etc.
  • A practical approach to building and running a test-bed cloud (Amazon's EC2, OpenStack/OpenNebula, etc.)

Career prospects

The MSc in Software Engineering aims to meet the 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 (particularly in Java or C#) 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++, Java, 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 strong balance between the development of particular skills and a solid education in the enduring principles and concepts that underlie complex software system development.

SAP Certification

In parallel to your degree you will be able to register for a SAP TERP10 Certification course at a substantial discount, thus obtaining an additional, much sought-after qualification.


Thank you for having decided to apply to study a postgraduate course at the School of Mathematics, Computer Science and Engineering. Please note that the deadline for applications for the 2017/18 academic year is 31st August 2017.

In order for your application to be considered, please ensure that you upload the following documentation with your application:

  • For all applicants, please upload your degree certificate and transcript of marks from your first degree (if you do not have your final results at the time of making your application, please upload a provisional certificate/interim transcript of marks). A transcript is required in order to have your application processed.
  • If your first language is not English, or you require a Tier 4 visa to study in the UK, please upload a Proof of English Proficiency if you have already obtained it. A list of accepted qualifications can be found here.
  • If you require a Tier 4 student visa to undertake a Master's programme in the UK, please upload a detailed personal statement outlining why you wish to study this specific course, at City University London, as well as explaining how your past studies have prepared you for this course and how it will help you to progress in your career.
  • If you are applying for a Part-time course, or have relevant work experience relating to the degree you are applying for, please upload a copy of your current CV/resume.

You can apply in the following ways:

Postal applications and supporting documents

We encourage online applications, however if you are unable to do this, please send a completed paper application form, together with supporting documents, to:

Postgraduate Courses Office, A302
School of Mathematics, Computer Science & Engineering
City, University of London
Northampton Square
London
EC1V 0HB

Contact information for the Postgraduate Team

Tel: +44 (0)20 7040 0248
Email: smcsepg@city.ac.uk

Contact details

Programmes Office (room A302)

Request a prospectus

Find out more about City and all our postgraduate degree programmes.

Get your prospectus

Find us

City, University of London

Northampton Square

London EC1V 0HB

United Kingdom

Back to top

City, University of London is an independent member institution of the University of London. Established by Royal Charter in 1836, the University of London consists of 18 independent member institutions with outstanding global reputations and several prestigious central academic bodies and activities.