Abstract
The Unified Modeling Language (UML) is an object-oriented analysis and design language widely used to created artifacts during the software system lifecycle. UML being a standard notation, without specific guidelines as to how to use it, it must be applied in the context of a specific software development process. The Unified Process (UP) is one such process, extensively used by the object-oriented community, which delivers software best practices via guidelines for all software lifecycle activities. The UP suggests many artifacts to be produced during the software lifecycle. But many practitioners are reluctant to use those artifacts as they question their benefits. System Sequence Diagrams and System Operation Contracts are artifacts, suggested by Larman in his well-known methodology, to complement standard UP artifacts with the intent of better understanding the input and output events related to the system being designed. This paper presents the results of controlled experiments that investigate the impact of using these artifacts during software development. One way to do that is to study the extent to which those artifacts improve the quality of the Domain Model or reduce the effort necessary to complete this Domain Model. Results show that the use of those artifacts mildly improves the quality of the Domain Model, as long as sufficient training is provided. On the other hand, there is no noticeable evidence that those two artifacts reduce the time to produce the Domain Model.
Original language | English |
---|---|
Article number | 6092564 |
Pages (from-to) | 157-166 |
Number of pages | 10 |
Journal | International Symposium on Empirical Software Engineering and Measurement |
DOIs | |
Publication status | Published - 2011 |
Externally published | Yes |
Event | 2011 5th International Symposium on Empirical Software Engineering and Measurement, ESEM 2011 - Banff, AB, Canada Duration: 19 Sep 2011 → 23 Sep 2011 |
Keywords
- Domain model
- Experiment
- System operation contract
- System sequence diagram
- UML