The University of Sheffield
Department of Computer Science

MSc (Eng) in Advanced Software Engineering

msc student

The MSc (Eng) in Advanced Software Engineering is suited to graduates in Computer Science and related disciplines, such as Software Engineering or Computing and Mathematics, who wish to complete their academic profile in specialist areas, and obtain practical experience of commercial software engineering. The programme provides a full awareness of leading-edge techniques for the specification, analysis, design, implementation and maintenance of complex software systems.

An innovative feature of the programme is its emphasis on enterprise culture, promoted via a student-run software company (Genesys Solutions) which MSc students join for the duration of the programme.

The programme is accredited by the British Computer Society (BCS), providing the final stage in a route to the status of Chartered Engineer (CEng) and offering exemption from the BCS Professional Graduate Diploma and PGD Project examinations.

Entry requirements

Applicants should hold at least an upper second class Honours degree, or equivalent, in Computer Science or a closely related discipline, such as Computing and Mathematics.

Course content

The programme consists of two semesters of taught modules and a dissertation project, which is completed during the summer. In the autumn semester there is a fast-paced introduction to Java and the unified modelling language (UML). Students also complete a core module on software measurement and testing, and commence the Genesys project. In the spring semester, students do preparatory work for the dissertation project and attend the advanced software engineering module. This module is based around a seminar series in which students review recent research papers and present their reviews to the cohort. In both semesters, you choose a number of modules from an approved list. You also choose at least two advanced research topics, which may be studied in either semester.

You can find out more about the modules in this course on our intranet site.

The Genesys Project

This module is designed to give you the opportunity to apply and enhance your existing software engineering skills in a variety of practical projects. Its overriding aim is for students to develop a professional and responsible approach to software development, support and maintenance. The course operates within the framework of a student-run company, called Genesys Solutions. The company has developed a sophisticated network and administrative infrastructure, and has its own web site.

genesys student

Company members report weekly on the progress of their projects with clients, and raise technical, organisational and commercial issues of concern. Lecturers offer advice on the scheduling of projects and facilitate access to technical resources, where possible. However, we do not prescribe the roles played by company members, nor the time-scales to complete projects; these matters are for the company members to decide by negotiation between themselves and with their clients.

The module includes occasional formal lectures and may involve external speakers, to stimulate discussion of software development methods, techniques and tools which are appropriate to the company's projects, and to help you identify and apply good software engineering practice. Lecture and invited speaker topics relate to negotiation skills, interview and requirements elicitation techniques, project estimation, requirements specification and modelling notations, testing and quality assurance procedures.

Career opportunities

Students are well prepared for employment in industry, or for postgraduate study. A number of graduates from this programme are currently studying for PhD degrees in the Department, or in other UK universities.