Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 INTEGRATING AI TECHNIQUES IN SDLC: REQUIREMENTS PHASE PERSPECTIVE Shreta Sharma St. Xavier’s College, JAIPUR - 302001, INDIA [email protected] S. K. Pandey Board of Studies, The Institute of Chartered, Accountants of India(Set up by an Act of Parliament) NOIDA – 201309, INDIA [email protected] Abstract: Software Development Life Cycle (SDLC) refers to a process of describing the planning, designing, coding, and testing of a software system as well as the way, in which these activities are implemented. Undoubtedly, requirements phase is the foundation stone of the entire development life cycle. Requirements phase has various stages such as elicitation, specification, validation, management and documentations, which aim to collect good requirements from stakeholders in the right way, but at the same time, there exists various related challenges too. One of the foremost issues is the maximum human intervention in the requirements phase of SDLC. Some research studies reveal that Artificial Intelligence (AI) techniques may help in this regard by minimizing human intervention by offering several tools/ techniques to automate certain processes up to a certain extent. In this paper, our aim is to identify the issues in each of the stages of the requirements phase and possibility of AI techniques to overcome these identified issues. In addition, the paper also explores the relationship between these issues and their possible AI solution/s through Venn-Diagram. For some of the issues, there exist more than one AI technique but for various issues, no AI technique/s have been found to overcome the same and accordingly, those issues are still open for further research. Keywords: Software Development Life Cycle, Artificial Intelligence, Requirements Phase, Artificial Intelligence Techniques and Requirements. I. INTRODUCTION Requirements phase is the foremost phase in the SDLC, which refers to the process of producing, estimating, specifying, associating and changing the objectives, functionalities, qualities and constraints to be achieved by a software system [1]. Quality of requirements is one of the factors responsible for the failure and success of any software [1]. Research studies reveal that success in 68% of technology projects is improbable. Poor requirements cause many of these failures; it implies that projects are condemned right from the beginning. As a result of this, now-a-days, software development companies are devoting more time and budget in requirements phase on their projects. Because, it is also widely noted that requirements errors are the most IJCTA | May-June 2014 Available [email protected] expensive to correct late in the development process or when the product is released[2]. For managing failures and challenges of software systems due to poor requirements in software development, there has been a visible growth of related disciplines [3]. Integrating AI techniques in requirements phase is having a great impact on SDLC. Artificial Intelligence is a field of computer science usage, which attempts to build computational methods for actions that are measured to require intelligence when performed by humans [1][4]. It produces ontologies, pattern recognition, creativity, solving problems, learning, stimulation, deduction, classification, building logic, and knowledge representation. It is concerned with the study and creation of computer systems that display some form of intelligence and efforts to apply such knowledge and techniques to the design of methods and computer based programs that can comprehend a natural language or human intelligence [5]. In software development, requirements phase is considered as a phase having ample scope to incorporate AI techniques because of requirements’ environments. However, requirements tends to be vague, incomplete and confusing and have a big impact in all the development stages [1][6]. Therefore, the usage of AI techniques in order to improve requirements phase favorably affects the quality of overall software life cycle [1][7]. This paper aims to study the techniques developed in AI from the standpoint of their applications in requirements phase. In particular, it focuses on techniques developed or that are being developed (under conceptual stage/s) of AI that can be arranged in solving issues associated with requirements phase of SDLC. The rest of the paper is organized as follows: Section II describes ‘RE Process and its Key Issues’ whereas Section III provides a detailed discussion on ‘AI Techniques in Requirements Phase’. Section IV presents ‘Related Discussion and Findings’ and finally ‘Conclusion and Future Work’ are reported in Section V. II. RE PROCESS AND ITS KEY ISSUES Requirements Engineering (RE) is one of the most important phases of software development. It is seen as a collection of 1362 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 well-defined activities, techniques, and transformations that people use to develop requirements of a system, maintain the requirements specification and associated artifacts. Good quality RE process is therefore essential for successful system development. RE process has several phases, which facilitate to understand the customers’ requirements, define the system constraints, evaluate them, estimate their feasibility, determine actual need of customers, validate requirements specification and manage the requirements [8][9]. Basically, there are five major phases of RE, which have been covered in the following sub sections: 2.1 ELICITATION It is regarded as a critical activity in the requirement development process; it explores the requirements of stakeholders and is normally considered as the process of detecting the real needs of the customers as well as the system [8][9].A detailed study reported various techniques for elicitation process such as: Traditional techniques, collaborative technique, contextual, cognitive and innovative techniques; however it has been observed that there are still certain issues as well as challenges in elicitation, which are given as follows: EI1: In a survey, sometimes interviewers ask some questions but don’t get response according to his/her requirements. In normal interaction, these issues of explanation are exchanged between participants [9]. EI2: In questionnaires method, which is used in requirement elicitation, when questions are asked from different stakeholders, they are not assured by having same words repeated in each session related to subject. These words will impact different meanings to different people in different environment; this is a social context [9]. EI3: Some statement of conversational method between interviewer and stakeholders are quite challenging and create doubt using this method for some area[9]. EI4: Furthermore, because stakeholders may have widely different status within the organization, requirements engineers will face difficulty to share their thoughts, specifically if idea is not very widespread [9]. EI5: Time limitation and sensitivity are the major issues of contextual technique where project has tight schedule along with time limitation at requirements stage and not enough time for observation of requirements [9]. 2.2 ANALYSIS Requirements Analysis is a process during which requirements are analyzed and modeled. It involves a set of activities, which aim to discover problems within the system requirements and achieve agreement on conflicts by satisfying all system stakeholders. If an analyst discovers some problems with the requirements during the analysis phase, such requirements are referred back to the elicitation phase. This process is related to the requirements that are incomplete, ambiguous and/or conflicting [8][9].Major issues IJCTA | May-June 2014 Available [email protected] reported by experts and practitioners in requirements analysis are given as follows: AnaI1:Stakeholders will be unable to communicate embedded knowledge. Additionally, group facilitators try to abstain stately their own categories to stakeholders but there is less surety that the stakeholders will actually share those categories in meetings . AnaI2:Requirements are generally written in natural language, which is hard to handle with quality. AnaI3: Changes in requirements occur frequently during the course of project. AnaI4:Users are technically unsophisticated and do not understand the development process. AnaI5:Customers have unreasonably timelines. 2.3 DOCUMENTATION Requirements documentation is the process by which agreed requirements are achieved at an appropriate level of detail in the most suitable notation, based on a well-defined document structure. The documentation process receives its input from the analysis and negotiation process[8][9]. The output of the process is a well-structured and defined specification. During this process, the team organizes the requirements in such a way that ascertains their clarity, consistency, traceability etc. Major issues reported by experts and practitioners in requirements documentation are given as follows: DI1: The key issue in the documentation process is to select proper notations according to document requirements and at the appropriate level of details. DI2: To elicit ‘how experts structure their knowledge about a domain’, card sorting and repertory grid provide ways to elicit attributes that are not immediately and easily expressed by the experts. It means that it is difficult for an expert to communicate attributes of this method [9]. DI3: Some issues such as Expensive, time-consuming and cost of the documentation may exceed its value. DI4: In previous literature, it has been also found that documentation suffers from unavailability and maintainability of documents. 2.4 VALIDATION Requirements validation process check the requirements document to ensure that it is unambiguous, consistent and complete, and confirm that models and documentation accurately express the stakeholders’ needs along with final requirements specification. This activity also includes validating the system requirements against raw requirements and verifying the correctness of system requirement documentation[8][9].Major issues reported by experts and practitioners in requirements validation are given as follows: VI1: Statements given in the documents conflict with other statements about the same topic in the similar document or in the equivalent validation package. VI2: One of the major problems in requirements validation phase is the failure of essential information. 1363 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 VI3: The requirements in the validation package did not effectively express the needed information to the software. VI4: In addition, other major problem in validation phase is traceability of requirements. In some cases traceability matrix does not work efficiently. 2.5 MANAGEMENT Requirements management is the process of identifying, organizing, documenting and tracking changing requirements in a project and then monitoring the needs of all stakeholders involved in a project. It is an ongoing task throughout the whole RE process and might extent the whole software lifecycle. Some of the most important maintenance tasks during this phase include the updating of the requirements as well as the degree of evolution support that the approach provides[8][9]. Major issues reported by experts and practitioners in requirements management are given as follows: MI1:Major issue in requirement management is incorrect and missing links between requirements, which drain the quality of software. MI2:Impact of a requirement change on other requirements and use cases is also a key issue. MI3:Getting project stats (requirements status and counts, project progress per phase etc.) is the third major issue. MI4: Duplication of requirements between different documents is also a major issue of requirements management. III.AI TECHNIQUES IN REQUIREMENTS PHASE The main aim of requirements phase is to gather and analyze requirements and to transform it into crystal clear representation. But, some issues in this phase such as incompleteness, ambiguity and misunderstanding of requirements decrease the quality of software [10][11][12]. Therefore some AI methods and techniques with respect to affirmative issues that are identified in section II of this paper may be used to overcome the same. 3.1 AI Techniques to Overcome the Issues of Elicitation In accordance with the issues related to elicitation techniques, highlighted above, the paper now proceeds to explain the AI techniques, which are given as follows: AI (E1):Ontology: One of the major goals of requirements elicitation is to achieve a common understanding between all project stakeholders regarding the set of requirements. Simultaneously it faces some challenges and limitations too such as incompleteness of requirements, conflict analysis and tracing of huge requirements[12] [13]. The use of semantic technologies seems promising for addressing these challenges. Ontology is an explicit specification of a conceptualization and it provides the means for describing the concepts of a domain and the relationships between these concepts in a way that allows automated reasoning. This technique is used for IJCTA | May-June 2014 Available [email protected] the semantic web and provides solutions for representing, organizing and reasoning over the complex sets of requirements knowledge and information, which helps to enhance the quality of software life cycle[14] [15]. AI(E2):Natural Language Processing: The fundamental issues of natural language are Lexical ambiguity, alternative parts of speech (according to circumstances), and word class (adjective, article, preposition, number, noun, pronoun, adverb, verb, determiner etc.) along with Syntactic ambiguity due to the complexity of sentence structure. These issues result in decline of productivity and quality of the software life cycle [16]. Over the years, various researchers have conducted study in this area and found a concept to use Natural Language Processing (NLP) in the elicitation of requirements, specifically for removing ambiguity and incompleteness of requirements. The previous studies proposed that developing an ontology between two categories (incomplete, ambiguity) and application of ruled based algorithm might help to address the issue and might also offer a better understanding of problems for stakeholders [17]. AI(E3):Keyword Mapping: Many system development failures occur because the stakeholders cannot describe their requirements correctly, or developers and domain experts neglect “observable” words that contribute basically to system requirements. These challenges can be avoided by mapping each keyword spoken by each stakeholder. The previous studies introduced a keyword mapping technique for developers so that they can identify keywords used by stockholders to support them in preparing formal requirements. This technique provides a base to collect information about user’s need and stakeholder’s requirements and expectations at the initial stage by organizing interviews along with descriptions. System experts and domain experts evaluate recorded interview session based on keywords for avoiding ambiguity in requirements specifications. The process is basically useful for eliciting social requirements during software development process [18]. AI(E4): Speech Understanding Methodology: One aspect of system qualities is the ability to "listen in" on a discussion and properly capture these statements into a single vision. The approach is proposed to develop elicitation methods in which stakeholders are more openly asked to express their requirements. AI speech research generally uses a context-free grammar to discover and improve correctness, divide the stakeholders' utterances and finally to categorize the known statements by quality form [19]. AI(E5):Sketch Based Modeling: Requirement engineers and stakeholders prefer to sketch requirements during early elicitation phases in order to communicate ideas and to make them constant. Whiteboards, as well as pen and paper, are still the dominant tools that are used over current software modeling tools. Further, to facilitate 1364 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 requirements management, engineers need to manually convert the sketches into more formal models of requirements. This is a tedious and time-consuming work. Additionally, there is a risk that the original intentions of the sketched models and informal explanation get lost in the transition, therefore, while managing these issues, various researchers worked in this field and proposed a concept for a flawless, toolsupported transition from informal, sketchy drafts to more formal models by providing sketch based modeling tools such as UML diagrams[18][19]. 3.2 AI Techniques to Overcome the Issues of Analysis In this section, the possibility of incorporating AI techniques to overcome the issues relating to requirements analysis has been explored. These techniques are given as follows: AI(Ana1):Neural Network: In requirements analysis, major focus is typically the discovery and prediction of the key requirements issues initially and then analyzing them individually. To make this task easy, there is a promising tool of AI called neural networks, which is used for problems that require classification given some predictive input features. They therefore appear ideal for situations in Software Engineering where one desires to predict outcomes, such as the software risks associated with modules and risk analysis in software maintenance. [14][18][19]. AI(Ana2):Lightweight Semantic Processing Approach: One of the most crucial problems to automate requirements analysis is that requirements documents are usually written in natural language. Although techniques for Natural Language Processing (NLP) are being advanced now-a-days, it is hard to handle such requirements documents sufficiently by computer. However, lightweight semantic processing in requirements is essential for producing requirements specifications of high quality. This approach establishes a mapping between requirements specification and ontological elements. This technique allows us to have the possibility of automating semantic analysis with lightweight processing by mapping requirements descriptions in a requirements document onto ontological elements [20]. AI(Ana3):Knowledge Based System: A key problem in requirements analysis is to resolve and track the dependencies between an characteristics of related systems and the envisioned system's requirements. Knowledge engineering is a subfield of AI that produces a type of computer system called knowledge-based systems also known as expert systems to ensure the quality of software. Knowledge-based systems are computer programs designed to perform tasks usually done by human experts, or to solve problems that are beyond the capability of conventional computer systems. Knowledge based system process includes rule based reasoning and frame based model [21]. 3.3 AI Techniques to Overcome the Issues of Documentation IJCTA | May-June 2014 Available [email protected] AI techniques, which may be helpful to resolve the issues of requirements documentation, are given as follows: AI(D1):Nature Prototyping: Requirements phase in particular is characterized by its highly creative nature, making their process difficult to express. This has two main consequences. Firstly, the ways-of-working on the method cannot be expressed precisely enough by using an algorithm-like planning approach. Secondly, even though CASE tools are efficient in recording, retrieving and manipulating system specifications but still, they fail in actually supporting the developers in proceeding in the development. The NATURE way of tackling these two interrelated problems is to concentrate on the development process itself and to propose a generic framework that is powerful enough to allow the building of knowledge bases containing precise ways-of-working definitions and underlying more helpful CASE tools [22]. 3.4 AI Techniques to Overcome the Issues of Validation Major AI techniques, which may be used to overcome the issues relating to requirements validation, are given as follows: AI (V1):KBS Validation: Validation is an important procedure in the entire Knowledge Based System (KBS) life cycle. A knowledge base integrated into such systems has to be verified or validated [23]. The earliest validation technique in AI was Turing test, which was based on how to decide if a program could be considered intelligent. Although many criticisms have been leveled against the Turing test as a general procedure to characterize intelligent behavior but the idea of this testing has remained central in KBS validation [24]. There have been many approaches and procedures to develop KBS validation such as knowledge validation mappings, formal specification techniques and empirical evaluation, aimed at assuring the highest level of knowledge quality deals with practical guidelines of knowledge validation [23]. AI (V2): Cross Validation: Cross validation is a model assessment method that is more efficient than previous formal method. The problem with previous evaluations is that they do not give a suggestion of ‘how fine the learner will do when it is asked to build new predictions for data it has not already seen’ [23]. The small amount of the data is removed before training start. When training is over, the data that was detached can be used to check the performance of the learned model on innovative data. AI (V3):Viewpoint Resolution: A specific techniqueviewpoint resolution is a idea of providing early validation of the requirements for a multifaceted system and some beginning experimental details of the efficiency of a semi-automated execution of the technique are provided. The technique is based on the fact that software requirements can be elicited from diverse viewpoints, and that evaluation of the differences resulting from them can be used as a approach of support 1365 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 in the early validation of requirements. This study of views is able of differentiating between lost information and contradictory information, thus providing support for viewpoint resolution [23]. AI (V4):Model-Based Automated Validation: Modelbased approaches can develop quality and decrease cycle time by simulating the models to achieve early validation of requirements. It is a systematic approach for analyzing, documenting and validating the system requirements. Additionally, information that provides resources of expressing requirements is also related with the method. There is no single perfect requirement method available but an array of modeling techniques are used to prepare the system requirements. Literature reveals that there are several modeling techniques, which are used for the validation of the requirements such as data flow modeling, compositional models, simulation models and model based test process[23]. 3.5 AI Techniques to Overcome the Issues of Management Major AI techniques, which may provide significant help in requirements management, are given as follows: AI (M1):Knowledge Based Systems for Management: Knowledge-based system supports to developers to ensure the quality of software requirements. Framebased model is proposed as the most appropriate for knowledge organization in the system and its structure is derived from textual sources analysis and experts interviews. Application of concept mining methods with external domain or common sense ontologies or vocabularies serving as thesaurus is proposed, to make possible intellectualized quality assurance of requirements by the KBS [24]. IV. RELETED DISSCUSSION AND FINDINGS In this section, it is identified that for each issue relating to every stage of RE, how many AI technique/s are available in the literature, which can be used to overcome the same. This is represented with the help of Venn-Diagram. The relationship e.g. 1-> 1 and 1-> many has been identified between the issues and possible AI technique/s. The same is given as follows: Based on the facts, presented in Section II and III, mapping is drawn with reference to elicitation issues and AI techniques, which is given in Fig. 4.1. It is evident from the mapping that for each issue except EI 5, at least one AI technique is available in the literature. However, for EI5, no AI technique/s has been reported yet. Hence, there appears ample scope for the researchers to conduct further work in the area. Fig. 4.1: Mapping of Elicitation Issues Based on the related facts given in Section II and III, mapping is drawn in Fig. 4.2. The diagram demonstrates the links between issues and AI techniques related to analysis stage. It is evident from the mapping that for each issue, at least one AI technique is available in the literature. However, further work may be initiated to enhance the performance of already available AI techniques to provide more fruitful results. Fig. 4.2: Mapping of RE-Analysis Issues Keeping in view the related aspects, mapping is drawn with reference to documentation issues and AI techniques, which is given in Fig. 4.3. It is evident from the mapping that only for two issues DI1, and DI2, one AI technique is available in the literature. However, for remaining two issues DI3, and DI4, no AI technique/s exists in the literature. Hence, there appears good scope for further work in the area. Fig. 4.3: Mapping of RE-Documentation Issues IJCTA | May-June 2014 Available [email protected] In the similar lines, mapping is also drawn with reference to RE-Validation issues and AI techniques, which is given in Fig. 4.4. It is evident from the mapping 1366 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 that for all the issues except VI4, at least one AI technique is available in the literature. However, for VI4, no AI technique/s exists in the literature. Hence, one of the future tasks may be initiated on the same to fill-up the gap in between. Fig. 4.4: Mapping of RE-Validation Issues Finally, mapping is also drawn with reference to REManagement issues and AI techniques, which is given in Fig. 4.5. It is evident from the mapping that AI technique exists only for MI1. For remaining three issues viz. MI2, MI3 and MI4, no AI technique/s exists in the literature. Hence, the researchers may work in these directions and offer an appropriate solution. Fig. 4.5: Mapping of RE-Management Issues V. CONCLUSION AND FUTURE WORK Research studies reveal that AI techniques have a great impact on requirements phase of SDLC. In the current scenario, the demand to formulate a framework, based on integration of AI techniques and methods, ontologies, knowledge based matrices and others techniques/tools has increased dramatically, which is raising many new research questions. Accordingly, the paper presented various techniques developed in AI to eliminate the issues such as inconsistency, ambiguous and redundancy of requirements phase. The paper also described significant use of AI techniques in each stage of requirement phase. In addition, proper mapping of the issues belonging to each of the RE stages with the relevant AI techniques has also been accomplished with the help of Venn-Diagram. These diagrams present a clear understanding of the current status IJCTA | May-June 2014 Available [email protected] of the research in the area along with the scope for future research. Any researcher, who wishes to work in the area, can directly take these issues as his/her research problem/s and start working on the same. As stated above, future task may be to work on these unresolved issues and present some appropriate AI techniques to overcome the same. In addition, apart from the existing AI techniques, some more techniques may also be explored to improve the efficiency of the existing techniques in the light of new technological advancements in the area. Work may also be initiated for other phases of SDLC in the similar lines with an objective to integrate AI techniques in each of the generic phases of the SDLC. Such proposals are expected to be found useful for the software companies as well as research community up to a great extent. REFERENCES [1] Sharma, Shreta and Pandey, S.K. 2014, “Integrating AI Techniques in Requirements Phase: A Literature Review”, International Journal of Computer Applications, (0975 – 8887), pp. 21-25. [2] Sharma, Shreta and Pandey, S.K. 2013. “Revisiting Requirements Elicitation Techniques”.International Journal of Computer Applications (0975 – 8887) Volume 75– No.12.pp. 35-39. [3] Pandy S. K. and Mustafa K.2010: “Recent Advances in SRE Research”, International Journal on Computer Science and Engineering, Vol. 02, No. 04, pp.1079-1085. [4] “Software Engineering Requirements and Its Phases”, Hub Pages Article. 2009, Last Retrieved on Apr 2, 2013. http://devdreams.hubpages.com/hub/SoftwareEngineering-Requirements-And-Its-Phases [5] “Stop the seeds of project failure”, BCS Project Management Article, Last Retrieved onMay 2, 2013.www.bcs.org. [6] “The impact of poor requirements”, Aotea studios Article, 2011, Last Retrieved onMay 9, 2013. http://aoteastudios.com/2011/05/the-impact-of-poorrequirements-with-a-poster/ [7] James E. Powell. 2008: “IT pays a price for poor requirements practices”, Enterprise Systems, Last Retrieved on May 2, 2013. http://esj.com/articles/2008/02/07/it-pays-a-pricefor-poor-requirements practices.aspx [8] Kotonya, G. and Sommerville I. 1998. “RequirementsEngineering Processes and Techniques”, John Wiley & Sons Ltd, England. [9] Sharma, Shreta and Pandey, S.K.. 2014, “Requirements Elicitation: Issues and Challenges”, International Conference on “Computing for Sustainable Global Development”, sponsored by IEEE explore, ISSN 0973-7529; ISBN 978-9380544-10-6,pp.173-175. [10] Pandey,S. K. andBatra, Mona. 2013. “Formal Methods in Requirements Phase of 1367 ISSN:2229-6093 Shreta Sharma et al, Int.J.Computer Technology & Applications,Vol 5 (3),1362-1368 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] SDLC”.International Journal of Computer Applications.Published by Foundation of Computer Science. New York. USA.pp.7-14 Rahman A. N. and Sahibuddin S.2011, “Extracting Soft Issues during Requirements Elicitation:A Preliminary Study”,International Journal of Information and Electronics Engineering, Vol. 1, No. 2, pp. 126-131. KatjaSiegemund, Edward J. Thomas, Yuting Zhao, Je Pan, and UweAssmann 2011: “Towards Ontology-driven Requirements Engineering”, International Semantic Web Conference ,Germany, pp.1- 14. Kaiya Haruhiko and Motoshi Saeki. 2005: “Ontology Based Requirements Analysis: Lightweight Semantic Processing Approach”, Fifth International Conference on Software Quality (QSIC 2005), pp. 223-230. MezianeFarid and Sunil Vadera. 2010: “Artificial Intelligence Applications for Improved Software Engineering Development: New Prospects”, Information Science Reference (an imprint of IGI Global),pp.279-291. Li Shunxin. 2010: “Requirements Engineering Based on Domain Ontology”, International ConferenceInformation Science and Management Engineering, Vol. 1, pp. 120-122. NaazRaza Farah.2009: “Artificial Intelligence Techniques in Software Engineering (AITSE)”,Proceedings of the International Multi Conference of Engineers and Computer Scientists ,Vol. 1, Hong Kong, pp.1-3. H AmmarHany, WalidAbdelmoez and Mohamed Salah Hamdi. 2012: “Software Engineering Using Artificial Intelligence Techniques: Current State and Open Problems”, Second International Conference on Communication and Information technology (ICCIT 2012) Tunisia , pp.24-29. Harman Mark. 2012: “The Role of Artificial Intelligence in Software Engineering”,First International Workshop onRealizing Artificial Intelligence Synergies in Software Engineering (RAISE),Zurich,Switzerland,pp.1-6. Steele, A. Arnold, J. ; Cleland-Huang,j.2006, “Speech Detection of Stakeholders' Non-Functional Requirements”,0-7695-2713-2. Scott William and Stephen C. Cook. 2003: “An Architecture for an Intelligent Requirements Elicitation and Assessment Assistant”, International Council on Systems Engineering, pp. 470-479. Jonathan OnowakpoGoddeyEbbah. 2002: “Deploying Artificial Intelligence Techniques in software engineering”, American Journal of Undergraduate Research, Vol .1, No.1, pp. 19-20. Pohl Klaus .1994: “Applying AI Techniques to Requirements Engineering: The NATURE Prototype”,NATURE Report 94-7, Aachen pp.1-3. IJCTA | May-June 2014 Available [email protected] [23] [24] Sampaio do Prado Leite, J.C.2002. “Requirements validation through viewpoint resolution”. 00985589, 1253 – 1269. Kumar S. Arun and T.ArunKumar.2011: “Study the Impact of Requirements Management Characteristics in Global Software Development Projects: An Ontology Based Approach” International Journal of Software Engineering & Applications, Vol.2, No.4,pp. 107-108. Shreta Sharma is currently working as a Faculty in the Department of Computer Science, St. Xavier's College, Jaipur. Prior to this, she was associated with Natural Softwares Pvt.Ltd., Jaipur as a Software Developer. She has an excellent academic background right from the school level. Under the Institute-Industry linkage program, she delivers expert lectures on various area of Computer Science. She has contributed many research papers in the conferences of International/ National repute. Her area of research includes Artificial Intelligence, Requirements Engineering, E-learning and Software Security. Dr. Santosh K. Pandey is presently working as a Faculty of Information Technology with Board of Studies, The Institute of Chartered Accountants of India (Set up by an Act of Parliament) New Delhi. Prior to this, he worked with the Department of Computer Science, Jamia Millia Islamia (A Central University) New Delhi and Directorate of Education, Govt. NCT of Delhi. He has a rich Academics & Research experience in various areas of Computer Science. His research interest includes: Software Security, Requirements Engineering, Security Policies and Standards, Formal Methods, Cloud Computing, Security Metrics, Vulnerability Assessment etc. He has published around 46 high quality research papers and articles in various acclaimed International/National Journals (including IEEE, ACM, CSI) and Proceedings of the reputed International/ National Conferences (including Springer). Out of these publications, most of them have good citation records. He has been nominated in the board of editors/reviewers of various peer-reviewed and refereed Journals. In addition, he has also served as a Program Committee Member of several reputed conferences in India as well as abroad. 1368