SlideShare a Scribd company logo
1 of 65
Download to read offline
Effective UML Modelling
            Does Software Modeling Pay ?
                     - empirical studies in UML -




Dr. Michel R.V. Chaudron, Leiden Institute of Advanced Computer Science
Program director M.Sc. ICT & Business http:/iib.liacs.nl




                                      Leiden University. The university to discover.
Collaborate with us!
    Your ideas on software engineering research?

    Collaborate with us!                                    chaudron@liacs.nl

    - Can we study your project (for free)?

    - We would like to study :
           -   impact on maintenance, requirements
           -   Communication in off-shored projects
           -   UML-based test generation
           -   Compare UML-based with MDA-based development
           -   Measure risk exposure in iterative sw development

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes     Leiden University. The university to discover.
Outline of talk
    - Introduction                                                                               Johan Muskens


    - Modeling – State of the Practice
           - Styles of modeling                                                                  Christian Lange

           - Quality of models
    - Costs of modeling
                                                                                                 Ariadi Nugroho
    - Benefits of modeling

                                                                                                 Werner Heijstek


Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Introduction Leiden Netherlands

                                                                  Amsterdam
                                                                 Leiden

                                                                                      Eindhoven




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Research Interest
 - Effectiveness of software modelling
    - Quality of Modeling
      When is a model good (enough)
    - Analysis of Non-Functional
      Properties of component-based
      architectures (model-based)

 - What are the pay-offs of investing in
   early design/architecture?
       Fewer defects? Cheaper maintenance? …

 - Software Design

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
State of the Practice




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Styles of Modeling
                                                        Sketch



             Communication
                                                                  Recipe for construction




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Characteristics of Case Studies




                    Your project here?
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Industrial use of UML diagrams




                                                                                                             How UML is used B Dobing, J Parsons - Communications of the ACM, 2006
                                                 Class


Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Statistics about Design Doc’s in general
 Typical Word document mixes:
 - Text and diagrams
   500-800 words / diagram

 - Formal UML & inventions
   40-50% of diagrams is UML
   60-50% of diagrams is not UML

 Text is used for:
 - Design decisions / Rationale
 - Elaboration/explanation
 - Linking to context
    ‘Design’ Tooling must support: models, sketches & text
                                                            Uri Dekel, James D. Herbsleb: Notation and representation in collaborative
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes       object-oriented design: an observational study. OOPSLA 2007: 261-280
                                                               Leiden University. The university to discover.
Modelling style and model purpose




                                                                                   Architecture and Design Description. IEEE Software 23(2): 40-46 (2006)
                                                                                    C.F.J.Lange, M.R. V. Chaudron, J.Muskens: In Practice: UML Software
                    understanding

                    communicating

                                   managing
                                  complexity
                                               implementation
                                                  blueprint




    Styles of using UML
       –   as a sketch – thinking tool/understanding
       –   for communicating system design
       –   as a blueprint – guide the implementation work
       –   as a implementation (MDA)         Panel
                                  Leiden University. The university to discover.
UML in practice
                                                                 Sketch




   Communication

                                             More effort  More expensive
                                                          Recipe for construction




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
UML for Design:
 Suitability of UML                                                    - UML is too formal
                                                                       - Informal information is
                                                    Sketch               added to diagrams
                                                                       - designers do use UML
                                                                          concepts
             Communication
     UML for Communication:                                       Recipe for construction
       - Internationally standardized
                                                                  UML Blueprint:
         meaning seems to work
                                                                    - Ok
                                                                  UML for code generation:
                                                                    - Not formal enough



Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Quality of UML Models
          - Can we distinguish styles by means of some
            objective measure of model-quality?




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Quality Models
    Existing models

            Boehm              McCall
                   ISO 9126           Rombach

                                  …


    - Decomposition of
      characteristics
           - Bottom level: metrics
    - Differences in
           - Relations between characteristics
           - Vocabulary                                                          Boehm’s Quality Model

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
How to Define UML Model Quality?




                                                                                                             Framework for quality of UML models (Lange & Chaudron, 2005)
    The quality attributes of a UML model is determined
    by its purpose...




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
How to measure goodness of UML model?
 - Design Heuristics

 - Completeness
        - Interaction of classes must be described in SD
        - Methods of CD must be called in SD
 - Consistency
        - Messages in SD must correspond to method in class diagram
           In many cases it can not be automatically determined
           whether a flaw is an incompleteness or an inconsistency
 - Correspondence
        - Dependencies in the implementation are allowed only if they
          occur in the design
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Automated Model Checking and Visualization




       UML model

                     Analysis Tool


          Quality Metrics/Rules
         • Completeness                                                Visualization of
         • Consistency                                                 model + metrics
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Screenshot of the MetricView tool

                                                                                             = violation
                                                                                              = ok




                  Quality = absence of ‘bad things’
                            such as omissions, spaghetti
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Design Heuristics for UML
    – Metrics based on Chidamber & Kemerer OO metrics
      Maintainability relates to Coupling, Cohesion, …




           Highest coupling = 7                                      Highest coupling = 4

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Distribution of Coupling
                           250



                           200
       number of classes




                           150



                           100



                            50



                             0
                                 1   3   5   7   9   11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
                                                                                                     coupling

                                             System of several hundred classes

                                                                                                                         21
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes               Leiden University. The university to discover.
MetricView Tool                                                                           MetaView
                                                                                  to visualize the (hidden)
                                                                                  inter-diagram relations
                                                                                  Example: Which classes
                                                                                  contribute to a certain
                                                                                  use case?




                       http://www.youtube.com/watch?v=G3HJ_QR9EG4
       Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron,
                                           Journal of Visual Languages and Computing

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes      Leiden University. The university to discover.
                                             Christian Lange                                                               22
MetricView Tool                                                                    MetricView
                                                                            The values of metrics are
                                                                            visualized on class
                                                                            diagrams using colors
                                                                            Example: Coupling-
                                                                            Between-Objects (CBO)




                http://www.youtube.com/watch?v=G3HJ_QR9EG4
  Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron,
                                      Journal of Visual Languages and Computing


                                     Christian Lange.   Leiden University. The university to discover.                23
3D visualization of design measurements




               http://www.youtube.com/watch?v=G3HJ_QR9EG4
 Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron,
                                     Journal of Visual Languages and Computing


                                    Christian Lange.   Leiden University. The university to discover.                24
Industrial Experience with MetricView
                     as Quality Assurance Tool
    - Based on 15+ industrial projects

    - If there are weak spots in the design, then these are
      indicated as ‘suspects’ by MetricView

    - MetricView indicates many weak spots that do not
      require improvement according to project architects
      (false positives?)
       quality is not applied uniformly across UML models

    - The later MetricView is applied, the fewer ‘weak spots’
      are removed from the design  process issue

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
How do developers apply detail to UML models?




                                                                                                                                Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design -
                                                                                                                                 Code Correspondence amongst Professional Software Engineers. ESEM 2007:
                                            70.0
                                                   Disagree
                                                   Somewhat Disagree
                                                                                                  61%
                                            60.0
                                                   Neutral
                                                   Somewhat agree
                                                                              52%
            Percentage of the respondents




                                            50.0   Agree


                                            40.0
                                                                                                                      37%

                                            30.0



                                            20.0



                                            10.0




                                             0.0
                                               Equal details     Details proportional More details for Programmers
                                                for all parts       to complexity      critical parts determine details


                                                   Developers apply more detail on critical
                                                       and complex parts of a system
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                      Leiden University. The university to discover.
How is Level of Detail distributed in a diagram?
  Case 1                               Case 2




     High detail                                                             High detail
     Low detail                                                              Low detail


                   Robin van den Broek B.Sc. Thesis in CS, 2009, Leiden University
                                     Leiden University. The university to discover.
