CLEANROOM: AN UPDATED
VIEW
EE 599 Software V&V
LCdr Rob Burch
6 May 98
Presentation Goals
• Provide overview of Cleanroom, history and
activities
• Demonstrate applicability to generic OO
methodology
• Outline Cleanroom extensions to specific OO
methods - Booch / Schlaer - Mellor*
10/7/2015
Cleanroom - updated
2
Cleanroom Goal:
Prevent software defects by use of
rigorous precise methods
10/7/2015
Cleanroom - updated
3
Cleanroom is a SHIFT in practice from:
• craftsmanship  peer reviewed engineering
• sequential
 incremental development
• informal design  engineering specification and
design
• unit testing
 team correctness verification
• coverage testing  statistical usage testing
• unknown reliability  measured reliability
10/7/2015
Cleanroom - updated
4
ESSENTIALS
•
•
•
•
•
•
•
Manage Cleanroom Development
Understand the system environment
Write a cleanroom specification
Create an incremental development plan
Develop verifiable software designs
Verify correctness of designs
Carry out statistical quality certification
10/7/2015
Cleanroom - updated
5
ESSENTIALS - Amplified
•
•
•
•
Cleanroom Incremental Development
Cleanroom Specification
Cleanroom Design and Verification
Cleanroom Reliability Testing
10/7/2015
Cleanroom - updated
6
IBM & Cleanroom
IB M 's C lea n ro o m S o ftw a re T ech n o lo g y C en ter
IB M no lo nger p ro vid es C leanro o m S o ftw are
E ngineering services.
For m ore in form ation on C leanroom , please see our C leanroom Softw are E n gin eering W eb page or con tact
IB M by e-m ail or ph on e:
cleanrm @ vn et.ibm .com
span glea@ us.ibm .com
301-803-2763
10/7/2015
Cleanroom - updated
7
Cleanroom - a timeline
•
•
•
•
•
•
1970s- 1980s: Origin of the Ideas
1987: Origin of the Name
1988: ARPA STARS focus on Cleanroom
1989: Research on Reuse and Reliability
1990: Research on Box Structures with Ada
1992: Prototyping of an evaluation Framework for
Reusable Components
• 1991-1992: Prototyping of Cleanroom Process
Guide
10/7/2015
Cleanroom - updated
8
Cleanroom - a timeline: continued
• 1992 - ongoing: Army Demonstration of
Cleanroom Technology
• 1993 - 1994: Prototyping of Tools
• 1993 - ongoing Air Force Demonstration of
Cleanroom Technology
• 1995 - Commercialization of Cleanroom
Certification
• 1995: Cleanroom and CMM Consistency Review
10/7/2015
Cleanroom - updated
10
Cleanroom - a timeline: updated
• 1996 Integrating Cleanroom with OO methods
• 1997 Extensions to Cleanroom
– Booch
– Objectory
– Shlaer-Mellor
10/7/2015
Cleanroom - updated
12
SET - Cleanroom
•
•
•
•
•
•
Process Definition
Precise Software Specification
Rigorous, Structured Development
Indepnedent Testing
Prodcut Certification
Quantitative Management
10/7/2015
Cleanroom - updated
13
Cleanroom & OO: Common
Characteristics
• Lifecycle: Cleanroom incremental development
and OO iterative development
• Usage: OO Use case and Cleanroom usage model
• State machine: Cleanroom state box and OO state
transition diagram
• Reuse: OO class and Cleanroom common service
10/7/2015
Cleanroom - updated
15
Cleanroom & OO: Key differences
• Cleanroom decomposition vs. OO composition
• Cleanroom formal methods vs. OO "cases" in
characterizing usage
• OO inheritance hierarchy vs. Cleanroom usage
hierarchy
• OO graphical vs. Cleanroom tabular
representation
• Tool support
10/7/2015
Cleanroom - updated
16
Booch extensions to
Cleanroom
10/7/2015
Cleanroom - updated
17
Booch extensions to Cleanroom
B ooch P ro cess
1. C oncep tualization


E xecutable P rototype
R isk A ssessm ent
C lean roo m P ro cess
2.5 Increm e n t P la n nin g

Increm ent C onstruction P lan
1.1 P roject P la n nin g

Software D evelopm ent P lan:

R isk A nalysis P lan


V ision of P roject's R equirem ents
M icro P rocess W ork P roducts
1.1 P roject P la n nin g

Software D evelopm ent P lan:

