MDA and RUP.pdf by tongxiamy

VIEWS: 22 PAGES: 38

									                                                    ®




           IBM Software Group




MDA and RUP
Peter Eeles
peter.eeles@uk.ibm.com




                                © 2004 IBM Corporation
        IBM Software Group | Rational software


Agenda
 Models and Model-Driven Development (MDD)
 Rational Unified Process (RUP)
 Model-Driven Architecture (MDA)
 Aligning MDA with RUP
 Automating MDA
 Summary




                                                 2
         IBM Software Group | Rational software


What is a model?
  “A complete description of a system from a particular perspective”
  [RUP]




                                                                       3
         IBM Software Group | Rational software


Why do we model?
 To manage complexity
 To clearly understand different concerns
 To detect errors and omissions early in the lifecycle
 To examine the relative merits of different options
 To communicate with stakeholders
 To drive implementation
 To understand the impact of change
 To ensure that resources are deployed efficiently




                                                         4
      IBM Software Group | Rational software


What is Model Driven Development?




                                     Analysis &
          Requirements                            Implementation
                                      Design




                                       Testing



                                                                   5
          IBM Software Group | Rational software


Why Model Driven Development?
  To speed up project delivery
    In the absence of heroics, it is the fastest way to get from A to B
  To improve the quality of the delivered system
    Each model can act as a “quality gate”
  To weave together multiple stakeholder views
    Stakeholders have different, yet related, concerns
  To improve team working
    Models form the basis of a “contract” between project roles
  To be more efficient
    Reusing models (and model elements) throughout the lifecycle




                                                                          6
        IBM Software Group | Rational software


Agenda
 Models and Model-Driven Development (MDD)
 Rational Unified Process (RUP)
 Model-Driven Architecture (MDA)
 Aligning MDA with RUP
 Automating MDA
 Summary




                                                 7
      IBM Software Group | Rational software


Rational Unified Process




                                               8
       IBM Software Group | Rational software


Models throughout the lifecycle




                                                9
      IBM Software Group | Rational software


Use Case Model




                                               10
         IBM Software Group | Rational software


Use Case Model
  Basic flow of the “Create Order” Use Case
 1. The use case starts when the Sales Clerk receives a request to place an
    Order from a Customer (who, for example, has contacted the Sales Clerk
    by phone, email or post).
 2. The Customer details are retrieved.
 3. The Customer details, together with relevant details about each Order Item,
    are added to the Order.
 4. A request to place the Order is made.
 5. Stock levels are checked to ensure that the Order can be fulfilled, and the
    Order is placed.
 6. The use case ends.




                                                                                  11
       IBM Software Group | Rational software


Models throughout the lifecycle




                                                12
      IBM Software Group | Rational software


Analysis Model




                                               13
      IBM Software Group | Rational software


Analysis Model




                                               14
      IBM Software Group | Rational software


Analysis Model




                                               15
       IBM Software Group | Rational software


Models throughout the lifecycle




                                                16
      IBM Software Group | Rational software


Design Model



              Order
                                  Accounting          Shipping
              Entry




     Customer                           Account
                                                    Fulfillment
    Management                         Management



                                                                  17
      IBM Software Group | Rational software


Design Model




                                               18
      IBM Software Group | Rational software


Design Model




                                               19
      IBM Software Group | Rational software


Design Model




                                               20
        IBM Software Group | Rational software


Agenda
 Models and Model-Driven Development (MDD)
 Rational Unified Process (RUP)
 Model-Driven Architecture (MDA)
 Aligning MDA with RUP
 Automating MDA
 Summary




                                                 21
         IBM Software Group | Rational software


Model Driven Architecture (MDA)
  Model-Driven Development (MDD)
   Is a general term used by IBM and other
   organizations
  Model-Driven Architecture (MDA)
   Is a specific initiative of the Object Management
   Group (OMG)
   Builds upon open standards (UML, MOF, CWM, …)
   Is not yet a standard – more of a philosophy
   Models aren’t necessarily visual (e.g. code)
   Other standards being driven by MDA (e.g. QVT)




                                                       22
               IBM Software Group | Rational software


 MDA Concepts – models and transformations
                                                  CIM >> CIM
               Computation Independent            Transformation
                       Model
                                                      CIM >> PIM
                        (CIM)                         Transformation
