The MSc Professional Software Development is a conversion course designed for highly motivated graduates with a good honours degree in any discipline, with no more than 50% computing content. This course is targeted at those graduates who are interested in advancing their existing degree to gain expert knowledge of software development and those who wish to enter the software industry.
During this programme students will build a solid understanding of Java, a programming language, and its application in real life contexts as well as developing crucial problem solving, design, programming and management skills, required by industry. Furthermore, students are provided with an in-depth understanding of fundamental systems to consolidate their knowledge of computer hardware.
Topics such as Mobile Devices and Applications will allow students to specialise their field of focus whilst modules such as Database Systems, Data Structures and Concurrent Systems equip students with essential transferable skills in the ever expanding industry of data science and analytics. This programme also requires students to complete a major individual computing project, where students will be required to develop a computing solution to a realistic problem, combining all the knowledge they have gained on the course to do so.
This programme aims to:
You will be taught using a wide variety of teaching methods across the modules including lectures, seminars, directed tutorials and practical sessions, totaling between 12-15 hours. You will also be expected to engage in self-study time, around 25 hours per week.
You will have access to Blackboard, our online learning environment, where you can access module resources and reading lists that will assist your preparation for classes and self-study.
This programme utilises a blended delivery approach by providing access to weekly pre-recorded video lectures (either downloadable and/or streamed) to students. Up to two hours of recorded video lectures will be made available each week for each module during the semester. Videos will be made available at least one week in advance of being required and students will be advised of a “must watch by date” as part of the overall schedule of delivery for the module, you will then discuss the material in class.
This is a conversion course designed to allow graduates (in a degree subject with a maximum of 50% computing content) to specialise in software development.
As the world becomes more reliant on software to help manage our lives, both in commercial and domestic settings, there has been a rise in software development jobs. The demand for qualified software developers is ever more increasing and competitive salaries are on offer in both large and small organisations across a wide range of sectors.
Typical job titles include:
According to the National Careers Services, graduates of this field can expect a starting salary of £20,000 – £30,000, experienced workers can expect £30,000 to £40,000 whilst highly experienced workers can expect £50,000 – £,70,000+.
All modules are core.
This module introduces students to the basic hardware components from which a computer system is constructed and the organisation of these components. The architecture is discussed and key concepts considered in the context of the programmable machine. Students will also gain an understanding of how computers communicate in the context both of local and wide area networks.
The module introduces software development concepts and practices in a scaffolding manner enabling students to progressively develop their knowledge. This will be reinforced by interwoven practical lab sessions and tutorial workshops which will focus on and enhance all the necessary practical skills: problem solving, software design, programming skills and software testing to the high level of competence required by industry. The module is also intended to equip students with the knowledge, skills and habits that enable them to function as autonomous, accountable IT professionals.
This module gives students a detailed introduction to the functions of modern operating systems. Particular emphasis is placed on the practical implementation of theoretical concepts and on the key area of Resource Management and Shell Scripting. Students will have the opportunity to develop and consolidate their understanding of computer hardware as well as their software development skills, and will gain experience of using a modern Unix-like operating system.
This module uses interlinked lectures and lab sessions to introduce selection and repetition mechanisms with Java. This enables the introduction of arrays as an extended intermediate storage structure and also files as a permanent storage mechanism. The module extends their object-oriented techniques and the Java constructs into the hierarchy of super and sub classes and the area of inheritance. The module extends the area of interface applications within Android introducing more pre-defined GUI components and mechanisms available to them. The students will be provided with an opportunity to display strong personal management and team skills.
This module recognises the need for flexible and efficient storage of information in computer applications. The underlying principles of database organisation are presented, and practical implementation in a modern DBMS environment provides a basis for the construction of larger-scale e-business solutions.
This module seeks to extend students’ knowledge of, and practical skills in, programming in Java. This will be achieved by focussing on the theoretical underpinning knowledge of a range of data structures and common abstract data types and this will be supplemented by the practical implementation(s) of these leading to their use, and an understanding of their effectiveness through considered analysis and experimentation.
This module will provide students with the opportunity to gain knowledge and skills that will equip them to obtain employment within companies specialising in mobile technologies. Students will gain detailed knowledge of the underlying wireless infrastructure and protocols and the relationships these have with the app creation process and developing software solutions targeted at mobile platforms such as Android, Windows Phone, iOS, and Browser apps based on HTML5.
Numerous computing systems are inherently concurrent in nature where multiple events or activities must be handled at the same time, or concurrently. This module introduces students to the fundamental concepts required to design and develop concurrent systems. The module will provide an overview of the underlying principles of concurrent programming and will give students the opportunity to develop simple practical applications illustrating specific aspects of concurrent systems.
Students are required to undertake a substantial individual project to complete the course. Its purpose is to provide an experience of developing a computing solution to a realistic problem, both to demonstrate capability and to enhance employability. This work combines skills and knowledge acquired previously on the course with those acquired during the project. In particular, students will have an opportunity to (i) strengthen their competence in project management, in taking an initial concept through to a successful implementation; and (ii) enhance their communication skills, in producing a dissertation and defending the work.
Applicants must hold at least:
Non-standard entry is available in exceptional circumstances where an individual has substantial and significant experiential learning, a portfolio of written evidence demonstrating the meeting of graduate qualities, as an alternative entry route.
Check your country-specific entry requirements.
If you are unsure whether your qualifications meet the entry requirements, please contact us and one of our team will contact you to discuss your options.
Applicants must satisfy our general entry requirements as well as meeting specific requirements.
You will need to provide evidence of competence in written and spoken English (GCSE grade C or equivalent).
The general entry requirements are any of the following:
Other English language tests are accepted, click here to find out more.
If you do not have the required IELTS, you may be eligible to study on our Pre-Sessional programmes.
If you have IELTS 5.5, with a maximum one score of 5.0, you may be eligible to study on our Pre-Sessional Standard programme.
If you have IELTS 5.0, with a maximum one score of 4.5, you may be eligible to study on our Pre-Sessional Plus programme.
This course is eligible for postgraduate government funding. Please contact us for details.
Please note that the fees outlined are for your tuition only and do not include the cost of any course books that you may choose to purchase, stationery, accommodation etc. As an Ulster University London and Birmingham branch campus student you will also have access to our on campus libraries and a range of e-learning resources.
Students may be required to purchase some books during their studies, which will cost in the region of £100 to £200.
For self-funding students, we offer a range of scholarships and early payment fee discounts, you can find out more here.
To find out more about this course, we recommend that you complete our enquiry form and one of our team will contact you to discuss your options.
You can apply to study the MSc Professional Software Development via the following methods.
Our Apply page includes further information on how to apply and which documents to include with your application.
Ideally located near many popular cafes, the West End and markets, our London campus is a great place for you to study in the heart of London.
Our scholarships and discounts are available to support students considering university and reward academic excellence.
Our pre-masters courses are designed to help you progress on to postgraduate-level study if you do not currently meet the entry criteria for your chosen postgraduate degree.