Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering 1 The Life Cicle of Software Lesson 5.

Similar presentations


Presentation on theme: "Software Engineering 1 The Life Cicle of Software Lesson 5."— Presentation transcript:

1 Software Engineering 1 The Life Cicle of Software Lesson 5

2 Software Engineering 2 0.Feasibility Study 1.Project Planning and Management 2.Risk Analysis 3.Requirements Analysis 4.Design Analysis 5.Software Implementation 6.V&V (Verification & Validation) 7.Maintness The Life Cycle of Software 

3 Software Engineering 3 The Life Cycle of Software 1. Project Planning and Management Cost, time and effort definition To show these informations we use: Gantt Chart

4 Software Engineering 4 The Life Cycle of Software t 0 = Kickoff-Meeting t F = Software Derivable Jan Feb MarApr May JunJul Aug T 1 := V&V T 4 := Requirements Analysis T 3 := Architectural Analysis T 2 := Software Implementation a Dependency = Milestone with deliverable

5 Software Engineering 5 The Life Cycle of Software The Gantt Chart is made by Project Manager in the first phases BUT Gantt Chart is updated by Project Manager during the project To make a Gantt Chart we use Microsoft Project

6 Software Engineering 6 The Life Cycle of Software Project Manager must update the Gantt Chart when: a developer changes work unexpected problems in the development …

7 Software Engineering 7 The Life Cycle of Software Some solutions for the updating: increase resource allocation (overtime – it does not always work…) assign more resources to certain tasks (it does not always work) try and break task dependencies (e.g. 80%, …) make it a parallel process by splitting the system in independent tasks … or end the project 20 days late

8 Software Engineering 8 The Life Cycle of Software t 0 = Kickoff-Meeting t F = Software Derivable Jan Feb MarApr May JunJul Aug T 1 := V&V T 4 := Requirements Analysis T 3 := Architectural Analysis T 2 := Software Implementation a Dependency = Milestone with deliverable

9 Software Engineering 9 The Life Cycle of Software t 0 = Kickoff-Meeting t F = Software Derivable Jan Feb MarApr May JunJul Aug T 1 := V&V T 4 := Requirements Analysis T 3 := Architectural Analysis T 2 := Software Implementation try and break task dependencies = Milestone with deliverable

10 Software Engineering 10 The Life Cycle of Software t 0 = Kickoff-Meeting t F = Software Derivable Jan Feb MarApr May JunJul Aug T 1 := V&V T 4 := Requirements Analysis T 3 := Architectural Analysis T 2 := Software Implementation a Dependency = Milestone with deliverable

11 Software Engineering 11 The Life Cycle of Software t 0 = Kickoff-Meeting t F = Software Derivable Jan Feb MarApr May JunJul Aug T 1 := V&V T 4 := Requirements Analysis T 3A := A part of Architectural Analysis T 2A := A part Software Implementation parallel process = Milestone with deliverable T 2B T 3B

12 Software Engineering 12 The Life Cycle of Software Project Planning and Management deliverable (made by user and software provider): Gantt Chart a table with more information about activities, developers, …

13 Software Engineering 13 2. Risk Analysis The Life Cycle of Software How can we avoid adverse event (planned or unplanned)? What can we do when an adverse event impact?

14 Software Engineering 14 The Life Cycle of Software Risk Analisys deliverable: a document with a list of adverse event and it’s solutions

15 Software Engineering 15 The Life Cycle of Software 3. Requirements Analysis: (what the system should do) Functionals Requirements NON Functionals Requirements

16 Software Engineering 16 The Life Cycle of Software Functionals Requirements What the customer requires

17 Software Engineering 17 The Life Cycle of Software NON Functionals Requirements Constraints of the system

18 Software Engineering 18 Functionals Requirements: the services that the customer requires The Life Cycle of Software

19 Software Engineering 19 NON-Functionals Requirements: system properties and constraints (e.g. reliability, response time and storage requirements) a particular programming language development method The Life Cycle of Software

20 Software Engineering 20 Requirements Analysis deliverable: 1. DSP (Checklist): requirements document 2. Test Planning: to check the requirements 3. User Manual The Life Cycle of Software

21 Software Engineering 21 Requirements Analysis component: 1.DSP (Checklist): natural language and Use Case Diagrams 2.Test Planning: natural language and a set of pair 3.User Manual: natural language and snapshot of the interface The Life Cycle of Software

22 Software Engineering 22 Problems with natural language: functional and non-functional requirements tend to be mixed-up different requirements may be expressed together the analysis is difficult to understand The Life Cycle of Software

23 Software Engineering 23 4. Design Analysis (how the system should implement the requirements) design analysis define the system’s architecture requirements and design are inseparable The Life Cycle of Software

24 Software Engineering 24 The Life Cycle of Software Logical Architecture Physical Architecture Structural Behaviour How the modules are structured How the modules are implemented How the modules interact

25 Software Engineering 25 The Life Cycle of Software Logical Architecture: an example Interface UserSoftwareStorage

26 Software Engineering 26 The Life Cycle of Software Physical Architecture : an example PC InternetServer

27 Software Engineering 27 Design Analysis deliverable: many UML Diagrams with different detail Class Diagram Sequence Diagram Interaction Diagram Deployment Diagram … The Life Cycle of Software

28 Software Engineering 28 5. Software Implementation Write the code (e.g. Java. C++, …) The Life Cycle of Software Notice: only in sub-activity of this activity the code is written!!!

29 Software Engineering 29 Software Implementation deliverables: osource code of the system odocument with some preliminary tests The Life Cycle of Software

30 Software Engineering 30 6. V&V (Verification & Validation) Make the test defined in the Requirerment Analysis and some other test Some of test are make by the developers Other test are make by other programmers The Life Cycle of Software

31 Software Engineering 31 The Life Cycle of Software Several types of test: test (during the implementation) unit test (after the implementation) integration test system test  -Test  -Test

32 Software Engineering 32 The Life Cycle of Software  -Test A version of the System tested by the users inside the Software Factory V&V deliverable:

33 Software Engineering 33 The Life Cycle of Software  -Test A version of the System tested by some other users V&V deliverable:

34 Software Engineering 34 The Life Cycle of Software 7. Maintness remove new bugs implement the change of requirements implement new requirements


Download ppt "Software Engineering 1 The Life Cicle of Software Lesson 5."

Similar presentations


Ads by Google