Does the implementation resemble
           the design?

         design                                  implementation




 M.Sc. Thesis, Dennis van Opzeeland TU/e Computer Science, System Architecture and Networking
                                         Leiden University. The university to discover.
Model - Source Code Conformance
     Does the implementation look like the original design?
                                                                                       X-Axis
                                                                                             Metrics of Design
                                                                                       Y-Axis
                                                                                             Metrics of
                         Outlier                                                              Implementation


                                                                                       Points represent
                                                                                        Classes
                                                                                       Points off the
                                                                                        diagonal indicate
                                                                                        outliers




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Does strictness of implementing a model differ




                                                                                                                                   Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design -
                                                                                                                                    Code Correspondence amongst Professional Software Engineers. ESEM 2007:
            for different modeling constructs?
                                              50.0
                                                     Loosely                          36%
              Percentage of the respondents

                                                     Somewhat loosely
                                              45.0
                                                     Neutral
                                              40.0
                                                     Somewhat strict
                                                     Strictly
                                                                                                  46%
                                              35.0


                                              30.0
                                                                                                                      31%
                                              25.0


                                              20.0


                                              15.0


                                              10.0


                                               5.0


                                               0.0

                                                     Package       Dependency   Inheritance  Class and   The order of
                                                     structure      relations    relations  method names method calls



        Developers favor to implement dependency and
    inheritance relations more strictly than other constructs
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                         Leiden University. The university to discover.
Which factor most often drives developers to




                                                                                                                         Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design -
                                                                                                                          Code Correspondence amongst Professional Software Engineers. ESEM 2007:
                       non-correspondence?
         Percentage of the respondents

                                         60

                                               Never
                                         50
                                               Sometimes
                                               Often
                                               Very Often                     48%
                                         40




                                         30
                                                                  31%
                                                                                                   29%
                                         20




                                         10




                                          0

                                              Meeting       Impractical Incomplete         Model doesn’t satisfy
                                              deadline        model        model             requirements

      Among other factors, developers considered incomplete model
            more often drives them to non-correspondence

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes               Leiden University. The university to discover.
Findings from State of the Practice
    - UML is used in many different ways
    - Incompleteness
          - Not all parts of system are modelled
    - Disproportion
          - Different parts of the system are modeled different in level
               of quality
    - Inconsistency
          - Conflicting information in different views of one model

                                           Is this a problem?

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Does Quality Matter? Experiment




                                                                                   Effects of Defects in UML Models, C.F.J. Lange, M.R.V. Chaudron, (ICSE 2006)
- Subjects are given UML models
- Ask questions about UML model
   - Two types
      • Which implementation matches the diagrams?
      • How do you interpret these diagrams?
   - Answer from the perspective of the developer.

- Multiple-choice test (15 Questions)
  - 4 options + 1 option
                (“There’s something wrong, I can’t give an answer”)
- + Background questions
                (possible confounding factors: training, experience, …)


                                  Leiden University. The university to discover.
Example Question




                                                                                                                                       Effects of Defects in UML Models, C.F.J. Lange, M.R.V. Chaudron, (ICSE 2006)
                        Inconsistency:
           Message Name does not correspond to Method                 Message does not correspond to Method - Control (Q4)

                                                                120
80
                                                                100

70
                Many don’t see the defect                       80




                64% don’t see the defect
                                                                60
60
                      and just implement                        40

50
                   and just implement                           20


40                                                               0
                                                                      a             b            c            d              e(rror)


30

20                                                                                                                    ?
10
-    Suppose you are developer in this banking software project. It is your task to implement class
0
     ATM. Please indicate how you would implement the class ATM given these two UML diagrams?
        a           b          c           d         e(rror)

A)                     B)                       C)                          D)                                                  E)

                                                                                                                      Ring the
getCardInserted(){     getCardInserted(){       getCardInserted()           getCardInserted()
                                                                                                                        bell!
c.requestPIN();        c.requestPIN();          {                           {                                        Something
dosomething;           dosomething;             c.requestPIN();             c.requestPIN();                              is
a.open()               a.lock()                 dosomething;                dosomething;                               wrong!
}                      }                        a.acknowledge()             a.validate()
                                                }                           }

                                                        Leiden University. The university to discover.
Does Quality Matter? Case Study
     Parts of the design are more detailed than others

                                                            attributes


                                                                                  operations




                                                                                                 associations




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes     Leiden University. The university to discover.
Relation between UML-LoD and Code Quality
           Select ‘defects’
            in defect DB

     Find classes in source                                                                 component C2                                                                                               defect
                                                                                              component C2

        code that were
                                                                                               requires I2
                                                                                               requires I3I2
                                                                                                 requires
                                                                                            uses requires I3
                                                                                                 I2.g
                                                                                              uses I2.g
                                                                                                                                                                                                       density
                                                                                            uses I3.h

    repaired for solving this                                                                 uses I3.h




             defects

                                                                                                                           O rder
                                                    OrderDetail
                                                                             *                              1       -date                                   P ce or
                                                                                                                                                             repro ss     Parser        A er
                                                                                                                                                                                         nalys    DC
                                                                                                                                                                                                  B reator   DF
                                                                                                                                                                                                             B iller     Inherita R
                                                                                                                                                                                                                                 nce elator   DC
                                                                                                                                                                                                                                              B hecker       S tis Filte
                                                                                                                                                                                                                                                              ta tic r     StatisticC lculator
                                                                                                                                                                                                                                                                                     a
                                                  -quantity




       Find corresponding
                                                                                                                    -status
                                                  -taxS tatus                                                                                     SA A
                                                                                                                                                  A T.B T
                                                                                                                    +calcTax()
                                                  +calcS ubTotal()
                                                                                                                    +calcTotal()
                                                  +calcW eight()                                                    +calcTotalW eight()
                                                                                   Paym ent                 1

                                                                                 -am ount              1




     classes in UML models                             Credit
                                                   -num ber
                                                   -type
                                                   -expDate
                                                                                     Cash
                                                                                 -cashTendered
                                                                                                                Check
                                                                                                            -nam e
                                                                                                            -bankID
                                                                                                            +authorized()
                                                   + authorized()




                                                                OrderDetail
                                                                                                                                    O rder                                                                                                                                                                      LoD per
                                                                                                                                                                                                                                                                                                                 class
                                                                                     *                                1     -date                                         P ce
                                                                                                                                                                           repro ssor     P rse
                                                                                                                                                                                           a r      A lys
                                                                                                                                                                                                     na er    DC
                                                                                                                                                                                                              B reator      DF
                                                                                                                                                                                                                            B iller       Inherita ceR
                                                                                                                                                                                                                                                  n elator    D C eck
                                                                                                                                                                                                                                                               B h er      S tisticFilte
                                                                                                                                                                                                                                                                            ta          r   StatisticC lc r
                                                                                                                                                                                                                                                                                                      a ulato
                                                           -quantity




           Determine LoD
                                                                                                                            -status
                                                           -taxS tatus                                                                                         SA A
                                                                                                                                                                A T.B T
                                                                                                                            +calcTax()
                                                           +calcS ubTotal()
                                                                                                                            +calcTotal()
                                                           +calcW eight()                                                   +calcTotalW eight()
                                                                                              Paym ent                 1

                                                                                            -am ount            1




           for CD and SD                                    -num ber
                                                            -type
                                                            -expDate
                                                                    Credit                      Cash
                                                                                            -cashTendered
                                                                                                                           Check
                                                                                                                      -nam e
                                                                                                                      -bankID
                                                                                                                      +authorized()
                                                            + authoriz ed()




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                                                                  Leiden University. The university to discover.
Relation between Level of Detail
                    •Does high LoD in sequence diagrams correspond to lower defect
                    density?    and Defect Density




                                                                                                    = 1 class




                  Level of Detail for Sequence Diagrams is significantly
                      (negatively) correlated with defect density.
                         More detailed model => fewer defects

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Economic Model for Cost of Quality




                                                                                                             From: H. Krasner, Cost of Quality, 1998
 Cost of SQ = Achievement Cost + Non-conformance Cost

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Cost of Modeling
    Focus on effort

    “Is there a correlation between class-count and the
       effort spent in modeling?”

      Sources:
      ‐ Experiment
      ‐ Set of industrial case studies




Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Empirical Data
       Experiment
        106 MSc students in (TU/e)
                 Organized in 35 teams
            Task: Model Car Navigation System
            Duration: 6 weeks assignment
            Three treatments were applied:
                     1. No modeling conventions
                     2. With modeling conventions
                     3. Tool-supported modeling conventions


Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Results
     Experiment
                      40,00

                      35,00

                      30,00
     Effort (hours)




                      25,00
                                                                                          Spearman’s Correlation Coefficient
                      20,00

                      15,00                                                                                Effort (hours)
                      10,00                                                  Class-count                          .302
                       5,00                                                  Sig. (2-tailed)                      .171
                       0,00
                              0   10   20   30       40   50   60     70
                                            Class-count




                        There is no significant correlation between class-count and
                                        the effort spent in modeling.

                           class-count is not a good measure for the effort spent
                                               on modeling?
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes      Leiden University. The university to discover.
Measurement of Modeling/Design
                  in RUP Effort Distribution




                                      modeling                 designing
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Impact of MDD on Effort Distribution
                                                       as % of total project effort
                              construction




                                                       constr.
              elaboration
                                                                 transition

                                                         transition
              elaboration
               architecture & code generator
   incep.



            ‘traditional’                                   Model-driven
            (avg. of 17 projects)                           (1 project)
                                    Leiden University. The university to discover.
