AUP - Raman Ramsin

Embed Size (px)

Citation preview

  • 8/17/2019 AUP - Raman Ramsin

    1/17

    Software DevelopmentMethodologies

    Lecturer: Raman Ramsin

    Lecture 15

    Agile Methodologies: AUP

    Department of Computer Engineering1

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    2/17

    Software Development Methodologies – Lecture 15

     A ile nified Process A P 

    Proposed by Ambler as a simplified version of the

     

    D ri im l n r n r h 

    developing business systems using agile techniques

    and concepts while remaining true to the RUP.

    Department of Computer Engineering2

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    3/17

    Software Development Methodologies – Lecture 15

     A ile nified Process A P 

    UML is the main modeling language, but AUP is not restricted

    to UML.

    Use case driven

    Iterative-incremental

     Architecture-centric

     

    Department of Computer Engineering3

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    4/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Phases

    Like RUP, the overall development cycle consists of four

      Inception:  The goal is to identify the initial scope of the, ,initial project funding and stakeholder acceptance.

      Elaboration:  he goal is to prove the system architecture.

     regular, incremental basis which meets the highest-priority needs

    of project stakeholders.

      Transition:  The goal is to validate and deploy the system intothe production environment.

    Department of Computer Engineering4

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    5/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Iterations and Disci lines

    Each phase can be further broken down into iterations.

     An iteration is a complete development loop resulting in are ease o an execu a e ncremen o e sys em.

    ac era on cons s s o seven wor areas sc p nes   performed during the iteration.

    For each discipline, AUP defines sets of: 

      activities  (units of work on the artefacts);

      roles  res onsibilities taken on b develo ment team members .

    Department of Computer Engineering5

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    6/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Disci lines

    1.   Model. he oal is to understand the business of the or anization theproblem domain being addressed by the project, and to identify a viablesolution to address the problem domain.

    2.   Implementation. The goal is to transform the model(s) into executablecode and to perform a basic level of testing, in particular unit testing.

    3.   Test. The goal is to perform an objective evaluation to ensure quality.,

    designed, and verifying that the requirements are met.

    4.   Deployment. The goal is to plan for the delivery of the system and toexecute the plan to make the system available to end users.

    Department of Computer Engineering6

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    7/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Disci lines Contd.

    .   .project artifacts. This includes not only tracking artifact versions over time

    but also controlling and managing changes to them.

    6.   Project Management. The goal is to direct the activities that takelace on the ro ect. This includes mana in risks directin eo le and

    coordinating with people and systems outside the scope of the project tobe sure that it is delivered on time and within budget.

    7.   Environment. The goal is to support the rest of the effort by ensuring

    that the proper process, guidance (standards and guidelines), and tools(hardware, software, etc.) are available for the team as needed.

    Department of Computer Engineering7

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    8/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Disci lines in Iterations and Phases

    Department of Computer Engineering8

    Sharif University of Technology

    [Ambler 2006]

  • 8/17/2019 AUP - Raman Ramsin

    9/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Ince tion Phase

    Tasks include:

    1. Define project scope.

    2. Estimate cost and schedule.

    3. Define risks.

    .   .

     the team, requesting the people needed, obtaining thenecessary hardware/software, and tailoring the AUP.

    Department of Computer Engineering9

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    10/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Elaboration Phase

    Tasks include:

    1. Produce an architectural prototype for the system.

    2. Evolve the requirements model.

    3. Draft a coarse-grained project plan for the constructionphase.

    4. Ensure that critical tools, processes, standards, anduidelines are ut in lace for the construction hase. 

    5. Understand and eliminate high-priority risks of the project.

    Department of Computer Engineering10

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    11/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Construction Phase

    Tasks include:

    1. Prioritize and understand the requirements.

    2. Model storm a solution.

    3. Coding and testing the software.

    4. ep oy ng ear y re eases o e sys em o o a n user

    feedback.

    Department of Computer Engineering11

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    12/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Transition Phase

    Tasks include:

    1. Test and validate the complete system.

    2. Integrate the system with existing systems.

    3. Convert legacy databases and systems to support the newrelease.

    4. Train the users of the new system.

    5. Deploy the new system into production.

    Department of Computer Engineering12

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    13/17

    Software Development Methodologies – Lecture 15

     AUP: Process – Model Disci line

    Encompasses RUP's Business Modeling, Requirements, and.

     A ilit is observed b creatin models and documents which are just barely good enough, limiting them to an absolute minimum.

    er orme roug mo e s orm ng sess ons w c : Involve a few people, usually just two or three, who discuss an issue

    .

    Typically last for five to ten minutes (it’s rare to model storm for more

    than thirty minutes). e peop e get toget er, gat er aroun a s are mo e ing too e.g.

    the whiteboard), explore the issue until they're satisfied that theyunderstand it, then they continue on (often coding).

    Department of Computer Engineering13

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    14/17

    Software Development Methodologies – Lecture 15

     AUP: Strengths and Weaknesses

      Strengths

    Iterative-incremental process

    Based on system architecture

      ,and physical) of the problem domain and the system

    Based on system functionality captured in use cases

     throughout the process as the basis for tasks and tests

    Department of Computer Engineering14

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    15/17

    Software Development Methodologies – Lecture 15

     AUP: Strengths and Weaknesses

      Strengths  (Contd.)

    Design-based development

    Iterative development engine governed by planning/reviewing

    eam essness o serve oug m e ue o use-case aseactivities and design-based development

    Risk-based process

     

    Configurability and flexibility addressed

    Department of Computer Engineering15

    Sharif University of Technology

  • 8/17/2019 AUP - Raman Ramsin

    16/17

    Software Development Methodologies – Lecture 15

     AUP: Strengths and Weaknesses

      Weaknesses 

    Modeling may jeopardize agility if limits are not strictly

    ’  absolute minimum is actually quite long.

    ac ng mo e ncons s ency s no exp c y a resse .

    Department of Computer Engineering16

    Sharif University of Technology

    f l h d l i

  • 8/17/2019 AUP - Raman Ramsin

    17/17

    Software Development Methodologies – Lecture 15

    Reference

     Ambler, S. W., “The Agile Unified Process (AUP)”, Ambysoftorpora on, , va a e on e e a :

    http://www.ambysoft.com/unifiedprocess/agileUP.html.

    Department of Computer Engineering17

    Sharif University of Technology