SlideShare a Scribd company logo
1 of 25
Download to read offline
Agile Model Development with the IBM®
                      Rational® Software Architect
                                 Daniel Leroux
                          Distinguished Engineer, IBM
                              dleroux@ca.ibm.com

                                Maneesh Goyal
                         Senior Software Engineer, IBM
                             mgoyal@ca.ibm.com
                           Select View/Master/Slide Master to add Session Number Here
                                                                             MAC03

© 2009 IBM Corporation
IBM Rational Software Conference 2009



Agenda

   Introduction
   Maneesh’ team
   Agile Modeling and principles
   Demo
   Questions



                         MAC03
IBM Rational Software Conference 2009



What is a Model?

   A model is an abstraction of a physical system
   Typically, you will create different models for a
   physical system to visualize different points of view
      Users
      Developers
      Graphic Artists
      Database developers
      Testers
      Documenters
      And on and on ……




                            MAC03
IBM Rational Software Conference 2009



Why do we model?

   To manage complexity
   To detect errors and omissions early in the lifecycle
   To communicate with stakeholders
   To understand requirements
   To drive implementation
   To understand the impact of change
   To ensure that resources are deployed
   efficiently
                         MAC03
IBM Rational Software Conference 2009



Why do we model?

   To manage complexity
   To detect errors and omissions early in the lifecycle
   To communicate with stakeholders
   To understand requirements
   To drive implementation
   To understand the impact of change
   To ensure that resources are deployed
   efficiently
                         MAC03
IBM Rational Software Conference 2009



The Unified Modeling Language
                                        The UML is
                                        the standard
                                        language for
                                        visualizing,
                                        specifying,
                                        constructing,
                                        and
                                        documenting
                                        software and
                                        systems
                         MAC03
IBM Rational Software Conference 2009



 TQ’s Golden Rule

                                                  Only use what
                                                   you need
                                         UML
                                        Is HUGE




                         MAC03
IBM Rational Software Conference 2009



Agile Modeling

   Agile Modeling is a collection of values,
   principles and practices for modeling software
   that can be applied on a software
   development project in an effective and light-
   weight manner
                                    Copyright © 2001-2008 Scott W. Ambler




                         MAC03
IBM Rational Software Conference 2009



Primary Approach to Modeling
                                                         No Modeling
    Ad-Hoc
                                                         Sketch to Think and
                                                         Communicate
Traditional                                              Sketch and Capture
                                                         Key Diagrams
                                                         SBMT for Docs
   Iterative
                                                         SBMT to Generate
                                                         Code
       Agile                                             SBMT for Full Trip
                                                         Engineering

               0%      20%      40%     60%   80% 100%


                         MAC03
IBM Rational Software Conference 2009



Common Misconceptions About CASE Tools


   Agile modelers don’t use CASE tools
      Agile modelers use the simplest tool, and if the simplest tool for the job is a CASE tool,
      then that is what will be used

   UML requires CASE tools
      Not true. UML drawings are often done by hand

   You start modeling with CASE tools
      Typically modeling is started with a simple tool (e.g. flip charts) and then you migrate to a
      CASE tool if needed (e.g. to create persistent models)

   The CASE tool is the master
      Not true. Once code is either generated from the model or written by hand, the code is
      the master. One tough decision that has to be made is should the model be updated to
      reflect the code?




                         MAC03
IBM Rational Software Conference 2009



Maneesh’ Team

   Maneesh: software development manager
   responsible for managing the architecture of a
   Rational Modeling product and leading a team
   of engineers developing this product
   Maneesh’ team
      10 brilliant software engineers

   Maneesh’ extended team
     Product Manager                    Product delivery team
     Release engineering team           User Experience team




                         MAC03
IBM Rational Software Conference 2009



Team Process – Agile Modeling

   Review requirements
      New requirements arrive from the product manager
      Ask clarifying questions to the product manager and provide feedback
      Review the updated requirements

   Manage SW architecture
      Create new SW design models
        Use case diagrams
        Class diagrams, sequence diagrams, …
      Review the SW designs created by the team members
      Share and collaborate within the team and extended team




                         MAC03
IBM Rational Software Conference 2009



The Problem

   Information overload
      Email discussions
      Meeting minutes, whiteboards

   Collaboration and communication
      Globally distributed teams
      Knowledge transfer – The whys of architecture




                          MAC03
IBM Rational Software Conference 2009