Cost of Modeling - Summary
    - Size is not the issue
    - Large variety in cost per
       - Developer (expertise)
       - project
                  - Purpose/use of models
                  - Level of abstraction / target quality of models

    - Maintaining model-code correspondence

    - Common to all new technology:
       - training, licensing, …
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
The Use of UML and Software Quality




                                                                                                                               Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design -
                                                                                                                                Code Correspondence amongst Professional Software Engineers. ESEM 2007:
                                              50.0
                                                      Reduce                                                             45%
                                              45.0    Somewhat Reduce
                                                      Neutral
                                                                                     41%
                                              40.0    Somewhat Improve
                                                      Improve
              Percentage of the respondents




                                              35.0


                                              30.0


                                              25.0


                                              20.0


                                              15.0


                                              10.0


                                               5.0


                                               0.0

                                                        Cover     Correctness Modularity Testability Understandability
                                                     Requirements


    A large number of developers indicated the use of UML
          improves understandability and modularity
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                     Leiden University. The university to discover.
Benefits of Modeling
                             Req. engineering                 Doing the right things

  Modeling                          Designing                 Modularity 
                                                                           
                                Implementing                  Defects

                                      Testing

                                 Maintenance

                                                                   Early insight in system quality
                            Project Management
                                                                   Better traceability
                                                                   Improved shared understanding
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Do Models improve understanding?




                                    Eye tracking experiment

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Eye tracking UML designs: gazeplots



structure                                                                                        behaviour




               Attention is determined by task

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Heatmap Person A




                         structure                                         behaviour
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Heatmap Person B




               There are large differences in styles of reading
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Overview Benefits of Modeling
     Improved                           Improved                                            Improved Project
      Quality                          Productivity                                           Management



                        Reduced                             More Efficient
                         rework                             Maintenance



                                        Reduced              Reduced
       Fewer                                                                     Improved
                                         testing            maintenance
      Defects                                                                  Communication
                                          effort               effort

                               “validation”                                                    Better Risk
“verification”                 building the                                                   management
building the                   right system
system right
                                                                                                               More
                        Improved                                     Improved
                                                                                                             Accurate
                      requirements                                   Modularity
                                                                                                            Estimating


                                                      Better Understanding


                                                              Modeling

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes       Leiden University. The university to discover.
What is next?
    - Domain specific modelling (using UML)
           - Domain specific tooling, V&V, generation

    - Generation of/from UML
           - From requirements
           - Test generation based on UML

    - Tool integration
           - Synchronization between model and code

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Concluding Remarks
- UML modeling is being done in a variety of styles
- Modelers ‘economize’ by focusing on complex and critical
  parts. QA needs to be risk-aware
   - Low hanging fruit: ‘common’ QA techniques should be
     applied to models (versioning, reviews, coding-conventions)

- There is a payoff of modeling in:
   - improved modularity
   - seq.diagrams  code quality
   - communication (suspected)

- Future work: maintaining                                                  Please send your projects
  model-code correspondence                                                   to: chaudron@liacs.nl

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
What is next?
    Your ideas on research?

    Collaborate with us!                                    chaudron@liacs.nl

    - Can we study your project?

    - We would like to study :
           -   impact on maintenance, requirements
           -   Communication in off-shored projects
           -   UML-based test generation
           -   Compare UML-based with MDA-based development
           -   Measure risk exposure in iterative sw development

Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes     Leiden University. The university to discover.
How often do design issues lead to problems?
                                    70
                                                                                                      Never
                                                                                                      Sometimes
                                    60                                                                Often
                                                                                                      Very Often
    Percentage of the respondents




                                    50



                                    40



                                    30



                                    20



                                    10



                                    0
                                         Inconsistency   Understandability    Inaccuracy         Incompleteness




                                    Incompleteness of models was considered most
                                       often to lead to implementation problems
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                    Leiden University. The university to discover.
Opinions on Value of Modelling

Value
        Agile


        MDA     “Loose
                 UML”
                                 Formal Methods


                            100%
                         Panel
                         completeness

                  Leiden University. The university to discover.
Which classes are modeled?




         Complexity and Coupling is higher for classes
         that are modeled than not modeled
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Recommendations
     - Apply Quality Assurance to UML modeling
            - Use ‘coding conventions’ for UML:
               - Naming – correspond to implementation
               - Layout
               - Use of patterns/stereotypes
            - Version Control
     - Organize traceability from Use Cases to Sequence
       diagrams (tool/conventions)
     - Quality of SD’s is important when UML is used as
       blueprint for implementation


Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Maintenance paradox
    - Maintainers of software would like better
      documentation

    - Even if UML models are created during
      design, these are used in maintenance.
      The more detailed models are, the mode
      quickly they become outdated.

         Better abstraction in reverse- / round trip-
         engineering is needed in the setting of
         incremental & iterative development
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university to discover.
Conformance
   -    Between UML model and source code implementation
   -    It is the degree of similarity between model and implementation
   -    Reasons for lack of conformance
          -   Poor model quality (therefore misunderstood in implementation)
          -   “I know it better”-Attitude of Programmer
          -   Evolution of implementation during maintenance

   -    Why is conformance important?
          -   Ensure similarity between model and implementation
          -   Model is used for understanding the implementation in maintenance (understanding
              the corresponding model is easier than digging through thousands of lines of source
              code)

   -    We developed methods to
          -   Measure conformance / Identify Deviations
          -   (Re)construct a mapping between model and implementation elements
          -   Support in keeping Model and Implementation ‘in sync’




                                                                                MRV Chaudron
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                                  Sheet 60
                                                            Leiden University. The university to discover.
