UCDMD: Use Case Driven Methodology Development

UCDMD: Use Case Driven Methodology Development

ICSEA 2014 : The Ninth International Conference on Software Engineering Advances UCDMD: Use Case Driven Methodology Development Hanieh Zakerifard, Raman Ramsin Department of Computer Engineering Sharif University of Technology Tehran, Iran e-mail: [email protected], [email protected] Abstract—Situational Method Engineering (SME) focuses on Use case modeling has become a popular technique for project-specific construction of methodologies based on the capturing and describing the functional requirements of characteristics of the project situation at hand. Requirements software systems [3]. Use case driven SE approaches support Engineering (RE) is considered as a key activity in SME and is requirements traceability during the development process, concerned with the elicitation, specification, modeling and and assist in managing change and evolution [4]. As the use validation of methodology requirements. However, unlike case model provides a high-level view of the interactions requirements engineering in software development, the RE between the system and its users (actors), it has been methods currently practiced in SME are still immature, and effectively used for capturing the functional requirements of methodology engineering has a lot to learn from Software interactive systems. Use cases are vastly used in object- Engineering (SE) in this regard. Use Cases are widely used in oriented software development methodologies [4], which software engineering to express the functional requirements of software systems, and the use case model is an effective tool for prescribe various techniques for mapping use cases to their capturing stakeholder requirements in a clear and object-oriented software realizations. unambiguous fashion. Despite its potential benefits, the use- A software development methodology is akin to a case-based approach has not been used in SME yet. The main complicated interactive system in which interaction with the objective of this paper is to propose the UCDMD (Use-Case- user plays a pivotal role: A methodology governs the Driven Methodology Development) methodology as a new software development process by prescribing the products object-oriented approach to SME; in this approach, that should be produced and the corresponding activities that methodology requirements are completely expressed in terms should be performed, and it does all of this by providing of use cases, and are utilized in a SME process for developing guidance to its users, which mainly consist of managers, the target methodology. The use-case-driven nature of the users, developers, and other project stakeholders. A SME proposed process promotes requirements traceability, and effort is thus faced with the same problems and challenges object-oriented realization of the use cases facilitates the which are encountered when developing any other type of implementation of CASE tools for the methodology produced. interactive system; use cases are therefore potentially useful for elicitation and specification of methodology requirements Keywords-situational method engineering; requirements in SME efforts. Furthermore, just as use cases are mapped to engineering; use case modeling; use case-driven development object-oriented software in software development methodologies, the use cases produced for methodology I. INTRODUCTION development can be mapped to custom-made software tools When developing software systems, selecting the for enacting the target methodology. The target methodology appropriate methodology is always an important issue. can therefore be implemented as a methodology-based Nevertheless, after using software development CASE tool; this makes the approach very appealing for use methodologies for decades, developers have realized that in a Process-centered Software Engineering Environment there is no general-purpose methodology that suits every (PSEE). Despite their potential benefits, use cases have not project situation. The need for project-specific been used for methodology development yet. methodologies has therefore resulted in the emergence of We propose UCDMD as a use-case-driven approach to SME, which is specifically concerned with the SME in which requirements are expressed in terms of use construction/adaptation of a methodology according to the cases, and the target methodology is developed through a specific characteristics of the software development project process which prescribes the activities that should be at hand [1]. As in any development effort, it is important in performed and the products to be produced. Being use-case- SME to perform RE activities precisely, so as to ensure that driven means that all the artifacts of UCDMD are produced the produced methodology satisfies the needs of the target in order to realize the use cases; traceability is thus achieved. software development project situation. RE in SME is The rest of this paper is organized as follows: Section II concerned with eliciting, specifying and validating the real- provides a brief review on the research background; Section world goals, functional/non-functional requirements, and III explains the proposed UCDMD methodology, and constraints of a methodology in a specific project situation Section IV provides an example of its enactment; a criteria- [2]. Although a wide range of RE approaches have been used based evaluation of the proposed methodology is presented in SE, the RE approaches which are used in SME are few in Section V; and Section VI provides the conclusions and and immature in comparison. suggests ways for furthering this research. Copyright (c) IARIA, 2014. ISBN: 978-1-61208-367-4 434 ICSEA 2014 : The Ninth International Conference on Software Engineering Advances II. RESEARCH BACKGROUND it with information), or are affected (governed) by it; a Although use cases have not been previously used as a methodology use case is an atomic SE activity or task which basis for methodology development, they have been widely is prescribed and governed by the methodology and whose used in process modeling approaches; instances have been fulfilment is of value to at least one actor. A methodology’s reported in [5][6][7][8][9]. However, this cannot be use cases are elicited from its users and can be based on the considered as use-case-driven SME. situational factors of the organization and the project at hand. In this section, the concepts and methods on which this However, as in SE, methodology use cases only capture the research is based will be introduced. To this aim, we will functionality expected from the methodology, not its first present an overview of RE in SME, and will then briefly nonfunctional features (such as seamlessness); furthermore, introduce an existing process framework for SME; we have methodology use cases describe what a methodology does used this framework as the basis for developing UCDMD. without specifying how it does it (in other words, methodology use cases are not concerned with techniques). A. RE in SME B. Levels of Modeling in UCDMD Since the advent of SME, different approaches have Modeling is an integral part of any methodology. In SE been proposed for RE in this context: The research reported methodologies, different levels of modeling are used for by Ralyté [10] presents the roadmap-driven approach in modeling the implementation-independent aspects of the which process-driven and intention-driven strategies are system (problem domain) as separate from its used for eliciting the requirements; a criteria-based approach implementation-specific features (solution domain). The has been proposed by Ramsin and Paige [11] in which same distinction is true in SME methodologies. However, requirements are identified through a top-down iterative- there is no established definition for the problem and incremental process; and the framework proposed by Olsson solution domains in the SME context. Therefore, the first et al. [12] is a comprehensive general process for RE in step in developing a SME methodology is to define these SME, providing detailed descriptions for the various domains and the different levels of modeling required (from activities and techniques prescribed. None of the above RE Abstract to Concrete: Logical to Physical). We have used the approaches is defined as part of a comprehensive SME levels proposed by Agh and Ramsin [15] as a basis for process. In contrast, UCDMD is a comprehensive object- defining the following three modeling levels for UCDMD: oriented SME process in which requirements (use cases) Methodology-Type-Independent Level: This level play a pivotal role in producing all the deliverables. signifies the problem domain in SME, focusing on the definition of general methodology requirements and B. SME Process Framework features, regardless of methodology type (e.g., agile or The generic pattern-based process framework for SME, plan-driven). Situational factors and use cases are proposed by Asadi and Ramsin [13], is made up of three modeled at this level, comprising the nonfunctional and serial Phase process patterns: Method Initiation, Method functional requirements. General structural and Construction, and Deployment (see Fig. 1). The phases of behavioral modeling of the methodology is also the framework consist of several Stage patterns along with performed, aiming at realizing the requirements by their constituent Task patterns. The framework can be developing a general, type-less methodology. instantiated and configured to fit the SME situation at hand. Methodology-Type-Dependent and

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us