MSc FT Computing and Information Systems

G5U5 / MSC
Duration:
1 Year

Description

This MSc is an intensive one-year generalist programme for highly motivated graduates with a good honours degree, but with little prior experience of computer science. You will develop theoretical and practical skills in computing and information systems development. The programme includes modules which introduce core aspects of computing, including a double module in object-oriented programming (using Java), plus modules covering Systems Analysis and Software Engineering – essential for anyone seeking a career in Information Systems development. The core modules are supplemented by optional specialist modules covering a broad range of subjects relevant to the software industry, such as Network Programming, Business Information Systems and Graphical User Interface design. Your project work will typically involve the design and implementation of a significant piece of software within your chosen specialism. Projects undertaken for external organisations are encouraged.

Modules

Year 1
Information Systems
Information Systems

This module consists of two sub-themes:

Systems Analysis and Software engineering: Students will learn about system complexity and the special challenges of building software systems. They will learn how to analyse system and software requirements, produce object-oriented designs, and learn the principles of how to plan, manage and test systems.

Computer Systems and Networks: Students will learn essential aspects of computer architecture, the hardware/software interface, and computer networks.

Read More
IT Programming
IT Programming

This module provides an introduction to the principles of programming in the context of designing and constructing complete programs. Programming techniques will be introduced in the Java programming language and practical work will form an integral part of the course and of the assessment of students. The first half of the course will concentrate on program structures. The second half will cover representation of abstract types such as lists and trees using the types such as records and arrays provided in imperative programming languages.

Read More
Database Systems
Database Systems

Introduction to databases and their language systems in theory and practice.The main topics covered by the course are:

  • The principles and components of database management systems.
  • The main modelling techniques used in the construction of database systems.
  • Implementation of databases using an object-relational database management system.
  • SQL, the main relational database language.
  • Object-Oriented database systems.
  • Future trends, in particular information retrieval and data warehouses.

There are 2 timetabled lectures a week, and 1 hour tutorial per week (though not every week). There will be timetabled laboratory sessions (2 hours a week) for approximately 10 weeks.

Read More
Mobile Services
Mobile Services

Basic mobile services for computer and communication resource poor environments that are accessed over a wireless network and independent of specific devices and platforms are first considered before this model is extended to the realm of ubiquitous or pervasive computing to include context-aware interaction, automated sensing and capture, the disappearing computer and ambient intelligence.

Read More
Security and Authentication
Security and Authentication

The course is concerned with the principles and practice used for secure communications in the Internet.

Read More
Business Technology Strategy
Business Technology Strategy

The Business Technology Strategy module is focused on strategic management of research and development and how technology strategy drives the commercial strategy of innovative technology-based organisations. This module complements the technical areas of the degrees by focusing on the telecommunications sector. The increased exposure to and understanding of the benefits of strategic knowledge and thinking will give the graduates a better preparation for management roles within this sector.

Read More
High Performance Computing
High Performance Computing

The 12 week module involves 2 hours of timetabled lectures per week. Laboratory sessions are timetabled at 2 hours per week for 6 to 7 weeks only. The course syllabus adopts a hands-on programming stance. In addition it focuses on algorithms and architectures to familiarise students with message-passing systems ((MPI) as adopted by industry.

Parallel computing, which implies the simultaneous execution of several processes for solving a single problem, is a mainstream subject with wide ranging implications for computer architecture, algorithms design and programming. The UK has been at the forefront of this technology through its involvement in the development of several innovtive architectures. Queen Mary has been involved with Parallel Computing for more than a decade. In this course, students will be introduced to parallel computing and will gain first hand experience in relevant techniques.

Laboratory work will be based on the MPI (Message Passing Interfaces) standard, running on a network of PCs in the teaching laboratory.

The syllabus mirrors the recommended text book very closely. Other text-books are also listed below as sources of additional reading.

The course should be of interest to Computer Scientists and those following joint programmes (CS/Maths, CS/Stats). It is also suitable for Chemistry and Engineering students who are concerned with the application of high performance parallel computing for their particular field of study e.g. Simulation of chemical Behaviour.

Read More
Graphical User Interfaces
Graphical User Interfaces

Computers are tools that people interact with and through for work and pleasure. Nowadays computers are ubiquitous and are fundamental to all sorts of devices such as washing machines, cars, mobile phones, airplanes, televisions, and musical instruments. However, it is still very difficult to design user interfaces which are simple, intuitive, and easy to use you only have to look at the number of help books (e.g. the proliferation of books with titles such as 'the idiots guide to ') and courses to realise that designers often simply fail to make interfaces usable.

This course introduces you to basic concepts of psychology and communication which inform the way in which interfaces should be designed.

The course comprises lectures, problem classes, and lab sessions.

Lectures

The lectures teach you the basics of:

  • Cognitive psychology principles relevant to the design of GUIs
  • A framework of GUI design guidelines which you can use to inform and evaluate GUI design
  • An introduction to techniques for analysing artefacts and situations to inform the design of suitable GUIs
  • An iterative design process
  • Evaluation techniques with users, heuristics, and models
  • Interaction beyond the visual modality

The lectures are also used to outline coursework to be completed in the lab sessions, and to provide feedback and discussion opportunities about the coursework as it evolves.

Problem classes

Problem classes provide you with a chance to develop your Java skills in order to develop the complex interactivity required in the coursework.

Lab sessions

The lab sessions are a time for you to complete programming exercises set in the early part of the course, and coursework as the course progresses. Lab sessions are compulsory as they are used to assess your progress and to identify problems that you are having. Interesting ideas, and pertinent problems will be discussed in the following lecture.

Exercises

You will undertake exercises individually to help develop your Java Swing capabilities for the first third of the course.

Coursework

The majority of the lab time is for the coursework which is itself strongly linked to the lecture material. You will work in small teams to complete coursework which is composed of three parts:

  • Design iterative design of a GUI to support the key requirement(s) you identified in the requirements capture stage.
  • Implementation of interactive prototype.
  • Evaluation you will evaluate your own prototype and another groups prototype using methods taught in the lecture.

Read More
Artificial Intelligence
Software Risk Assessment
Software Risk Assessment

The role of software is increasingly critical in our everyday lives and the accompanying risks of business or safety critical systems failure can be profound. This course will provide students with a framework for articulating and managing the risks inherent in the systems they will develop as practitioners. Likewise, students will learn how to build decision support tools for uncertain problems in a variety of contexts (legal, medical, safety), but with a special emphasis on software development. This course will make a distinctive offering that will enable our students to bring a principled approach to bear to analyse and solve uncertain and risky problems. Course contents: Quantification of risk and assessment: Bayesian Probability & Utility Theory, Bayes Theorem & Bayesian updating; Causal modelling using Bayesian networks with examples; Measurement for risk: Principles of measurement, Software metrics, Introduction to multi-criteria decision aids; Principles of risk management: The risk life-cycle, Fault trees, Hazard analysis; Building causal models in practice: Patterns, identification, model reuse and composition, Eliciting and building probability tables; Real world examples; Decision support environments.

Read More
Business Information Systems
Business Information Systems

New module under development for 2012/13. Information pertaining to this module will appear once approved.

Read More

Careers

Recent graduate destinations include Sound Engineering, Digital Sound Engineering Company; Signal Design Engineer, Metronet Rail Ltd; Engineer, Sony Ericsson; Engineer, Streaming Networks.

Entry Requirements

You should have a first or upper second class degree in a subject not related to Computer Science, or a degree with less that 50 per cent of the modules in computer science subjects.