MetricView contributors
    -    Johan Muskens
    -    Christian Lange
    -    Martijn Wijns
    -    Dennis van Opzeeland
    -    Ariadi Nugroho
    -    Werner Heijstek
    -    Maurice Vermeer
    -    Alex Telea
    -    Robin van den Broek




                                                                                MRV Chaudron
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes   Leiden University. The university 61 discover.
                                                                                       Sheet to
Publications
-    Journal Publications
       -   Supporting task-oriented modeling using interactive UML views. PDF
           C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Journal of Visual Languages and Computing (Elsevier), Volume 18, Issue 7,
           August 2007.
       -   In Practice: UML Software Architecture and Design Description.
           C.F.J. Lange, M.R.V. Chaudron, J. Muskens. IEEE Software, Volume 23, Issue 2, March 2006.
-    Conference Publications
       -   A Visualization Framework for Task-Oriented Modeling using UML.
           C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Proceedings of the 40th Annual Hawaii International Conference on System
           Sciences (HICSS'07). January 2007.
       -   An Experimental Investigation of UML Modeling Conventions.
           C.F.J. Lange, Bart DuBois, M.R.V. Chaudron, Serge Demeyer. Proceedings of the ACM/IEEE International Conference on
           Model-driven Engineering Languages and Systems (MoDELS 2006). October 2006.
       -   Effects of Defects in UML Models - An Experimental Investigation.
           C.F.J. Lange, M.R.V. Chaudron. Proceedings of the International Conference on Software Engineering (ICSE 2006). May 2006.
           (acceptance rate: 9%)
       -   Improving the Quality of UML Models in Practice.
           C.F.J. Lange. Proceedings of the International Conference on Software Engineering (ICSE 2006). May 2006.
       -   Visual Exploration of Combined Architectural and Metric Information.
           M. Termeer, C.F.J. Lange, A. Telea, M.R.V. Chaudron. Proceedings of VISSOFT 2005, IEEE CS Press. September 2005.
       -   Combining Metrics Data and the Structure of UML Models using GIS Visualisation Approaches.
           C.F.J. Lange, M.R.V. Chaudron. IEEE International Conference on Information Technology 2005. Las Vegas, April 2005.
       -   An Exploratory Study on the Industrial Use of UML: Improving Control over Design Quality.
           C.F.J. Lange, M.R.V. Chaudron. JACQUARD Conference. February 2005.
       -   Investigations in Applying Metrics to Multi-View Architecture Models.
           J. Muskens, M.R.V. Chaudron, C.F.J. Lange. In Proceedings of EUROMICRO’04, Rennes, France, September 2004.
       -   An Empirical Assessment of Completeness in UML Design.
           C.F.J. Lange, M.R.V. Chaudron. Proceedings of the 8th Conference on Empirical Assessment in Software Engineering
           (EASE04). May 2004.
       -   Konsistenz und Vollständigkeit industrieller UML Modelle.
           C.F.J. Lange, M.R.V. Chaudron. Proceedings of “Modellierung 2004“, Marburg, Germany, 24-26 March 2004.
                                                  Michel Chaudron, Christian Lange, Martijn Wijns discover.
                                                             Leiden University. The university to                                      62
-    Workshop Publications
          -     Towards Task-Oriented Modeling using UML.
                C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Proceedings of the 10th QAOOSE workshop, co-located with ECOOP2006. July 2006.
          -     Managing Model Quality in UML-based Software development.
                C.F.J. Lange, M.R.V. Chaudron. Proceedings of IEEE Conference on Software Technology and Engineering Practice 2005 (STEP), in the "Workshop on
                Software Process Improvement, Quality Assurance and Measurement. September 2005.
          -     Quantitative Techniques for the Assessment of Correspondence between UML Designs and Implementations.
                Dennis J.A. van Opzeeland, Christian F.J. Lange, Michel R.V. Chaudron. Proceedings of the 9th QAOOSE workshop, co-located with ECOOP2005. July 2005.
          -     An Empirical Investigation in Quantifying Inconsistency and Incompleteness of UML Designs.
                C. Lange, M.R.V. Chaudron, J. Muskens, L.J. Somers, H.M. Dortmans. 2nd workshop on consistency problems in UML-based software development, October
                20, 2003, in San Francisco, USA as part of the “International Conference on Unified Modeling Language 2003”.




                                                                                                       MRV Chaudron
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes                          Leiden University. The university 63 discover.
                                                                                                              Sheet to
-    Journal Papers
         Ariadi Nugroho, "Level of detail in UML models and its impact on model comprehension: A controlled experiment",
         Information and Software Technology Journal (in Press).
    -
         Conference Papers
         Ariadi Nugroho and Michel R.V. Chaudron, "Evaluating the Impact of UML Modeling on Software Quality: An Industrial
         Case Study", ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems (MODELS),
         Denver, Colorado - USA, 2009.
    -    Ariadi Nugroho, Bas Flaton, and Michel R.V. Chaudron, "An Empirical Analysis of Level of Detail in UML Models and its
         Relation with Defect Density", ACM/IEEE 11th International Conference on Model Driven Engineering Languages and
         Systems (MODELS), Toulouse - France, 2008. (received best paper awards). PDF
    -    Ariadi Nugroho and Michel R.V. Chaudron, "A survey into the Rigor of UML Use and its Perceived Impact on Quality and
         Productivity", 2nd International Symposium of Empirical Software Engineering and Measurement (ESEM), Kaiserslautern -
         Germany, 2008. PDF
    -    Ariadi Nugroho and Michel R.V. Chaudron, "A Survey of the Practice of Design - Code Correspondence amongst
         Professional Software Engineers", 1st International Symposium on Empirical Software Engineering & Measurement
         (ESEM), Madrid, 2007. PDF
    -    Workshop Papers
         Ariadi Nugroho and Christian F.J. Lange, "On the Relation between Class-count and Modeling Effort", Model Size Metrics
         Workshop, co-located with MODELS Conference, Nashville, Tennessee, 2007. (best paper). PDF
    -    Chapters in Books
         Ariadi Nugroho and Michel R.V. Chaudron, “Managing the Quality of UML Models in Practice”, in Model-Driven Software
         Development: Integrating Quality Assurance, Idea Group Inc., New York, 2008. More info




                                                                                      MRV Chaudron
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes         Leiden University. The university 64 discover.
                                                                                             Sheet to
-    W. Heijstek and Michel R. V. Chaudron (2010) The Impact of Model Driven Development on the Software Architecture
         Process, 36th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2010) Lille, France
          bibtex

         W. Heijstek, Michel R. V. Chaudron, Libing Qiu and Christian C. Schouten (2010) A Comparison of Industrial Process
         Descriptions for Global Custom Software Development, 5th International Conference on Global Software Engineering
         (ICGSE 2010) Princeton, New Jersey, USA - Pages 277-284
         bibtex

         W. Heijstek and Michel R. V. Chaudron (2009) Empirical Investigations of Model Size, Complexity and Effort in Large Scale,
         Distributed Model Driven Development Processes - A Case Study, 35th Euromicro Conference on Software Engineering and
         Advanced Applications (SEAA 2009) Patras, Greece
         bibtex

         W. Heijstek and Michel R. V. Chaudron (2008) Evaluating RUP Software Development Processes Through Visualization of
         Effort Distribution, 34th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2008) Parma,
         Italy
         bibtex

         W. Heijstek and Michel R. V. Chaudron (2008) Exploring Effort Distribution in RUP Projects 2nd International Symposium on
         Software Engineering and Measurement (ESEM 2008) Kaiserslautern, Germany
         bibtex

         W. Heijstek and Michel R. V. Chaudron (2007) Effort distribution in model-based development. 2nd Workshop on Model
         Size Metrics (MSM 2007)
         bibtex



                                                                                       MRV Chaudron
Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes          Leiden University. The university 65 discover.
                                                                                              Sheet to

