You are here

Courses Default Image

BSc (Hons) Software Development

Open days

Meet your lecturers, find out more about the course and view academic and social facilities at an Open Event.

University of Suffolk on Ipswich Waterfront
UCAS code: 
I300
Institution code: 
S82
Location: 
West Suffolk College

Duration: 

Three years full-time.

Five/Six years part-time.

Typical Offer: 

2018 entry: 112 UCAS tariff points (or above)

BBC (A-Level), DMM (BTEC).

Please see entry requirements below.

 

Introduction

The BSc (Hons) Software Development offers the opportunity to build expertise in creating software for the many devices, platforms, and technologies that connect us for business, creativity, and entertainment.

The course covers the design and development of Apps, Applications, Tools and Services for Desktop, Mobile, Tablet, and Smart Devices, plus the Web and Cloud-based Systems. There is an emphasis on creating high-quality software with great user experience, using technologies such as touchscreens and motion sensors.

 

Course modules

Full downloadable information regarding all University of Suffolk courses, including Key Facts, Course Aims, Course Structure and Assessment, is available in the Definitive Course Record.

Software Development Fundamentals

The module introduces programming with an emphasis on the multi-paradigm approach required to develop software for today’s computing devices. While knowledge of programming fundamentals such as data types, variables and branching remain essential, students must also be aware of object oriented concepts, event-driven concepts and the move towards a declarative model for defining the user interface.

Indicative Content and Technology: Programming languages such as Processing, C, Java, C#, etc.

 

Introduction to Web Development

The purpose of this module is to provide an opportunity for learners to understand the underlying concepts and principles of how to design, develop and test a multi-page website using a range of modern tools, technologies and scripting languages. The module encourages students to experiment with different approaches available for designing and creating web pages, as well as to clearly and appropriately present their ideas to different target audiences.

Indicative Content and Technology: Web development tools and languages such as HTML, CSS, JavaScript, PHP, etc.

 

Experience Design

Creating technology experiences around the needs of the user is of paramount importance in today’s digital world. The experience design module introduces the topic from different perspectives by investigating User Experience Design (UX), Interaction Design and the customer experience. The module also explores the design and prototyping of experiences for current platforms.

Indicative Content and Technology: UX, Interaction Design, prototyping tools.

 

Digital Tools

Mastery of digital tools is essential in order create, manipulate and manage media elements including icons, images, illustrations, audio and video within software and documentation. The module emphasises the importance of applying design principles to produce high-quality media elements for application software, computer games, and web sites.

Indicative Content and Technology: Design and creation of media elements for software, computer games and the web, design principles, and creative tools, e.g. Adobe CS/CC, platform-specific software design tools, etc.

 

Computing Fundamentals

The purpose of this module is to provide learners with knowledge of the core concepts and principles associated with computation and computer technology including computer systems, number systems, data and file formats and storage, algorithms and data structures, operating systems, networking and security. The module will encourage learners to explore and evaluate different approaches to solving a problem and effectively communicate the results of their studies.

Indicative Content and Technology: Fundamental aspects of computing / computer science, networking, security, and operating systems, e.g. Linux, etc.

 

Database Principles and Practice

The importance of data-rich applications has increased in recent years and continues to develop further as organisations place ever more value in their data. This module provides grounding in database design and implementation. It provides learners an opportunity to practice a range of database development techniques which can be used in a variety of computing contexts.

Indicative Content and Technology: Database design tools, Database Management Systems (DBMS), e.g. Microsoft SQL Server, etc.

 

Advanced Software Development

Advanced software development involves the use and construction of software components. This module builds on the fundamentals of software development and the programming of basic applications and moves the learner towards the design, development and utilisation of reusable software components.

Indicative Content and Technology: Software Application development, Application Programming Interface (API) development, Object Oriented Programming (OOP). Use of industry-standard programming languages, design and development tools, e.g. C#, C++, Unified Modelling Language (UML), Microsoft Visual Studio, etc.

 

Devices and Prototyping

The purpose of this module is for learners to gain skills and experience with the design, development and testing of programs that interface with external devices such as USB connected components, sensors, motors and LEDs. The module will require learners to experiment with a range of tools and technologies used for prototyping devices. Learners will be required to apply their knowledge and skills to a specific problem, such as a home automation system, smart lighting or temperature control. Following this module, learners will have a critical understanding of the issues relating to the creation of smart systems and the vision of the Internet of Things (IoT).

Indicative Content and Technology: Prototyping and programming devices with, for example, Arduino, C/C++, Python. The Internet of Things (IoT), automation, smart devices.

 

Web Based Services

The purpose of this module is to encourage learners to understand the key differentiators between web applications and services including design considerations and the tools and technologies involved. The focus of the module is on complex data-rich, web solutions accessible from different devices by a variety of user types. Many organisations now use such web-based solutions to support some or all of their processes and management functions. The topics covered in the module also apply to: telephony, social networking, media streaming, E-commerce and data services, amongst others. It is therefore important for learners to have a clear understanding of processes, data, information and security in relation to web-based services. It is also important for them to appreciate the different approaches that can be taken when developing complex data-rich web-based service. As a result, the module encourages learners to explore, experiment with and evaluate alternate ideas, in order to gain an in-depth understanding of modern web systems and services.