Business Analyst
                                                                       PIM >> PIM
                                                                       Transformation
                                          Platform Independent
                                                  Model
                                                                           PIM >> PSM
                                                  (PIM)
                                                                           Transformation
                   Architect / Designer
                                                                                            PSM >> PSM
                                                                 Platform Specific          Transformation
                                                                        Model
                                                                                               PSM >> Code
                                                                       (PSM)                   Transformation
                                          Developer / Tester


                                                                                            Code

                                                                                                             23
         IBM Software Group | Rational software


Relationships between models is not one to one
  A PIM is usually described in UML
  Bridges between PSMs can be generated as well as PSMs



                                            EJB       EJB
                                           (PSM)     (Code)


        Platform                        EJB – SQL   EJB – SQL
      Independent                        mapping     mapping
      Model (PIM)                         (PSM)       (Code)


                                            SQL       SQL
                                           (PSM)     (Code)



                                                                24
        IBM Software Group | Rational software


Agenda
 Models and Model-Driven Development (MDD)
 Rational Unified Process (RUP)
 Model-Driven Architecture (MDA)
 Aligning MDA with RUP
 Automating MDA
 Summary




                                                 25
        IBM Software Group | Rational software


RUP Models and MDA
  RUP                                            MDA
   Business Use-Case Model                        CIM
   Business Analysis Model                        CIM
   Use-Case Model                                 CIM
   Analysis Model                                 PIM
   Data Model (logical)                           PIM
   Design Model                                   PIM (logical elements) / PSM
   Data Model (physical)                          PSM
   Implementation Model                           PSM
   Deployment Model                               PSM




                                                                                 26
        IBM Software Group | Rational software


Agenda
 Models and Model-Driven Development (MDD)
 Rational Unified Process (RUP)
 Model-Driven Architecture (MDA)
 Aligning MDA with RUP
 Automating MDA
 Summary




                                                 27
        IBM Software Group | Rational software


Models and transformations
  Model-model transformation
   E.g. Use-Case Model to Analysis Model
  Model-code transformation
   E.g. code generation, database schema generation
  Code-model transformation
   E.g. model generation from code
   E.g. visual trace
  Architected RAD




                                                      28
       IBM Software Group | Rational software


Conceptual Integrity




                                                29
      IBM Software Group | Rational software


Business Analysis Model to Use Case Model




                                               30
      IBM Software Group | Rational software


Use Case Model to Analysis Model




                                               31
      IBM Software Group | Rational software


Analysis Model to Design Model




                                               32
      IBM Software Group | Rational software


Design Model to Implementation Model




                                               33
      IBM Software Group | Rational software


Design Model to Data Model




                                               34
         IBM Software Group | Rational software


Volvo IT – JNX Framework
                                                                      Requirements



                                      Model
                                                         Platform-independent Model
             Reusable asset         templates
               (.ras file)
             Reusable asset                         extend         Domain Model
                                    Patterns
               (.ras file)
  RAS
Repository   Reusable asset                                   transform
                                           Patterns
               (.ras file)
 Service
                                                              Platform-specific Model
             Reusable asset                       integrate
               (.ras file)           Patterns
                                                  validate          Design Model

                                                                             synchronize

                                    Code & Test                Implementation Model
                                                   Business
                                                     logic


                                                                                           35
        IBM Software Group | Rational software


MDA Information Center
  http://www-306.ibm.com/software/rational/mda/




                                                  36
        IBM Software Group | Rational software


Summary
 Visual modeling is a software development best practice
 Modeling is a cornerstone of the Rational Unified Process (RUP)
 Model-Driven Architecture (MDA) is a relevant standardisation initiative
 RUP aligns with the MDA philosophy
 MDA approaches can be automated using appropriate tooling




                                                                            37
IBM Software Group | Rational software




                                         38

								
To top