IF2036 Rekayasa Perangkat LunakModel Proses
Sem II 2012/2013
Software Process - Review The roadmap to building high quality software
products Provides a framework for managing activities
Common Process Framework Communication Planning Modeling Construction Development
Umbrella Activities
2 IF2036 RPL - IF ITB
Software Process - Review CMMI – SEI
Level 0: Incomplete Level 1: Performed Level 2: Managed Level 3: Defined Level 4: Quantitatively Managed Level 5: Optimizing
Process Assessment SPICE (ISO/IE15504) ISO 9001:2000
3 IF2036 RPL - IF ITB
Process Models Prescriptive Models
The Waterfall Model Incremental Models
Incremental Model RAD
Evolutionary Process Models Prototyping Spiral Model Concurrent Development Model
4 IF2036 RPL - IF ITB
Process Models (2) Specialized Process Models
CBSE Formal Method Aspect Oriented Development
The Unified Process Agile Process Models
5 IF2036 RPL - IF ITB
The Waterfall Model
Requirements
definition
System andsoftware design
Implementationand unit testing
Integration andsystem testing
Operation and
maintenance
6 IF2036 RPL - IF ITB
Incremental Model
analysis design code test
System/informationengineering
analysis design code test
analysis design code test
analysis design code test
increment 2
increment 3
increment 4
increment 1
delivery of1st increment
delivery of2nd increment
delivery of3rd increment
delivery of4th increment
calendar time
7 IF2036 RPL - IF ITB
RAD Model
businessmodeling
datamodeling
processmodeling
applicationgeneration
testing&
turnover
businessmodeling
datamodeling
processmodeling
applicationgeneration
testing&
turnover
businessmodeling
datamodeling
processmodeling
applicationgeneration
testing&
turnover
team #1
team #2team #3
60 - 90 days
8 IF2036 RPL - IF ITB
Prototyping Model
listento
customerbuild/revise
mock-up
customertest-drivesmock-up
9 IF2036 RPL - IF ITB
Spiral Model
CustomerCommunication
Planning
Construction & ReleaseCustomerEvaluation
Engineering
Risk Analysis
10 IF2036 RPL - IF ITB
Concurrent Development Model
none
Under development
Under review
Baselined
Done
Under revision
Awaiting changes
Analysis activity
11 IF2036 RPL - IF ITB
DomainAnalysis
SW ArchDevelopment
DomainModel
StructuralModel
RepositoryReusableArtifacts/Components
ReusableComponentDevelopment
Analysis ArchitecturalDesign
ComponentEngineering
ComponentQualification
ComponentAdaptation
ComponentComposition
ComponentUpdate
Testing
ApplicationSoftware
CBD
DomainAnalysis
CBSE
12 IF2036 RPL - IF ITB
The Unified Process
Use-case driven, architecture centric, iterative, and incremental software process
Phases Inception phase (customer communication and
planning) Elaboration phase (communication and modeling) Construction phase Transition phase (customer delivery and feedback) Production phase (software monitoring and
support)
13 IF2036 RPL - IF ITB
Preliminary
Iteration (s)iter.
#1
iter.
#2
iter.
#n
iter.
#n+1ite r.
#n+2iter.
#m
iter.
#m +1
Inception Elaboration Construction Transition
Ite ra tio n s
Phases
Core Workflows
An iteration in theelaboration phase
Requirements
Design
Implementation
Test
Analysis
Iteration and Workflow
14 IF2036 RPL - IF ITB
An Agile View of Process
Represents a reasonable compromise between conventional software engineering for certain classes of software and certain types of software projects
Can deliver successful systems quickly Stresses continuous communication and collaboration
among developers and customers Embraces a philosophy that encourages:
customer satisfaction, incremental software delivery, small project teams (composed of software engineers and
stakeholders), informal methods, and minimal software engineering work products
Stress on-time delivery of an operational software increment over analysis and design
15 IF2036 RPL - IF ITB
Manifesto for Agile Software Development
Proposes that it may be better to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
While the items on the right are still important the items on the left are more valuable under this philosophy
Note: although most practitioners agree with this philosophy in theory, many pragmatic issues surface in the real world that may cause items on the right to be as important as items on the left
16 IF2036 RPL - IF ITB
12 Principles Highest priority: user satisfaction Welcome changing requirement Deliver working software frequently Business people and developers work together
daily Build around motivated individuals Face-to-face conversation Working software: primary measure of progress Promote sustainable development Continuous attention to technical excellence and
good design Simplicity is essential Self-organizing team Tune and adjust team behavior at regular
intervals17 IF2036 RPL - IF ITB
Agile Process ModelsAll agile process models conform to the
manifestoand the principles
Examples: Extreme Programming (XP) Adaptive Software Development (ASD) Dynamic Systems Development Method
(DSDM) Scrum Crystal Feature Driven Development (FDD) Agile Modeling (AM) * SEPA 6th ed, Roger S. Pressman
18 IF2036 RPL - IF ITB