You are on page 1of 5

JOURNAL OF INFORMATION AND COMMUNICATION TECHNOLOGIES, VOLUME 3, ISSUE 1 JANUARY 2013 1

Early Requirement Engineering based on Data Mining and Social Modeling


Elaheh Homayounvala
AbstractUsers' needs and interests are major issues in information system design. In order to design systems that truly meet users' needs or add new features to already developed systems to better satisfy users' needs, early requirement engineering can play a significant role. Early requirement engineering refers to issues that should come before the traditional requirements analysis activities. This paper proposes utilization of data mining techniques as a tool to acquire better understanding of users' needs and interests in early requirement engineering. We believe that information systems with large datasets hold a wealth of information hidden in their databases. Therefore, data mining techniques can be applied to uncover users' needs and interests for better domain understanding and also in order to design new features for system development. In this paper, a new methodology for requirement elicitation based on data mining techniques is proposed. The proposed methodology has an evaluation phase in which identified requirements, can be analyzed based on Strategic Dependency and Strategic Rationale models in i* framework which is based on social modeling. Consistency of customer and other stakeholders' requirements can be studied in this methodology by strategic reasoning and the label propagation algorithm. Index Terms Data mining, requirement engineering, social modeling, software engineering.

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.

2 THE PROPOSED METHODOLOGY


This paper proposes the utilization of data mining techniques to identify customers' requirements and then social i* framework, which is based on social modeling, for requirement analysis and validation. Requirement elicitation and validation approach, proposed in this paper is a methodology rather than a method, because a methodology as opposed to a method or technique "offers a set of guidelines or principles which in any specific instance can be tailored both to the characteristics of the situation in which it is to be applied and to the people using the approach" [3]. The proposed methodology consists of two main phases, namely requirement elicitation phase and

E.Homayounvala is with the Iranian Research Institute for Information Science and Technology, Iran. 2013 JICT www.jict.co.uk

Data mining techniques

Strategic Rationale Model based on customer segmentation

Study alternatives to achieve goals

Strategies to achieve stakeholders' goals and satisfy customers' needs

Needs to Requirements

New Improved Requirements

Phase 1 Requirement Elicitation


Fig. 1. Main phases in the proposed methodology.

Phase 2 Requirement Analysis

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].

4 SAMPLE APPLICATION OF THE PROPOSED

Need

Problem Domain

Feature

Solution Domain

Software Requirements

Fig. 2. Needs to requirements [7] in [8].

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

Higher Profit and Growth

D
D

Making profit and growth

Managemet Managemet
ys Pla

Capital costs

Acquiring capital source Share price

profit growth Investment Network Network Operator Operator

Business Business Users Users


ISA

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

Billing Mechanism is Configured

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.

Revenue Minutes of Use

t Hu r

Time based Payement

Fixed Price

Elaheh Homayounvala is a PhD graduate of King's College


London, University of London (2006). Her M.Sc. and B.Sc. degrees are both from Sharif University of Technology, Tehran, Iran in Philosophy of Science (1999) and Software Engineering (1996) respectively. Her PhD research under supervision of Professor Hamid Agh-

lp He

Customer Customer

Basic Users Basic Users

Lower price
Help

Hurt Some +

High performacne

Spend Money to Improve Technology

Young Young SMSers SMSers

Government

Comply Government regulations

Hurt

D
ISA
ISA

D
Government Regulations

Pla ys

Voice Voice service service Provider Provider

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.

You might also like