BSc (Hons)

Software Engineering

2018 entry

Features and benefits of the course

  • Accreditation renewal of the degree programme is in progress ahead of 2017 intake (and subsequent years), subject to re-approval by the British Computing Society, the chartered professional body for IT. A BCS accredited degree allows graduates on completion to gain Chartered IT Professional status and become a graduate member of the BCS.
  • The four year sandwich route gives you the opportunity to spend your third year on industrial placement boosting your employment prospects on graduation.
  • You will experience what it's like to work as part of a professional team finding solutions to complex problems via group projects. The course includes a large-scale software project which will give you invaluable experience working as part of a developmental team. You can also get involved with extracurricular work to further apply your skills, for example, gaming events and the student computing society.
  • This course is part of a network of computing degrees which share a common first year allowing you to transfer between courses after Year 1 as you develop your areas of interest.
  • We recently invested £300k in hardware upgrades across the Faculty of Science and Engineering. Our excellent facilities include ten new state-of-the-art teaching laboratories equipped with high-specification PCs and Apple Macs with high performance systems and specialist software tools which work on Windows, Linux and Mac OS. 
  • Teaching and research laboratories have advanced graphics workstations, clusters of graphical processing units and NEC SX61 and SX8 vector supercomputers. Our usability lab captures and analyses human behaviour as we interact with digital content.

Accreditations, Awards and Endorsements

Placement options

The full-time four year sandwich route provides the opportunity to spend your third year on  placement in industry. The School offers help with finding suitable placements and experience has shown that taking a placement year can lead to improved performance in the final year of your degree as well as improved employment prospects after graduation.

About the course

Typical units of study may include:

Typical units of study may include

Year 1

Typical units of study include:

  • Computer Systems Fundamentals
  • Information Systems
  • Introduction to Web Design and Development
  • Programming (Java)

Core Units
Computer Systems Fundamentals

This unit provides an introduction to the fundamental principles and mathematics underpinning the design and construction of computer systems, including:

  • Digital Logic and Boolean Algebra: digital logic gates and circuits, Karnaugh maps, use of a digital logic circuit simulator, components of a CPU, processor model, Fetch execute cycle, hardware interrupts
  • Assembly Language Programming: relationship between high level languages and assembler, instruction sets, registers, debugging
  • Discrete Mathematics: matrices and vectors, matrices as linear transforms
  • Functions: definition, properties
  • Sets: subsets, set algebra
  • Logic: propositions, predicates, propositional algebra, proof of simple results

Information Systems

An introduction to the use of information systems in organisations which will show you how to develop key systems analysis techniques to be applied to information systems built on a commercial Relational Database Management System (RDBMS). You will also develop essential communication and teamworking skills. Topics include:

  • Business activities supported by information systems including case studies and examples
  • Use of information systems for management information and decision making, business operations and data processing
  • E-commerce theory, information systems and society
  • Systems analysis and design techniques including UML use cases
  • Database management systems and database design/development: entity relationship diagrams (ERDs), normalisation, SQL
Introduction to Web Design and Development

Introduces the modern context of web design and development, the core development technologies and standards and design methods that cater for different current platforms. The key theme of the unit is the efficient design and development of effective and robust websites for the range of popular platforms using the most modern technologies and techniques.

Topics include:

  • Introduction to the client-server model, web standards, HTML5 semantic mark up, control of presentation via style sheets, interactivity via JavaScript on the client side and PHP on the server side
  • The use of high-level tools for design and development
  • DOM element selection and manipulation via script libraries such as jQuery
  • The production of standards compliant HTML5 video. Students will create dynamic web pages with AMP systems and script on the server side using PHP with MySQL. The key theme for scripting will be the understanding and development of readable code that listens for and responds to browser and user events by manipulating DOM elements.

Programming (Java)

This unit introduces computer programming in a high level programming language and includes principles and practice in problem solving, program design, solution implementation and testing, including:

  • Introduction to programming using Java
  • Software life cycle: importance of correctly identifying the problem, iterative nature of software development, software maintenance
  • Design methodology: the application of the top-down design method using step-wise refinement to produce pseudo-code solutions to problems, incorporating constructs for sequence selection, iteration, abstraction and re-use
  • Verification and testing: the use of desk-top execution, simple debugging strategies and more formal approaches to testing e.g. black box white box boundary analysis and equivalence classes
  • Applications of standards and conventions: software maintenance and developing a professional approach to coding
  • Constructs and features of a structured high level programming language: control constructs, operators, procedural abstraction, simple I/O and use of libraries
  • Data types – primitive types: constants, variables, arrays and simple structured data
  • Object orientated design and implementation: inheritance and polymorphism
  • Software support environment: use of an IDE editors compiler/linkers and operating systems