Agile Modeling Principles

   Requirements envisioning
   Prioritized requirements
   Architecture envisioning
   Multiple models
   Just barely good enough models
   Model storming
   Active stakeholder participation
                                        Copyright © 2001-2008 Scott W. Ambler

                         MAC03
IBM Rational Software Conference 2009



Requirements envisioning

   Create new requirements
   Modify existing requirements
   Use Rational Requirements Composer
   Stakeholder participation
      Product managers
      User experience team




                         MAC03
IBM Rational Software Conference 2009



Prioritized requirements

   Define criteria for prioritization
   Review and prioritize requirements
   Stakeholder participation
      Internal stakeholders – software development engineers, user experience team
      External stakeholders – product managers




                         MAC03
IBM Rational Software Conference 2009



Architecture envisioning

   Create and modify architecture models
   Associate the models with the requirements
   Stakeholder participation
      Software architects
      Software development engineers




                         MAC03
IBM Rational Software Conference 2009



Multiple models &
Just barely good enough models
   Similar to whiteboard models
      Use case diagram
      Class and Component diagram
      Sequence diagram
      Deployment diagram

   Stakeholder participation
      Software architect
      Software development engineers




                           MAC03
IBM Rational Software Conference 2009



What Are Agile Models?

   Agile models:
      Fulfill their purpose
      Are understandable
      Are sufficiently accurate
      Are sufficiently consistent
      Are sufficiently detailed
      Provide positive value
      Are as simple as possible


                                        Agile models are just barely enough!

                         MAC03
IBM Rational Software Conference 2009



Active stakeholder participation &
Model storming
   Review the requirements and architecture with
   all stakeholders
   Remove the barriers to participation
      The needs of the globally distributed team
      Provide the right tools




                         MAC03
IBM Rational Software Conference 2009




                         MAC03          21
IBM Rational Software Conference 2009



Conclusion

   You are engaged in Agile Modeling if:
      Your customers/users are active participants
      Changing requirements are welcomed and acted upon
        You work on the highest priority requirements first
      You take an iterative and incremental approach to modeling
      Your primary focus is the development of software, not documentation or
      models themselves
      You model as a team where everyone’s input is welcome
      You actively try to keep things as simple as possible
      You discard models as development progresses
      Customers/business owners make business decisions; developers make
      technical decisions
      The model’s content is recognized as being significantly more important than the
      format/representation of that content
      How you test what you describe with your model(s) is a critical issue continually
      considered as you model
                         MAC03
IBM Rational Software Conference 2009



References and Recommended Reading

      www.agilealliance.com, www.agilemodeling.com, www.agiledata.org,
      www.ambysoft.com, www.databaserefactoring.com,
      www.enterpriseunifiedprocess.com
      Ambler, S.W. (2002). Agile Modeling: Effective Practices for XP and the UP.
      New York: John Wiley & Sons.
      Ambler, S.W. (2003). Agile Database Techniques. New York: John Wiley &
      Sons.
      Ambler, S.W. (2004). The Object Primer 3rd Edition: AMDD with UML 2. New
      York: Cambridge University Press.
      Ambler, S.W. and Sadalage, P.J. (2006). Refactoring Databases:
      Evolutionary Database Design. Reading, MA: Addison Wesley Longman, Inc.
      Larman, C. (2004). Agile and Iterative Development: A Manager’s Guide.
      Reading, MA: Addison Wesley
      McGovern, J., Ambler, S.W., Stevens, M., Linn, J., Sharan, V., & Jo, E.
      (2003). The Practical Guide to Enterprise Architecture. Prentice Hall PTR.



                         MAC03
IBM Rational Software Conference 2009




                         MAC03          24
IBM Rational Software Conference 2009




© Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind,
express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have
the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM
software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities
referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature
availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines
Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.


                                                  MAC03                                                                                                                                         25

More Related Content

What's hot

Software Design and Modularity
Software Design and ModularitySoftware Design and Modularity
Software Design and ModularityDanyal Ahmad
 
CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3SIMONTHOMAS S
 
software design principles
software design principlessoftware design principles
software design principlesCristal Ngo
 
Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5SIMONTHOMAS S
 
Chapter 4 software design
Chapter 4  software designChapter 4  software design
Chapter 4 software designCliftone Mullah
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and EvaluationDhivyaa C.R
 
architectural design
 architectural design architectural design
architectural designPreeti Mishra
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)Ayesha Bhatti
 
Domain specific Software Architecture
Domain specific Software Architecture Domain specific Software Architecture
Domain specific Software Architecture DIPEN SAINI
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-designOliver Cheng
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering arvind pandey
 

What's hot (20)

