DevOps COM619

This module introduces you to the principles, practices and technologies that underpin modern DevOps. DevOps brings together software development and IT operations with the aim of delivering reliable software more efficiently, while improving communication, collaboration and automation across teams. Throughout the semester, you will apply knowledge gained during your first year and develop new technical skills that reflect contemporary software development and deployment practices. The module is highly practical and centred on both technical implementation and collaborative working. Most of your learning will take place through weekly hands-on activities that directly support your success in the assessments.

Building the Foundations of DevOps

The semester begins with an introduction to DevOps concepts, including the relationship between development and operations, the origins of DevOps, and the benefits it brings to organisations. You will explore how culture, collaboration, automation, continuous integration, continuous deployment, monitoring and logging work together to support modern software delivery. The module also introduces the DevOps lifecycle, enabling you to understand how software moves from planning and development through to deployment, operation and continuous improvement.

At the start of the module, you will form project groups and begin establishing effective ways of working together. As DevOps emphasises communication and shared responsibility, you will be expected to collaborate closely with your team throughout the semester. This includes organising work, sharing code, reviewing progress and supporting one another in solving technical challenges.

Managing Code and Collaborative Development

The early weeks focus on version control and DevOps workflow practices. You will learn how professional software teams manage source code using Git-based workflows and collaborative development processes. Emphasis will be placed on working within a shared codebase, managing branches, resolving conflicts and maintaining a reliable development process.

Alongside the technical skills, your group will begin planning and organising the development of your project. You will use collaborative approaches inspired by Agile methodologies, including task management and iterative development. These practices will help your team coordinate work effectively and maintain visibility of progress throughout the project.

Developing Applications in the Cloud

As the module progresses, you will explore cloud computing concepts and the technologies required to host and run modern applications. You will gain practical experience of deploying applications within cloud-based environments and understanding the infrastructure that supports software delivery.

You will also investigate how development, testing and production environments differ and why these distinctions are important. This will help you understand how organisations reduce risk by validating software before it reaches users. Within your group project, these concepts will be applied when preparing environments and configuring deployment processes.

Testing and Quality Assurance

A significant portion of the module focuses on software quality. You will learn the role of testing within the DevOps lifecycle and how automated testing contributes to reliable software delivery. Practical activities will introduce you to testing approaches used in modern development workflows, including unit testing and broader quality assurance practices.

You will explore how tests can be integrated into automated pipelines so that code changes are checked continuously. This allows defects to be identified earlier and improves confidence when deploying software. Within your project team, you will be expected to develop and maintain testing practices that support the quality of your application.

Working with Data and Security

The module also introduces database technologies and the role they play within web applications. You will examine how applications interact with data and how databases are managed within a DevOps environment.

Security considerations form another important element of the module. You will explore authentication and access control mechanisms, gaining an understanding of how secure systems are designed and operated. These topics will be considered both from a technical perspective and as part of the wider responsibility of maintaining reliable software services.

Continuous Deployment and Automation

One of the central themes of the module is automation. You will learn how modern DevOps teams automate repetitive tasks such as building, testing and deploying software. This includes investigating continuous integration and continuous deployment pipelines that automatically validate and release application updates.

You will gain practical experience of the tools and processes that support automated delivery, helping you understand how organisations reduce manual effort while increasing consistency and reliability. Your group will implement elements of these workflows as part of the project, creating a development process that supports ongoing collaboration and delivery.

Monitoring, Logging and Operations

Towards the latter part of the semester, attention shifts towards the operational aspects of software systems. You will learn how monitoring and logging provide insight into the performance, reliability and behaviour of applications once they have been deployed.

You will explore how operational data can be collected, analysed and used to inform future improvements. Understanding these practices will help you appreciate that successful software development extends beyond writing code and includes maintaining services effectively once they are in use.

Group Project and Professional Practice

The module assessment is closely aligned with the weekly activities and is designed to reflect real-world DevOps practice. Working in groups, you will develop a web-based application while applying the principles and technologies introduced throughout the semester. The project will require you to demonstrate technical competence alongside effective teamwork, communication and project organisation.

Success in the module will depend not only on your ability to implement technical solutions but also on your ability to work collaboratively within a development team. Regular participation in workshops, practical exercises and group activities will provide the experience needed to successfully deliver the project and develop the professional skills expected within modern software development environments.

By the end of the module, you will have gained a practical understanding of how software is planned, developed, tested, deployed, monitored and maintained within a DevOps culture, while also developing the teamwork and collaborative skills that are essential within contemporary technology organisations.


This site uses Just the Docs, a documentation theme for Jekyll.