Constructing Domain Feature Models Based on the i* Framework

advertisement
http://www.mercubuana.ac.id
Advanced Science and Technology Letters
Vol.28 (NT 2013), pp.19-24
http://dx.doi.org/10.14257/astl.2013.28.05
Constructing Domain
Feature Models Based on
the i*
Framework
Yifei Zhang1, Dongjin Yu1 and Wei
Wu2
1 School
2
of Computer, Hangzhou Dianzi
University, Hangzhou, China
Zhejiang Provincial Key Laboratory of
Network Technology and Information
Security,
Hangzhou, China
yudj@hdu.edu.cn, ww@topcheer.cn
Abstract. In recent years, a range of
approaches that map the goal models to
the feature models are proposed in order
to construct the traceability of commonality and variability during the
Software Product Line Engineering. However, these approaches can only map part
of elements. How to map the
dependencies among actors to feature
models is still left as an open problem. In
this paper, we adopt the standard goaloriented
requirements
engineering
framework, i.e., the i* framework, for
constructing the domain feature model.
We propose the mapping rules and also
the algorithm of mapping dependencies
among actors to feature models. The
experiment shows that our approach is
practical.
Keywords: goal-oriented approach;
i*framework; software product line;
feature model; application product
customization
1 Introduction
In
the
process
of
software
development based on Software
Product Line (SPL), the feature, as a
cohesive
set
of
individual
requirements, is used to describe the
domain commonality and variability
[1] [2]. Although the feature
expresses a user capability of a
software system, it cannot describe
non-system (environment) factor and
quality characteristic [3]. Moreover,
since the feature model is just a
http://www.mercubuana.ac.id
Advanced Science and Technology Letters Vol.28 (NT 2013)
approaches can only map part of elements. To map the dependencies among actors to
the feature models is still left as an open problem. In addition, there is lack of essential
associations among the feature models which are constructed by different actors. In
this paper, we adopt the i* framework to construct the domain feature model. We
propose the rules and the algorithm used to map dependencies among the actors to the
more complete feature models. Besides, we initiate to customize the application products using the i* model evaluation approach [6] [7] during the application engineering
phase. By using our approach, the reason of selecting the specific features to customize an application product can be clearly elucidated.
The rest of the paper is organized as follows. After Section 2 presents the mapping
rules between the i* framework and the feature model, Section 3 describes in detail
the whole process to construct the domain feature model based on the i* framework.
The case studies are given in Section 4. Finally, the last section concludes the paper
and outlines the future work.
2 Rules Mapping between the i* Framework and the Feature Model
Diverse combinations of the goal models and feature models are shown in different
structural types where some corresponding traceability may exist. We conclude 7
rules mapping between the i* framework and the feature models, which are shown in
Fig. 1.
3 Constructing the Domain Feature Model Based on the i*
Framework
In this section, we provide an automatic algorithm of constructing initial domain feature model based on the i*framework, which could be then adjusted to form the final
domain feature model.
3.1 Constructing the initial domain feature model
The i* framework may contain several actors that are expressed as types of software
system and environment, each of them interacting with others to achieve the goals.
First of all, we should sequentially select the actor expressing the software system as
the mapping object because features cannot depict non-system (environment) factor.
Based on [8], we propose the algorithm for constructing the feature tree model by
mapping dependencies among actors. Firstly, we select an actor randomly and generate a collection that contains all the elements which possess dependencies. Then, by
applying the rules given above, we map the dependency elements and links to the
feature fragments in order to associate features belonging to different feature trees.
Thus, an initial domain feature model can be formed after all actors are treated in this
way.
20 Copyright © 2013 SERSC
Advanced Science and Technology Letters
t1g1g1g1
X
g2 t3 s 4 t2 t3 t2 t3 t2 t3
f1f1
f 2
f1f1
f 2
f 3
f 2
f 3
f 2
f 3
(a) (b) (c) (d)
a c tor a c tor
t1
D
r 2 Dt 3
a c tor a c tor
t 1 D r 2Dg 3
Opposite Contributions of
the Same Extent
actor a c tor
p 1
D
p 2
D
p 3
S1
a c tor a c tor
g
1
r
D
2
D
t
3
p
1
p
2
f 1
f 2
(
LEGEND
Resource-Configure
f3f1
e
Actor and
Actor Boundary
Task−Decomposition
link
)
GoalTask
(
f
)
f 1
f 3
(
g
f 2
)
Resource Softgoal Placeholder Non-system Elements Are Indicated
byDotted Shapes
Means−ends link D Dependency X Inclusion Relationship OfMeans−ends Links
Mandatory ___________
Optional
And Or Alternative
mapping link
Requires Excludes
feature group feature group feature group
Vol.28 (NT 2013)
Fig. 1. Rules mapping between the i* framework and the feature model 3.2 Adjusting the
initial domain feature model
After constructing initial domain feature model, we should further adjust the initial
domain feature model according to our own experience and understanding in the domain. The initial domain feature model merely contains the feature trees which do not
have a common root node. Therefore, we regard the whole system as the root node
and merge each feature tree as its child respectively. In addition, we modify the features’ names in order to make them more illustrative, and meantime remove the redundant features if necessary.
4 Case studies
Our proposed approach is successfully applied in the Hearing-aids Sales and Distribution Software Product Line (HSDSPL), whose i* model is described in Fig. 2.
Copyright © 2013 SERSC 21
Advanced Science and Technology Letters Vol.28 (NT 2013)
Se l l H e a r i n g A i d s
A f f i l i a t i o n
S y s t e m
H e a d q u a r t e r s s y s t e m
G o o d s
P r o c e s s
O r d e r
R e s e r va t i o n
Management
R e s e r va t i
on Method
O n li n e
quickness
By Phone
M a n a g e
O r de r
C us tom e r
S ati s f acti on
Q u e r y
& M o d i f y
O rd e r
O r d e r
G o o d s
H a n d l
P l a c e e t h e
O r d e r A r r i v als
Q u e ry
M a n a g e
C h a r g e
C h a r g e
C h a rg e t h e
CustomizeO r d i n a r y
G o o d s
d
E d i t
O r d e r
I n p u t
O r d i n a ry
O r d e r
G o o d s
I n f o
I n p u t
Save
Customize
dOrder
Convenience
I n p u t b y
p r o m p t In p u t
M an ua l l y
b o x
Choos e Model of
the Cus tom i zed
O r d i n a r y
G o o d s
Commit
C l i e n t
Info
reusability
X
A d d
C l i e n t
Recall
Registered
Client
H e a r i n g a i d s B e
C h o s e n
O rd e r t h e
Customized
Mi n Di s c ount
Be Controlled
t h e
Customized
P r o h i b i t S
Ha ndle
u b m i t t i n g
Specially
O r d e r
Legend
Order Check&
Updat e
i n v e n t o ry
Pa ssRetu rn
P ri nt B ar
c ode
C l i e n t
I n f o
Input Info of the
Customized
Verify
S p e c i al
D i s c o un t
X
P ri nt
O r d er
B u s i n e s s O
p e r a t i o n
Check
Det a ils
O r d e r
P rinti ng
M o d i f y
Client Sign in
S h i p
Veri fi ng
V e r i f y
O r d e r
R e s e r ve t h e
C u s t om i z e d
B
s
r
o
u
s
d
o
y a c c e
o r i e ( O
i n a r y G
d s )
Get the
Customized
Actor
G o al T a s k
Resource Softgoa
Actor Boundary
Task−Decomposition
link
Means−ends link
Dependency
Non-system Elements Are Indicated by
Dotted Shapes
Make Contribution Help Contribution
Break ContributionX Inclusion Relationship Of Means−ends Links
Fig. 2. The i* model of HSDSPL
There are three actors representing the division system, the headquarters system
and the client respectively. Since Actor Client is a non-system element, it cannot be
mapped in the feature model. Actor Division is responsible for selling hearing-aids
and accessories supplied by the headquarters, whereas Actor Headquarters is responsible for the production of hearing-aids and accessories. During the actual operation,
the divisions send orders to the headquarters. After the orders are examined and confirmed, the headquarters produces and delivers the customized goods or just delivers
the off-the-shelf goods directly to divisions. The domain feature model corresponding
to Fig. 2 based on our approach is shown in Fig. 3.
22 Copyright © 2013 SERSC
Advanced Science and Technology Letters
Vol.28 (NT 2013)
Legend
Feature MandatoryOptional Requires Excludes
HSDSPL
Manage
Reservation
Client
Reserve
Sign in
P l a c e
O r d e r
E d i t
O r d e r
Handle the
Arrivals Query
Operate
Input
Input
C u s t o m i z e d Save
Ordinary
Or der
O r d e r
G o o d s
I n f o
C l i e n t
I n f o
Input by
prompt box
Add
Clien t
Q u e r y
& M o d i f y
O r d e r
Order G
o o d s
Alternative
feature group
Ma n a g e
C h a r ge
Ma n a ge Or der
Ma n a g e
Met h od
Reser ve
On lin e
Resource-Configure
Charge
the Customized
Print
And
feature group
P r o c e s s
O r d e r
Charge
OrdinarySh ip
Goods
P r i n t
O r d e r
V e r i f y
O r d e r
Print
Bar code
Order Be
Choose Model of C o r r e c t e d
the Customized
Pay
Deposit
V e r i f yi n g
Check& Update
Inventory
Modify
Commit
O r
feature group
Verify
Special
Discount
Check
Details
Pass
Retur n
Control Min
Discount
Handle
Recall
Regi st er ed P r o h i b i t S p e c i a l l y
Submitting
Clien t
Order
Apply for
Discount
Fig. 3. The domain feature model of HSDSPL
5 Conclusions
In this paper, we adopt the i* framework to construct domain feature model. We propose the algorithm to map the dependencies among actors to feature models. Besides,
we initiate to customize an application product using the i* model evaluation during
the application engineering phase.
Sometimes, the softgoal dependencies among actors involve other softgoals, and are
shown in different situations. To the best of our knowledge, however, it’s difficult to
propose rules mapping softgoal dependencies among actors. We intend to further
study the approach and propose a more complete solution in the future. In addition,
combining our approach with the scenario method for feature dependencies study to
guide the architectural design is also on the list of our future work.
Acknowledgments. The work is supported by the Key Science and Technology Project of Zhejiang (No. 2012C11026-3, No. 2008C11099-1) and the open project foundation of Zhejiang Provincial Key Laboratory of Network Technology and Information Security. The authors would also like to thank anonymous reviewers who
made valuable suggestions to improve the quality of the paper.
Copyright © 2013 SERSC 23
http://www.mercubuana.ac.id
Advanced Science and Technology Letters Vol.28 (NT 2013)
References
1.K.Pohl, G.Böckle, and Frank van der Linden: Software Product Line Engineering Foundations, Principles, and Techniques. Springer Verlag, Heidelberg (2005)
2.Kang, K.C., Lee, J., and Donohoe, P.: Feature-Oriented Product Line Engineering. IEEE
Software 19, pp. 58-65 (2002)
3.W. Zhang, H. Mei, and H. Zhao: Feature-driven Requirement Dependency Analysis and Highlevel Software Design. In Requirements Engineering, vol. 11, no. 3, pp. 205-220 (2006)
4.Yu. Towards modeling and reasoning support for early-phase requirements engineering. In
Proceedings of the IEEE International Symposium on Requirement Engineering, pp. 226– 235.
IEEE Computer Society (1997)
5.E. Yu and J. Mylopoulos: Understanding why in software process modeling, analysis, and
design. In Proc. 16th Intl. Conf. on Soft. Eng., May 16-21, pp. 159–168 (1994).
6.Horkoff, J.: Using i* modeling for evaluation, Master Thesis, University of Toronto, Department of Computer Science (2007)
7.Horkoff, J., Yu, E.: Evaluating Goal Achievement in Enterprise Modeling: An Interactive
Procedure and Experiences. In: The Practice of Enterprise Modeling. Springer, pp. 145160
(2009)
8.Yu, Y., Leite, J. C. S. D. P., La pouchnian, A. and Mylopoulos, J.: Configuring features with
stakeholder goals. In: Proc. ACM Symp. on Applied Computing , pp. 645-649 (2008)
24 Copyright © 2013 SERSC
Download