Software Design and Modularity
Software Design and ModularitySoftware Design and Modularity
Software Design and Modularity
 
Software design
Software designSoftware design
Software design
 
CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3
 
software design principles
software design principlessoftware design principles
software design principles
 
Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5Cs8092 computer graphics and multimedia unit 5
Cs8092 computer graphics and multimedia unit 5
 
Chapter 4 software design
Chapter 4  software designChapter 4  software design
Chapter 4 software design
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design techniques
Design techniquesDesign techniques
Design techniques
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
architectural design
 architectural design architectural design
architectural design
 
Software design
Software designSoftware design
Software design
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
 
Domain specific Software Architecture
Domain specific Software Architecture Domain specific Software Architecture
Domain specific Software Architecture
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-design
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Unit 3
Unit 3Unit 3
Unit 3
 
Sda 7
Sda   7Sda   7
Sda 7
 

Viewers also liked

Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineeringRupesh Vaishnav
 
Software QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaSoftware QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaShamain Peiris
 
Modeling Requirements Using Examples
Modeling Requirements Using ExamplesModeling Requirements Using Examples
Modeling Requirements Using ExamplesExcella
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagramnethisip13
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSachithra Gayan
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement EngineeringSlideshare
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1Abdul Basit
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assuranceruth_reategui
 
Dfd examples
Dfd examplesDfd examples
Dfd examplesMohit
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and designPreeti Mishra
 

Viewers also liked (14)

Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
 
Software QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaSoftware QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath Darshana
 
Modeling Requirements Using Examples
Modeling Requirements Using ExamplesModeling Requirements Using Examples
Modeling Requirements Using Examples
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Software quality
Software qualitySoftware quality
Software quality
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 

Similar to Agile Model Developement- Daniel Leroux

2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katochIBM
 
Trasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep KatochTrasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep KatochRoopa Nadkarni
 
Model Runway: Design Best Practices at BlueCross BlueShield
Model Runway: Design Best Practices at BlueCross BlueShieldModel Runway: Design Best Practices at BlueCross BlueShield
Model Runway: Design Best Practices at BlueCross BlueShieldRoger Snook
 
Hang On A Minute - Ankur Goyal
Hang On A Minute - Ankur GoyalHang On A Minute - Ankur Goyal
Hang On A Minute - Ankur GoyalRoopa Nadkarni
 
3 hang on_a_minute-ankur_goyal
3 hang on_a_minute-ankur_goyal3 hang on_a_minute-ankur_goyal
3 hang on_a_minute-ankur_goyalIBM
 
Rhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseRhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseBill Duncan
 
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Prolifics
 
Design Management with RSA 8.5: Effective Collaboration for Better Design
Design Management with RSA 8.5: Effective Collaboration for Better DesignDesign Management with RSA 8.5: Effective Collaboration for Better Design
Design Management with RSA 8.5: Effective Collaboration for Better DesignRoger Snook
 
IBM Rational 8/16 Webinar Presentation
IBM Rational 8/16 Webinar PresentationIBM Rational 8/16 Webinar Presentation
IBM Rational 8/16 Webinar PresentationScott Althouse
 
Improving Defence Program Execution
Improving Defence Program ExecutionImproving Defence Program Execution
Improving Defence Program ExecutionIBMGovernmentCA
 
A Software Factory Integrating Rational Team Concert and WebSphere tools
A Software Factory Integrating Rational Team Concert and WebSphere toolsA Software Factory Integrating Rational Team Concert and WebSphere tools
A Software Factory Integrating Rational Team Concert and WebSphere toolsProlifics
 
Opportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonOpportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonIBM
 
Opportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve RobinsonOpportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve RobinsonRoopa Nadkarni
 
Opportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonOpportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonIBM
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringPiero Fraternali
 
Heterogeneous Development With RTC - Sreerupa Sen
Heterogeneous Development With RTC -  Sreerupa SenHeterogeneous Development With RTC -  Sreerupa Sen
Heterogeneous Development With RTC - Sreerupa SenRoopa Nadkarni
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...ghodgkinson
 
M3 Modernization Case Study
M3 Modernization Case StudyM3 Modernization Case Study
M3 Modernization Case StudyADC Austin Tech
 

Similar to Agile Model Developement- Daniel Leroux (20)

2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch2 trasnformation design_patterns-sandeep_katoch
2 trasnformation design_patterns-sandeep_katoch
 
Trasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep KatochTrasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep Katoch
 
