Fundamental software engineering activities

sommerville-videos 61,115 views 25 slides Feb 12, 2015
Slide 1
Slide 1 of 25
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25

About This Presentation

Describes the basic activities of software engineering - specification, design and implementation, validation and evolution.
Accompanies video:
https://www.youtube.com/watch?v=Z2no7DxDWRI


Slide Content

Fundamental activities in software engineering Software Engineering 10

Four fundamental activities that are part of all software development processes Specification , design and implementation, validation and evolution

Specification – defining what the software should do Design and implementation – defining the software and data organization and implementing the system

Validation – testing the system for bugs and to check it meets its requirements Evolution – changing the system after it has gone into use

The four basic process activities of specification, development, validation and evolution are organized differently in different development processes.

For example, in the waterfall model, they are organized in sequence, whereas in incremental development they are interleaved.

The requirements engineering process Chapter 2 Software Processes 7 30/10/2014

Design a software architecture and identify the major system components Refine to add detail if required

Implementation involves adding detail to the design and programming the system

Design and implementation are closely related and are normally inter - leaved activities.

A general model of the design process 11 30/10/2014

The software is implemented either by developing a program or programs or by configuring an application system.

Programming is an individual activity with no standard process . Different people program in different ways

Debugging is the activity of using testing to reveal program faults and then correcting these faults .

Test-first development integrates testing/programming and debugging

Verification and validation (V & V) is intended to show that a system meets its stated requirements (verification) and also meets the real needs of the system customer (validation).

System testing involves executing the system with test cases that are derived from the specification of the real data to be processed by the system.

As well as system testing, system validation may involve other reviews and automated program checking procedures

Stages of testing 19 30/10/2014

Testing phases in a plan-driven software process (V-model) 20 30/10/2014

Software is inherently flexible and can change.

As requirements change through changing business circumstances, the software that supports the business must also evolve and change.

Although there has been a demarcation between development and evolution (maintenance) this is increasingly irrelevant as fewer and fewer systems are completely new

System evolution 24 30/10/2014

The first part of my book on software engineering focuses on these fundamental activities of software engineering.