P roject M ission P lan
C lea nr oom exte nsion : P repa re an initia l incre m e nta l de ve lop m e nt p la n to e m b od y the
results of B ooc h R isk A ssess m e nt.
10/7/2015
Cleanroom - updated
18
Booch extensions to Cleanroom
B ooch P ro cess
C lean roo m P ro cess
2. A nalysis
2.1 D om ain A na lysis
2. S p ecification
2.1 R eq u irem e n ts A nalysis
D om ain M odel
Software Requirem ents
2.2 S cenario P la n n in g
2.3 U sage S p ecification
System C ontext D escription
Scenarios
R evised R isk A ssessm ent
M icro Process W ork Products
U sage Specification
2.2 F u nction S p ecification
Function Specification
C lea nr oom exte nsion : P repa re a black bo x functio n specificatio n for the syste m .
10/7/2015
Cleanroom - updated
19
Booch extensions to Cleanroom
B ooch P ro cess
3. D esign
3.1 A rchitec tural P la n n in g
C lean ro o m P rocess
2.4 A rchitecture Specification
Software A rchitecture
A rchitecture D escription
E xecutable and B aselined A rchitecture
M icro Process W ork Products
C lea nr oom exte nsion : P repa re a state box specificatio n fo r the syste m .
C lea nr oom exte nsion : E xa m ine the state box fo r tra nsactio n c los ure.
C lea nr oom exte nsion : E ns ure re fere ntia l tra nspare nc y b y prepa ring a b lack bo x
specificatio n fo r each subsyste m .
10/7/2015
Cleanroom - updated
20
Booch extensions to Cleanroom
B ooch P ro cess
C lean roo m P ro cess
3.2 T actical D esign
2.4 A rchitec ture S p ecification
D escription of C om m on Tactical Policies
M icro Process W ork Products
Software A rchitecture
3.3 R elease P lan nin g
2.5 Increm e n t P la n nin g
R elease Plan
R evised R isk A ssessm ent
I ncrem ent C onstruction Plan
C lea nr oom exte nsion : U pdate the incre m enta l de ve lop m e nt p la n (that w as created as an
actio n p la n for the initia l B ooc h R isk A ssess m e nt) as the B ooc h R e lease P la n a nd
R evised R isk A ssess m e nt.
Test C riteria
M icro Process W ork Products
4.1 U sage M od elin g a nd T est P la n nin g
U sage M odel(s)
Increment Test Plan
C lea nr oom exte nsion : D e ve lop a pla n for statistica l usage testing.
10/7/2015
Cleanroom - updated
21
Booch extensions to Cleanroom
B ooch P ro cess
C lean roo m P ro cess
4. E volu tion
4.1 A p p lication of the M icro
P rocess
3. D evelop m e n t
3.1 S oftw are R ee ngin eering
R eengineering P lan
R eengineered Software Specification
E xecutable R eleases
B ehavioral P rototypes
M icro P rocess W ork P roducts
System and U ser D ocum entation
Q uality A ssurance R esults
3.2 Increm e n t D esig n
In crem en t D esign
3.3 C orrectness V erification
Increm ent V erification R eport
4.2 R elease A ssessm ent a n d C ha n ge
M anagem e n t
M icro P rocess W ork P roducts
4. C ertification
4.2 S tatistic al T esting a n d C ertification
E xecutable System
Statistical Test C ases
Statistical Testing R eport
Increm ent C ertification R eport
1. M anage m e n t
1.4 E ngin eering C ha n ge
E ngineering C hange Log
C lea nr oom exte nsion :C ertify the syste m us ing C lea nroo m statistica l certificatio n.
10/7/2015
Cleanroom - updated
22
Booch extensions to Cleanroom
B ooch P ro cess
5. M ain te na nce
C lean roo m P ro cess
(R egard ed as a ne w increm e n t. A ll
activities ap p ly.)
M icro Process W ork Products:

D ata D ictionary

K ey A bstraction R oles and
R esponsibilities Specifications

O bject D iagram s

State T ransition D ia gram s

Interaction D iagram s

K ey A bstraction R elatio nship
Specifications

C R C C ards

M odule D iagram s

Process D iagram s

Pseu docode

