1 / 56

Ray Madachy madachy@usc.edu CS510 October 13, 2006

USC. University of Southern California. C. S. E. Center for Software. Engineering. Commercial Rapid Development. Ray Madachy madachy@usc.edu CS510 October 13, 2006. Introduction. This presentation will show a commercial example of applying MBASE principles in industry

teenie
Download Presentation

Ray Madachy madachy@usc.edu CS510 October 13, 2006

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. USC University of Southern California C S E Center for Software Engineering Commercial Rapid Development Ray Madachy madachy@usc.edu CS510 October 13, 2006

  2. Introduction • This presentation will show a commercial example of applying MBASE principles in industry • The RAPID Value™ methodology is used to conceive and develop e-commerce solutions • initially developed at C-bridge, a USC-CSE affiliate • RAPID Value™ is closely allied with USC MBASE and the Rational Unified Process (RUP) • All are modern, risk-driven iterative lifecycle approaches to developing software systems. • the major lifecycle phases of all 3 methods can be mapped one-to-one • C-bridge extended the lifecycle concepts to the business world, and elaborated the best practices to rapidly deliver Internet systems

  3. Agenda • Process Description • CMM KPA Mapping and Training • Project Example

  4. Profit Life Cycle Management

  5. RAPID ValueTM Methodology Diagnosis Delivery Internet Strategy Analysis Business Value Analysis Internet Readiness Assessment Define Design Develop Deploy Internet Systems Integration Internet Visioning Education/Empowerment Understand Internet Business Opportunity & Value Develop Internet and Organization Direction Create Internet Enabled Business Change Implement Internet Enabled Business Change RAPID Value™ Methodology

  6. Process Phase Mappings

  7. RAPID Value™ Delivery Guiding Principles • Business Solution Focused • Risk-driven Iterative Process • Architecture-first • Timeboxing • Joint Application Development • Demonstration-based Approach • Project Communication using the Internet -Project Center and Knowledge Bank • Object Oriented Analysis, Design and Development

  8. RAPID Value™ Project Approach Iteration Scope, Listening, Delivery focus Lines of readiness Are we ready for the next step? Define Design Develop Deploy Build 1 Build 2 Production Pilot Program Release to Test Beta Program Generate Use Cases Stabilization Build Identify System Actors Object Domain Modeling Polish Design, Build Plan Document Business Processes Define basic development strategies Object Interactions, System Services Detailed Object Design, Logical Data Model

  9. Process Milestones • Process milestones are common anchor points around which plans and budgets are organized • milestones also represent “lines of readiness” • RAPID Value™ contains the following milestones for anchoring product elaboration • Business Vision (BV) • identify what to change, what to change to, and how to make the change happen • unique to the C-bridge RAPID Value™ process • Life Cycle Objectives (LCO) • establishing a sound business case • Life Cycle Architecture (LCA) • commit to a single architecture and elaborate it to cover all major risk sources • Initial Operational Capability (IOC) • commit to transition and support operations

  10. Milestone Element Life Cycle Objectives (LCO) Life Cycle Architecture (LCA) • Top-level system objectives and scope • - System boundary • - Environment parameters and assumptions • - Evolution parameters • Operational concept • - Operations and maintenance scenarios and parameters • - Organizational life-cycle responsibilities (stakeholders) • Elaboration of system objectives and scope of increment • Elaboration of operational concept by increment Definition of Operational Concept • Exercise key usage scenarios • Resolve critical risks • Exercise range of usage scenarios • Resolve major outstanding risks System Prototype(s) • Top-level functions, interfaces, quality attribute levels, including: • - Growth vectors and priorities • - Prototypes • Stakeholders’ concurrence on essentials • Elaboration of functions, interfaces, quality attributes, and prototypes by increment • - Identification of TBD’s( (to-be-determined items) • Stakeholders’ concurrence on their priority concerns Definition of System Requirements • Choice of architecture and elaboration by inc. • - Physical and logical components, connectors, • configurations, constraints • - COTS, reuse choices • - Domain-architecture and architectural style choices • Architecture evolution parameters • Top-level definition of at least one feasible architecture • - Physical and logical elements and relationships • - Choices of COTS and reusable software elements • Identification of infeasible architecture options Definition of System and Software Architecture • Elaboration of WWWWWHH* for Initial Operational • Capability (IOC) • - Partial elaboration, identification of key TBD’s for later increments • Identification of life-cycle stakeholders • - Users, customers, developers, maintainers, interoperators, general public, others • Identification of life-cycle process model • - Top-level stages, increments • Top-level WWWWWHH* by stage Definition of Life- Cycle Plan • Assurance of consistency among elements above • - via analysis, measurement, prototyping, simulation • - Business case analysis for requirements, feasible architectures Feasibility Rationale • Assurance of consistency among elements above • All major risks resolved or covered by risk management plan Description of LCO/LCA Milestones (Risk-driven level of detail for each element) *WWWWWHH: Why, What, When, Who, Where, How, How Much

  11. RAPID ValueTM Methodology Diagnosis Delivery BV LCO LCA IOC Internet Strategy Analysis Business Value Analysis Internet Readiness Assessment Define Design Develop Deploy Internet Systems Integration Internet Visioning Education/Empowerment Understand Internet Business Opportunity & Value Develop Internet and Organization Direction Create Internet Enabled Business Change Implement Internet Enabled Business Change RAPID Value™ Methodology with Process Milestones Process Milestones BV: Business Vision LCO: Life Cycle Objectives LCA: Life Cycle Architecture IOC: Initial Operating Capability

  12. RAPID Value™ Methodology Typical Activity Profiles BV LCO LCA IOC Stages Inception Elaboration Construction Transition Process Activities Diagnosis Define Design Develop Assess Deploy Supporting Activities Management Environment Training Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Time

  13. Account Manager Practice Manager Project Manager Tech Lead/Architect User Interface Coordinator User Interface Developer Data/Systems Analyst Quality Manager Tester Middleware Developer Framework Designer Database Administrator Business Case Analyst Subject Matter Experts RAPID Value™ Delivery Roles

  14. Types of RAPID Value™ Delivery • RAPID Value™ Delivery • normal duration is 24 weeks • this presentation describes the normal process • RAPID Value™ Delivery Fast Track • 16 weeks

  15. Critical RAD Success Factors • Prioritized requirements • A reasonable “ballpark” schedule estimate • Software design for ease of contraction • Schedule tracking for midcourse corrections • Better and fewer people • Teambuilding and shared vision among all stakeholders • Co-location • Learning, metrics, continuous improvement • Prepositioning • domain engineering, architecting • reuse everything: plans, specs, class libraries, middleware, tests, manuals • people and teambuilding, tools and facilities

  16. Timeboxing • Traditionally, size (~functionality) is the independent variable for software development while cost and schedule are dependent on it • Timeboxing treats schedule time as the independent variable (“design-to-schedule”) • development must be accomplished within a fixed timeframe • functionality descoping takes place to ensure that timebox is met

  17. RAPID Value™ Delivery -Diagnosis deliverables used to map Delivery methodology for implementation -Define stage will produce specific line items and use-cases based on business strategies -Design customized system elements with our proprietary technical frameworks -Complex IT Architecture installed for deployment -The Delivery methodology is iterative, meaning that we continuously refine our initiatives based on requirements

  18. Define Objective: develop a prototype of the user interface, define links to external systems, and document business use cases and workflow. Focus: Employ object-oriented analysis techniques and interactive workshops Define User Requirement / Workflow Technology Alternatives Prototype of Application Build Commitment Plan Design Application Definition Document User Interface Prototype Outcome: To build consensus with the project stakeholders Preliminary Release Definitions Deliverables Next Steps Document Design Phase Proposal Project Center

  19. Define Phase Deliverables 1 • Application Definition Document • Application Context • Application Overview • Business Process Workflow • Use Cases • Business Rules • Preliminary System Architecture • User Interface Reference • Batch Job Reference • Preliminary Data Models • System Interface Reference

  20. Define Phase Deliverables 2 • User Interface Prototype • Field Definition Document • Preliminary Acceptance Criteria • Preliminary Release Definitions • Design Phase Proposal • Project Center • Task Distribution Diagram • Refined Project Management Plan • Refined Change Management Plan

  21. ADD: Application Context • Describe the context and background of the application to help readers understand the motivation for the project and business mandate. • Project background • Description of business need or project drivers • Description of the user communities • Expected benefits

  22. ADD: Application Overview • Describe the vision of the system for anyone who requires a brief introduction to what the system will be and who will benefit. • Executive summary • Summary of features • Description of how the system will be developed over many releases, if applicable

  23. Design Objective:Application framework is customized and extended to meet the needs of the application at hand. Focus:Object-oriented design and iterative prototyping techniques are used to work out the details of the new application. Design Functional Design/WorkComponents Application Architecture Technology/ Integration Approach Object and Security Model Quality Assurance/ Test Plan Test Plan Development Application/Architecture Design Acceptance Criteria and Build Plan Outcome:Infrastructure issues such as security, connectivity and performance are resolved by building application ‘slices’ that validate proposed design solutions and help mitigate potential risks. Quality Plan and Test Plan Deliverables Working Slice/Architecture Validation Proposal for Develop

  24. Design Phase Deliverables 1 • Application/Architecture Design • refined (v2.0) of ADD from Design Phase • Data Model • Object Model • Process Distribution • Architecture Design • Framework Design • Style Guide and Programming Standards • Test Harness Design • Revised Workflows and Use Cases

  25. Design Phase Deliverables 2 • User Interface Prototype • Final Acceptance Criteria • Working Slice / Architectural Validation • Parts List • List of all classes, source files, config files that constitute the application • Build Plan • Quality Plan

  26. Design Phase Deliverables 3 • Master Test Plan • Proposal for Develop • Program Management Plan • Change Management Plan

  27. User Interface Design 1 • Detailed descriptions of all screens and dialog boxes including UI flow and field-level validation logic

  28. Application Architecture Design • Describe in detail the application’s design: • Style Guide and Programming Standards • Development Strategies • System Architecture • Data Model • Framework Design • Business Object Design • Refined Requirements • Test Harness Design

  29. Develop Objective: Short, incremental code and test cycles enabling the project team to constantly monitor the quality of the application. Focus: Standard operating principles include team-based development tools, frequently scheduled customer checkpoints, code reviews and other good development practices. Develop Production Ready Application Regression Test Plan/ Performance Data Migration System Test Conversion Plan Release Plan Application Release Software Application Build Plan and Process Regression Testing Outcome:This phase yields a production-ready application. Deliverables Refined Test Plan Rollout/Deployment Plan Plan for Next Release

  30. Develop Phase Deliverables 1 • Application • Unit Code • Build Code • Production Release Code • Version Control Archive • Documentation • Application Build Plan and Processes

  31. Develop Phase Deliverables 2 • Customer Acceptance Testing Suite /Final Test Plans • Screen Specific Test Plan • Scenario Test Plan • Functional Test Plan • Load and Stress Testing Test Plan(Benchmarking Test Plan) • Test Results • Defect Tracking System / Test Results

  32. Develop Phase Deliverables 3 • Preliminary Deployment Plan • Proposal for next release • Refined Program Management Plan • Refined Change Management Plan • Deliver support

  33. Deploy Objective:This final phase may include user training, documentation, release management (i.e. alpha/beta testing), system administration and operational support. Focus: These engagements are customized to the customer’s particular needs. Deploy Training Release Manage-ment Change Control/ Enhancement Documen-tation Plan On-going Support Training Outcome:Incremental application releases to allow early return on investment and ease the burden of change management in the customer’s environment. The project team simply loops through multiple define/design/develop/deploy cycles until the overall scope of the application is achieved. Rollout Support Systems Deliverables Maintenance Plan Enhancement Plan

  34. Deploy Phase Deliverables • Deployment Plan • Schedule • Environment Readiness • User Support Terms and Conditions, Service Level Agreements • Customer Acceptance Testing • Data Conversion • Training • Documentation

  35. After Deployment • Release Scope Management • Release Process • User Training and Documentation • User Support • Performance Monitoring and Tuning • Business Value Assurance

  36. Quality Practices in RAPID Delivery Phases • Deliverable Review and Validation • UI Prototype Development • Project Review and Healthcheck • Acceptance Criteria Development and Sign-off • Test plan development • Use of pre-tested and proven application frameworks and components • Architectural validation • Release scope management • Code Reviews and Inspections • Code Testing • Short build and test cycles • Parallel development and testing environments • Regression testing • Clean staging area • Alpha/beta releases

  37. Agenda • Process Description • CMM KPA Mapping and Training • Project Example

  38. CMM KPA Mapping to Rapid Value – Level 1

  39. CMM KPA Mapping to Rapid Value – Level 2

  40. CMM KPA Mapping to Rapid Value – Level 3

  41. CMM KPA Mapping to Rapid Value – Levels 4 and 5

  42. Training Courses (1/2) METHODOLOGY COURSES  RAPID VALUE WORKSHOP  RAPID VALUE DIAGNOSTICS  RAPID VALUE DELIVERY  SOFTWARE COST ESTIMATION  E-BUSINESS PROJECT MANAGEMENT MANAGEMENT COURSES  JONAH COURSE  TRANSFORMING THE SUPPLY CHAIN CHANGE MANAGEMENT COURSES  CHANGE FOR EXECUTIVES  INTRODUCTION TO ORGANIZATIONAL CHANGE  INTRODUCTION TO PERSONAL CHANGE  CHANGE FOR HR PROFESSIONALS  CHANGE FOR IT PROFESSIONALS

  43. Training Courses (2/2) WEB PROGRAMMING COURSES  WEB SITE DEVELOPMENT  PROGRAMMING WITH JAVA  JAVA ON THE WEB  INTRODUCTION TO EJB  INTRODUCTION TO XML WEB GRAPHICAL DESIGN COURSES  GRAPHICAL DESIGN FOR THE WEB  PROGRAMMING FOR WEB DESIGNERS ADVANCED TECHNOLOGY COURSES  E-BUSINESS ARCHITECTURE  SECURITY FOR E-BUSINESS SYSTEMS

  44. Agenda • Process Description • CMM KPA Mapping and Training • Project Example

  45. Software Schedule Performance

  46. MyU5 Portal for Disk Drive Development • Consolidated visibility of reliable information • Product database (content rationalization) • Access to design engineer on-line & information repository (forums) • Customizable alerts notification • Effect of particular configurations on yield

  47. Business Solution Impact • Reduce engineering development cycle time • Streamline qualification and hand-off to manufacturing • Provide full cycle accountability • Contribute to customer on-time delivery at high volume • Collaborate timely data for more efficient decision making by the engineers responsible for Disk Drive Development • Provide accurate data in order to track trends and highlight alerts and priority for the engineers

  48. Screen Shot #1 PFL-001 EC047 Open 03/27/00 2 CSS Jared Woodward This screen displays a list of Product Failure Logs for users to quickly identify issues.

  49. Screen Shot #2 This is a detail report of the PFl chosen on the previous screen. This describes in detail the issue reported. The error is identified as either electrical and/or mechanical. Mechanical FA Report

  50. Screen Shot #3 The user can drill down even further for additional information on the mechanical problems. The user can view a picture of the faulty hardware by clicking on the HDA Internal Inspection Link HDA Internal Inspection

More Related