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. Accredited by BCS, The Chartered Institute for IT for the purposes of partially meeting the academic requirement for registration as a Chartered IT Professional and on behalf of the Engineering Council for the purposes of partially meeting the academic requirement for a Chartered Engineer.
You will complete eight modules focussing on advanced engineering concepts and methods, as well as design issues for the systematic development of high-quality complex software systems. Core Modules Software Systems Design (15 credits) Research Methods and Professional Issues (15 credits) Advanced Databases (15 credits) Cloud Computing (15 credits) Elective Modules Advanced Programming - Concurrency (15 credits) Advanced Algorithms and Data Structures (15 credits) Project Management (15 credits) Big Data (15 credits) Semantic Web Technologies and Knowledge Graphs (15 credits) Information Security Fundamentals (15 credits) Network Security (15 credits) Security Auditing and Certification (15 Credits) Object Oriented Programming in C++ (15 credits) Individual Project (60 credits) This module is a self-directed study, which offers you the opportunity to clearly identify a problem or requirement, justify why it is worth exploring or implementing, develop a method suitable for the work, apply this method, analyse the results and evaluate their implications.
You will learn via a mix of learning and teaching strategies. Modules are assessed through a combination of coursework and examination but some are coursework-only. You will also complete a project to solve a real-world problem. In taught modules you will learn through lectures and tutorials. Fundamental concepts are introduced in lectures. You will then apply the concepts in small exercises and in practical work in supervised tutorials. In addition, you will engage in self-directed study to deepen your understanding, during which you will read recommended materials, engage in reflective exercises, participate in seminars and tutorials, and prepare for formative and summative assessments. Some of the assessments and exercises will involve group work to enable you to learn how to work effectively in teams and learn other transferable skills. The face-to-face teaching is supported via online tools which will also enable feedback and engagement via discussion forums and the dissemination of additional material made available to you. For the individual project, you will learn through regular meetings with your project supervisor, in addition to self-directed study.
Professionally accredited courses provide industry-wide recognition of the quality of your qualification.
- BCS - The Chartered Institute for IT
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.
Fees and funding