method engineering

advertisement
METHOD ENGINEERING
Master of Business Informatics
Utrecht University
A METHODOLODY FOR THE SELECTION OF
REQUIREMENTS ENGINEERING TECHNIQUES
Process-Deliverable Diagram
Fabio Kornek (3548872)
PROCESS DESCRIPTION
The in the next section presented Process-deliverable diagram (PDD) of the MRETS methodology is
constructed based on Method Engineering (ME) principles and notations (Brinkkemper, 1996; Weerd &
Brinkkemper, 2008).
Although ME can be used to design, construct and adapt methods for the development of information
systems to suit specific project conditions, the PDD below is a mere representation of the MRETS
methodology; a so-called meta-model. In this respect, ME meta-modeling can be used for describing the
procedural and representational characteristics of methods, techniques and tools (Brinkkemper, 1996).
Process View
The below illustrated PDD is divided in two integrated parts. The left-hand side of the diagram resembles
the process view. Based on UML activity diagrams (OMG, 2003) it consists of activities and transitions.
Activities can have sub-activities. In Figure 1 the activity Perform clustering analysis is decomposed into
the three sub-activities: Derive techniques, Select technique attributes and Perform clustering. For both,
activity and sub-activity a certain role (i.e. by whom the process is to be carried out) can be defined. This
information is written in the lower right corner. The activity Perform clustering analysis for example has to
carried out by requirements engineers because their expert knowledge is required. The activity Analyse
project on the other hand does not need to be carried explicitly by requirements engineers, although this is
not prohibited.
The activities Refine technique selection and Select prospective techniques can be performed in parallel.
These concurrent activities are marked with a synchronization bar.
Another element that can be seen in the diagram is the conditional statement after the last sub-activity of
Determine final recommendation. After review the FINAL RECOMMENDATION can be approved (in
which the end-state is reached) or rejected (which means the sub-activity Select technique combination has
to be performed again).
Detailed explanations on each activity can be found in Table 3.
Deliverable View
On the right-hand side of the diagram the deliverables for the corresponding activities are depicted. This
side is based on UML class diagrams (OMG, 2003) and consists of concepts. Although this is not
compulsory, every activity in Figure 1 results in a deliverable (connected by the striped lines). To some
concepts properties have been added to better illustrate the nature of the concept.
The concepts are connected by associations which show a structural relationship between connected
concepts. Names for associations are provided to give meaning to them. Furthermore, multiplicities state
how many objects of a certain concept can be connected across the instance of an association. The following
multiplicities are shown in the diagram: 1 for exactly one, 0..1 for one or zero, 0..* for zero or more, 1..* for
one or more.
A detailed description on the concepts and how they were derived from literature can be found in Table 4.
PROCESS-DELIVERABLE DIAGRAM
Figure 1 Process-deliverable diagram
ACTIVITY AND CONCEPT TABLES
Activity
Subactivity
Score Project
Attributes
Perform Clustering
Analysis
Construct
Recommendation
Space
Determine final
recommendation
Description
For the TECHNIQUE INITALLY RECOMMENDED and the derivation of
TECHNIQUE ATTRIBUTES the major characteristics of the project need
to be established. As input serve 21 software project attributes that have
been identified and defined in details in previous research of Jiang et. al
(2007). The resulting PROJECT DEFINITION contains the serves as the
foundation for all subsequent activities.
Derive
techniques
By using case-based reasoning mechanism, the initial TECHNIQUE
INITALLY RECOMMENDED is derived based on the scored attributes of
the current project. Another input are the so-called recommendation rules
which are part of the RE process knowledge base (REPKB). The REPKB is
created as a preparatory activity (not shown in the diagram) It contains
detailed guidelines for each step, a collection of RE techniques gleaned
from previous research including knowledge about RE techniques and their
usage to provide support for technique selection. The REPKB is used as a
support and reference tool whenever needed. (Jiang et al., 2007).
Select techniques
attributes
Selection of a suitable sub-set of TECHNIQUE ATTRIBUTES for the
given project. The sub-set is selected from 31 RE technique attributes which
are a result of previous research (Jiang, 2005). The subsequent clustering
will be only based only those identified attributes.
Perform clustering
Analysis of the RE techniques in the REPKB is performed by using the
Fuzzy set clustering algorithm. The clustering is based on the important
TECHNIQUE ATTRIBUTES selected in the previous step, not on the
whole collection of 31 RE technique attributes.
Refine technique
selection
To ensure compatibility with the project the initial TECHNIQUE
INITALLY RECOMMENDED is reviewed by requirements engineers.
Incompatible techniques are removed and new ones might be added if
pertinent. As well, certain techniques can be compared by requirements
engineers based on certain attributes in this step.
Select prospective
techniques
Based on requirements engineers’ expertise a set of prospective techniques
may be selected. PROSPECTIVE TECHNIQUE LIST can as well be an
empty set if the requirements engineers are content with the existing
selection.
Identify comparable
& complementary
techniques
This sub-activity involves the identification of all functionally comparable
or complementary techniques. The resulting ALTERNATIVE
TECHNIQUE LIST is derived based on the results of TECHNIQUE
CLUSTER. This step supports the process of finding more suitable
technique for the specific project.
Combine techniques
Combination of the techniques identified in TECHNIQUE INITALLY
RECOMMENDED, ALTERNATIVE TECHNIQUE LIST and possibly
PROSPECTIVE TECHNIQUE LIST to form the RECOMMENDATION
SPACE.
Apply objective
function
Based on the objective function, various combinations of RE techniques
from RECOMMENDATION SPACE are scored on their overall ability and
cost to provide a means for evaluation.
Select technique
combination
Based on the scores calculated during the previous step requirements
engineers select the most promising techniques combination (those with the
highest score). This results in the FINAL RECOMMENDATION.
Review
recommendation
The FINAL RECOMMENDATION is once more reviewed by
requirements engineers. Based on their expertise and experience the FINAL
RECOMMENDATION is rejected or approved. In case of rejection the step
select technique combination is performed again to find a more suitable
selection.
Table 3 Activity table
Concept
Description
PROJECT DEFINITION
A PROJECT DEFINITION contains a short description of the project and the most relevant
attributes for RE technique selection (Jiang & Eberlein, 2007).
TECHNIQUE
INITALLY
RECOMMENDED
TECHNIQUE INITALLY RECOMMENDED is the initially recommended combination RE
techniques. This selection is based on requirements engineers experience from previous projects
(Jiang et al., 2007). TECHNIQUE SET can be in status initial or refined.
TECHNIQUE
ATTRITBUTE
A TECHNIQUE ATTRIBUTE provides a means to measure different aspect of a RE technique
(Jiang, 2005). Jiang separates attributes in two categories: Attributes that describe the ability of
a technique and attributes that describe economic factors. The selection of suitable sub-set of
technique attributes should be geared to the particular project characteristics and attributes
(Jiang et al., 2007). Weights are assigned to each attribute based on PROJECT DEFINITION.
TECHNIQUE CLUSTER
A TECHNIQUE CLUSTER is a grouping of RE techniques according to their characteristics
allowing for the analysis of the similarity of various techniques (Jiang et al., 2007). The
clustering itself is based defined technique attributes.
PROSPECTIVE
TECHNIQUE LIST
A PROSPECTIVE TECHNIQUE LIST is a set of techniques recommended by requirements
engineers which is included in the RECOMMENDATION SPACE. The purpose is to give
requirements engineers the opportunity to bring in their expertise in the selection process
(Jiang, 2005).
ALTERNATIVE
TECHNIQUE LIST
A ALTERNATIVE TECHNIQUE LIST contains all techniques that are functionally
comparable and functionally complementary to each technique of the derived TECHNIQUE
INITALLY RECOMMENDED. This is done by using the results of TECHNIQUE CLUSTER
(Jiang et al., 2007).
RECOMMENDATION
SPACE
A RECOMMENDATION SPACE is defined as a set of techniques from which the FINAL
RECOMMENDATION of techniques can be derived. The RECOMMENDATION SPACE is
an aggregation of the initial TECHNIQUE INITALLY RECOMMENDED, ALTERNATIVE
TECHNIQUE LIST and (if defined) PROSPECTIVE TECHNIQUE LIST. Various technique
combinations within RECOMMENDATION SPACE are rated on their ability by using the
objective function algorithm (Jiang et. al, 2007).
FINAL
RECOMMENDATION
A FINAL RECOMMENDATION resembles the final technique selection from
RECOMMENDATION SPACE based on overall ability scores calculated in the previous step.
FINAL RECOMMENDATION can have the status accepted (stop state) or rejected. In case of
rejection after the final review the activity select technique combination has to be performed
again (Jiang et. al, 2007).
Table 4 Concept table
REFERENCES
Brinkkemper, S. (1996). Method engineering: engineering of information systems development methods and
tools. Information and Software Technology, 38(4), 275-280. doi: 10.1016/0950-5849(95)01059-9
Weerd, I. v. d, and Brinkkemper, S. (2008). Meta modeling for Situational Analysis and Design Methods, p.
38–58. Hersey: Idea Group Publishing.
Object Management Group. (2004). UML 2.0 superstructure specification (Technical Report ptc/04-10-02)
Jiang, L. (2005) A framework for requirements engineering process development, PhD thesis, University of
Calgary
Jiang, L., Eberlein, A., Far, B. H., & Mousavi, M. (2007). A methodology for the selection of requirements
engineering techniques. In Software & Systems Modeling, 7(3), 303-328. doi: 10.1007/s10270-0070055-y
Jiang, L., & Eberlein, A. (2007). Selecting Requirements Engineering Techniques Based on Project Attributes A Case Study. In 14th Annual IEEE International Conference and Workshops on the Engineering of
Computer-Based Systems (ECBS'07) (269-278). Tucson, AZ, USA. doi: 10.1109/ECBS.2007.65
Download