SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Software Production Layout
                 Software Process
                  Software Process

                                      Project
                                       Project
                instantiated by     Project
                                     Project
                                  Project
                                   Project
               consists of                    consists of
                                                    Project Execution
                                                     Project Execution
      Project Management                            ••Analysis
                                                       Analysis
       Project Management                           ••Design
      ••Planning
         Planning                                      Design
      ••Control                                     ••Implementation
                                                       Implementation
         Control                                    ••Test
                                                       Test
     uses
                                                                   uses
   Project                                   System of
    Project
 Management                                  methods for
  Management         System of                                    Software
                                                                   Software
 Methodology                                 software product
 Methodology         methods for                                Development
                                                                 Development
                                             development
                     project                                    Methodology
                                                                 Methodology
        is a         management
                                                      is a
A Definition of Process
W. Humphrey and P. Feiler: "A process is a set of partially
 W. Humphrey and P. Feiler: "A process is a set of partially
ordered steps intended to reach a goal..."(to produce and
 ordered steps intended to reach a goal..."(to produce and
maintain requested software deliverables). A software process
 maintain requested software deliverables). A software process
includes sets of related artifacts, human and computerized
 includes sets of related artifacts, human and computerized
resources, organizational structures and constraints.
 resources, organizational structures and constraints.
                                   B
                             A              D
                                   C
                                         Relationships
                                    of all tasks (workflow)




                       PROCESS
          Skills,                      Tools
        Training,
       Motivation, &
       Management
Rational Unified Process®

• The Rational Unified Process® is a Software
  Engineering Process. It provides a disciplined
  approach to assigning tasks and responsibilities
  within a development organization. Its goal is to
  ensure the production of high-quality software that
  meets the needs of its end-users, within a
  predictable schedule and budget.
The Unified Process of Software
Development
 • The key feature:Software development is done in a
   series of fixed periods, for example, between 2 and
   6 weeks. Each period is called as iteration.
 • At the end of each iteration, we have an executable
   system.
 • Each iteration has its own requirement analysis,
   design, coding and testing.
 • The software development is incremental.
   Implement New features added apart from the
   User’s suggested changes.
Rational Unified Process (RUP)
                           time

                                                                        Phases
         Process Workflows             Inception Elaboration               Construction         Transition

                 Business Modeling
t
conten




                      Requirements
                  Analysis & Design
                    Implementation
                              Test
                       Deployment
         Supporting Workflows
         Configuration & Change Mgmt
                 Project Management
                         Environment
                                       Preliminary     Iter.    Iter.     Iter.   Iter. Iter.    Iter.    Iter.
                                       Iteration(s)   #1       #2        #n       #n+1 #n+2     #m       #m+1

                                                                    Iterations
Spiral Development

    Product:class                                                                         Product: requirements
    models +                                                                              specifications

                                                                                                                     Step n:
       Step n+1:                                                                                                     Analyze
          Design                                                                                                     requirements
                                                                         complete
                                                                         targeted
                                                                       requirements

       Step n+2:                                                                                                     Step n+3:
      Implement                                                                                                      Test

   Product: code +                                                                         Product: test results +
Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
Incremental Development
     Iteration No.                            1          2        3                                                  867 868
                                                                                           Update SPMP1
    Test whole
    Integrate                                                                              Update Test documentation

    Test units                                                                             Update source code
    Implement
    Design                                                                                 Update SDD2

    Analyze
    requirements                                                                           Update SRS3

     1                                                  2
       Software Project Mangement Plan (chapter 2);       Software Design Document (chapter 5);
     3
       Software Requirements Specification (chapter 3);

Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
The Unified Software Development Process:
      Classification of Iterations
  • Inception iterations: preliminary interaction
    with stakeholders
           – primarily customer
           – users
           – financial backers etc.
  • Elaboration iterations : finalization of what’s
    wanted and needed; set architecture baseline
  • Construction iterations : results in initial
    operational capability
  • Transition iterations : completes product
    release
Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
USDP vs. Standard Terminology ½ (Booch, Jacobson &
Rumbaugh)
                              Classification of iterations
   Individual iteration
                      Inception Elaboration Construction        Transition

                        Prelim. Iter. .. Iter. Iter. ….. Iter. Iter. … Iter.
                      iterations #1       #n #n+1         #m #m+1       #k

       Requirements

           Analysis
                                        USDP calls these
                                        “core workflows”
             Design
         Implemen-                      (Classically called
             tation                         “phases”)
               Test
Unified Process Matrix
                                                                 Jacobson et al: USDP
               Inception Elaboration       Construction             Transition

                 Prelim. Iter. .. Iter. Iter.    …..      Iter. Iter. …..       Iter.
               iterations #1       #n #n+1                 #m #m+1               #k


Requirements                                    Amount of effort expended
                                                on the requirements phase
                                                during the first Construction
  Analysis                                      iteration

   Design

 Implemen-
   tation

    Test
The Six USDP Models (Views of the
 Application)



     Use-case                                                       Test
      model                                                         model



                Analysis                                   Implementation
                 model                                         model

                                      Design      Deployment
                                      model         model

Graphics reproduced with permission from Corel.
Life of the Unified Process

                                    Inception                                                                                                                                                                        Elaboration                                                                                                      Construction                             Transition
    The seed idea for the                                                                                                                                                                                               The architecture                                                                                             The software is brought                 The software is
  development is brought to                                                                                                                                                                                                is defined                                                                                                   from an executable                  turned over to the
