Object-oriented software engineering
Object-oriented software engineering
Software sizing and estimating: Mk II FPA (Function Point Analysis)
Software sizing and estimating: Mk II FPA (Function Point Analysis)
Applying use cases: a practical guide
Applying use cases: a practical guide
Function point analysis: measurement practices for successful software projects
Function point analysis: measurement practices for successful software projects
Writing Effective Use Cases
Patterns for Effective Use Cases
Patterns for Effective Use Cases
Towards a Framework for Software Measurement Validation
IEEE Transactions on Software Engineering
Estimating Software Development Effort Based on Use Cases-Experiences from Industry
«UML» '01 Proceedings of the 4th International Conference on The Unified Modeling Language, Modeling Languages, Concepts, and Tools
Mapping the OO-Jacobson Approach into Function Point Analysis
TOOLS '97 Proceedings of the Tools-23: Technology of Object-Oriented Languages and Systems
Software Requirements
Use Cases: Patterns and Modeling Problems
Use Cases: Patterns and Modeling Problems
Estimating Effort by Use Case Points: Method, Tool and Case Study
METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
Software estimation in the maintenance context
ACM SIGSOFT Software Engineering Notes
Use cases modeling and software estimation: applying use case points
ACM SIGSOFT Software Engineering Notes
IEEE Transactions on Software Engineering
Automatic Transactions Identification in Use Cases
Balancing Agility and Formalism in Software Engineering
Hi-index | 0.00 |
Context: The concept of transaction is used in Use Case Points (UCP), and in many other functional size measurement methods, to capture the smallest unit of functionality that should be considered while measuring the size of a system. Unfortunately, in the case of the UCP method many different definitions of use-case transaction (and approaches to their identification) have been proposed thus far. Therefore, a question arises whether all of them define the same concept, and do they provide similar results when used by different people. Objective: The goal of this study was to investigate differences and similarities between the existing definitions of use-case transactions that can have an impact on reliability of the use-case-based functional size measurement. Method: A controlled experiment was conducted on a group of 120 students. The independent variable was a technique used for transaction identification (four methods were investigated), while the dependent variable was the number of transactions identified by participants in a use-case-based requirements specification. Results: A significant difference in the median number of transactions was observed between groups using the original Karner's definition, and the definition proposed by Diev, which is based on the elementary process known from Function Point Analysis. In addition, a list of problems influencing intramethod reliability was defined based on the qualitative analysis of the experiment data. Conclusions: It seems that there are two main sources of use-case transactions definitions. The Karner's definition of transaction is based on the concept of use-case transaction proposed by Jacobson -- the inventor of use cases, while the second one proposed by Diev, is based on the elementary process. There are also other methods for transaction identification that follow one of these definitions (e.g. Robiolo and Orosco stimuli-verbs approach). The important observation is that both main definitions of transactions yield different on-average results when used by different people. Therefore, it is important to consistently use only one in order to create a reliable historical database.