Year 2

Typical units of study may include:

  • Advanced Programming
  • Database Systems
  • Web Design and Development
  • Professional Development

Core Units
Web Design and Development

Students will build robust, maintainable web applications using a variety of current client-server techniques for web application development, including:

  • jQuery, Ajax and other APIs to create rich media or interactive content e.g. slideshows and media galleries
  • HTML5 Canvas for bitmap graphics and animations
  • Retrieval, manipulation and display of geographical data for client-side devices
  • Client and server side validation of form data
  • Select, update, delete SQL table data on server using double validated form data
  • Session/cookie management
  • Request/response header management
  • Structured data transmission in request/response e.g. xml and json
  • Client/server side programming techniques to create web applications

Advanced Programming

This unit covers concepts relating to object-oriented program design, the use of framework libraries, web server and mobile application development.

The unit covers object-oriented concepts: introduction to objectoriented concepts including class, object, instantiation, attributes, constructor, methods, overloading, inheritance, overriding, polymorphism and design techniques using Unified Modeling Language (UML). Testing of object-oriented programs. Advanced topics: interfaces, inner classes, collections, exception handling, stream based file input/output, building a Graphical User Interface (GUI) using libraries, event handling, graphics and threads. Implementation: practical application and implementation of concepts studied above. Use of Integrated Development Environment (IDE). Implementation of a UML diagram. Documentation and coding standards. Case studies.

Database Systems

This unit explores the theory and practice of the modelling, specification and querying of relational databases and aspects of implementation of database management systems. You will cover:

  • Database modelling: advanced UML with class diagrams and inheritance; mapping UML diagrams to relational schemas
  • Database implementation and querying: creating and maintaining relational databases with SQL; indices; advanced SQL queries; triggers; views
  • Relational algebra: operators: project, select, join, union, intersection, set difference; different types of join; writing algebraic expressions; properties of operators (e.g., associative, distributive)
  • Physical aspects: data structures (e.g., hash tables); buffers; different types of storage (e.g., primary, secondary); blocks as storage units; trade-offs in random and sequential access and network traffic
  • Query processing and optimisation: alternative implementations of relational algebra operators;  rewriting of relational algebraic expressions to improve efficiency
  • Concurrency control: locking, 2-phased locking systems, resolving conflicts, writing transaction-aware SQL scripts
  • Interfacing with programming languages and environments: embedded queries; cursors; data access patterns.
Professional Development

The unit covers the related areas of professional and legal issues and professional and career development and includes a pathway-specific group project.

The current legal framework of computing e.g. data protection legislation, intellectual property rights, e-waste recycling law, computer misuse, freedom of information, computer contracts and employment contracts. Overview and comparison of workable ethical theories e.g. utilitarianism and duty based approaches. Professional bodies in computing – role, structures, codes of conduct and practice. Employment application process and continuing professional development. Themed case study mini-project linked to subject pathway which may include the following elements: project planning and control concepts, planning techniques (e.g. Gantt/PERT charts) and monitoring, individual reflective diary/log book, academic research, software prototype and project report.

Year 3

If you opt for the four year sandwich route your third year will be spent on placement.

Typical units of study include:

  • Enterprise Programming
  • Programming Languages and Software Engineering Frameworks
  • Project

Option units (indicative and may be subject to change year on year):

  • Advanced Web Development
  • Mobile Application Development
  • Software Agents and Optimisation

Core Units
Enterprise Programming

Students will build secure, robust, maintainable enterprise level applications using a variety of current distributed programming techniques. Includes use of common enterprise design patterns and implementation in a suitable language, professional programming techniques, distributed programming creation and analysis of distributed applications in a high level language, web service architectures e.g. web services, WSDL, SOAP, XML/ JSON processing, current techniques in enterprise application development e.g. Hadoop, cloud computing, reference architectures, models and frameworks and enterprise frameworks e.g. Hibernate, Struts.

Programming Languages and Software Engineering Frameworks