the point of being sufficiently                                                                                                                                                                                                                                                                                                        architectural baseline                user community
   well founded to warrant                                                                                                                                                                                              ...                                                        ...                                                to the point where it is
entering into the elaboration                                                                                                                                                                                                                                                                                                        ready to be transitioned    Iteration                                                 Iteration n
            phase                                                                                                                                                                                                                                                                                                                     to the user community      n-1
 Iteration 1                                                                                                 Iteration 2                                                                                                                                                                                                              ...             ...


                                                                                                                                                                                                                                                                                                                                                ...
        Inception                   Elaboration        Construction                  Transition                    Inception                   Elaboration        Construction                  Transition
      The seed idea for the         The architecture   The software is brought        The software is                                                                                                                          Inception                   Elaboration         Construction                  Transition                                                Inception                   Elaboration         Construction                  Transition
   development is brought to           is defined         from an executable         turned over to the          The seed idea for the         The architecture   The software is brought        The software is             The seed idea for the          The architecture   The software is brought        The software is                                        The seed idea for the          The architecture   The software is brought        The software is
  the point of being sufficiently                        architectural baseline       user community
     w ell founded to warrant       ...         ...     to the point where it is
                                                                                                              development is brought to           is defined         from an executable         turned over to the         development is brought to           is defined         from an executable         turned over to the                                    development is brought to           is defined         from an executable         turned over to the
                                                                                                             the point of being sufficiently                        architectural baseline       user community
  entering into the elaboration
               phase
                                                       ready to be transitioned
                                                        to the user community
                                                                                   Iteration
                                                                                   n-1
                                                                                               Iteration n
                                                                                                                well founded to warrant        ...         ...     to the point where it is
                                                                                                                                                                                                                         the point of being sufficiently
                                                                                                                                                                                                                                                           ...          ...
                                                                                                                                                                                                                                                                                 architectural baseline       user community                                     the point of being sufficiently
                                                                                                                                                                                                                                                                                                                                                                                                   ...          ...
                                                                                                                                                                                                                                                                                                                                                                                                                         architectural baseline       user community
                                                        ...             ...                                                                                                                   Iteration   Iteration n       well founded to warrant                             to the point where it is                                                            well founded to warrant                             to the point where it is
  Iteration 1      Iteration 2                                                                               entering into the elaboration                        ready to be transitioned                                                                                                                 Iteration   Iteration n                                                                                                                 Iteration   Iteration n
                                                                                                                                                                                              n-1                        entering into the elaboration                         ready to be transitioned                                                          entering into the elaboration                         ready to be transitioned
                                                                                                                         phase                                     to the user community
                                                                                                                                                                                                                                     phase                                      to the user community      n-1                                                               phase                                      to the user community      n-1
                                                                                                                                                                   ...             ...
                                                                                                             Iteration 1      Iteration 2
                                                                                                                                                                                                                         Iteration 1       Iteration 2                          ...             ...                                                              Iteration 1       Iteration 2                          ...             ...




                                                                                                                                                                                                                                                                                                      Cycles
 Birth                                                                                                                                                                                                                                                                                                                                                                                                                                Death


                                                                                                                                                                                                                                                                                                                                                                                                                                                                             12
Unified Process Models

                                                    Use Case Model
                       specified by                 Models Use Cases                       verified by
                                                    and their relationships to
                                                    users


    Analysis Model                                                                                       Test Model
 Refines the use cases and
                                                                                              Describes the test cases
 makes an initial allocation of
                                                                                              that verify the use cases
 behavior to set of objects

                                      realized by                         distributed by
      Design Model
 Defines the static structure
 of the system as                                                                               Deployment Model
 subsystems, classes and                                                                      Defines the physical nodes
                                                                   implemented by             of computers and the
 interfaces and defines the
 use cases as collaborations                                                                  mapping of the components
 of subsystems, classes and                                                                   to those nodes
 interfaces                                          Implementation
                                                         Model
                                              Includes components
                                              (representing source code)
                                              and the mapping of classes to
                                              components                                                                   13
The Four Ps in Software Development -
People, Project, Product and Process
  • People - The architects, developers, testers and the supporting
    management, users, customers, and stakeholders - Actual
    Humans!
  • Project - The organizational element through which software is
    managed.
  • Product - Artifacts that are created during the life of the project,
    e.g., models, source code.
  • Process - A definition of the complete set of activities needed to
    transform users’ requirements into a product. A process is a
    template for creating projects.
      – Tools - Software that is used to automate the activities defined in the
        process.



                                                                                  14
Cycles and Phases

  Each cycle results in a new release of the system,
  Each cycle results in a new release of the system,
  and each is a product ready for delivery. This
  and each is a product ready for delivery. This
  product has to accommodate the specified needs.
  product has to accommodate the specified needs.
 The development cycle is divided in four consecutive
   phases
 • Inception: a good idea is developed into a vision of the
   end product and the business case for the product is
   presented.
 • Elaboration: most of the product requirements are
   specified and the system architecture is designed.
 • Construction: the product is built – completed software
   is added to the skeleton (architecture)
 • Transition: the product is moved to user community
   (beta testing, training …)
Inception phase

• Establishing the project's software scope and boundary
  conditions, including an operational vision, acceptance
  criteria and what is intended to be in the product and what is
  not.
