Professional Documents
Culture Documents
1 INTRODUCTION
EQIREMENT deficiencies are the most important contributors to nearly all unsuccessful software projects [1].Traditional requirement elicitation techniques, such as interview, requirement workshops, survey and questionnaires aim to gather statements of requirements from stakeholders, customers and users or representatives of them. Business analyst then should make sure that statements are consistent, clear and complete [13]. But these techniques sometimes fail to capture all requirements and sometimes do not scale adequately to address the needs of the desired system especially in the case of large and complex information systems in information-intensive industries such as telecommunications. Poor requirements are usually consequences of three types of problems in requirement engineering; namely problems of scope, problems of understanding and problems of volatility. Problems of understanding refer to issues associated with poor understanding among different stakeholders. Users and customers sometimes are not able to articulate their needs. They do not have sufficient technical knowledge which sometimes results in unrealistic expectations from computer systems. In addition to that, analyst may also have poor knowledge of problem domain and may speak a different language from users and/or customers and they may all have conflicting views [3]. This paper proposes a new methodology for requirement elicitation and analysis which addresses the problem of understanding by implicit requirement elicitation. We argue that in the case of improving information sys
tems with large databases, customers' needs could be extracted by mining these datasets. In addition to that this idea could be useful in case of defining new sustems for same users or customers. Instead of direct interaction with customers, analyst can benefit from large number of data available in the form of customer data such as customers' behavior, movements, service usage and interactions. Data mining techniques can help system analyst to uncover hidden patterns in data and then analyze discovered patterns with the aid of social modeling in order to gain better understanding of customers and their needs which also improves analyst's understanding of the domain. Although social modeling for requirement engineering has been discussed in various papers [4] and recently in the form of a book [13], application of data mining in addition to social modeling for early requirement engineering in order to address problems of understanding seems to be a new and valuable idea.
E.Homayounvala is with the Iranian Research Institute for Information Science and Technology, Iran. 2013 JICT www.jict.co.uk
Needs to Requirements
requirement analysis phase. These two phases which are depicted in Fig 1, are explained in the following sections.
2.1 Requirement Elicitation Phase Requirement elicitation phase consists of three steps: a) Data mining for customer segmentation. b) Segment analysis to identify customers' needs for each segment. c) Translating customer needs to requirements. First data mining techniques are applied to group customers in different segments. Life cycle of each data mining project consists of six phases including business understanding phase, data understanding phase, data preparation phase, modeling phase, evaluation phase and deployment phase according to CRISP-DM [2], [6]. After mining customer data and grouping customers in distinct segments, in the second step of the proposed methodology, each identified segment must be analyzed in order to identify customers' needs for each segment. Analyzing customer segments against their behavioral profile, segment size, demographic profile in addition to market research findings, if available, can help analysts to identify customers' needs for each segment. In the third step of the requirement elicitation phase, customers' needs for each segment must be translated to software requirements. Needs are usually defined in problem domain while requirements are in solution domain as depicted in Fig 2. As an example if customers in a specific segment "need to reduce the delay to process their requests", this need can be translated to a number of features such as "customers can send their requests online". This feature can then be translated to the following software requirement. "The system should provide an online form". At the end of the requirement elicitation phase, a number of requirements are specified for each customer segments. These requirements, however, may not be consistent with each other and also with other stakeholders' requirements. The next phase of the proposed methodology is designed to address these issues. 2.2 Requirement Analysis Phase Requirement analysis and validation phase is designed to address three issues. Firstly to study inconsistencies
among identified requirement. Secondly to solve inconsistencies among identified requirements in phase one and other stakeholders' requirements and thirdly to study different alternatives to achieve stakeholders' goals applying alternative strategies. SD and SR models in i* framework are applied in this phase to address mentioned issues. This framework is applied in this methodology because it is goal-oriented rather than behavioral and it also has a propagation algorithm that can uncover inconsistencies between requirements. The proposed methodology in this paper can also offer some guidelines for drawing SR and SD models based on identified customer segments. These guidelines are under development. In the next session of this paper, i*framework is explained briefly.
I* FRAMEWORK
I* framework which is goal-oriented and is based on social modeling was first introduced by Eric Yu in 1995 [13]. It has been developed since and many new tools, applications, adaptations and extensions are designed based on this framework [4]. i* framework is a modeling framework which reflects social characteristics of complex systems. In social view, there are intents, reasons and motivations behind behavior. Conceptual modeling in i* framework is based on the idea of strategic actors which have goals and beliefs and are autonomous, social, intentional and have contingent identity and boundaries and act rationally according to their own interests . SD and SR models are two main components of i* framework. SD model illustrates social actors and their relationships with each other. SD model does not say anything about actors' internal structure. SR model, on the other hand, models goals, task, resources and softgoals for each actor [12]. One of the main advantages of SR model is that it provides a way for carrying out strategic reasoning. Alternative strategies can be displayed in SR model and their impact on actors' goal achievement can be studied by a specific propagation algorithm [5].
Need
Problem Domain
Feature
Solution Domain
Software Requirements
METHODOLOGY
We provide an example to illustrate the use of our proposed methodology. Telecommunications industries hold massive number of records of their customers' activities including their national and international calls, SMS and MMS usage, roaming behavior, internet usage and others. In order to improve service delivery to telecom customers and add new features to the already developed systems, the proposed methodology can assist analyst to gain better understanding of customers and their requirements. Instead of direct communications with customers, analysts can use data mining techniques to identify customer segments. Then based on the second step in requirement elicitation phase of the proposed methodology, each segment must be analyzed in order to acquire needs of customers in each segment. As an example, data mining techniques can cluster telecom customers based on their behavioral profiles including parameters such as volume of voice calls, text messages and web usage. Analyzing each segment will then help the analysts to see if there is a meaningful explanation of each segment behavior. For example customers in the segment with the lowest utilization of all services, who use their phone for a few days in a month with very limited ingoing and outgoing communities, can be called Basic Users. Most of the customers in this segment are above 55 years and despite lowest number of calls, they have quite long Average Call Duration (ACD). This means that they do not use their phone a lot, but when phone calls are made the duration of the call is quite long [11]. As it can be seen, the analysis of this segment provides a kind of "understanding" for the analyst that may not be possible to be obtained through traditional requirement elicitation techniques such as interviews, surveys and questionnaires. Customers of this segment are not able to articulate such information or may not be even aware of it. Therefore data mining techniques provide an implicit means for understanding customers which can be translated to customer requirements for further system improvements. Although data mining techniques are vastly applied for business intelligence, this paper proposes utilization of data mining for early requirement engineering for fur-
ther system developments. It also proposes the application of social modeling in form of SR and SD models in i*framework in order to study consistency of identified requirements with other customer requirements and also other stakeholders' requirements. An example of a strategic rationale (SR) model is demonstrated in Fig 3. This figure is not a complete SR model and is under development, but it can be seen that analyst can perform strategic reasoning to analyze how customers in different segments differ at an intentional level and how different strategies affect their goal achievements. This model is adapted from [8] and [9] to our telecommunications segmentation example. Since data mining results revealed that "basic users" need easy to understand rate plans, this requirement has been translated to a softgoal in the SR model. A softgoal differs from a goal because the criteria for achieving a softgoal are not as clear as those of a goal [12]. Label propagation algorithm explained in [5] can help the analyst to discover consistency or inconsistencies between requirements. A simple example of label propagation is shown in Fig 3. The result of the second phase of the proposed methodology is a set of requirements and also a set of strategies to achieve those requirements which are very good starting point for further system development
5 CONCLUSION
This paper has proposed a new methodology based on the integration of data mining techniques and social modeling for early requirement engineering. The proposed methodology which consists of two phases of requirement elicitation and requirement analysis has the ability to address the problem of understanding in requirement engineering. This is due to the fact that customer requirements are elicited implicitly from stored data based by data mining techniques. The application of this methodology in the telecommunications industry and also some other domains is under study.
ACKNOWLEDGMENT
The author gratefully acknowledges the support of the Iranian Research Institute for Information Science and technology, Specially Dr Babak Seyfe, Dr. Gholam Ali Montazer, Dr. Omid Fatemi and Ammar Jalalimanesh.
REFERENCES
[1] [2] Aurum, A and Wohlin, C (Eds). 2005. Engineering and Managing Software Requirements, Springer. Chapman, P., Clinton, J., Kerber, R., Khabaza, T., Colin Shearer, T.R, and Wirth, R. 2000. CRISPDM Step-by-Step Data Mining Guide, http://www.crisp-dm.org/. Christel M.G. and Kang, K.C. 1992. Issues in Requirements Elicitation. Carnegie Mellon University, Software Engineering Institute. I* Intentional Strategic Actor Relationships modeling istar http://www.cs.toronto.edu/km/istar/ Lamsweerde, A. 2009. Reasoning About Alternative Requirements
[3]
[4]
[5]
D
Share
Share
Holders Holders
D
D
Managemet Managemet
ys Pla
Capital costs
D
Customers
be
Satisfied Lower
price Simple
Rate
Plans
Technology Leadership
D
D
D
International
International
Users Users Classic
Classic
Social
Social
Users Users
ISA
ISA
Fig. 3. Part of an SR model for a telecommunication company Options, In: Conceptual Modeling: Foundations and Applications: Essays in Honor of John Mylopoulos, Berlin, Heidelberg, Springer-Verlag (2009) 380397 [6] Larose, D.T. 2005. Discovering Knowledge in Data, An Introduction to Data Mining., Wiley-Interscience [7] Leffingwell, D. and Widrig, D. 2000. Managing Software Requirements A Unified Approach. Addison-Wesley Longman (Singapore) Pvt. Ltd., Low Price Edition. [8] Mohapatra Pratap K.J. 2010. Software Engineering (A Lifecycle Approach). New Age International Publishers. [9] Samavi, R., Yu, E., Topaloglou, T. 2008. Strategic Reasoning about Business Models: a Conceptual Modelling approach. J. Info Sys & EBusiness Management. Springer Verlag, Berlin, Online FirstTM (21) [10] Samavi Reza., Yu, E., Topalolou, T. 2008. Applying Strategic Business Modeling to Understand Disruptive Innovation. 10th International Conference on Electronic Commerce (ICEC), Austria. [11] Tsiptsis,K., Chorianopoulos, A. 2009. Data Mining Techniques in CRM: Inside Customer Segmentation, Wiley. [12] Yu, E. Social Modeling and i*, in LNCS. 2009, Springer Berlin / Heidelberg. p. 99-121. [13] Yu, E., Giorgini, P., Maiden, N, and Mylopoulos, J. 2011. Social Modeling for Requirement Engineering, MIT press.
t Hu r
Fixed Price
lp He
Customer Customer
Lower
price
Help
Hurt Some +
High performacne
Government
Hurt
D
ISA
ISA
D
Government
Regulations
Pla ys
vami was entitled "Personalisation-The application of Personal Assistant Agents to Future Mobile Communications Services". She had been a member of core 2 and 3 of Mobile VCE centre of Excellence and also course instructor at King's College London during her PhD studies there. Elaheh Homayounvala was senior consultant for Entrepreneurship camp at Centre for entrepreneurship and Technology Inits Incubator of Shahid Beheshti University, Iran. She has started her collaboration with Iranian Reseach Institute of Information Science and Technology since 2010 with a research project on reqirement engineering.. She also hold ISEB certificate in Requirement Engineering from British Computer Society. Her research interests are: Requirement Engineering, user modeling adaptation and personalsiation, user preference modeling, ambient inteligence and ubiquitous computing.