More Related Content

Viewers also liked

System Design and Analysis 1
System Design and Analysis 1System Design and Analysis 1
System Design and Analysis 1
Boeun Tim
 
Writing Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
Writing Chapters 1, 2, 3 of the Capstone Project Proposal ManuscriptWriting Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
Writing Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
Sheryl Satorre
 
Project Proposal Sample: RFID on Warehouse Management System
Project Proposal Sample: RFID on Warehouse Management SystemProject Proposal Sample: RFID on Warehouse Management System
Project Proposal Sample: RFID on Warehouse Management System
Cheri Amour Calicdan
 
Thesis my documentation
Thesis  my documentationThesis  my documentation
Thesis my documentation
cas123
 
Eleve Credentials 2015c
Eleve Credentials 2015cEleve Credentials 2015c
Eleve Credentials 2015c
Prince Khanna
 
Primero td mining presentation january 25, 2012 print
Primero td mining presentation january 25, 2012 printPrimero td mining presentation january 25, 2012 print
Primero td mining presentation january 25, 2012 print
primero_mining
 
Personal effectiveness, LCM
Personal effectiveness, LCMPersonal effectiveness, LCM
Personal effectiveness, LCM
Milos Djuricanin
 
Kuliah 10-bab-ix-kadar-batas-n-ekivalen
Kuliah 10-bab-ix-kadar-batas-n-ekivalenKuliah 10-bab-ix-kadar-batas-n-ekivalen
Kuliah 10-bab-ix-kadar-batas-n-ekivalen
Sylvester Saragih
 
36kr no.94
36kr no.9436kr no.94
36kr no.94
Gina Gu
 

Viewers also liked (20)

UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
#HIRED Project Proposal Presentation
#HIRED Project Proposal Presentation#HIRED Project Proposal Presentation
#HIRED Project Proposal Presentation
 
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
 
Project Proposal Presentation: Bangla Text to Speech Synthesis
Project Proposal Presentation: Bangla Text to Speech SynthesisProject Proposal Presentation: Bangla Text to Speech Synthesis
Project Proposal Presentation: Bangla Text to Speech Synthesis
 
System Design and Analysis 1
System Design and Analysis 1System Design and Analysis 1
System Design and Analysis 1
 
Writing Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
Writing Chapters 1, 2, 3 of the Capstone Project Proposal ManuscriptWriting Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
Writing Chapters 1, 2, 3 of the Capstone Project Proposal Manuscript
 
Project Proposal Sample: RFID on Warehouse Management System
Project Proposal Sample: RFID on Warehouse Management SystemProject Proposal Sample: RFID on Warehouse Management System
Project Proposal Sample: RFID on Warehouse Management System
 
Thesis my documentation
Thesis  my documentationThesis  my documentation
Thesis my documentation
 
Projects
ProjectsProjects
Projects
 
Sentence types
Sentence typesSentence types
Sentence types
 
Rise of the Mongols
Rise of the MongolsRise of the Mongols
Rise of the Mongols
 
Responsive Web Design - kto mało pyta, nie błądzi
Responsive Web Design - kto mało pyta, nie błądziResponsive Web Design - kto mało pyta, nie błądzi
Responsive Web Design - kto mało pyta, nie błądzi
 
Eleve Credentials 2015c
Eleve Credentials 2015cEleve Credentials 2015c
Eleve Credentials 2015c
 
Eidn 6-simobe
Eidn 6-simobeEidn 6-simobe
Eidn 6-simobe
 
Primero td mining presentation january 25, 2012 print
Primero td mining presentation january 25, 2012 printPrimero td mining presentation january 25, 2012 print
Primero td mining presentation january 25, 2012 print
 
8 m プレセン
8 m プレセン8 m プレセン
8 m プレセン
 
Personal effectiveness, LCM
Personal effectiveness, LCMPersonal effectiveness, LCM
Personal effectiveness, LCM
 
Ngajar -statistik
Ngajar -statistikNgajar -statistik
Ngajar -statistik
 
Kuliah 10-bab-ix-kadar-batas-n-ekivalen
Kuliah 10-bab-ix-kadar-batas-n-ekivalenKuliah 10-bab-ix-kadar-batas-n-ekivalen
Kuliah 10-bab-ix-kadar-batas-n-ekivalen
 
36kr no.94
36kr no.9436kr no.94
36kr no.94
 

Similar to Effecitve uml modeling quality asurance and its economics

The Application of Function Models In Software Design: A Survey Within the So...
The Application of Function Models In Software Design: A Survey Within the So...The Application of Function Models In Software Design: A Survey Within the So...
The Application of Function Models In Software Design: A Survey Within the So...
CSCJournals
 
Various Approaches Of System Analysis
Various Approaches Of System AnalysisVarious Approaches Of System Analysis
Various Approaches Of System Analysis
Laura Torres
 

Similar to Effecitve uml modeling quality asurance and its economics (20)

Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software Development
 
Unit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptxUnit-1 OOAD Introduction.pptx
Unit-1 OOAD Introduction.pptx
 
Presentation - "A comparison of component-based software engineering and mode...
Presentation - "A comparison of component-based software engineering and mode...Presentation - "A comparison of component-based software engineering and mode...
Presentation - "A comparison of component-based software engineering and mode...
 
The Application of Function Models In Software Design: A Survey Within the So...
The Application of Function Models In Software Design: A Survey Within the So...The Application of Function Models In Software Design: A Survey Within the So...
The Application of Function Models In Software Design: A Survey Within the So...
 
1 modeling concepts
1 modeling concepts1 modeling concepts
1 modeling concepts
 
Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010Agile Modeling with Uml and Visual Studio 2010
Agile Modeling with Uml and Visual Studio 2010
 
Various Approaches Of System Analysis
Various Approaches Of System AnalysisVarious Approaches Of System Analysis
Various Approaches Of System Analysis
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
D4UTEL 2012 – Design for Ubiquitous Technology Enhanced Learning
D4UTEL 2012 –  Design for Ubiquitous Technology Enhanced Learning D4UTEL 2012 –  Design for Ubiquitous Technology Enhanced Learning
D4UTEL 2012 – Design for Ubiquitous Technology Enhanced Learning
 
Introduction to MDE
Introduction to MDEIntroduction to MDE
Introduction to MDE
 
modeling concepts
modeling conceptsmodeling concepts
modeling concepts
 
modeling concepts
modeling conceptsmodeling concepts
modeling concepts
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
 
Why UML Modeling
Why UML ModelingWhy UML Modeling
Why UML Modeling
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...
 
Ooad with uml
Ooad with umlOoad with uml
Ooad with uml
 
Experimenting multiple approaches for teaching meta-modeling
Experimenting multiple approaches for teaching meta-modelingExperimenting multiple approaches for teaching meta-modeling
Experimenting multiple approaches for teaching meta-modeling
 
Apostila UML
Apostila UMLApostila UML
Apostila UML
 
Ooad lab1
Ooad lab1Ooad lab1
Ooad lab1
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 