• Discriminating the critical use cases of the system, the
  primary scenarios of operation that will drive the major
  design tradeoffs.
• Exhibiting, and maybe demonstrating, at least one candidate
  architecture against some of the primary scenarios.
• Estimating the overall cost and schedule for the entire project
  (and more detailed estimates for the elaboration phase that
  will immediately follow).
• Estimating potential risks (the sources of unpredictability)
• Preparing the supporting environment for the project.
Elaboration phase
• Defining, validating and baselining the architecture as rapidly
  as practical.
• Refining the Vision, based on new information obtained
  during the phase, establishing a solid understanding of the
  most critical use cases that drive the architectural and
  planning decisions.
• Creating and baselining detailed iteration plans for the
  construction phase.
• Refining the development case and putting in place the
  development environment, including the process, tools and
  automation support required to support the construction
  team.
• Refining the architecture and selecting components.
  Potential components are evaluated and the make/buy/reuse
  decisions sufficiently understood to determine the
  construction phase cost and schedule with confidence. The
  selected architectural components are integrated and
  assessed against the primary scenarios.
Construction phase

• Resource management, control and process
  optimization
• Complete component development and testing
  against the defined evaluation criteria
• Assessment of product releases against
  acceptance criteria for the vision.
Transition phase

•   Executing deployment plans.
•   Finalizing end-user support material.
•   Testing the deliverable product at the development site.
•   Creating a product release.
•   Getting user feedback.
•   Fine-tuning the product based on feedback.
• Making the product available to end users.
Rational Unified Process®

Best Practices:
• Develop software iteratively
• Manage requirements
• Use component-based architectures
• Visually model software
• Verify software quality
• Control changes to software
1. Manage Your Requirements
 • Elicit, organize, and document required
   functionality and constraints
 • Track and document tradeoffs and decisions
 • Business requirements are easily captured and
   communicated through use cases
 • Use cases are important planning instruments
                                     Use-Case Model




                     realization        influenced by     verifies

      Design Model



                                   Implementation Model          Test Model
2. Develop Software Iteratively
      – An initial design will likely be flawed with
        respect to its key requirements
      – Late-phase discovery of design defects results
        in costly over-runs and/or project cancellation
                       Requirements
                                         Analysis & Design
            Planning
                                                Implementation
Initial
Planning                   Management
                           Environment
                                                  Deployment

           Evaluation
                                         Test
quirements
alysis
   Waterfall Development




                           Design

                                                          T I M E
                                    Code & Unit
                                    Testing
                                                  Subsystem
                                                  Testing
                                                          System T
Requirements
Analysis
           Design
                    Code & Unit
                    Testing
                                    T I M E



                             Subsystem
                             Testing
                                              System
                                              Testing
 Time




               R
               I
               S
               K
 Waterfall Development: Risk vs.
Risk Profile of an Iterative
 Development

                                                   Waterfall

         Inception



                              Elaboration



Risk
                                                       Construction


                                                                                                Transition



       Preliminary   Architect.   Architect.   Devel.      Devel.      Devel.      Transition     Transition Post-
       Iteration     Iteration    Iteration    Iteration   Iteration   Iteration   Iteration      Iteration  deployment


                                                  Time
Iterative Development
Characteristics
  – Critical risks are resolved before making large
    investments
  – Initial iterations enable early user feedback
  – Testing and integration are continuous
  – Objective milestones provide short-term focus
  – Progress is measured by assessing
    implementations
  – Partial implementations can be deployed
3. Employ Component-based
         Architecture
• Design, implement and test your architecture up-front!
• A systematic approach to define a “good” architecture
    Resilient to change by using well-defined interfaces
    By using and reverse engineering components
    Derived from top rank use cases

                                                            Application-
                                                            specific
                                                            Business-
                                                            specific

                Component-based                            Middleware
                Architecture with
                layers                                       System-
                                                             software
4. Model Software Visually
 • Aiding understanding of complex systems
 • Exploring and comparing design alternatives at
   a low cost
 • Forming a foundation for implementation
 • Capturing requirements precisely
 • Communicating decisions unambiguously


                                       Sub Systems
Visual
Modeling                                Classes
raises the level
of abstraction                           Code
5. Verify Software Quality
•    Create tests for each key scenario to ensure that all
     requirements are properly implemented
•    Unacceptable application performance hurts as much
     as unacceptable reliability
•    Verify software reliability - memory leaks, bottle necks
•    Test every iteration - automate test!
                         Deployment      Development




    Software
    problems
                                                       Cost

    are 100 to 1000
    times
    more costly to
    find
6. Control Changes to Software
•    Control, track and monitor changes to enable iterative
     development
•    Establish secure workspaces for each developer
      – Provide isolation from changes made in other
        workspaces
      – Control all software artifacts - models, code, docs,
        etc.
•    Automate integration and build management

                    Workspace                          Parallel
                    Management                        Development


    CM is more
    than just                         REPORTALERT

    check-in and       Process                        Build
    check-out         Integration                   Management
Summary: Best Practices of Software Engineering
 • The result is software that is
      – On Time
      – On Budget
      – Meets Users Needs
                                   Analyst     Performance
                                               Engineer
             Develop Iteratively

             Manage
             Requirements
             Use Component         Tester               Developer
 Best        Architectures                    Project
 Practices   Model Visually                   Manager
             Verify Quality

             Control               Release
             Change
                                   Engineer