E xecutable Softw are
C lea nr oom exte nsion : N o ne.
R ation ale: N o ne.
10/7/2015
Cleanroom - updated
23
Schlaer-Mellor
extensions to Cleanroom
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean ro o m P rocess
1 . A na ly sis
1 .1 P a rtitio n the S y stem in to D om a ins
1 .1 .1 Id entify a n d P a rtitio n D o m a in s of th e P ro p osed S y ste m
D om ain C hart
1 .1 .2 P rep a re D om a in D escrip tio n
D om ain D escription
1 .1 .3 P rep a re D om a in B rid g e D escrip tion s a n d A ssu m p tio ns
C ross D om ain B ridge D escription
B ridge A ssum ptions
1 .1 .4 P rep a re P roject M a trix
P roject M atrix
1 .2 A na ly ze th e A p p lica tio n D om a in
1 .2 .1 B uild a n O b jec t Inf orm a tio n M od el
O bject Inform ation M odel
2 . S p ecifica tio n
2 .1 R eq u irem e n ts A na ly sis
Software R equirem ents
2 .2 F u nctio n S p ecifica tio n
F unction Specification
C lea nr o o m ex te nsio n : P rep a re a b lack b o x fu nctio n sp ecificatio n fo r the syste m .
10/7/2015
Cleanroom - updated
25
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean ro o m P rocess
1.2.2 B uild th e O b ject S ta te M od el
2.3 U sage S p ecification
O bject State M odel
U sage Specification
4.1 U sage M od elin g a nd T est P la n nin g
U sage M odel(s)
C lea nr oom exte nsion : D e ve lop a n O bject S tate M ode l for the s yste m a nd ana lyze it as a
M arko v C ha in usa ge m ode l.
C lea nr oom exte nsion : U se the object state m ode ls as M arkov usa ge m ode ls in certificatio n
testing o f re usab le co m po ne nts.
10/7/2015
Cleanroom - updated
26
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean ro o m P rocess
1.2.3 B uild th e P rocess M od el
Process M odel
2.4 A rchitec ture S p ecification
Software A rchitecture (state box portion)
C lea nr oom exte nsion : P repa re a top-le ve l state box spec ificatio n fo r the syste m .
C lea nr oom exte nsion : E xa m ine the state box fo r tra nsactio n c los ure.
10/7/2015
Cleanroom - updated
27
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean room P rocess
1.2.4 D erive M odels from the T hree
F unda m e ntal M odels
1.2.4.1 D erive P eer Subsystem L evel
M odels
2.4 A rchitec ture Specification
Software A rchitecture (clear box portion)
Subsystem R elationship M odel
Subsystem C om m unication M odel
Subsystem A ccess M odel
C lea nr oom exte nsion: Prepa re a top-le ve l c lear bo x design for the syste m .
C lea nr oom exte nsion: E nsure re fere ntia l tra nspare nc y b y prepa ring a b lack bo x
specificatio n fo r each subsyste m .
10/7/2015
Cleanroom - updated
28
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean ro o m P rocess
2.5 Increm e n t P la n nin g
Increm ent C onstruction P lan
C lea nr oom exte nsion : P repa re an incre m enta l de ve lop m e nt p la n for s ubs yste m
deve lo p m e nt.
1.2.4.2 D erive O b ject M od els that
D escrib e A sp ects of the S u b syste m s
3.2 Increm e n t D esig n
Increm ent D esign
O bject C om m unication M odel
E vent List
O bject A ccess M odel
State P rocess Table
Thread of C ontrol C hart
C lea nr oom exte nsion : U se the w ork p rod ucts in S M 1.2.4.2 to prepare a state box and
clear bo x for each s ubs yste m .
C lea nr oom exte nsion : E ns ure re fere ntia l tra nspare nc y in s ubs yste m c lea r bo xes, by
deve lo p ing b lack bo x spec ificatio ns for ne xt-le ve l subs yste m s (w hic h m a y be ato m ic
objects).
C lea nr oom exte nsion : C o ntinue the stepw ise process of tra nsactio n specificatio n (the
black bo x), state data definitio n (the state bo x), and p roced ura l des ign (the clear bo x) for
each le ve l o f deco m pos itio n.
10/7/2015
Cleanroom - updated
29
Schlaer-Mellor extensions to
Cleanroom
S hlaer-M ellor P rocess
C lean ro o m P rocess
1.3 C onfirm th e A nalysis
1.3.1 S tatic C onfirm a tion
1.3.2 D yna m ic S im ula tion
1.4 E xter na l S p ecification
1.4.1 D efine S ystem B ou n d ary
System B oundary Statem ent
1.5 E xtract R eq u irem e n ts from th e
S ervice D om ains
3.3 C orrectness V erification
Increm ent V erification R eport
Service D om ain R equirem ents
1.6 A naly ze S erv ice D om ains
Inform ation M odel,
State M odel
P rocess M odel
D erived M odels
C lea nr oom exte nsion : U se black bo x stim u lus inform atio n as an inp ut to S hlaerM ello r S ervice D o m a in A na lys is.
10/7/2015
Cleanroom - updated
30
Schlaer-Mellor extensions to
Cleanroom
10/7/2015
Cleanroom - updated
31
Schlaer-Mellor extensions to
Cleanroom
10/7/2015
Cleanroom - updated
32
Schlaer-Mellor extensions to
Cleanroom
10/7/2015
Cleanroom - updated
33
Conclusion
• Cleanroom techniques are current
• Cleanroom strength is in addressing combination
of management and technical concerns.
• Cleanroom can be applied to OO Methods
• Most people who have studied the relationship
between Cleanroom and object-orientation regard
the two as complementary, each with strengths
that can enhance the practice of the other.
10/7/2015
Cleanroom - updated
34
Descargar

CLEANROOM: AN UPDATED VIEW