UNIT 1
Introduction to Secure Software Development
Introduction to Secure Software Development
Welcome to Week 1. The content we will examine this week will underpin a number of the important concepts that will be used throughout the module. This begins with an examination of the management approaches to supporting software development, in recognition of the weaknesses of the more traditional approaches such as waterfall, and the strategies which are applicable to the more modern approaches such as agile. The Unified Modelling Language (UML) will be investigated in Week 1, with knowledge gained being applicable throughout the module in relation to the modelling of software deployments from their design phase. From a practical perspective, UML is explored through the creation of a flow chart. Awareness is also brought in Week 1 to the concept of having a risk-aware culture in an organisation; while it is important to develop software that is secure, this is only one aspect to responding to the security challenge. It is critical that the people who are internal to the organisation, who are responsible for developing and maintaining the software, have a security-responsible attitude.
In this unit we shall:
Explore the waterfall and agile approaches to software development, with a focus on the implications of developing secure software using each.
Become acquainted with the Unified Modelling Language and how it can be used to support software development.
Gain a familiarity with the standards which are used by industry to develop secure software.
Appreciate the importance of developing a risk-aware culture within an organisation.
On completion of this unit you will be able to:
Identify relevant academic literature which discusses the ways in which secure software may be developed using an agile process.
Decompose an activity into a set of tasks which can be represented using a flow chart from the UML portfolio of modelling techniques.
Describe the importance of creating a culture of risk awareness in an organisation, in addition to the creation of secure software.