MSc Software Systems and Internet Technology


Start date: 24 September 2018 (intro week starts 17 September 2018)
Duration: 12 Months full time
Programme code: COMT138

Apply now

Image: Software Systems & Internet TechnologyThe internet is now a key technology for industry and commerce. However, beneath the friendly interface of the world wide web lie sophisticated software systems that support electronic commerce, information retrieval, distributed computing and communication with large databases.

The MSc in Software Systems and Internet Technology is designed for graduates of disciplines other than Computer Science, who have some experience of computer programming, and wish to build on their existing knowledge. The programme covers key topics in computer science and software engineering, but with an emphasis on current topics in internet computing.

Why Software Systems and Internet Technology at Sheffield?

  • Gain practical experience of working on a software development project for a client
  • Access to a dedicated employability team
  • Teaching informed by researchers working in relevant areas such as information engineering and software systems
  • The Department of Computer Science is 5th in the UK for Research Excellence (REF 2014)
  • 94% National Student Satisfaction ranking

Course content

Please note that the course details set out here may change before you start, particularly if you are applying significantly in advance of the course start date.

The programme consists of two semesters of taught modules and a dissertation project, which is completed during the summer. In the autumn semester, the modules introduce core concepts and techniques such as object-oriented programming, computer networking, database technology and software engineering. The spring semester modules build on this by providing more advanced coverage of topics in internet computing, including e-commerce, concurrent and distributed computing, and web intelligence.


Foundations of Object Oriented Programming

This module introduces the foundations of object-oriented programming using the language Java. The emphasis of the module is on software engineering principles, and concepts underpinning object-oriented design and development are introduced from the outset. By the end of the course, students will be able to design, implement and test moderately complex Java programs.

Network and Internetwork Architectures

This unit introduces the principles of computer networks and internetworks, together with relevant background material on computer architecture. The emphasis of the unit is on the concepts and design issues related to layered communication protocol architectures, local area networks and internetworking (especially the internet protocol suite), with a particular focus on the issues of network security, capacity and reliability, and the mathematical models underlying these.

Human Centred Systems Design

This module is concerned with the analysis, design, implementation and evaluation of interactive computing systems for human use; and with the study of major phenomena surrounding them. It will consider the interplay between human users, developers and computers; as such it has a multidisciplinary content with its basis in psychology, human computer interaction and human factors as well as in software engineering and database design.

Professional Issues

This module aims to promote an awareness of the wider social, legal and ethical issues of computing. It describes the relationship between technological change, society and the law, emphasising the powerful role that computers and computer professionals play in a technological society. It also introduces the legal areas which are specific and relevant to the discipline of computing (eg intellectual property, liability for defective software, computer misuse, etc) and aims to provide an understanding of ethical concepts that are important to computer professionals, and experience of considering ethical dilemmas.

Advanced Java Programming

This module presents the object-oriented approach to building large software systems from components in the Java Programming Language. Large-scale program design and implementation issues are covered, using the Java Application Programmer's Interface, the Java Foundation Classes, the Java Abstract Windowing Toolkit and the Java Collections Framework. Detailed topics include: data and procedural abstraction, generics, collection interfaces and implementations, searching and sorting algorithms, time and space complexity analysis, the event-driven model of computation, GUI building and files.

Web Technologies

This course is concerned with an introduction to modern Web technologies. We will read and discuss both teaching material and research papers. Topics will include:

  • Technologies for creating static and dynamic Web pages (e.g. HTML, JavaScript)
  • Technologies for Web Databases (e.g. MySql)
  • Methods for searching and mining the WWW
  • Web 2.0 concepts and technologies
  • Client Server Architectures.
Cloud Computing

Cloud Computing offers virtual, scalable, shared computing resources, via a network, as a utility service. This module introduces the concepts of cloud computing, explaining why business is moving to this model, and teaches the technologies involved in developing software-as-a-service offered via the cloud. It focuses on platform architectures, programming languages and tools for developing software service ecosystems.

Maxi Project

The Maxi project is a group project which runs through both semesters. The project offers an insight into practical aspects of the taught modules, and provides experience of working in teams. The Maxi project is based around a client, usually from outside the University, who has a real software development problem to be solved. Students work cooperatively in teams of about five people on the analysis, design, implementation and testing of the client's software. The project is managed by a highly experienced professional software project manager, rather than a member of the academic staff.

Dissertation Project

For their individual project, students can choose from a wide range of possibilities in many different environments both within and outside the University. The project is completed during the summer, and each student will have a personal academic supervisor to guide them during this period. The individual project is examined by a dissertation based on the project work and an oral examination.


Graduates from this programme are well qualified for employment related to electronic commerce, web databases, and other internet applications. Graduates from a similar programme run previously by the department are now working for employers such as Logica, Mirror Group and EDS.


The MSc in Software Systems and Internet Technology welcomes applicants with a good first degree from any engineering or science subject.

English language requirements

Our minimum English requirement is:

IELTS 6.5 (with no less than 6.0 in each component)
If you do not meet the entry requirements you can be considered for our pre-Masters Graduate Diploma programme.

Entry requirements

Scholarships and Funding

Please click the button below for further details on fees and funding

Fees and funding