Static Structure of the Process

 • A process describes who is doing
     what, how, and when using
      certain modeling elements:
Elements of a process

• Workers (Roles) define the behavior and responsibilities of
  an individual (designer, analyst, programmer ...), or a group
  of individuals working together as a team.
• Artifacts are things that are produced, modified, or used by
  a process (model, document, source code …).
• Activities are performed by workers to create or update
  some artifacts (review design, compile code, perform test
  …).
• Workflows are sequences of activities that produce results
  of observable value (business modeling, implementation …).

                                                              33
Management and Technical
Artifacts
 The most important kind of artifact are models.
 A model is a simplification of reality, created to better
 A model is a simplification of reality, created to better
 understand the system being created.
 understand the system being created.

 Technical artifacts may be divided into:
 • Requirements set: business, domain, use case, and
   analysis models
 • Design set: design, and test models
 • Implementation set: implementation model, source
   code, configuration, and data files
 • Deployment set: deployment model, information about
   the way software is actually packaged
Core Engineering Workflows

• Business modeling describes the structure and
  dynamics of the organization
• Requirement describe the use case-based method
  for eliciting requirements
• Analysis and design describe the multiple
  architectural views
• Implementation        takes    into    account sw
  development, unit test, and integration
• Test describes test cases and procedures
• Deployment covers the deliverable system
  configuration
Workflows and Models


 Business Modeling           Business Process Model     Domain Model



                                  Use Case Model                UML diagrams
 Requirements
                                                              provide views into
                                                                 each model
 Analysis                             Analysis Model



 Design                                   Desing Model      Deployment Model



 Implementation                              Implementation Model



 Test                                                 Test Model

          Each workflow is associated with
                one or more models
Brief summary of supporting
workflows
– Configuration & Change Management
– Project Management
– Environment
Configuration & Change Management


• Supports development methods
• Maintains product integrity
• Ensures completeness & correctness of
  configured product
• Provides stable environment within which to
  develop product
• Restricts changes to artifacts based on project
  policies
• Provides an audit trail on why, when & by whom
  any artifact was changed
Project Management

• A framework for managing software-intensive
  projects
• Practical guidelines for planning, staffing,
  executing & monitoring projects
• A framework for managing risk
Environment

• Design, implement and manage the project’s required
  technical environments
• Define the technical architectures for the development,
  system validation, testing & staging/release
  management environments
• When possible, standard architectural models for given
  types of platforms should be utilized when defining the
  production environment
Bringing It All Together...                                                      In an iteration,
                                                                                 you walk through
                                                                                 all workflows
                                                                  Phases
   Process Workflows             Inception Elaboration               Construction         Transition

           Business Modeling
                Requirements
            Analysis & Design
              Implementation
                        Test
                 Deployment
   Supporting Workflows
   Configuration & Change Mgmt
           Project Management
                   Environment
                                 Preliminary     Iter.    Iter.     Iter.   Iter. Iter.    Iter.    Iter.
                                 Iteration(s)   #1       #2        #n       #n+1 #n+2     #m       #m+1

                                                              Iterations
Tools

 • The success of process adoption is
   significantly improved by the use of
   appropriate supporting tools.
 • Tool Mentors provide detailed descriptions of
   how to perform specific process activities or
   steps, or produce a particular artifact or report,
   using one or more tools.
Tools

•   Rational Unified Process
•   RUP Builder
•   Rational Process Workbench
•   Rational Administrator
•   Rational Suite AnalystStudio
•   Rational ClearCase
•   Rational ClearQuest
•   Rational ProjectConsole
•   Rational PurifyPlus
•   Rational QualityArchitect
Tools

•   Rational RequisitePro
•   Rational Robot
•   Rational Rose
•   Rational Rose RealTime
•   Rational SoDA
•   Rational TestManager
•   Rational Test RealTime
•   Rational TestFactory
•   Rational XDE Developer - Java Platform Edition
•   Rational XDE Developer - .NET Edition
Choose Appropriate Life Cycle
 • TCL is highly predictive
 • Prototyping, Spiral and UP life cycle models are highly
   adaptive




        Predictive versus adaptive approaches to the SDLC

Weitere ähnliche Inhalte

Was ist angesagt?

Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALM
Debora Di Piano
 
Agile Engineering - ODU ACM
Agile Engineering - ODU ACMAgile Engineering - ODU ACM
Agile Engineering - ODU ACM
Justin Brunelle
 
