Bachelor Of Software Engineering (Cloud Computing)

Study a Bachelor of Software engineering (Cloud Computing) and you’ll leave MDS armed with a range of technical, operational and software management skills that will put you a step ahead in the global tech industry. Throughout your studies, you’ll work across a variety of services and platforms to build a comprehensive, industry-aligned understanding of Cloud Computing and DevOps. You’ll explore the intricacies of cloud infrastructure, master the fundamentals of CI/CD, and explore the in-demand field of microservices architecture. Best of all, our collaboration with Amazon Web Services means you’ll also have the opportunity to design, develop and deploy applications to the AWS platform – the largest and most lucrative cloud computing platform in the world. Cloud technology, along with mobile internet, is predicted to be the top technological driver of job changes in the next five years*, and industry feedback indicates a significant shortage of graduates who demonstrate the relevant technical acumen, along with the ability to think critically and creatively. This course will let you specialise in the in-demand areas of DevOps and Cloud Computing, while mastering a wide range of technical subject areas. The inclusion of a soft skills thread that teaches design thinking, ideation, project and time management, and interpersonal communication, significantly increases our students’ employability.

Key Study Outcomes:

Course Delivery

Can’t find what you’re looking for? Contact a Course Advisor

Workload and Assessment

No. of timetabled hours per week:

Each subject involves 10 hours of study per week, comprising 3 hours of facilitated study and 7 hours self-directed study.

Subject Information

This subject provides an introduction to the information and skills needed to begin working in software engineering. This subject will cover the concepts of object-oriented programming with a particular focus on learning to use the C++ programming language. An understanding of C++ will form the basis of the necessary skills needed for developing professional and complex software packages such as video games.

In this subject students learn the fundamental elements of Cloud Computing. They identify the building blocks of Cloud Computing including essential characteristics, different service models and how these models differ from each other. In addition, students also develop an understanding of resource pooling and virtualisation in Cloud. They learn about various deployment models in cloud computing and how these deployment models differ from traditional IT deployment models.

This subject introduces students to foundational mathematical concepts necessary for specialisation subjects in their degree. Main topics covered are – Linear Algebra, Discrete Maths and Geometry. The delivery consists of theoretical elements, a demonstration, and then the lecturers allow students to put these skills into practice. The students collaborate and share mathematical problem-solving approaches during frequent in-class discussions and are expected to provide these solutions for class reviews.

In this subject students learn the definition, history, value, building blocks, and scope of DevOps. They also learn the process of unification and collaboration between development and operations. Students are introduced to key concepts, benefits, tools, and practices of implementing Continuous Integration, Continuous Testing, and Continuous Deployment. They also analyse the process of automation in DevOps.

Students learn the fundamental data structures and algorithms that are needed to solve common software engineering problems. Students improve their learning throughout this subject by working on a large number of projects. They solve common problems by designing, developing, implementing, testing, and enhancing a collection of data structures and algorithms.

In this subject students learn the fundamentals and core concepts of Service Oriented Architecture and characteristics of microservices. They compare microservice architecture with monolithic style, emphasising why the former is better for continuous delivery. They also deal with operational complexities that are created while managing, monitoring, logging and updating microservices, and learn about the tools used to successfully manage, deploy and monitor applications based on microservice.

In this subject students learn about the fundamentals of Cloud Application development. They acquire the skills to develop and design cloud solutions. Students learn different cloud services such as Compute, Storage, Database among others, offered by key service providers. On completing this subject students will have the ability to develop cloud ready applications. They will also be able to deploy and monitor an application on the Cloud.

The aim of this subject is to provide students with fundamental knowledge of data, questions, and tools that a data scientist deals with. Students will not only be introduced to the ideas behind turning data into information but will also be introduced to the data scientist’s toolbox. Topics include: data scientist skills and responsibilities in a business including planning, performing and presenting projects; data science code of ethics; data manipulation tools and techniques.

This subject introduces students to core concepts of Networking and Database Systems. Students learn fundamentals of Database Management Systems and network topology including network architecture. They are introduced to relational database models and learn fundamentals of structured query language (SQL). Students will apply these concepts through completing multiple software engineering projects.

Students are introduced to the fundamental topics of core computer graphics, 3D graphics programming and the rendering pipeline. Topics included are the transformation pipeline, device states, primitive rendering, basic camera systems, lighting, texturing, alpha techniques as well as software engineering design principles and testing strategies. By the end of the subject, students create a game utilizing 3D graphics concepts as introduced in the class.

