Upload
taran
View
159
Download
21
Embed Size (px)
DESCRIPTION
กระบวนการผลิตซอฟต์แวร์ ( Software Process). SDLC (Software Development Life Cycle). - PowerPoint PPT Presentation
Citation preview
(Software Process)
(Software Process)1SDLC (Software Development Life Cycle) ( Logical Process) ( Phase ) ( Planning Phase) ( Analysis Phase) ( Design Phase) ( Implementation Phase ) ( Steps )
2 SDLCWaterfallV-ShapedSpiralIncrementAgile
3Waterfall model
SDLC Waterfall
4Waterfall modelWaterfall Model Waterfall Model Product Product
5 Waterfall , Milestones Sets requirements stability ( user ) (plan, staff, track)
(Milestone) (output)
Waterfall Module
Waterfall Model User User platform platform
Adapted Waterfall model
SDLC Adapted Waterfall waterfall 9V-Shaped model Model (verification) (validation) Software
10V-Shaped model11Project and Requirements Planning
Product Requirements and Specification Analysis spec Software
Architecture or High-Level Design Software
Detailed Design
Production, operation and maintenance System and acceptance testing Software
Integration and Testing Module
Unit testing module
Coding Algorithm Software
V-Shaped model Verification Validation 12 V-Shaped Model Requirement (Risk Management)13 V-shaped Model (high reliability) (hospital patient control applications) Requirement 14Spiral model
15Spiral model spiral 3 6 16Spiral model17Spiral model18Spiral model 19Spiral model model (risk-driven) Prototype product product
20Iterative and Incremental ModelRequirement1SASDImpOpIteration1Built1Requirement2SASDImpOpIteration2Built1Built2Requirement3SASDImpOpIteration3Built1Built2Built321Iterative and Incremental Model SDLC () ()
22Agile ProcessAgile Agile Process Agile RAD (Rapid Application Development) .. 1970 .. 1990 Agile Method
23Agile ProcessAgile 4 [Agile Alliance 2001]1. 2. 3. 4.
24Agile ProcessAgile XP ASD Scrum DSDM Crystal FDD AM
25Extreme Programming (XP) Kent Beck .. 1999 Iteration and Incremental 4 26Extreme Programming (XP)27(Planning)(Design)(Coding)(Testing)ReleaseSoftware IncrementUser StoryIteration PlanSimple DesignSpike Solution : PrototypeUnit TestContinuous integrationAcceptance TestPair ProgrammingUnit TestContinuous Integrations
Adaptive Software Development (ASD)- Jim Highsmith
28
Adaptive Software Development (ASD)29SpeculationCollaborationLearningReleaseAdaptive cycle planningMission statementProject constraintsBasic requirementsTime-boxed release planRequirements gatheringJADMini-specsComponents implemented/testedFocus groups for feedback Formal technical reviews postmortems Software increment adjustments for subsequent cycles
Adaptive Software Development (ASD) (Speculation) (release) (Collaboration) Agile
30
Adaptive Software Development (ASD) (Collaboration)
31
Adaptive Software Development (ASD) (Learning) 3 (Focus Groups) / (Formal Technical Review) (Postmortems)
32ScrumScrum Jeff Sutherland 1990 Schwaber Beedle
33Scrum Scrum
34Scrum Scrum (Sprint) Scrum (Software process pattern)
35Dynamic System Development Method (DSDM)DSDM DSDM => 80% 20% DSDM 80%
36Dynamic System Development Method (DSDM) DSDM (Feasibility Study) (Business Study) (Functional Model Iteration)
37Dynamic System Development Method (DSDM) DSDM (Design and Build Iteration) (Implementation coding) DSDM XP
38Crystal Alistair Cockburn Jim Highsmith Crystal Cockburn Highsmith Agile
39Crystal Crystal Crystal Yellow, Crystal Orange Crystal Family
40Crystal Crystal 3
Human-poweredUltralightStretch-to-fit
41Feature Driven Development (FDD) Peter Coad Stephen Palmer John Felsing Coad
42Feature Driven Development (FDD) FDD
43Agile Modeling (AM) Scott Amble Agile Agile Agile Agile
44Agile Modeling (AM)AM (Model with a purpose) (Use multiple models) (Travel light) (Content is more important than representation) (Know the models and the tools you use to create them) (Adapt locally)
45CMM () (Process Improvement) Total Quality Management (TQM) Business Process Redesign (BPR) Continuous Process Improvement (CPI) Six Sigma CMM
46CMM() (Capability Maturity Model : CMM) SW-CMM (Software Capability Maturity Model) (Software Engineering Institute : SEI) CMM (Capability Maturity)47 (Capability Maturity Model : CMM)
48 5 (Optimizing) 4 (Managed) 3 (Defined) 2 (Repeatable) 1 (Initial) (Capability Maturity Model : CMM) 1 (The initial Level) 49 (Capability Maturity Model : CMM) 2 (The Repeatable Level) (Repeatable)
50 (Capability Maturity Model : CMM) 3 (The Defined Level) 2 (Documented and Integrated Process) (Document Management)
51 (Capability Maturity Model : CMM) 4 (The Managed Level) (Standard) 52 (Capability Maturity Model : CMM) 5 (The Optimizing Level) (Learning Organization) (Technology) (Knowledge Based) (Innovation) 53 (Capability Maturity Model : CMM) Key Process Area (KPA) KPA 54 CMM55 CMM (KPA)1 (Initial)2 (Repeatable)3 (Defined) CMM56 CMM (KPA)4 (Managed)5 (Optimizing) () (Capability Maturity Model : CMM) (KPA) CMM 5758 Slide CMM .. (Tool) Project Management Application ( Microsoft Project) Word Processor/Text Editor Integrated Development Environment (IDE) Drawing/Graphics Application ( Rational Rose, Visible Analyst, Visual Paradigm, SmartDraw, Visio) Computer-Aided System Engineering (CASE) Tool Database Management Application Code Generator Tool59 CASE Tools CASE (Computer-Aided Software Engineering) CASE Tool (Design Editor) (Data Dictionary) (Compiler) (Debugger)60 CASE Tools CASE CASE Repository CASE CASE CASE 61 CASE CASE Tool CASE Tools (Functional Perspective) (Process Perspective) CASE Tools (Integration Perspective)62 CASE CASE Tools 8 (Software Requirement Tool) (Software Design Tools) (Software Construction Tools) (Software Testing Tools) (Software Maintenance Tools) (Software Configuration Management Tools) (Software Engineering Management Tools)8. (Software Quality Tools)63 CASE 1. (Software Requirement Tool) 2 - (Requirement Modeling Tools) - (Requirement Traceability Tools) 64 CASE 2. (Software Design Tools) - - Rational Rose, EA
3. (Software Construction Tools) - - (Program Editor)- (Compiler) - (Interpreter)- (Debugger) Eclipse, EditPlus, Windev, .NET Studio
65 CASE 4. (Software Testing Tools) - (Testing Generation) - (Test Execution Framework) - (Test Evaluation Tools) - (Test Management Tools) - (Performance Analysis Tool) 66 CASE 5. (Software Maintenance Tools) 2 1. (Comprehension Tools) 2. (Reengineering Tools) 6. (Software Configuration Management Tools)
67 CASE 7. (Software Engineering Management Tools) - (Project Planning and Tracking) - (Risk Management) - (Measurement) 8. (Software Quality Tools)- (Inspection Tools) - (Static Analysis Tools) Control Flow
68 CASE ToolsIntegrated CASE Environment- CASE Tool - CASE Tool
Meta Tools- Editor
69 (Methodologies)- - 1. (Structured Approach)2. (Object oriented Approach)3. Heuristic Methodology4. Formal Methodology70 1. (Structured Approach) (Sub-System) (Structured System Analysis and Design: SSAD) Yourdan & Demarco .. 1978
71 1. (Structured Approach) 72
73 - 2. (Object Oriented Approach)
Grady Booch, James Rumbaugh Ivar Jacobson (Object-Oriented System Analysis and Design) (Object)
74 2. (Object Oriented Approach) 75
76InvoiceIDNo.AddressA/C No.Amount
Computer value of goodsComputer discountComputer Ad. ChargeComputer Invoice AmountobjectAttributesMethods 3. Heuristic Methodology- (Informal Method) - - Methodology - Structured Methodology/Approach - Object-oriented Methodology - Data-oriented Methodology
77 4. Formal Methodology- 2 1. (Formal Specification) 2. (Formal Verification) 78- Agile 4 - Extreme Programming (XP) Agile 4 - - - - 79Adaptive Software Development (ASD) 3 ASD 80 Dynamic Systems Development Method (DSDM) DSDM 81 Scrum () Crystal () Agile 82 Feature Driven Development (FDD)- Agile - FDD Agile Modeling (AM)
83- (Process) - Software Process Software Development Process - - (Software Engineering Process) - (Software Process Model) 84- (Process Improvement) - (SEI) (Capability Maturity Model : CMM) 85