Download presentation
Presentation is loading. Please wait.
Published byErnest Watson Modified over 9 years ago
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.