Article Summary
Software requirement analysis enhancements by prioritizing requirement attributes using rank
based Agents. Ashok Kumar Vinay Goyal Professor Assistant Professor Department of Computer Science and Applications Department of MCA Kurukshetra University, Kurukshetra, India Panipat Institute of Engineering & Technology
Panipat, India
Abstract- This paper proposes a new technique in the domain of Agent oriented software engineering. Agents work in autonomous environments and can respond to agent triggers. Agents can be very useful in requirement analysis phase of software development process, where they can react towards the requirement triggers and result in aligned notations to identify the best possible design solution from existing designs. Agent helps in design generation process, which includes the use of Artificial intelligence. The results produced clearly shows the improvements over the conventional reusability principles and ideas.
1. INTRODUCTION
Agent oriented software engineering is a new emerging technique which is growing very rapidly. Software development industries have invested huge efforts in this domain and results published by many of them are very exiting [1]. The autonomous and reactive nature of agents makes it possible for the designers to visualize in terms of real life problem solving scenarios where socio-logical [2] characteristics of agents automatically activate the timely checks for any problem in domain and to solve the same using agents.
Agents are very helpful in the software development life cycle. Experiments carried out in past have shown [2][9][10] the improvement in the SDLC and conclusion is that agents can be very helpful in cost and effort minimization; if tuned properly. Fine-tuning of agents and SDLC process-state-plug-in for two-way
communications results in agent based software development process where intelligent agents
will take decisions for better time and resource utilization.
Fine-tuning of agents and SDLC process-state-
plug-in for two-way communications results in agent based software development process where intelligent agents will take decisions for better time and resource utilization. Agents are capable of storing historic data, which helps in decision-making using heuristic based approach.
This paper discusses the details of one such experiment conducted to improve the requirement analysis process with the help of proactive agents. Agents automatically sense the requirement environment and propose their own set of important requirement checklist. This is sort of intelligent assistance with domain heuristic, which leads to cover all possible requirement entities of the problem domain.
2. RELATED WORK
Michael Wooldridge, Nicholas R. Jennings & David Kinny describe the analysis process using agent-oriented approach [1]. They have considered the GAIA notations. The analysis stages of Gaia are: 1) Identify the agent’s roles in the system, which typically correspond to identify roles of individuals, departments or organizations themselves. The output of this will be a prototypical roles model i.e. a list of the key
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
105 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
roles that occur in the system, each with an informal, unelaborated description. 2) For each role, identify and document the associated protocols. Protocols are the patterns of interaction that occur in the system between the various roles. 3) Using the protocol model as a basis, elaborate the roles model. The output of this activity will be fully elaborated roles model, which documents the key roles occurring in the system, their permissions and responsibilities, together with the protocols and activities in which they participate.
Software designers and researchers have been experimenting [3][5][7] with flexible agent- based architectures as the foundation for next generation systems. However, the success of these systems will depend on how well they fit into the embedding technical, business, and organizational environments, and on their ongoing ability to respond to changes in these environments. A critical piece of technology, therefore, is the ability to model and analyze the architecture of software-based systems in relation to their complex, evolving organizational and business environments. An important component of the capability is the systematic treatment of non-functional requirements (such as maintainability, reliability, performance, and other quality issues) during design and their monitoring during execution [8][13].
Requirement engineering resources proposed a new technique of Self-adaptive software and agent oriented paradigm. An Autonomic Computing mechanism defines a set of desirable attributes such as self-configuration, self- optimization, self-healing and self-protection. All this is possible because of a core property; self-adaptivity, which has been defined as the ability of software to use available information about changes in its environment to improve its behavior [2]. A new architecture (control-loop based) has been proposed to realize self-adaptive software. This architecture will make the system enable to sense its execution environment and to choose a behavior aiming at maximizing system availability and reliability. The details have been investigated that define how to design self-
adaptive software and to focus on specific autonomic properties based on it. This refers to the ability of predicting problems and taking actions to prevent a possible failure. An agent- oriented paradigm adopted for requirements analysis and design, and Multi-agent systems (MAS) technologies, which allow the developers to implement the control-loop architecture and to enhance it with knowledge representation and reasoning techniques. The resulting framework will provide the methods for specifying design alternatives, borrowed from goal-oriented methodologies, MAS techniques to execute system specifications into a simulated environment, in order to observe system behavior and to support the dynamic refinement of design artifacts using feedback from run-time behavior; traceability between design and code artifacts.
Jaime Simão Sichman, François Bousquet and Paul Davidsson have proposed the new prospects of requirement engineering with the involvement of Agent based approach [3]. A preliminary reference model for the requirements specification of agent-based simulation platforms has been proposed which aid the identification of general principles to develop platforms. This concept advances the analysis and prospection of technical-operational and high-level requirements. Agent based simulation platform promote the identification of shared requirements [14]. This approach addresses the development of an integrated work. A new reference model is defined and a comparative analysis has been made resulting in an unambiguous and schematic characterization of computational systems for agent-based simulation [13].
Chiung-Hui Leon Lee and Alan Liu proposed a new method for Agent based system requirement analysis. It has been defined that an agent-based system is a complex software system with functional and nonfunctional constrain and designing and building such system is a complex task [4]. The idea is to use a goal-driven based use case method for agent- based system requirements analysis. This approach is used to extract system requirements from user’s point of view. It works with related
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
106 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
use cases assigned to corresponding roles. The defined use cases are extended with goals for implicit requirements analysis in contrast to role’s point of view. The role is treated as internal actor to find more system specific use cases [15][16]. After the system find system specific use cases, the relationships between use cases and goals are identified. These relationships are satisfied, satisfiable, denied, deniable, and independent. Those relationships help find the relationship among roles. Identifying these relationships assists the system analyzer to analyze and optimized the relationships among roles and this system will contribute to a systematic approach for implicit requirements analysis with efficiency [18][19][20].
3. EXPERIMENTAL DETAILS
Our experiment discusses the details of experiment conducted to improve the requirement analysis process with the help of proactive agents. Agents automatically sense the requirement, environment and propose their own set of important checklist which will be a better and enhance list for requirement analysis. This is a type of intelligent assistance with domain heuristic ranks, which leads to cover all important requirement entities of the problem domain.
Proactive agents with requirement ranking mechanism give a shot in the arm for requirement analysis modules [7]. The requirement gathering layout design and attributes can be continuously improved. The key attributes, which are important to the system, are rearranged by ranked based mechanism on repetitive usages by the agents.
This experiment was carried out in a simulated environment for the requirement analysis in the field of hospitality services using active agents that have the capability of identification of the most important attributes. The requirement is gathered for 45 different rounds. The same experiment was carried out on an environment with no sensors for requirement attribute alignment. The results obtained from the two requirement processes were compared and it was found that agent based requirement analysis
technique gather more valuable attributes for the project.
4. ALGORITHMIC DETAILS
Environment:: Requirement analysis (History) Database is
Empty.
Agent activated:: Proactive/AI
Alignment:: False
Alignment path update:: False
Agent feedback: NULL
Agent activation:: The project requirement inputs on the basis of the defined attribute for requirement gathering.
Proactive agent participation for the input metadata and observation for the new attribute
value addition/Not-used attribute for requirements.
Alignment check :: Proactive agent Update the rank list of the attribute. Most used will be incremented. Expert:: <- Human Input
also update the attribute list and rank list. Simulation count incrimination
Proactive Agent::
To analyze which attribute is most valuable and which one is least accessed.
Attribute ranking database updation:: To Access the database and update if the item is most
accessed or if the item is specially recommended by the analysis expert.
Synchronize the proactive agent with latest list of requirement attribute’s Rank.
5. EXPERIMENTAL RESULTS
Following are the results of the experiments carried out in order to achieve the enhancement using agents.
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
107 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
Table 1: User experience without agents.
Requirement analysis
Attribute
Importance Rank1
User experience W Agent
User experience Without
agent Hos Req Attr
1 1 15 18
Hos Req Attr 2 2 18 18
Hos Req Attr 3 3 15 18
Hos Req Attr 4 4 17 20
Hos Req Attr 5 5 15 18
Hos Req Attr 6 6 21 21
Hos Req Attr 7 7 14 18
Hos Req Attr 8 8 15 17
Hos Req Attr 9 9 14 18
Hos Req Attr 10 10 17 18
Hos Req Attr 11 11 15 16
Hos Req Attr 12 12 17 18
Hos Req Attr 13 13 12 15
Hos Req Attr 14 14 14 18
Hos Req Attr 15 15 11 17
Hos Req Attr 16 16 15 18
Hos Req Attr 17 17 10 18
Hos Req Attr 18 18 15 20
Hos Req Attr 19 19 13 18
Hos Req Attr 20 20 13 18
Figure 1: User experience without agents.
Table 2: Stage-1: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank2
User experience with agent
User experience Without
agent Hos Req Attr
1 1 18 15
Hos Req Attr 2 2 18 18
Hos Req Attr 3 3 18 15
Hos Req Attr 4 4 20 17
Hos Req Attr 5 5 18 15
Hos Req Attr 6 6 21 21
Hos Req Attr 7 7 18 14
Hos Req Attr 8 8 17 15
Hos Req Attr 9 9 18 14
Hos Req Attr 10 10 18 17
Hos Req Attr 11 11 16 15
Hos Req Attr 12 12 18 17
Hos Req Attr 13 13 15 12
Hos Req Attr 14 14 18 14
Hos Req Attr 15 15 17 11
Hos Req Attr 16 20 18 15
Hos Req Attr 17 17 18 10
Hos Req Attr 18 18 20 15
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
108 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
Hos Req Attr 19 19 18 13
Hos Req Attr 20 16 18 13
Figure 2: Stage-1: User experience improvements using agents.
Table 3: Stage-2: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank3
User experience with agent
User experience Without
agent Hos Req Attr
1 1 24 15
Hos Req Attr 2 2 22 18
Hos Req Attr 3 3 21 15
Hos Req Attr 4 4 24 17
Hos Req Attr 5 5 21 15
Hos Req Attr 6 6 21 21
Hos Req Attr 7 7 22 14
Hos Req Attr 8 8 22 15
Hos Req Attr 9 9 21 14
Hos Req Attr 10 10 19 17
Hos Req Attr 11 11 24 15
Hos Req Attr 12 12 21 17
Hos Req Attr 13 13 21 12
Hos Req Attr 14 20 24 14
Hos Req Attr 15 15 23 11
Hos Req Attr 14 24 15
16 Hos Req Attr
17 17 24 10
Hos Req Attr 18 18 21 15
Hos Req Attr 19 19 24 13
Hos Req Attr 20 16 17 13
Figure 3: Stage-2: User experience improvements using agents.
Table 4: Stage-3: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank4
User experience with agent
User experience
Without agent
Hos Req Attr 1 1 32 15
Hos Req Attr 2 2 31 18
Hos Req Attr 3 3 32 15
Hos Req Attr 4 4 31 17
Hos Req Attr 5 5 32 15
Hos Req Attr 6 6 29 21
Hos Req Attr 7 7 28 14
Hos Req Attr 8 8 27 15
Hos Req Attr 9 9 32 14
Hos Req Attr 10 10 31 17
Hos Req Attr 11 11 31 15
Hos Req Attr 12 20 29 17
Hos Req Attr 13 13 29 12
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
109 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
Hos Req Attr 14 12 32 14
Hos Req Attr 15 15 30 11
Hos Req Attr 16 14 32 15
Hos Req Attr 17 17 32 10
Hos Req Attr 18 18 32 15
Hos Req Attr 19 19 31 13
Hos Req Attr 20 16 32 13
Figure 4: Stage-3: User experience improvements using agents.
Table 5: Stage-4: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank5
User experience with agent
User experience Without
agent Hos Req Attr
1 1 43 15
Hos Req Attr 2 2 40 18
Hos Req Attr 3 3 37 15
Hos Req Attr 4 4 36 17
Hos Req Attr 5 5 36 15
Hos Req Attr 6 6 43 21
Hos Req Attr 7 7 37 14
Hos Req Attr 8 8 39 15
Hos Req Attr 9 9 43 14
Hos Req Attr 10 10 40 17
Hos Req Attr 11 11 41 15
Hos Req Attr 12 13 39 17
Hos Req Attr 13 20 37 12
Hos Req Attr 14 12 40 14
Hos Req Attr 15 15 41 11
Hos Req Attr 16 14 42 15
Hos Req Attr 17 17 40 10
Hos Req Attr 18 18 43 15
Hos Req Attr 19 19 43 13
Hos Req Attr 20 16 43 13
Figure 5: Stage-4: User experience improvements using agents.
Table 6: Stage-5: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank6
User experience with agent
User experience Without
agent Hos Req Attr
1 1 47 15
Hos Req Attr 2 2 46 18
Hos Req Attr 3 3 45 15
Hos Req Attr 4 4 44 17
Hos Req Attr 5 5 46 15
Hos Req Attr 6 6 46 21
Hos Req Attr 7 7 45 14
Hos Req Attr 8 44 15
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
110 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
8 Hos Req Attr
9 14 45 14
Hos Req Attr 10 10 44 17
Hos Req Attr 11 11 42 15
Hos Req Attr 12 20 43 17
Hos Req Attr 13 9 45 12
Hos Req Attr 14 14 44 14
Hos Req Attr 15 15 44 11
Hos Req Attr 16 16 44 15
Hos Req Attr 17 17 41 10
Hos Req Attr 18 18 41 15
Hos Req Attr 19 19 44 13
Hos Req Attr 20 12 43 13
Figure 6: Stage-5: User experience improvements using agents.
Table 7: Stage-6: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank7
User experience with agent
User experience
Without agent
Hos Req Attr 1 1 50 15
Hos Req Attr 2 2 51 18
Hos Req Attr 3 3 49 15
Hos Req Attr 4 4 49 17
Hos Req Attr 5 5 46 15
Hos Req Attr 6 6 47 21
Hos Req Attr 7 7 48 14
Hos Req Attr 8 14 48 15
Hos Req Attr 9 9 45 14
Hos Req Attr 10 10 46 17
Hos Req Attr 11 20 49 15
Hos Req Attr 12 11 49 17
Hos Req Attr 13 12 51 12
Hos Req Attr 14 8 50 14
Hos Req Attr 15 15 46 11
Hos Req Attr 16 16 47 15
Hos Req Attr 17 17 47 10
Hos Req Attr 18 18 46 15
Hos Req Attr 19 19 47 13
Hos Req Attr 20 13 50 13
Figure 7: Stage-6: User experience improvements using agents.
Table 8: Stage-7: User experience improvements using agents.
Requirement analysis
Attribute
Importance Rank8
User experience with agent
User experience
Without agent
Hos Req Attr 1 1 53 15
Hos Req Attr 2 2 52 18
Hos Req Attr 3 50 15
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
111 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
3 Hos Req Attr
4 4 50 17
Hos Req Attr 5 5 53 15
Hos Req Attr 6 6 54 21
Hos Req Attr 7 14 53 14
Hos Req Attr 8 8 52 15
Hos Req Attr 9 9 52 14
Hos Req Attr 10 10 51 17
Hos Req Attr 11 11 56 15
Hos Req Attr 12 20 52 17
Hos Req Attr 13 13 52 12
Hos Req Attr 14 7 52 14
Hos Req Attr 15 15 51 11
Hos Req Attr 16 16 52 15
Hos Req Attr 17 17 52 10
Hos Req Attr 18 18 52 15
Hos Req Attr 19 19 52 13
Hos Req Attr 20 13 53 13
Figure 8: Stage-7: User experience improvements using agents.
Conclusion
The experiment results show the usage and advantage of proactive agents in requirement analysis phase. The involvement of agents adds ranks to the requirement attributes. Over the time, the requirements, which are more critical
to the domain, will become more important and will appear first during requirement gathering. Configuration also allows checking that whether the requirements having top rank are considered during requirement or not. The overall user experience and requirement analysis completeness will be more enhanced. This gives an overall productivity to the software development process and hence minimizes the overall cost.
6. REFERENCES
[1] Michael Wooldridge, Nicholas R. Jennings and David Kinny, “The Gaia Methodology for Agent-Oriented Analysis and Design,” Autonomous Agents and Multi-Agent Systems, Kluwer Academic Publishers, Netherlands, Vol 3, pp: 285-312, 2000.
[2] Kessler Bruno Fondazione, “Self adaptive software, Requirements engineering,” http://se.fbk.eu/node/63
[3] Jaime Simão Sichman, François Bousquet and Paul Davidsson, “Requirements analysis of agent-based simulation platforms: state of the art and new prospects,”MABS'02 Proceedings of the 3rd international conference on Multi- agent-based simulation, Springer-Verlag Berlin, Heidelberg, ISBN: 3-540-00607-9, pp: 125-141, 2003.
[4] Chiung-Hui Leon Lee and Alan Liu, "A Method for Agent-Based System Requirements Analysis, "IEEE Fourth International Symposium on Multimedia Software Engineering (MSE'02), Newport Beach, California, USA, DOI: http://doi.ieeecomputersociety.org/10.1109/ MMSE.2002.1181615, ISBN: 0-7695- 1857-5, 2002.
[5] Rana O. F. and Biancheri C., “A Petri Net Model of the Meeting Design Pattern for Mobile-Stationary Agent Interaction,” In Proc. of the 32nd Hawaii International Conference on System Sciences, 1999.
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
112 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
[6] Wooldridge M. J. and Jennings N. R, ”Intelligent Agents: Theory and Practice,” The Knowledge Engineering Review, 2(10):115–152, 1995.
[7] Wagner G., ”Agent-Object-Relationship Modeling,” In Proc. of Second International Symposium – from Agent Theory to Agent Implementation together with EMCRS 2000, April 2000.
[8] Jennings N. R.,” Building Complex Software Systems: The Case for an Agent-based Approach,” Communications of the ACM, Forthcoming, 2001.
[9] Parunak H. V. D.,” A Practitioner’s Review of Industrial Agent Applications,” Autonomous Agents and Multi-Agent Systems, 3(4):389–407, December 2000.
[10] Lind J.,” Issues in Agent-Oriented Software Engineering,” The First International Workshop on Agent- Oriented Software Engineering (AOSE-2000), 2000.
[11] Shoham Y,”Agent-oriented programming. Artificial Intelligence,” (60):51–92, 1993.
[12] Magnanelli M. and Norrie M. C.,” Databases for Agents and Agents for Databases,” In Proc. of 2nd International Bi-Conference Workshop on Agent- Oriented Information Systems, June 2000.
[13] Parunak H. V. D.,” Agents in Overalls: Experiences and Issues in the Development and Deployment of Industrial Agent-Based Systems,” International Journal of Cooperative Information Systems, 9(3):209– 227, 2000.
[14] Wood M. F. and DeLoach S.A.,” An Overview of the Multiagent Systems Engineering Methodology,” The First InternationalWorkshop on Agent-Oriented Software Engineering (AOSE-2000), 2000.
[15] Labrou Y., Finin T. and Peng Y,” Agent Communication Languages: The Current
Landscape,” IEEE Intelligent Systems, 14(2), March/April 1999 1999.
[16] Nwana H. S. and Ndumu D.,”A perspective on software agents research,” The Knowledge Engineering Review, 14(2):1– 18, 1999.
[17] Kendall E. A., Malkoun M. and Jiang C., ”The application of object-oriented analysis to agent based systems,” Journal of Object Oriented Programming,February 1997.
[18] Wagner G. ,”Agent-Oriented Analysis and Design of Organizational Information Systems,”In Proc. of Fourth IEEE International Baltic Workshop on Databases and Information Systems, Vilnius (Lithuania), May 2000.
[19] M. Wooldridge and N. R. Jennings (1995) , “Intelligent agents: theory and practice,” The Knowledge Engineering Review 10 (2) 115-152.
[20] A. Pnueli, “Specification and development of reactive systems,” In Information Processing 86, Elsevier Science Publishers, 1986
[21] D. Kinny and M. Georgeff (1997), “Modelling and design of multi-agent systems,” In J. P. Mueller, M. Wooldridge, and N. R. Jennings, editors, Intelligent Agents III (LNAI Volume 1193), 1-20 Springer-Verlag.
[22] N. R. Jennings and M. Wooldridge (eds.) (1998), “Agent technology: foundations, applications and markets,” Springer Verlag.
[23] N. R. Jennings, K. Sycara and M. Wooldridge (1998), “A Roadmap of Agent Research and Development,” Int Journal of Autonomous Agents and Multi-Agent Systems 1 (1) 7-38.
[24] C. Guilfoyle and E. Warner (1994), “Intelligent agents: the new revolution in software,” Ovum.
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
113 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
[25] M. Fisher and M. Wooldridge (1997),“On the formal specification and verification of multi-agent systems,” Int. Journal of Cooperative Information Systems 6 (1) 37- 65.
AUTHORS PROFILE Dr. Ashok Kumar is working as Professor in Department of
Computer Science and Applications in Kurukshetra University, Kurukshetra. He is having a vast experience in teaching and research in the area of operation research, software engineering, web based applications etc. He has published numreous research papers in very reputed journals.
Mr. Vinay Goyal is working as Assistant Professor and Head of Department (MCA) in Panipat Institute of Engineering and Technology, Samalkha, Panipat. He has 8 years of teaching and research experience in the area of AGENT ORIENTED SOFTWARE ENGINEERING. He has published 4 research papers in various international journals.
(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 8, August 2011
114 http://sites.google.com/site/ijcsis/ ISSN 1947-5500
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.