Model Runway: Design Best Practices at BlueCross BlueShield
Model Runway: Design Best Practices at BlueCross BlueShieldModel Runway: Design Best Practices at BlueCross BlueShield
Model Runway: Design Best Practices at BlueCross BlueShield
 
Hang On A Minute - Ankur Goyal
Hang On A Minute - Ankur GoyalHang On A Minute - Ankur Goyal
Hang On A Minute - Ankur Goyal
 
3 hang on_a_minute-ankur_goyal
3 hang on_a_minute-ankur_goyal3 hang on_a_minute-ankur_goyal
3 hang on_a_minute-ankur_goyal
 
Rhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For ReuseRhapsody Leveraging Software For Reuse
Rhapsody Leveraging Software For Reuse
 
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
Software Factories in the Real World: How an IBM® WebSphere® Integration Fact...
 
ERP_Up_Down.ppt
ERP_Up_Down.pptERP_Up_Down.ppt
ERP_Up_Down.ppt
 
Design Management with RSA 8.5: Effective Collaboration for Better Design
Design Management with RSA 8.5: Effective Collaboration for Better DesignDesign Management with RSA 8.5: Effective Collaboration for Better Design
Design Management with RSA 8.5: Effective Collaboration for Better Design
 
IBM Rational 8/16 Webinar Presentation
IBM Rational 8/16 Webinar PresentationIBM Rational 8/16 Webinar Presentation
IBM Rational 8/16 Webinar Presentation
 
Improving Defence Program Execution
Improving Defence Program ExecutionImproving Defence Program Execution
Improving Defence Program Execution
 
A Software Factory Integrating Rational Team Concert and WebSphere tools
A Software Factory Integrating Rational Team Concert and WebSphere toolsA Software Factory Integrating Rational Team Concert and WebSphere tools
A Software Factory Integrating Rational Team Concert and WebSphere tools
 
Opportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonOpportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinson
 
Opportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve RobinsonOpportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve Robinson
 
Opportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinsonOpportunities in challenging_times-steve_robinson
Opportunities in challenging_times-steve_robinson
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
 
Heterogeneous Development With RTC - Sreerupa Sen
Heterogeneous Development With RTC -  Sreerupa SenHeterogeneous Development With RTC -  Sreerupa Sen
Heterogeneous Development With RTC - Sreerupa Sen
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
 
Doors Analyst
Doors AnalystDoors Analyst
Doors Analyst
 
M3 Modernization Case Study
M3 Modernization Case StudyM3 Modernization Case Study
M3 Modernization Case Study
 

More from Roopa Nadkarni

New integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean InnesNew integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean InnesRoopa Nadkarni
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilRoopa Nadkarni
 
Accelerated test case - Anish bhanu
Accelerated test case - Anish bhanuAccelerated test case - Anish bhanu
Accelerated test case - Anish bhanuRoopa Nadkarni
 
web 2. 0 performance testing - Dave chadwick
web 2. 0 performance testing - Dave chadwickweb 2. 0 performance testing - Dave chadwick
web 2. 0 performance testing - Dave chadwickRoopa Nadkarni
 
Solving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holtSolving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holtRoopa Nadkarni
 
RQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumarRQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumarRoopa Nadkarni
 
Req Pro - Andreas gschwind
Req Pro - Andreas gschwindReq Pro - Andreas gschwind
Req Pro - Andreas gschwindRoopa Nadkarni
 
Extending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldtExtending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldtRoopa Nadkarni
 
EM overview- - Hayden lindsey
EM overview- - Hayden lindseyEM overview- - Hayden lindsey
EM overview- - Hayden lindseyRoopa Nadkarni
 
Application security vision - John b
Application security vision - John bApplication security vision - John b
Application security vision - John bRoopa Nadkarni
 
Smarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj ChandraSmarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj ChandraRoopa Nadkarni
 
Real Insights Real Results - Steve Robinson
Real Insights Real Results - Steve RobinsonReal Insights Real Results - Steve Robinson
Real Insights Real Results - Steve RobinsonRoopa Nadkarni
 
Overcoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O RourkeOvercoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O RourkeRoopa Nadkarni
 
How To Make It Real - Hayden Lindsey
How To Make It Real - Hayden LindseyHow To Make It Real - Hayden Lindsey
How To Make It Real - Hayden LindseyRoopa Nadkarni
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyRoopa Nadkarni
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRoopa Nadkarni
 

More from Roopa Nadkarni (20)

Agile - Monojit basu
Agile - Monojit basuAgile - Monojit basu
Agile - Monojit basu
 
New integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean InnesNew integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean Innes
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
 
Agile - Monojit Basu
Agile - Monojit BasuAgile - Monojit Basu
Agile - Monojit Basu
 
Accelerated test case - Anish bhanu
Accelerated test case - Anish bhanuAccelerated test case - Anish bhanu
Accelerated test case - Anish bhanu
 
web 2. 0 performance testing - Dave chadwick
web 2. 0 performance testing - Dave chadwickweb 2. 0 performance testing - Dave chadwick
web 2. 0 performance testing - Dave chadwick
 
Solving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holtSolving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holt
 
RTF - Prasad bhatt
RTF - Prasad bhattRTF - Prasad bhatt
RTF - Prasad bhatt
 
RQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumarRQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumar
 
Req Pro - Andreas gschwind
Req Pro - Andreas gschwindReq Pro - Andreas gschwind
Req Pro - Andreas gschwind
 
RFT - Ashish Mathur
RFT - Ashish MathurRFT - Ashish Mathur
RFT - Ashish Mathur
 
Extending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldtExtending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldt
 
EM overview- - Hayden lindsey
EM overview- - Hayden lindseyEM overview- - Hayden lindsey
EM overview- - Hayden lindsey
 
Application security vision - John b
Application security vision - John bApplication security vision - John b
Application security vision - John b
 
Smarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj ChandraSmarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj Chandra
 
Real Insights Real Results - Steve Robinson
Real Insights Real Results - Steve RobinsonReal Insights Real Results - Steve Robinson
Real Insights Real Results - Steve Robinson
 
Overcoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O RourkeOvercoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O Rourke
 
How To Make It Real - Hayden Lindsey
How To Make It Real - Hayden LindseyHow To Make It Real - Hayden Lindsey
How To Make It Real - Hayden Lindsey
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin Nally
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha Krishnamurthy
 