In this subject students will learn about advanced cloud computing techniques and services, cloud infrastructure prototyping for distributed systems and networks that enable cloud computing. Students explore different cloud networks and infrastructures including cost, availability and scalability. Core techniques, algorithms, design philosophies and distributed computing concepts will be introduced. The subject will also cover the understanding of software defined architectures and virtualisation. Moreover, students will learn to analyse, discuss and deploy virtual networks on shared cloud infrastructure

This subject introduces students to the fundamentals of entrepreneurship and the concept of entrepreneurial mindset in the technology sector. It stimulates new ways of thinking about enterprising behaviour in a multi-disciplinary manner. Students will learn to identify opportunities, creatively solve problems, network, communicate persuasively and work effectively in a team. In addition, this subject will empower students to propose new ventures that focus on social change for good.

This subject helps students explore several important fields of general inquiry pertaining to significant intellectual issues related to human beings so they can view everyday problems and formulate solutions in new ways. Broadly, the subject covers the theory of knowledge, human cognition, ethical and moral values, analysis of human history, critical analysis, appreciation of literature and arts and social interaction among human beings through a technological context. Human Centered Design is to give students an appreciation of the factors that influence human behavior and interactions so that they can apply specialised skills to help solve problems that affect diverse societies.

This subject provides students with an opportunity to work collaboratively on a series of projects, enhancing skills such as project management, time management, prioritisation, resilience and a gamut of interpersonal skills within a team of people across multiple specialisations. Additionally, students will be challenged to find creative solutions to product development and small-scale rapid prototypes. Students will engage in peer learning through agile development and processes. This learning experience will enhance self-development and enable continuous learning.

In this subject students learn and review key best practices and tool chains used to set up automated workflows for development and operations. Students increase their knowledge around DevOps and are able to minimise the manual tasks of code merge, code commits, branching, code reviews, builds, tests, code quality matrices, integration with repository, analytics and deployment. The subject also covers an overview of scaling and monitoring across various environments.

The aim of this subject is to teach students data mining techniques for both structured and unstructured data. Students will be able to analyse moderate-to-large sized datasets, data preparation, handling missing data, modelling, prediction and classification. Students will also be able to communicate complex information in results of data analytics through effective visualisation techniques.

In this subject students learn about scaling and monitoring processes in the DevOps Environment. Students familiarise themselves with associated tools and are able to set them up. They learn about the services which can be monitored to ensure maximum availability of the application. Students also learn to scale the environment on demand. They develop the skills to deliver software which is scalable, reliable, available and manageable.

The intended aim of this subject is to equip students with fundamentals of Secure by Design and enable abstraction of its underlying key principles. The course content is oriented towards the core pillars of Information Security: Confidentiality, Integrity and Availability. The subject is structured around the main Secure Development Lifecycle (SDLC) Models, Security by Design principles, appropriate SDLC model selection, application of secure development techniques, vulnerabilities and techniques to tackle, secure design and development best practices, introduction to encryption, introduction to the classification of security flaws and application security.

This subject is designed to provide students with professional experience in an area related to their specialisation. The aim of providing industry-specific opportunities is to enable students to develop skills that will enhance their prospects of gaining meaningful employment and building their career for the future.
Much of the benefit of work integrated learning comes from observation, practicing under supervision and reflection. Work Integrated Learning is an excellent way to broaden the students learning environment while they are studying. It allows them to see first-hand how what they are learning in their degree translates into practice, as well as how ‘real world’ practice relates to what they are learning at University.
This subject will develop work ready skills and boost students’ employability while they are studying.

There are two work integrated learning options available to students:
Option 1: Industry Placement
Students are offered the opportunity to work within a technology company as an intern or volunteer at a technology non-profit organisation. It encourages students to build long-term relationships with the tech industry and provides an opportunity for them to work with and learn from people who may end up becoming colleagues, bosses or mentors. It also provides a context in which to enhance their communication skills and work collaboratively in a professional arena. Students will undertake a series of industry-led tasks that are relevant to their field of study in order to understand the key concepts of working in and managing a professional technology team with emphasis placed on the operation of the environment.

Option 2: Industry Live Brief
This subject requires students to respond to criteria set within the context of an Industry Live Project. An understanding of research methodologies appropriate to professional practice and the documentation of personal creative investigation will be explored. Students will also further investigate and examine entrepreneurial and commercial opportunities through collaborative work practice. The subject is delivered from a cross specialisation perspective and draws on both specialised and common software engineering practices.
Students are required to work both independently and as part of a collaborative team in order to conduct research, analyse and define project parameters and deliver innovative solutions that expand the notion of an industry live brief.

Chat With Us