Delivering peace of mind Architecting for Changes with UML Emmanuel FUCHS C2 Architect
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May What, Why, How Facts: There Is No Way to Make a Simplified Software System Specification. Design Is Complex Because of Human to Human Communication. What: Apply Object Technologies for System Design : UML Object Domain Model. Why: The Costs Spring From the Design Not From the Construction How: Dual Ladder Of Advancement for Experts Recognizing. Dual Process Management and Technical Process. Spiral Use Case Driven Prototyping and Refactoring Process.
THALESRAYTHEONSYSTEMS PROPRIETARY May Business/Domain modeling 1986: Ada OOD Grady Booch. 1990: OSI level 7 Application Service Element (ASE). 1992: NAOS: DCE IDL, Boehm Spiral. 1994: CORBA IDL. 1996: European Commission, Eurocontrol, ATC domain model. 1997: OMG transportation domain task force. 2001: OMG Radar Interface Standard definition. 2003: OMG Architecture Driven Modernization (ADM). 2004: Air Operations training and simulation.
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May Fred Brooks IBM OS/360 project manager: 1965 The Mythical Man-Month : No Silver Bullet: Essence and Accidental in Software Engineering: MMM Second Edition: No Silver Bullet Refired
THALESRAYTHEONSYSTEMS PROPRIETARY May Werewolves in V cycle Documentation And mock-up Phase
THALESRAYTHEONSYSTEMS PROPRIETARY May Werewolves in V cycle Documentation And mock-up Phase werewolves Silver Bullet
THALESRAYTHEONSYSTEMS PROPRIETARY May Well Known Silver Bullets Ada OSI telecom CORBA Relation Data Base …. They all failed because of the lack of domain model (essence). No Silver Bullet Refired : OOD Brass Bullet
THALESRAYTHEONSYSTEMS PROPRIETARY May Essential VS Accidental Real gains are in the design not in the construction: Essential Task: The fashioning of complex conceptual structures that compose the abstract software entity. Accidental Task: The representation of the abstract software entities in programming language. The costs spring from the design (The Essential) Essential = Design. Accidental = Development.
THALESRAYTHEONSYSTEMS PROPRIETARY May Essential And Accidental in V cycle Essential Accidental Design
THALESRAYTHEONSYSTEMS PROPRIETARY May Essential And Accidental Gain Ratio The costs spring from the design Potential Gain 90% Potential Gain 10% Essential: Design Accidental: Development
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May E=MC² Creation of stars and planets, Michelangelo, Sistine Chapel Simple Unifying Principles.
THALESRAYTHEONSYSTEMS PROPRIETARY May Human Creation ? No Simple Unifying Principles. Software is a human creation Software
THALESRAYTHEONSYSTEMS PROPRIETARY May Brook Suggestions and remarks Buy Versus Build: COTS, Open Source. Components Based Development. Requirement refinement and rapid Prototyping: Use Case driven. Early Operational Handbook. Based on COTS. Refactoring. Incremental development-grow no build: Spiral iterative and incremental development. Functional Value Analysis Great Designers: Dual Ladder of advancement Architects of the future.
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May Mythical Man Month (MMM= 3M) t t Man T
THALESRAYTHEONSYSTEMS PROPRIETARY May Mythical Man Month (MMM= 3M) t t Man T T/3
THALESRAYTHEONSYSTEMS PROPRIETARY May Mythical Man Month (MMM= 3M) The Bearing of a child takes nine months, no matter how many women are assigned. =
THALESRAYTHEONSYSTEMS PROPRIETARY May Mythical Man Month (MMM= 3M) t t Man 9 months 3 months =
THALESRAYTHEONSYSTEMS PROPRIETARY May Division Case Division (A/B) Division (B = 0) Division (B <> 0) = Brass Bullet
THALESRAYTHEONSYSTEMS PROPRIETARY May Factory Division (A/B) Division (B = 0) Division (B <> 0) Create() Factory =
THALESRAYTHEONSYSTEMS PROPRIETARY May The design pattern seminal book Ralph, Erich, Richard, and John at OOPSLA 1994 The Gang of Four
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May Great Designers: Dual Ladder Managerial Ladder Technical Ladder Senior member of the technical staff
THALESRAYTHEONSYSTEMS PROPRIETARY May Thales People First Dual Ladder Senior member of the technical staff
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May Modeling method Grady Booch: Object Oriented Analysis and design with application. “A modeling method is a disciplined process for generating a set of models that describe various aspects of a software system under development using some well-defined notation.” UML is “only” the notation. We need a process: a modeling process.
THALESRAYTHEONSYSTEMS PROPRIETARY May Grady Booch: OOAD
THALESRAYTHEONSYSTEMS PROPRIETARY May Management Process Technical Process Dual Track Process CMMI DOD498 For example :RUP (Rational Unified Process) SSS ICD SSDD IRS SRS Business/Domain Model (UML) Sys-EM
THALESRAYTHEONSYSTEMS PROPRIETARY May
THALESRAYTHEONSYSTEMS PROPRIETARY May Barry W. Boehm spiral Pair Review
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental time
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental Incremental Iterative
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental Not This !
THALESRAYTHEONSYSTEMS PROPRIETARY May Use Case Prototyping Cycle Prototyping Refactoring Review Start Here Halfway break
THALESRAYTHEONSYSTEMS PROPRIETARY May Typical learning Increment Quick And Dirty Prototyping And Modelling Code and Model Refactoring Review Break
THALESRAYTHEONSYSTEMS PROPRIETARY May Martin Fowler
THALESRAYTHEONSYSTEMS PROPRIETARY May Typical Prototyping Increment Rapid Prototyping And Modelling Model Refactoring Objective: Use Case Basic Functions Secondary Functions Review Objective: Use Case Basic Functions Secondary Functions Break
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental Learning Modelling/Prototyping Building
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental time Specifications Redaction Common V Cycle Learning And prototyping
THALESRAYTHEONSYSTEMS PROPRIETARY May Iterative and Incremental CMMI Pair Review High Quality steady Level
THALESRAYTHEONSYSTEMS PROPRIETARY May Conclusion Domain modeling Discover domain essential objects. Dual management ladder for expert recognizing Dual process management and technical process Spiral global process Domain process modeling SOA: Require Business/Domain model. Web Service. Work Flow, orchestration. WEB 2.0 Browser DOM example: IDL
THALESRAYTHEONSYSTEMS PROPRIETARY May Conclusion Thank You For Your Attention Questions are welcome Contacts :