Write a short review & help students like you! Over 1,500 students already shared their experience.
Therefore, information might be incorrect, incomplete or outdated. We apologise for your inconvenience..
If you are a student, you can request further information from the programme contact person(s) listed below..
If you are an employee of City University London, please contact us to administrate this information.
| Application Deadline: | We have no specific application deadline, and an early application is recommended | ||
| Annual Tuition Fee: | ≈ € 6,180 - ≈ € 13,785 (non-EEA) | ||
| Location: | London / United Kingdom | ||
| Duration: | 12 months | Start Date: | September |
| Educational Form: |
| ||
| Education Variants: |
| ||
| Languages: | English | ||
This industry-focused 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 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.
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 this MSc Software Engineering course 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 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.
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 Databases
* 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
* 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
* 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
Systems Specification
* Demonstrate a comprehensive understanding of the changing nature of software intensive systems and the range of new methods, tools and techniques available to develop these systems
* Demonstrate a systematic understanding of the challenges of requirements elicitation
* Demonstrate a systematic understanding of the fundamentals of software quality assurance techniques
* Apply the principles and concepts involved in object-oriented analysis and design and build object-oriented analysis and design models using the constructs of the Unified Modelling Language (UML)
then one from:
Business Enginering 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
Data visualization
* 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 graphical applications for visualization
Open Source Systems
* Evaluate the usefulness of open source systems to solve real world problems, by drawing upon known case studies
* Critically analyse the open source software development process, its opportunities and problems in developing IT systems, with a particular focus on the individuals and organisations involved; compare and contrast open and closed source software development, by referring to established opportunites and difficulties in developing IT systems
* Assess open source systems from the legal, ethical and ideological perspectives
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
You are normally required to take an English Proficiency Test.
Most European Universities recognise the IELTS test.
Take test Official Registration.
Get free test prep and register today.
Each application is considered on its merits and is given full consideration by admissions staff.
The usual minimum entrance requirement is a good second class honours degree from a UK university, a recognised equivalent from an accredited overseas institution or an equivalent professional qualification.
Applicants should have significant previous exposure to computing.
Applicants should have basic competence and familiarity with mathematics.
Applicants should have good professional English. For students whose first language is not English, an IELTS score of 6.5 or TOEFL score of 100 (internet-based) 600 (paper-based) or 250 (computer-based version) is required.
Previous academic and commercial experience will also be considered.
| Minimal degree required: | Bachelor's degree |
| Minimal amount of work experience | Not specified |
| IELTS Band: | 6.5 |
| Cambridge English: Advanced (CAE): | Grade C (Score: 60) |
| TOEFL Internet-based: | 100 |
You can contact General Enquiries to ask a question about Software Engineering at City University London.
Using the form on this page, you can directly ask questions to the contactpersons at the university.
Fill out your contact information and message. The information you fill out in this form will be sent directly to the university. They will reply to you on the e-mail address you provide here.
Explain your academic background in the message; the more sophisticated your e-mail, the better the answer.
MastersPortal.eu cannot take any responsibility for the answering of contacts or for the content of their replies.