This unit will compare and contrast a range of programming language that covers the major programming paradigms such as functional, imperative and declarative. The unit will also critically evaluate the architecture of large scale software. Includes: an overview of the evolution of programming language paradigms and language design. A comparative analysis and critical evaluation of programming language concepts and paradigms, concepts of variable type and binding, design patterns and software architectures. A critical study of software engineering frameworks and build systems.

Project

Provides experience in the critical review of literature and the design, implementation, evaluation and writing up. Working with your supervisor, students develop their project description and specify aims, objectives, methodology and timetable for completion. Final year projects are normally pathway-specific. For group projects, individual and collective aims, objectives and plans are specified.

Likely Optional Units
Advanced Web Development

Students will learn to use and critically evaluate alternatives to the LAMP stack they have met at earlier levels. Students will build robust, maintainable web applications by working within contemporary clientside and server-side frameworks. Contents: Client-side MVC frameworks (e.g. Angular.js) for the structuring and organisation of JavaScript web applications. Extension of client-side technologies (e.g. JavaScript) to the server-side for unified development of event-driven dynamic web apps (e.g. Node.js). Not Only SQL (NoSQL) alternatives to RDBMSs and their associated data structures (e.g. JSON-like formats using MongoDB) for unified client-server data representation. Modern development stacks that combine the technologies above (e.g. MEAN) as an alternative to traditional LAMP development techniques. PHP frameworks (e.g. CodeIgniter, CakePHP) as an alternative to traditional LAMP development techniques for multiuser dynamic web apps. Web servers (e.g. apache configuration, vhosts, .htaccess, URL rewriting), web security (e.g. XSS, SQL injections and SSL/TLS) and cloud hosting services (e.g. Heroku, Google App Engine).

Mobile Applications Development

This unit provides a thorough grounding in smartphone application development, location aware applications and mobile device technologies. Includes smartphone development, creation of mobile applications using a current mobile device development environment e.g. iPhone, iPad, Android, wireless technologies and security, technologies available, characteristics and security models e.g. RFID, WiFi, Bluetooth. Location-aware mobile applications, access and analysis of location on mobile devices and creation of intelligent applications. Current practice in mobile application development. New and emerging mobile application techniques and devices e.g. context aware computing. Wireless sensors and sensor networks. Smart Environments.

Software Agents and Optimisation

Students will be introduced to the fundamental concepts in evolutionary algorithms and agentbased simulation, and develop their proficiency in the development, application and analysis of these methodologies. The unit includes evolution and natural selection, fitness landscapes and search, optimisation and approximation, encodings and fitness functions, evolutionary search and optimisation, and applications. Software agent concepts, intelligent agent design and implementation of multi-agent systems.

Programme Review

Each programme of study that we offer undergoes an annual review to ensure an up-to-date curriculum supported by the latest online learning technology. In addition, we undertake a major review of the programme, normally at 6-yearly intervals, but this can take place at a more frequent interval where required. Applicants should note that the programme currently provided may be subject to change as a result of the review process. We only make changes where we consider it necessary to do so or where we feel that certain changes are in the best interests of students and to enhance the quality of provision. Occasionally, we have to make changes for reasons outside our control. Where there are changes which may materially affect the current programme content and/or structure, offer holders will be informed.

Course Duration and Progression

All students will study the same core units at Level 4 and Level 5. Subject to satisfactory progress, and the availability of placement, students may then transfer onto the BSc (Hons) Software Engineering (Sandwich). If you fail the Sandwich year you will revert to the BSc (Hons) Software Engineering.

Methods of Assessment

You will be assessed by examinations and continuous assessment including laboratory reports, poster presentations, oral presentations and online assessments.

Assessment Weightings and Contact Hours

10 credits equates to 100 hours of study, which is a combination of lectures, seminars and practical sessions, and independent study. A 3 year degree qualification typically comprises 360 credits (120 credits per year). The exact composition of your study time and assessments for the course will vary according to your option choices and style of learning, but it could be:

Study
  • Year 1 25% lectures, seminars or similar; 75% independent study
  • Year 2 25% lectures, seminars or similar; 75% independent study
  • Year 3 20% lectures, seminars or similar; 80% independent study
Assessment
  • Year 1 100% coursework
  • Year 2 85% coursework; 15% examination
  • Year 3 85% coursework; 15% examination
Optional foundation year
  • Study 30% lectures, seminars or similar; 70% independent study
  • Assessment 55% coursework; 45% examination

Additional Information About this Course

Students are expected to behave in a professional and business like manner when on placement or conducting projects with external partners.