Effecitve uml modeling quality asurance and its economics

  • 1. Effective UML Modelling Does Software Modeling Pay ? - empirical studies in UML - Dr. Michel R.V. Chaudron, Leiden Institute of Advanced Computer Science Program director M.Sc. ICT & Business http:/iib.liacs.nl Leiden University. The university to discover.
  • 2. Collaborate with us! Your ideas on software engineering research? Collaborate with us! chaudron@liacs.nl - Can we study your project (for free)? - We would like to study : - impact on maintenance, requirements - Communication in off-shored projects - UML-based test generation - Compare UML-based with MDA-based development - Measure risk exposure in iterative sw development Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 3. Outline of talk - Introduction Johan Muskens - Modeling – State of the Practice - Styles of modeling Christian Lange - Quality of models - Costs of modeling Ariadi Nugroho - Benefits of modeling Werner Heijstek Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 4. Introduction Leiden Netherlands Amsterdam Leiden Eindhoven Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 5. Research Interest - Effectiveness of software modelling - Quality of Modeling When is a model good (enough) - Analysis of Non-Functional Properties of component-based architectures (model-based) - What are the pay-offs of investing in early design/architecture? Fewer defects? Cheaper maintenance? … - Software Design Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 6. State of the Practice Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 7. Styles of Modeling Sketch Communication Recipe for construction Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 8. Characteristics of Case Studies Your project here? Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 9. Industrial use of UML diagrams How UML is used B Dobing, J Parsons - Communications of the ACM, 2006 Class Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 10. Statistics about Design Doc’s in general Typical Word document mixes: - Text and diagrams 500-800 words / diagram - Formal UML & inventions 40-50% of diagrams is UML 60-50% of diagrams is not UML Text is used for: - Design decisions / Rationale - Elaboration/explanation - Linking to context ‘Design’ Tooling must support: models, sketches & text Uri Dekel, James D. Herbsleb: Notation and representation in collaborative Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes object-oriented design: an observational study. OOPSLA 2007: 261-280 Leiden University. The university to discover.
  • 11. Modelling style and model purpose Architecture and Design Description. IEEE Software 23(2): 40-46 (2006) C.F.J.Lange, M.R. V. Chaudron, J.Muskens: In Practice: UML Software understanding communicating managing complexity implementation blueprint Styles of using UML – as a sketch – thinking tool/understanding – for communicating system design – as a blueprint – guide the implementation work – as a implementation (MDA) Panel Leiden University. The university to discover.
  • 12. UML in practice Sketch Communication More effort  More expensive Recipe for construction Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 13. UML for Design: Suitability of UML - UML is too formal - Informal information is Sketch added to diagrams - designers do use UML concepts Communication UML for Communication: Recipe for construction - Internationally standardized UML Blueprint: meaning seems to work - Ok UML for code generation: - Not formal enough Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 14. Quality of UML Models - Can we distinguish styles by means of some objective measure of model-quality? Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 15. Quality Models Existing models Boehm McCall ISO 9126 Rombach … - Decomposition of characteristics - Bottom level: metrics - Differences in - Relations between characteristics - Vocabulary Boehm’s Quality Model Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 16. How to Define UML Model Quality? Framework for quality of UML models (Lange & Chaudron, 2005) The quality attributes of a UML model is determined by its purpose... Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 17. How to measure goodness of UML model? - Design Heuristics - Completeness - Interaction of classes must be described in SD - Methods of CD must be called in SD - Consistency - Messages in SD must correspond to method in class diagram In many cases it can not be automatically determined whether a flaw is an incompleteness or an inconsistency - Correspondence - Dependencies in the implementation are allowed only if they occur in the design Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 18. Automated Model Checking and Visualization UML model Analysis Tool Quality Metrics/Rules • Completeness Visualization of • Consistency model + metrics Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 19. Screenshot of the MetricView tool = violation = ok Quality = absence of ‘bad things’ such as omissions, spaghetti Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 20. Design Heuristics for UML – Metrics based on Chidamber & Kemerer OO metrics Maintainability relates to Coupling, Cohesion, … Highest coupling = 7 Highest coupling = 4 Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 21. Distribution of Coupling 250 200 number of classes 150 100 50 0 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 coupling System of several hundred classes 21 Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 22. MetricView Tool MetaView to visualize the (hidden) inter-diagram relations Example: Which classes contribute to a certain use case? http://www.youtube.com/watch?v=G3HJ_QR9EG4 Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron, Journal of Visual Languages and Computing Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover. Christian Lange 22
  • 23. MetricView Tool MetricView The values of metrics are visualized on class diagrams using colors Example: Coupling- Between-Objects (CBO) http://www.youtube.com/watch?v=G3HJ_QR9EG4 Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron, Journal of Visual Languages and Computing Christian Lange. Leiden University. The university to discover. 23
  • 24. 3D visualization of design measurements http://www.youtube.com/watch?v=G3HJ_QR9EG4 Supporting task-oriented modeling using interactive UML views, C.F.J. Lange, M. A.M. Wijns, and M. R.V. Chaudron, Journal of Visual Languages and Computing Christian Lange. Leiden University. The university to discover. 24
  • 25. Industrial Experience with MetricView as Quality Assurance Tool - Based on 15+ industrial projects - If there are weak spots in the design, then these are indicated as ‘suspects’ by MetricView - MetricView indicates many weak spots that do not require improvement according to project architects (false positives?)  quality is not applied uniformly across UML models - The later MetricView is applied, the fewer ‘weak spots’ are removed from the design  process issue Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 26. How do developers apply detail to UML models? Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design - Code Correspondence amongst Professional Software Engineers. ESEM 2007: 70.0 Disagree Somewhat Disagree 61% 60.0 Neutral Somewhat agree 52% Percentage of the respondents 50.0 Agree 40.0 37% 30.0 20.0 10.0 0.0 Equal details Details proportional More details for Programmers for all parts to complexity critical parts determine details Developers apply more detail on critical and complex parts of a system Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 27. How is Level of Detail distributed in a diagram? Case 1 Case 2 High detail High detail Low detail Low detail Robin van den Broek B.Sc. Thesis in CS, 2009, Leiden University Leiden University. The university to discover.
  • 28. Does the implementation resemble the design? design implementation M.Sc. Thesis, Dennis van Opzeeland TU/e Computer Science, System Architecture and Networking Leiden University. The university to discover.
  • 29. Model - Source Code Conformance Does the implementation look like the original design?  X-Axis  Metrics of Design  Y-Axis  Metrics of Outlier Implementation  Points represent Classes  Points off the diagonal indicate outliers Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 30. Does strictness of implementing a model differ Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design - Code Correspondence amongst Professional Software Engineers. ESEM 2007: for different modeling constructs? 50.0 Loosely 36% Percentage of the respondents Somewhat loosely 45.0 Neutral 40.0 Somewhat strict Strictly 46% 35.0 30.0 31% 25.0 20.0 15.0 10.0 5.0 0.0 Package Dependency Inheritance Class and The order of structure relations relations method names method calls Developers favor to implement dependency and inheritance relations more strictly than other constructs Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 31. Which factor most often drives developers to Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design - Code Correspondence amongst Professional Software Engineers. ESEM 2007: non-correspondence? Percentage of the respondents 60 Never 50 Sometimes Often Very Often 48% 40 30 31% 29% 20 10 0 Meeting Impractical Incomplete Model doesn’t satisfy deadline model model requirements Among other factors, developers considered incomplete model more often drives them to non-correspondence Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 32. Findings from State of the Practice - UML is used in many different ways - Incompleteness - Not all parts of system are modelled - Disproportion - Different parts of the system are modeled different in level of quality - Inconsistency - Conflicting information in different views of one model Is this a problem? Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 33. Does Quality Matter? Experiment Effects of Defects in UML Models, C.F.J. Lange, M.R.V. Chaudron, (ICSE 2006) - Subjects are given UML models - Ask questions about UML model - Two types • Which implementation matches the diagrams? • How do you interpret these diagrams? - Answer from the perspective of the developer. - Multiple-choice test (15 Questions) - 4 options + 1 option (“There’s something wrong, I can’t give an answer”) - + Background questions (possible confounding factors: training, experience, …) Leiden University. The university to discover.
  • 34. Example Question Effects of Defects in UML Models, C.F.J. Lange, M.R.V. Chaudron, (ICSE 2006) Inconsistency: Message Name does not correspond to Method Message does not correspond to Method - Control (Q4) 120 80 100 70 Many don’t see the defect 80 64% don’t see the defect 60 60 and just implement 40 50 and just implement 20 40 0 a b c d e(rror) 30 20 ? 10 - Suppose you are developer in this banking software project. It is your task to implement class 0 ATM. Please indicate how you would implement the class ATM given these two UML diagrams? a b c d e(rror) A) B) C) D) E) Ring the getCardInserted(){ getCardInserted(){ getCardInserted() getCardInserted() bell! c.requestPIN(); c.requestPIN(); { { Something dosomething; dosomething; c.requestPIN(); c.requestPIN(); is a.open() a.lock() dosomething; dosomething; wrong! } } a.acknowledge() a.validate() } } Leiden University. The university to discover.
  • 35. Does Quality Matter? Case Study Parts of the design are more detailed than others attributes operations associations Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 36. Relation between UML-LoD and Code Quality Select ‘defects’ in defect DB Find classes in source component C2 defect component C2 code that were requires I2 requires I3I2 requires uses requires I3 I2.g uses I2.g density uses I3.h repaired for solving this uses I3.h defects O rder OrderDetail * 1 -date P ce or repro ss Parser A er nalys DC B reator DF B iller Inherita R nce elator DC B hecker S tis Filte ta tic r StatisticC lculator a -quantity Find corresponding -status -taxS tatus SA A A T.B T +calcTax() +calcS ubTotal() +calcTotal() +calcW eight() +calcTotalW eight() Paym ent 1 -am ount 1 classes in UML models Credit -num ber -type -expDate Cash -cashTendered Check -nam e -bankID +authorized() + authorized() OrderDetail O rder LoD per class * 1 -date P ce repro ssor P rse a r A lys na er DC B reator DF B iller Inherita ceR n elator D C eck B h er S tisticFilte ta r StatisticC lc r a ulato -quantity Determine LoD -status -taxS tatus SA A A T.B T +calcTax() +calcS ubTotal() +calcTotal() +calcW eight() +calcTotalW eight() Paym ent 1 -am ount 1 for CD and SD -num ber -type -expDate Credit Cash -cashTendered Check -nam e -bankID +authorized() + authoriz ed() Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 37. Relation between Level of Detail •Does high LoD in sequence diagrams correspond to lower defect density? and Defect Density = 1 class Level of Detail for Sequence Diagrams is significantly (negatively) correlated with defect density. More detailed model => fewer defects Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 38. Economic Model for Cost of Quality From: H. Krasner, Cost of Quality, 1998 Cost of SQ = Achievement Cost + Non-conformance Cost Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 39. Cost of Modeling Focus on effort “Is there a correlation between class-count and the effort spent in modeling?” Sources: ‐ Experiment ‐ Set of industrial case studies Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 40. Empirical Data  Experiment  106 MSc students in (TU/e)  Organized in 35 teams  Task: Model Car Navigation System  Duration: 6 weeks assignment  Three treatments were applied: 1. No modeling conventions 2. With modeling conventions 3. Tool-supported modeling conventions Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 41. Results  Experiment 40,00 35,00 30,00 Effort (hours) 25,00 Spearman’s Correlation Coefficient 20,00 15,00 Effort (hours) 10,00 Class-count .302 5,00 Sig. (2-tailed) .171 0,00 0 10 20 30 40 50 60 70 Class-count There is no significant correlation between class-count and the effort spent in modeling.  class-count is not a good measure for the effort spent on modeling? Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 42. Measurement of Modeling/Design in RUP Effort Distribution modeling designing Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 43. Impact of MDD on Effort Distribution as % of total project effort construction constr. elaboration transition transition elaboration architecture & code generator incep. ‘traditional’ Model-driven (avg. of 17 projects) (1 project) Leiden University. The university to discover.
  • 44. Cost of Modeling - Summary - Size is not the issue - Large variety in cost per - Developer (expertise) - project - Purpose/use of models - Level of abstraction / target quality of models - Maintaining model-code correspondence - Common to all new technology: - training, licensing, … Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 45. The Use of UML and Software Quality Ariadi Nugroho, Michel R. V. Chaudron: A Survey of the Practice of Design - Code Correspondence amongst Professional Software Engineers. ESEM 2007: 50.0 Reduce 45% 45.0 Somewhat Reduce Neutral 41% 40.0 Somewhat Improve Improve Percentage of the respondents 35.0 30.0 25.0 20.0 15.0 10.0 5.0 0.0 Cover Correctness Modularity Testability Understandability Requirements A large number of developers indicated the use of UML improves understandability and modularity Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 46. Benefits of Modeling Req. engineering Doing the right things Modeling Designing Modularity   Implementing Defects Testing Maintenance Early insight in system quality Project Management Better traceability Improved shared understanding Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 47. Do Models improve understanding? Eye tracking experiment Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 48. Eye tracking UML designs: gazeplots structure behaviour Attention is determined by task Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 49. Heatmap Person A structure behaviour Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 50. Heatmap Person B There are large differences in styles of reading Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 51. Overview Benefits of Modeling Improved Improved Improved Project Quality Productivity Management Reduced More Efficient rework Maintenance Reduced Reduced Fewer Improved testing maintenance Defects Communication effort effort “validation” Better Risk “verification” building the management building the right system system right More Improved Improved Accurate requirements Modularity Estimating Better Understanding Modeling Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 52. What is next? - Domain specific modelling (using UML) - Domain specific tooling, V&V, generation - Generation of/from UML - From requirements - Test generation based on UML - Tool integration - Synchronization between model and code Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 53. Concluding Remarks - UML modeling is being done in a variety of styles - Modelers ‘economize’ by focusing on complex and critical parts. QA needs to be risk-aware - Low hanging fruit: ‘common’ QA techniques should be applied to models (versioning, reviews, coding-conventions) - There is a payoff of modeling in: - improved modularity - seq.diagrams  code quality - communication (suspected) - Future work: maintaining Please send your projects model-code correspondence to: chaudron@liacs.nl Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 54. What is next? Your ideas on research? Collaborate with us! chaudron@liacs.nl - Can we study your project? - We would like to study : - impact on maintenance, requirements - Communication in off-shored projects - UML-based test generation - Compare UML-based with MDA-based development - Measure risk exposure in iterative sw development Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 55. How often do design issues lead to problems? 70 Never Sometimes 60 Often Very Often Percentage of the respondents 50 40 30 20 10 0 Inconsistency Understandability Inaccuracy Incompleteness Incompleteness of models was considered most often to lead to implementation problems Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 56. Opinions on Value of Modelling Value Agile MDA “Loose UML” Formal Methods 100% Panel completeness Leiden University. The university to discover.
  • 57. Which classes are modeled? Complexity and Coupling is higher for classes that are modeled than not modeled Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 58. Recommendations - Apply Quality Assurance to UML modeling - Use ‘coding conventions’ for UML: - Naming – correspond to implementation - Layout - Use of patterns/stereotypes - Version Control - Organize traceability from Use Cases to Sequence diagrams (tool/conventions) - Quality of SD’s is important when UML is used as blueprint for implementation Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 59. Maintenance paradox - Maintainers of software would like better documentation - Even if UML models are created during design, these are used in maintenance. The more detailed models are, the mode quickly they become outdated. Better abstraction in reverse- / round trip- engineering is needed in the setting of incremental & iterative development Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university to discover.
  • 60. Conformance - Between UML model and source code implementation - It is the degree of similarity between model and implementation - Reasons for lack of conformance - Poor model quality (therefore misunderstood in implementation) - “I know it better”-Attitude of Programmer - Evolution of implementation during maintenance - Why is conformance important? - Ensure similarity between model and implementation - Model is used for understanding the implementation in maintenance (understanding the corresponding model is easier than digging through thousands of lines of source code) - We developed methods to - Measure conformance / Identify Deviations - (Re)construct a mapping between model and implementation elements - Support in keeping Model and Implementation ‘in sync’ MRV Chaudron Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Sheet 60 Leiden University. The university to discover.
  • 61. MetricView contributors - Johan Muskens - Christian Lange - Martijn Wijns - Dennis van Opzeeland - Ariadi Nugroho - Werner Heijstek - Maurice Vermeer - Alex Telea - Robin van den Broek MRV Chaudron Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university 61 discover. Sheet to
  • 62. Publications - Journal Publications - Supporting task-oriented modeling using interactive UML views. PDF C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Journal of Visual Languages and Computing (Elsevier), Volume 18, Issue 7, August 2007. - In Practice: UML Software Architecture and Design Description. C.F.J. Lange, M.R.V. Chaudron, J. Muskens. IEEE Software, Volume 23, Issue 2, March 2006. - Conference Publications - A Visualization Framework for Task-Oriented Modeling using UML. C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Proceedings of the 40th Annual Hawaii International Conference on System Sciences (HICSS'07). January 2007. - An Experimental Investigation of UML Modeling Conventions. C.F.J. Lange, Bart DuBois, M.R.V. Chaudron, Serge Demeyer. Proceedings of the ACM/IEEE International Conference on Model-driven Engineering Languages and Systems (MoDELS 2006). October 2006. - Effects of Defects in UML Models - An Experimental Investigation. C.F.J. Lange, M.R.V. Chaudron. Proceedings of the International Conference on Software Engineering (ICSE 2006). May 2006. (acceptance rate: 9%) - Improving the Quality of UML Models in Practice. C.F.J. Lange. Proceedings of the International Conference on Software Engineering (ICSE 2006). May 2006. - Visual Exploration of Combined Architectural and Metric Information. M. Termeer, C.F.J. Lange, A. Telea, M.R.V. Chaudron. Proceedings of VISSOFT 2005, IEEE CS Press. September 2005. - Combining Metrics Data and the Structure of UML Models using GIS Visualisation Approaches. C.F.J. Lange, M.R.V. Chaudron. IEEE International Conference on Information Technology 2005. Las Vegas, April 2005. - An Exploratory Study on the Industrial Use of UML: Improving Control over Design Quality. C.F.J. Lange, M.R.V. Chaudron. JACQUARD Conference. February 2005. - Investigations in Applying Metrics to Multi-View Architecture Models. J. Muskens, M.R.V. Chaudron, C.F.J. Lange. In Proceedings of EUROMICRO’04, Rennes, France, September 2004. - An Empirical Assessment of Completeness in UML Design. C.F.J. Lange, M.R.V. Chaudron. Proceedings of the 8th Conference on Empirical Assessment in Software Engineering (EASE04). May 2004. - Konsistenz und Vollständigkeit industrieller UML Modelle. C.F.J. Lange, M.R.V. Chaudron. Proceedings of “Modellierung 2004“, Marburg, Germany, 24-26 March 2004. Michel Chaudron, Christian Lange, Martijn Wijns discover. Leiden University. The university to 62
  • 63. - Workshop Publications - Towards Task-Oriented Modeling using UML. C.F.J. Lange, M.A.M. Wijns, M.R.V. Chaudron. Proceedings of the 10th QAOOSE workshop, co-located with ECOOP2006. July 2006. - Managing Model Quality in UML-based Software development. C.F.J. Lange, M.R.V. Chaudron. Proceedings of IEEE Conference on Software Technology and Engineering Practice 2005 (STEP), in the "Workshop on Software Process Improvement, Quality Assurance and Measurement. September 2005. - Quantitative Techniques for the Assessment of Correspondence between UML Designs and Implementations. Dennis J.A. van Opzeeland, Christian F.J. Lange, Michel R.V. Chaudron. Proceedings of the 9th QAOOSE workshop, co-located with ECOOP2005. July 2005. - An Empirical Investigation in Quantifying Inconsistency and Incompleteness of UML Designs. C. Lange, M.R.V. Chaudron, J. Muskens, L.J. Somers, H.M. Dortmans. 2nd workshop on consistency problems in UML-based software development, October 20, 2003, in San Francisco, USA as part of the “International Conference on Unified Modeling Language 2003”. MRV Chaudron Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university 63 discover. Sheet to
  • 64. - Journal Papers Ariadi Nugroho, "Level of detail in UML models and its impact on model comprehension: A controlled experiment", Information and Software Technology Journal (in Press). - Conference Papers Ariadi Nugroho and Michel R.V. Chaudron, "Evaluating the Impact of UML Modeling on Software Quality: An Industrial Case Study", ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems (MODELS), Denver, Colorado - USA, 2009. - Ariadi Nugroho, Bas Flaton, and Michel R.V. Chaudron, "An Empirical Analysis of Level of Detail in UML Models and its Relation with Defect Density", ACM/IEEE 11th International Conference on Model Driven Engineering Languages and Systems (MODELS), Toulouse - France, 2008. (received best paper awards). PDF - Ariadi Nugroho and Michel R.V. Chaudron, "A survey into the Rigor of UML Use and its Perceived Impact on Quality and Productivity", 2nd International Symposium of Empirical Software Engineering and Measurement (ESEM), Kaiserslautern - Germany, 2008. PDF - Ariadi Nugroho and Michel R.V. Chaudron, "A Survey of the Practice of Design - Code Correspondence amongst Professional Software Engineers", 1st International Symposium on Empirical Software Engineering & Measurement (ESEM), Madrid, 2007. PDF - Workshop Papers Ariadi Nugroho and Christian F.J. Lange, "On the Relation between Class-count and Modeling Effort", Model Size Metrics Workshop, co-located with MODELS Conference, Nashville, Tennessee, 2007. (best paper). PDF - Chapters in Books Ariadi Nugroho and Michel R.V. Chaudron, “Managing the Quality of UML Models in Practice”, in Model-Driven Software Development: Integrating Quality Assurance, Idea Group Inc., New York, 2008. More info MRV Chaudron Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university 64 discover. Sheet to
  • 65. - W. Heijstek and Michel R. V. Chaudron (2010) The Impact of Model Driven Development on the Software Architecture Process, 36th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2010) Lille, France bibtex W. Heijstek, Michel R. V. Chaudron, Libing Qiu and Christian C. Schouten (2010) A Comparison of Industrial Process Descriptions for Global Custom Software Development, 5th International Conference on Global Software Engineering (ICGSE 2010) Princeton, New Jersey, USA - Pages 277-284 bibtex W. Heijstek and Michel R. V. Chaudron (2009) Empirical Investigations of Model Size, Complexity and Effort in Large Scale, Distributed Model Driven Development Processes - A Case Study, 35th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2009) Patras, Greece bibtex W. Heijstek and Michel R. V. Chaudron (2008) Evaluating RUP Software Development Processes Through Visualization of Effort Distribution, 34th Euromicro Conference on Software Engineering and Advanced Applications (SEAA 2008) Parma, Italy bibtex W. Heijstek and Michel R. V. Chaudron (2008) Exploring Effort Distribution in RUP Projects 2nd International Symposium on Software Engineering and Measurement (ESEM 2008) Kaiserslautern, Germany bibtex W. Heijstek and Michel R. V. Chaudron (2007) Effort distribution in model-based development. 2nd Workshop on Model Size Metrics (MSM 2007) bibtex MRV Chaudron Michel Chaudron, Jeudi des Modeles, 31 March 2011, Nantes Leiden University. The university 65 discover. Sheet to