[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models
Carles Farré
 
Chapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_modelsChapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_models
Piyush Gogia
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trends
Vladimir Kotov
 
Gqm paper
Gqm paperGqm paper
Gqm paper
inandhu
 

Was ist angesagt? (19)

A successful improvement process with measurable results
A successful improvement process with  measurable resultsA successful improvement process with  measurable results
A successful improvement process with measurable results
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Product dossier touchbase automation
Product dossier touchbase automationProduct dossier touchbase automation
Product dossier touchbase automation
 
Software evolution evangelisation
Software evolution evangelisationSoftware evolution evangelisation
Software evolution evangelisation
 
Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALM
 
Quality in Software Testing
Quality in Software TestingQuality in Software Testing
Quality in Software Testing
 
Ch 2
Ch 2Ch 2
Ch 2
 
Agile Engineering - ODU ACM
Agile Engineering - ODU ACMAgile Engineering - ODU ACM
Agile Engineering - ODU ACM
 
[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models
 
Gated methodology alignment artifact and timing matrix
Gated methodology alignment artifact and timing matrixGated methodology alignment artifact and timing matrix
Gated methodology alignment artifact and timing matrix
 
Chapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_modelsChapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_models
 
Software enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soniSoftware enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soni
 
Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012Quality Coding: What's New with Visual Studio 2012
Quality Coding: What's New with Visual Studio 2012
 
Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012Quality Coding: What’s New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012
 
Quality Coding with Visual Studio 2012
Quality Coding with Visual Studio 2012Quality Coding with Visual Studio 2012
Quality Coding with Visual Studio 2012
 
functional requirements using LPP
functional requirements using LPPfunctional requirements using LPP
functional requirements using LPP
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trends
 
Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...Defence: A multi-dimensional compositional approach for business process (sem...
Defence: A multi-dimensional compositional approach for business process (sem...
 
Gqm paper
Gqm paperGqm paper
Gqm paper
 

Andere mochten auch

Andere mochten auch (15)

Design dbms
Design dbmsDesign dbms
Design dbms
 
Software Evolution_Se lect2 btech
Software Evolution_Se lect2 btechSoftware Evolution_Se lect2 btech
Software Evolution_Se lect2 btech
 
CASE tools_Se lect15 btech
CASE tools_Se lect15 btechCASE tools_Se lect15 btech
CASE tools_Se lect15 btech
 
Mse sept13 (3/3)
Mse sept13 (3/3)Mse sept13 (3/3)
Mse sept13 (3/3)
 
Se lect1 btech
Se lect1 btechSe lect1 btech
Se lect1 btech
 
Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
 
Software Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechSoftware Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btech
 
Se lect14 btech
Se lect14 btechSe lect14 btech
Se lect14 btech
 
Patent search from product specification final
Patent search from product specification finalPatent search from product specification final
Patent search from product specification final
 
Mse july13 (1/3)
Mse july13 (1/3)Mse july13 (1/3)
Mse july13 (1/3)
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btech
 
Software Process Model_Se lect4 btech
Software Process Model_Se lect4 btechSoftware Process Model_Se lect4 btech
Software Process Model_Se lect4 btech
 
Software PROJECT MANAGEMENT_Se lect10 btech
Software PROJECT MANAGEMENT_Se lect10 btechSoftware PROJECT MANAGEMENT_Se lect10 btech
Software PROJECT MANAGEMENT_Se lect10 btech
 
Software Design_Se lect16 btech
Software Design_Se lect16 btechSoftware Design_Se lect16 btech
Software Design_Se lect16 btech
 
Lista de verbos para la ruta
Lista de verbos para la rutaLista de verbos para la ruta
Lista de verbos para la ruta
 

Ähnlich wie Software Production Layout_Se lect7 btech

OpenERP - Project Methodology
OpenERP - Project MethodologyOpenERP - Project Methodology
OpenERP - Project Methodology
Odoo
 
Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.
Joon ho Park
 
Configuration management
Configuration managementConfiguration management
Configuration management
Kobi Vider
 
Software Development 1 June2012
Software Development 1 June2012Software Development 1 June2012
Software Development 1 June2012
Jay Encarnacion
 
CIPL Application Development Process
CIPL Application Development ProcessCIPL Application Development Process
CIPL Application Development Process
reetamclassic
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btech
IIITA
 
Module 1_software engineering.pptx
Module 1_software engineering.pptxModule 1_software engineering.pptx
Module 1_software engineering.pptx
adityab33
 
RDI Software Development
RDI Software DevelopmentRDI Software Development
RDI Software Development
shey4ever
 
Ravit Danino HP - Roles and Collaboration in Agile
Ravit Danino HP - Roles and Collaboration in AgileRavit Danino HP - Roles and Collaboration in Agile
Ravit Danino HP - Roles and Collaboration in Agile
AgileSparks
 

Ähnlich wie Software Production Layout_Se lect7 btech (20)

OpenERP - Project Methodology
OpenERP - Project MethodologyOpenERP - Project Methodology
OpenERP - Project Methodology
 
Seii unit4 software_process
Seii unit4 software_processSeii unit4 software_process
Seii unit4 software_process
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineering
 
Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.
 
Configuration management
Configuration managementConfiguration management
Configuration management
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 
SE chapter 2
SE chapter 2SE chapter 2
SE chapter 2
 
Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Software Development 1 June2012
Software Development 1 June2012Software Development 1 June2012
Software Development 1 June2012
 
CIPL Application Development Process
CIPL Application Development ProcessCIPL Application Development Process
CIPL Application Development Process
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btech
 
SAMPLE PROCESS - TEMPLATE
SAMPLE PROCESS - TEMPLATESAMPLE PROCESS - TEMPLATE
SAMPLE PROCESS - TEMPLATE
 
Unit 1.pdf
Unit 1.pdfUnit 1.pdf
Unit 1.pdf
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Module 1_software engineering.pptx
Module 1_software engineering.pptxModule 1_software engineering.pptx
Module 1_software engineering.pptx
 
Design For Rapid Product Realization (DFRPR)
Design For Rapid Product Realization (DFRPR)Design For Rapid Product Realization (DFRPR)
Design For Rapid Product Realization (DFRPR)
 
RDI Software Development
RDI Software DevelopmentRDI Software Development
RDI Software Development
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Ravit Danino HP - Roles and Collaboration in Agile
Ravit Danino HP - Roles and Collaboration in AgileRavit Danino HP - Roles and Collaboration in Agile
Ravit Danino HP - Roles and Collaboration in Agile
 

Kürzlich hochgeladen

Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Kürzlich hochgeladen (20)

Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 

Software Production Layout_Se lect7 btech

  • 1. Software Production Layout Software Process Software Process Project Project instantiated by Project Project Project Project consists of consists of Project Execution Project Execution Project Management ••Analysis Analysis Project Management ••Design ••Planning Planning Design ••Control ••Implementation Implementation Control ••Test Test uses uses Project System of Project Management methods for Management System of Software Software Methodology software product Methodology methods for Development Development development project Methodology Methodology is a management is a
  • 2. A Definition of Process W. Humphrey and P. Feiler: "A process is a set of partially W. Humphrey and P. Feiler: "A process is a set of partially ordered steps intended to reach a goal..."(to produce and ordered steps intended to reach a goal..."(to produce and maintain requested software deliverables). A software process maintain requested software deliverables). A software process includes sets of related artifacts, human and computerized includes sets of related artifacts, human and computerized resources, organizational structures and constraints. resources, organizational structures and constraints. B A D C Relationships of all tasks (workflow) PROCESS Skills, Tools Training, Motivation, & Management
  • 3. Rational Unified Process® • The Rational Unified Process® is a Software Engineering Process. It provides a disciplined approach to assigning tasks and responsibilities within a development organization. Its goal is to ensure the production of high-quality software that meets the needs of its end-users, within a predictable schedule and budget.
  • 4. The Unified Process of Software Development • The key feature:Software development is done in a series of fixed periods, for example, between 2 and 6 weeks. Each period is called as iteration. • At the end of each iteration, we have an executable system. • Each iteration has its own requirement analysis, design, coding and testing. • The software development is incremental. Implement New features added apart from the User’s suggested changes.
  • 5. Rational Unified Process (RUP) time Phases Process Workflows Inception Elaboration Construction Transition Business Modeling t conten Requirements Analysis & Design Implementation Test Deployment Supporting Workflows Configuration & Change Mgmt Project Management Environment Preliminary Iter. Iter. Iter. Iter. Iter. Iter. Iter. Iteration(s) #1 #2 #n #n+1 #n+2 #m #m+1 Iterations
  • 6. Spiral Development Product:class Product: requirements models + specifications Step n: Step n+1: Analyze Design requirements complete targeted requirements Step n+2: Step n+3: Implement Test Product: code + Product: test results + Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
  • 7. Incremental Development Iteration No. 1 2 3 867 868 Update SPMP1 Test whole Integrate Update Test documentation Test units Update source code Implement Design Update SDD2 Analyze requirements Update SRS3 1 2 Software Project Mangement Plan (chapter 2); Software Design Document (chapter 5); 3 Software Requirements Specification (chapter 3); Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
  • 8. The Unified Software Development Process: Classification of Iterations • Inception iterations: preliminary interaction with stakeholders – primarily customer – users – financial backers etc. • Elaboration iterations : finalization of what’s wanted and needed; set architecture baseline • Construction iterations : results in initial operational capability • Transition iterations : completes product release Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
  • 9. USDP vs. Standard Terminology ½ (Booch, Jacobson & Rumbaugh) Classification of iterations Individual iteration Inception Elaboration Construction Transition Prelim. Iter. .. Iter. Iter. ….. Iter. Iter. … Iter. iterations #1 #n #n+1 #m #m+1 #k Requirements Analysis USDP calls these “core workflows” Design Implemen- (Classically called tation “phases”) Test
  • 10. Unified Process Matrix Jacobson et al: USDP Inception Elaboration Construction Transition Prelim. Iter. .. Iter. Iter. ….. Iter. Iter. ….. Iter. iterations #1 #n #n+1 #m #m+1 #k Requirements Amount of effort expended on the requirements phase during the first Construction Analysis iteration Design Implemen- tation Test
  • 11. The Six USDP Models (Views of the Application) Use-case Test model model Analysis Implementation model model Design Deployment model model Graphics reproduced with permission from Corel.
  • 12. Life of the Unified Process Inception Elaboration Construction Transition The seed idea for the The architecture The software is brought The software is development is brought to is defined from an executable turned over to the the point of being sufficiently architectural baseline user community well founded to warrant ... ... to the point where it is entering into the elaboration ready to be transitioned Iteration Iteration n phase to the user community n-1 Iteration 1 Iteration 2 ... ... ... Inception Elaboration Construction Transition Inception Elaboration Construction Transition The seed idea for the The architecture The software is brought The software is Inception Elaboration Construction Transition Inception Elaboration Construction Transition development is brought to is defined from an executable turned over to the The seed idea for the The architecture The software is brought The software is The seed idea for the The architecture The software is brought The software is The seed idea for the The architecture The software is brought The software is the point of being sufficiently architectural baseline user community w ell founded to warrant ... ... to the point where it is development is brought to is defined from an executable turned over to the development is brought to is defined from an executable turned over to the development is brought to is defined from an executable turned over to the the point of being sufficiently architectural baseline user community entering into the elaboration phase ready to be transitioned to the user community Iteration n-1 Iteration n well founded to warrant ... ... to the point where it is the point of being sufficiently ... ... architectural baseline user community the point of being sufficiently ... ... architectural baseline user community ... ... Iteration Iteration n well founded to warrant to the point where it is well founded to warrant to the point where it is Iteration 1 Iteration 2 entering into the elaboration ready to be transitioned Iteration Iteration n Iteration Iteration n n-1 entering into the elaboration ready to be transitioned entering into the elaboration ready to be transitioned phase to the user community phase to the user community n-1 phase to the user community n-1 ... ... Iteration 1 Iteration 2 Iteration 1 Iteration 2 ... ... Iteration 1 Iteration 2 ... ... Cycles Birth Death 12
  • 13. Unified Process Models Use Case Model specified by Models Use Cases verified by and their relationships to users Analysis Model Test Model Refines the use cases and Describes the test cases makes an initial allocation of that verify the use cases behavior to set of objects realized by distributed by Design Model Defines the static structure of the system as Deployment Model subsystems, classes and Defines the physical nodes implemented by of computers and the interfaces and defines the use cases as collaborations mapping of the components of subsystems, classes and to those nodes interfaces Implementation Model Includes components (representing source code) and the mapping of classes to components 13
  • 14. The Four Ps in Software Development - People, Project, Product and Process • People - The architects, developers, testers and the supporting management, users, customers, and stakeholders - Actual Humans! • Project - The organizational element through which software is managed. • Product - Artifacts that are created during the life of the project, e.g., models, source code. • Process - A definition of the complete set of activities needed to transform users’ requirements into a product. A process is a template for creating projects. – Tools - Software that is used to automate the activities defined in the process. 14
  • 15. Cycles and Phases Each cycle results in a new release of the system, Each cycle results in a new release of the system, and each is a product ready for delivery. This and each is a product ready for delivery. This product has to accommodate the specified needs. product has to accommodate the specified needs. The development cycle is divided in four consecutive phases • Inception: a good idea is developed into a vision of the end product and the business case for the product is presented. • Elaboration: most of the product requirements are specified and the system architecture is designed. • Construction: the product is built – completed software is added to the skeleton (architecture) • Transition: the product is moved to user community (beta testing, training …)
  • 16. Inception phase • Establishing the project's software scope and boundary conditions, including an operational vision, acceptance criteria and what is intended to be in the product and what is not. • Discriminating the critical use cases of the system, the primary scenarios of operation that will drive the major design tradeoffs. • Exhibiting, and maybe demonstrating, at least one candidate architecture against some of the primary scenarios. • Estimating the overall cost and schedule for the entire project (and more detailed estimates for the elaboration phase that will immediately follow). • Estimating potential risks (the sources of unpredictability) • Preparing the supporting environment for the project.
  • 17. Elaboration phase • Defining, validating and baselining the architecture as rapidly as practical. • Refining the Vision, based on new information obtained during the phase, establishing a solid understanding of the most critical use cases that drive the architectural and planning decisions. • Creating and baselining detailed iteration plans for the construction phase. • Refining the development case and putting in place the development environment, including the process, tools and automation support required to support the construction team. • Refining the architecture and selecting components. Potential components are evaluated and the make/buy/reuse decisions sufficiently understood to determine the construction phase cost and schedule with confidence. The selected architectural components are integrated and assessed against the primary scenarios.
  • 18. Construction phase • Resource management, control and process optimization • Complete component development and testing against the defined evaluation criteria • Assessment of product releases against acceptance criteria for the vision.
  • 19. Transition phase • Executing deployment plans. • Finalizing end-user support material. • Testing the deliverable product at the development site. • Creating a product release. • Getting user feedback. • Fine-tuning the product based on feedback. • Making the product available to end users.
  • 20. Rational Unified Process® Best Practices: • Develop software iteratively • Manage requirements • Use component-based architectures • Visually model software • Verify software quality • Control changes to software
  • 21. 1. Manage Your Requirements • Elicit, organize, and document required functionality and constraints • Track and document tradeoffs and decisions • Business requirements are easily captured and communicated through use cases • Use cases are important planning instruments Use-Case Model realization influenced by verifies Design Model Implementation Model Test Model
  • 22. 2. Develop Software Iteratively – An initial design will likely be flawed with respect to its key requirements – Late-phase discovery of design defects results in costly over-runs and/or project cancellation Requirements Analysis & Design Planning Implementation Initial Planning Management Environment Deployment Evaluation Test
  • 23. quirements alysis Waterfall Development Design T I M E Code & Unit Testing Subsystem Testing System T
  • 24. Requirements Analysis Design Code & Unit Testing T I M E Subsystem Testing System Testing Time R I S K Waterfall Development: Risk vs.
  • 25. Risk Profile of an Iterative Development Waterfall Inception Elaboration Risk Construction Transition Preliminary Architect. Architect. Devel. Devel. Devel. Transition Transition Post- Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration deployment Time
  • 26. Iterative Development Characteristics – Critical risks are resolved before making large investments – Initial iterations enable early user feedback – Testing and integration are continuous – Objective milestones provide short-term focus – Progress is measured by assessing implementations – Partial implementations can be deployed
  • 27. 3. Employ Component-based Architecture • Design, implement and test your architecture up-front! • A systematic approach to define a “good” architecture  Resilient to change by using well-defined interfaces  By using and reverse engineering components  Derived from top rank use cases Application- specific Business- specific Component-based Middleware Architecture with layers System- software
  • 28. 4. Model Software Visually • Aiding understanding of complex systems • Exploring and comparing design alternatives at a low cost • Forming a foundation for implementation • Capturing requirements precisely • Communicating decisions unambiguously Sub Systems Visual Modeling Classes raises the level of abstraction Code
  • 29. 5. Verify Software Quality • Create tests for each key scenario to ensure that all requirements are properly implemented • Unacceptable application performance hurts as much as unacceptable reliability • Verify software reliability - memory leaks, bottle necks • Test every iteration - automate test! Deployment Development Software problems Cost are 100 to 1000 times more costly to find
  • 30. 6. Control Changes to Software • Control, track and monitor changes to enable iterative development • Establish secure workspaces for each developer – Provide isolation from changes made in other workspaces – Control all software artifacts - models, code, docs, etc. • Automate integration and build management Workspace Parallel Management Development CM is more than just REPORTALERT check-in and Process Build check-out Integration Management
  • 31. Summary: Best Practices of Software Engineering • The result is software that is – On Time – On Budget – Meets Users Needs Analyst Performance Engineer Develop Iteratively Manage Requirements Use Component Tester Developer Best Architectures Project Practices Model Visually Manager Verify Quality Control Release Change Engineer
  • 32. Static Structure of the Process • A process describes who is doing what, how, and when using certain modeling elements:
  • 33. Elements of a process • Workers (Roles) define the behavior and responsibilities of an individual (designer, analyst, programmer ...), or a group of individuals working together as a team. • Artifacts are things that are produced, modified, or used by a process (model, document, source code …). • Activities are performed by workers to create or update some artifacts (review design, compile code, perform test …). • Workflows are sequences of activities that produce results of observable value (business modeling, implementation …). 33
  • 34. Management and Technical Artifacts The most important kind of artifact are models. A model is a simplification of reality, created to better A model is a simplification of reality, created to better understand the system being created. understand the system being created. Technical artifacts may be divided into: • Requirements set: business, domain, use case, and analysis models • Design set: design, and test models • Implementation set: implementation model, source code, configuration, and data files • Deployment set: deployment model, information about the way software is actually packaged
  • 35. Core Engineering Workflows • Business modeling describes the structure and dynamics of the organization • Requirement describe the use case-based method for eliciting requirements • Analysis and design describe the multiple architectural views • Implementation takes into account sw development, unit test, and integration • Test describes test cases and procedures • Deployment covers the deliverable system configuration
  • 36. Workflows and Models Business Modeling Business Process Model Domain Model Use Case Model UML diagrams Requirements provide views into each model Analysis Analysis Model Design Desing Model Deployment Model Implementation Implementation Model Test Test Model Each workflow is associated with one or more models
  • 37. Brief summary of supporting workflows – Configuration & Change Management – Project Management – Environment
  • 38. Configuration & Change Management • Supports development methods • Maintains product integrity • Ensures completeness & correctness of configured product • Provides stable environment within which to develop product • Restricts changes to artifacts based on project policies • Provides an audit trail on why, when & by whom any artifact was changed
  • 39. Project Management • A framework for managing software-intensive projects • Practical guidelines for planning, staffing, executing & monitoring projects • A framework for managing risk
  • 40. Environment • Design, implement and manage the project’s required technical environments • Define the technical architectures for the development, system validation, testing & staging/release management environments • When possible, standard architectural models for given types of platforms should be utilized when defining the production environment
  • 41. Bringing It All Together... In an iteration, you walk through all workflows Phases Process Workflows Inception Elaboration Construction Transition Business Modeling Requirements Analysis & Design Implementation Test Deployment Supporting Workflows Configuration & Change Mgmt Project Management Environment Preliminary Iter. Iter. Iter. Iter. Iter. Iter. Iter. Iteration(s) #1 #2 #n #n+1 #n+2 #m #m+1 Iterations
  • 42. Tools • The success of process adoption is significantly improved by the use of appropriate supporting tools. • Tool Mentors provide detailed descriptions of how to perform specific process activities or steps, or produce a particular artifact or report, using one or more tools.
  • 43. Tools • Rational Unified Process • RUP Builder • Rational Process Workbench • Rational Administrator • Rational Suite AnalystStudio • Rational ClearCase • Rational ClearQuest • Rational ProjectConsole • Rational PurifyPlus • Rational QualityArchitect
  • 44. Tools • Rational RequisitePro • Rational Robot • Rational Rose • Rational Rose RealTime • Rational SoDA • Rational TestManager • Rational Test RealTime • Rational TestFactory • Rational XDE Developer - Java Platform Edition • Rational XDE Developer - .NET Edition
  • 45. Choose Appropriate Life Cycle • TCL is highly predictive • Prototyping, Spiral and UP life cycle models are highly adaptive Predictive versus adaptive approaches to the SDLC

Hinweis der Redaktion

  1. Inception Defines the scope of the project. A business plan is often created to determine whether resources should be committed or not. The model is 20% complete. Elaboration Plan project, specify features, baseline architecture. Requirements are firmed up, we’re now 80% complete. A detailed cost/resource estimation can be drawn up. Construction Build the product. Several iterations. Transition Move the product into and end user environment. Training, installation and support. An iteration is a distinct sequence of activities based on an established plan and evaluation criteria, resulting in an executable release (internal or external) A workflow shows all the activities you might go through to produce a particular set of artifacts – more later.
  2. Merge Sort 09/23/12 10:24