Recently uploaded

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Recently uploaded (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

Agile Model Developement- Daniel Leroux

  • 1. Agile Model Development with the IBM® Rational® Software Architect Daniel Leroux Distinguished Engineer, IBM dleroux@ca.ibm.com Maneesh Goyal Senior Software Engineer, IBM mgoyal@ca.ibm.com Select View/Master/Slide Master to add Session Number Here MAC03 © 2009 IBM Corporation
  • 2. IBM Rational Software Conference 2009 Agenda Introduction Maneesh’ team Agile Modeling and principles Demo Questions MAC03
  • 3. IBM Rational Software Conference 2009 What is a Model? A model is an abstraction of a physical system Typically, you will create different models for a physical system to visualize different points of view Users Developers Graphic Artists Database developers Testers Documenters And on and on …… MAC03
  • 4. IBM Rational Software Conference 2009 Why do we model? To manage complexity To detect errors and omissions early in the lifecycle To communicate with stakeholders To understand requirements To drive implementation To understand the impact of change To ensure that resources are deployed efficiently MAC03
  • 5. IBM Rational Software Conference 2009 Why do we model? To manage complexity To detect errors and omissions early in the lifecycle To communicate with stakeholders To understand requirements To drive implementation To understand the impact of change To ensure that resources are deployed efficiently MAC03
  • 6. IBM Rational Software Conference 2009 The Unified Modeling Language The UML is the standard language for visualizing, specifying, constructing, and documenting software and systems MAC03
  • 7. IBM Rational Software Conference 2009 TQ’s Golden Rule Only use what you need UML Is HUGE MAC03
  • 8. IBM Rational Software Conference 2009 Agile Modeling Agile Modeling is a collection of values, principles and practices for modeling software that can be applied on a software development project in an effective and light- weight manner Copyright © 2001-2008 Scott W. Ambler MAC03
  • 9. IBM Rational Software Conference 2009 Primary Approach to Modeling No Modeling Ad-Hoc Sketch to Think and Communicate Traditional Sketch and Capture Key Diagrams SBMT for Docs Iterative SBMT to Generate Code Agile SBMT for Full Trip Engineering 0% 20% 40% 60% 80% 100% MAC03
  • 10. IBM Rational Software Conference 2009 Common Misconceptions About CASE Tools Agile modelers don’t use CASE tools Agile modelers use the simplest tool, and if the simplest tool for the job is a CASE tool, then that is what will be used UML requires CASE tools Not true. UML drawings are often done by hand You start modeling with CASE tools Typically modeling is started with a simple tool (e.g. flip charts) and then you migrate to a CASE tool if needed (e.g. to create persistent models) The CASE tool is the master Not true. Once code is either generated from the model or written by hand, the code is the master. One tough decision that has to be made is should the model be updated to reflect the code? MAC03
  • 11. IBM Rational Software Conference 2009 Maneesh’ Team Maneesh: software development manager responsible for managing the architecture of a Rational Modeling product and leading a team of engineers developing this product Maneesh’ team 10 brilliant software engineers Maneesh’ extended team Product Manager Product delivery team Release engineering team User Experience team MAC03
  • 12. IBM Rational Software Conference 2009 Team Process – Agile Modeling Review requirements New requirements arrive from the product manager Ask clarifying questions to the product manager and provide feedback Review the updated requirements Manage SW architecture Create new SW design models Use case diagrams Class diagrams, sequence diagrams, … Review the SW designs created by the team members Share and collaborate within the team and extended team MAC03
  • 13. IBM Rational Software Conference 2009 The Problem Information overload Email discussions Meeting minutes, whiteboards Collaboration and communication Globally distributed teams Knowledge transfer – The whys of architecture MAC03
  • 14. IBM Rational Software Conference 2009 Agile Modeling Principles Requirements envisioning Prioritized requirements Architecture envisioning Multiple models Just barely good enough models Model storming Active stakeholder participation Copyright © 2001-2008 Scott W. Ambler MAC03
  • 15. IBM Rational Software Conference 2009 Requirements envisioning Create new requirements Modify existing requirements Use Rational Requirements Composer Stakeholder participation Product managers User experience team MAC03
  • 16. IBM Rational Software Conference 2009 Prioritized requirements Define criteria for prioritization Review and prioritize requirements Stakeholder participation Internal stakeholders – software development engineers, user experience team External stakeholders – product managers MAC03
  • 17. IBM Rational Software Conference 2009 Architecture envisioning Create and modify architecture models Associate the models with the requirements Stakeholder participation Software architects Software development engineers MAC03
  • 18. IBM Rational Software Conference 2009 Multiple models & Just barely good enough models Similar to whiteboard models Use case diagram Class and Component diagram Sequence diagram Deployment diagram Stakeholder participation Software architect Software development engineers MAC03
  • 19. IBM Rational Software Conference 2009 What Are Agile Models? Agile models: Fulfill their purpose Are understandable Are sufficiently accurate Are sufficiently consistent Are sufficiently detailed Provide positive value Are as simple as possible Agile models are just barely enough! MAC03
  • 20. IBM Rational Software Conference 2009 Active stakeholder participation & Model storming Review the requirements and architecture with all stakeholders Remove the barriers to participation The needs of the globally distributed team Provide the right tools MAC03
  • 21. IBM Rational Software Conference 2009 MAC03 21
  • 22. IBM Rational Software Conference 2009 Conclusion You are engaged in Agile Modeling if: Your customers/users are active participants Changing requirements are welcomed and acted upon You work on the highest priority requirements first You take an iterative and incremental approach to modeling Your primary focus is the development of software, not documentation or models themselves You model as a team where everyone’s input is welcome You actively try to keep things as simple as possible You discard models as development progresses Customers/business owners make business decisions; developers make technical decisions The model’s content is recognized as being significantly more important than the format/representation of that content How you test what you describe with your model(s) is a critical issue continually considered as you model MAC03
  • 23. IBM Rational Software Conference 2009 References and Recommended Reading www.agilealliance.com, www.agilemodeling.com, www.agiledata.org, www.ambysoft.com, www.databaserefactoring.com, www.enterpriseunifiedprocess.com Ambler, S.W. (2002). Agile Modeling: Effective Practices for XP and the UP. New York: John Wiley & Sons. Ambler, S.W. (2003). Agile Database Techniques. New York: John Wiley & Sons. Ambler, S.W. (2004). The Object Primer 3rd Edition: AMDD with UML 2. New York: Cambridge University Press. Ambler, S.W. and Sadalage, P.J. (2006). Refactoring Databases: Evolutionary Database Design. Reading, MA: Addison Wesley Longman, Inc. Larman, C. (2004). Agile and Iterative Development: A Manager’s Guide. Reading, MA: Addison Wesley McGovern, J., Ambler, S.W., Stevens, M., Linn, J., Sharan, V., & Jo, E. (2003). The Practical Guide to Enterprise Architecture. Prentice Hall PTR. MAC03
  • 24. IBM Rational Software Conference 2009 MAC03 24
  • 25. IBM Rational Software Conference 2009 © Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. MAC03 25