Teaching Staff

Your studies are supported by a team of committed and enthusiastic teachers and researchers, experts in their chosen field. We also work with external professionals, many of whom are Manchester Met alumni, to enhance your learning and appreciation of the wider subject. Details of departmental staff can be found at: http://www.scmdt.mmu.ac.uk/our-staff/

Typical entry requirements

These typical entry requirements apply to the 2017 academic year of entry and may be subject to change for the 2018 academic year. Please check back for further details.

UCAS Tariff points/Grades required

104-112

104-112 UCAS Tariff Points at A2 (Grades BCC-BBC) to include minimum grade C at A2 in IT, Computing, Maths or Science.

Pre-2016 BTECs:

BTEC Diploma or BTEC Extended Diploma at Level 3 (Grades D*D or DMM) in IT or Computing accepted with minimum 4 units at Merit from the following:
6 Software Design and Development
11 Systems Analysis and Design
14 Event Driven Programming
15 Object Oriented Programming
16 Procedural Programming
18 Database Design
19 Computer Systems Architecture
20 Client Side Customisation of Web Pages
26 Mathematics for IT Practitioners
27 Web Server Scripting
28 Website Production

Post-2016 BTECs:

BTEC National Diploma or BTEC National Extended Diploma at Level 3 (Grades D*D or DMM) in IT or Computing accepted with Merit in the following:

Computing (first teaching from 2016):

1 Principles of Computer Science
2 Fundamentals of Computer Systems

IT (first teaching from 2017):

1 Information Technology Systems
4 Programming

BTEC Business (IT) and BTEC Creative Media Production not accepted.

Specific GCSE requirements

GCSE grade C or grade 4 in English Language, Science and Mathematics. Level 2 Functional Skills English also accepted.

Non Tariffed Qualifications

106-112 UCAS Tariff Points from Access to HE Diploma in a relevant subject (ICT/Computing/Science) with at least 45 credits at Level 3.

International Baccalaureate points

26 IB Diploma points (to include IT at HL 5)

IELTS score required for international students

6.0 with no element below 5.5

There’s further information for international students on our international website if you’re applying with non-UK qualifications.

Additional Requirements

Applicants who do not meet the subject knowledge requirement may be offered the opportunity to sit an admissions test.

Further information

Applications are considered individually and you are advised to contact our Course Enquires team via the web form www.mmu.ac.uk/course-enquiry

Your career prospects after the course

A degree in computing will prepare you for a wide range of careers in a fast-growing industry.

Jobs in computing include systems manager, web designer and programmer, as well as roles managing technology to support a range of public and private sector organisations.

In addition, the skills you learn on this degree are highly valued by a range of employers and opportunities may exist in areas such as accountancy, management, technical sales and teaching.

Manchester is a major hub for the digital media industry.

The close proximity of MediaCity and local initiatives such as the 100bps Oxford Road "Corridor" broadband project, are attracting key players in the digital media sector along with smaller web design and new media agencies to the city.

94%

In 2014, over 94% of our graduates went directly into work or further study within 6 months of graduation

DHLE survey 2014, for all respondents available for employment or further study and whose destinations are known

How do I apply for this course?

Applications through UCAS

Remember to use the correct institution code for Manchester Metropolitan University on your application: our institution code is M40

Unistats Information

Find out more about Unistats and the Key Information Set.

Find out more about Unistats and the Key Information Set.

Confirmation of Regulator

The Higher Education Funding Council for England is the principal regulator for the University.

Important Notice

This online prospectus provides an overview of our programmes of study and the University. We regularly update our online prospectus so that our published course information is accurate and up to date. Please note that our programmes are subject to review and development on an ongoing basis. Changes may sometimes be necessary. For example, to comply with the requirements of professional or accrediting bodies or as a result of student feedback or external examiners’ reports. We also need to ensure that our courses are dynamic and current and that the content and structure maintain academic standards and enhance the quality of the student experience.

Please check back to the online prospectus before making an application to us.

The provision of education by the University is subject to terms and conditions of enrollment and contract. The current Terms and Conditions Applicable to the provision of the University’s Educational Services are available online. When a student enrolls with us, their study and registration at the University will be governed by various regulations, policies and procedures. It is important that applicants/students familiarize themselves with our Terms and Conditions and the Key Contract Documents referred to within. Applicants will be provided with access to an up to date version at offer stage. This can be found within the Information for Offer Holders document.

Undergraduate Study