Secure Software Development

From Distributed Computing to Microarchitectures

Unit 10

Welcome to Week 10, in which we will consider the variety of system architectures which exist today, from monolithic deployments to microservices, virtualisation, and containers. We will gain an appreciation of the reasons why the architectures have evolved in the manner that they have and recognise the security problems which can become problematic in each. As we have increasingly moved towards more distributed modes of operation, the surface which can be attacked increases. Intelligent techniques to protect the data that is being transported across these systems is needed, further increasing the drive for system security.
The content this week continues to examine the importance of developing secure software, this time from the perspective of distributed systems and the specific challenges which come from operating in a remote manner. Security techniques are therefore expanded this week through the consideration of encryption, for example, and the patterns used to distribute encryption keys, in addition to the nature of attacks that are specific to virtualised environments. This week helps to bring the module content to a more timely and relevant mode of operation, that of being distributed

Outcomes

  • Summary of the learning outcomes

This unit aims to:

  • Describe a variety of distributed systems, and the pattern in which they evolved
  • Discuss the security attacks that distributed systems, in particular, are vulnerable to
  • Understand the ways in which virtual systems need to be protected due to the specific nature of attacks on them
  • Reflection

What exactly have I learnt and how?

Unit 10; one less unit before unit 11 and the submission of the development process. In this unit, I learned about microarchitectures and distributed computing and why microservices are the future. Today we all have access to web applications, software and websites on the internet without downloading them. This is only possible with servers that are online 24/7. Microservices enable a mix of technologies where the software functions are distributed across different servers. The advantage is that even if one microservice fails, the other software functions can continue to work. In addition, I was very busy with the development of the application. I changed almost the entire design of the application functions. I also used my knowledge from the Django course and added login requests to pages that only users can access. I have some insights into my elaboration in the notes section. Getting everything together by the deadline will be difficult, but we will get it done as a team.

Contact Me