Indicative Content and Technology: Web Architectures - Multi-tiered, Model View Controller (MVC) and Web Services. Server-side development languages, such as PHP, ASP.NET, JSP/Servlets, etc. Data output with, for example, XML, JSON, etc. Installing and Configuring Web Servers, such as IIS, Tomcat, Apache, and Cloud/Elastic Services .

 

Management Information Systems

In many undertakings it is clear that better information leads to better outcomes. Management Information Systems are crucial to the successful operation of organisations. The rules of construction for Management Information Systems need to be explored and understood. This module provides grounding in the theory and practice of Management Information Systems. It provides learners with an opportunity to examine a range of technologies which can be used to support the generation and use of management information.

Indicative Content and Technology: Current developments in Management Information Systems, for example, Business Intelligence. Utilising technologies for MIS, e.g. Database Management Systems (DBMS), Office Applications, Plug-ins, etc.

 

Industry, Professional and Project

The purpose of this module is to provide learners with the opportunity to develop personal, professional and project management skills in relation to their intended industry sector. The project will reflect those found within each industry sector as closely as is reasonably practicable. The module provides the opportunity for students to work with those in their own and other disciplines. In addition, learners will be able gain an insight into the theories of project management, methodologies and team dynamics.

Indicative Content and Technology: Project management theories, methodologies and wider issues, such as Agile, Scrum, Lean, DevOps, Law, Ethics and Professionalism, etc. Working in a cross-disciplinary team with students from the Software Development, Computer Games Technology and IT Service Management degrees.

 

Skills in Research and Problem Solving

This module encourages learners to perform research, analyse findings, critical evaluate and effectively present outcomes, conforming to academic standards. Learners will be required to select appropriate, high quality sources for their research and to employ established analysis techniques in order to produce and present information, arguments and outcomes in a variety of forms. This module also prepares learners for higher level study and their final year project.

Indicative Content and Technology: Investigation of an area of interest within Computing, as chosen by the student, using research publications from sources such as the ACM Digital Library (which provides academic journals, conference proceedings, magazines, and e-books).

 

Advanced Systems and Network Programming

The purpose of this module is to provide learners with a deep understanding of the design and development issues of advanced internet and server technologies involved in for example, distributed, cloud and elastic computing. Learners will experiment with various operating system to explore interaction with system level data structures, inter-process communication, and associated APIs. The module will cover how advanced internet technologies such as cloud and elastic computing systems are developed from the ground up, as well the key issues, algorithms and data structures involved in the development of such systems.

Indicative Content and Technology: Big data, data mining and data warehousing. Cloud and elastic computing. Operating system APIs. Inter-process communication, e.g. TCP/IP, Sockets, WebSockets API,etc. Client/server programming involving internet protocols, e.g. TCP/IP, HTTP. Algorithms, e.g. Load balancing, etc.
 

Cross-Platform App Development

In order to maximise the potential of their software, developers now need to target multiple platforms and devices for their apps. This module examines cross-platform development, its challenges and its potential. Learners will be provided with an opportunity to investigate potential app solutions by undertaking research and development within a collaborative and innovation-focussed environment that highlights the need for design, quality, and professionalism.

Indicative Content and Technology: Designing for multiple platforms and devices, e.g. Android, Windows, Phone, Tablet, TV, etc. Cross-platform software development technologies and tools, e.g. Cross-platform APIs such as Xamarin, Microsoft Visual Studio, Android Studio, etc.

 

Computer Security

The module covers the major threats and risks that affect the security of a network and the systems that rely on it (network security), and the major threats to data in both structured and unstructured form (data security). The module will present techniques that aim to counter these threats and minimise risks with technical mechanisms.

Indicative Content and Technology: Information, Network and Data Security. Cryptography, authentication, access control, detection systems.

 

Digital Innovation and Entrepreneurship

This module explores innovation and entrepreneurship in the digital space. The nature of innovation and entrepreneurship, and the digital economy will be examined. Potential ideas for harnessing technology in order to meet an identified need or opportunity will be considered, highlighting the need for professionalism and good practice within research and development.

Indicative Content and Technology: Innovation and entrepreneurship in the digital space. 'Tech Start-ups', networking, planning, funding, research and development, globalisation, sustainability.

 

Final Project

The final project gives students the opportunity to explore areas of interest in computing and to build on knowlegde gained from other modules on the course. The research may involve, for example, the development of an app, web service, or smart device.

Indicative Content and Technology: The proposal, planning, research, development, and presentation of a dissertation and related work. The technology used will be selected by the student, as appropriate to the project.

 

Fees and finance

2017-18

  • Full-time Tuition fee: £9,250 p.a.
  • International Tuition fee: £10,080 p.a.

2018-19         

Subject to approval of maximum fee by parliament                    

  • Full-time Tuition fee: £9,250 p.a.
  • Part-time Tuition fee: £1,454 per 20 credit module (Please contact the Infozone for further information).
  • International Tuition fee: £13,000 p.a.

Further Information                                                       

  • Detailed information about Tuition Fees
  • Find out more about Financial Support eligibility.
  • Also see Loans and Grants.
  • At University of Suffolk, your tuition fees provide access to all the usual teaching and learning facilities that you would expect. However, there may be additional costs associated with your course that you will need to budget for. See Course Costs.

 

    Entry requirements

    Academic Requirements

    2018 entry: 112 UCAS tariff points (or above), BBC (A-Level), DMM (BTEC).

    Also see How to Apply.

    International Requirements

    IELTS 6.0 overall (minimum 5.5 in all components) where English is not the students' first language.

    Also see International and EU.