Different Requirements Gathering Techniques And Issues

Transcription

835INTERNATIONAL JOURNAL OF SCIENTIFIC & ENGINEERING RESEARCH VOLUME 7, ISSUE 9, SEPTEMBER-2016ISSN 2229-5518Different Requirements Gathering Techniques andIssuesJavaria MushtaqAbstract- Project management is now becoming a very important part of our software industries. To handle projects with success is very big deal. Insoftware project management process there are some phases, first phase is requirement gathering. To get correct requirement and to handle it, is mostimportant for complete project successfully. Requirement management used to ensure that product or software meets user’s need or expectations.Requirements are defined during planning phase and then these requirements are used throughout the project. There are some techniques for gatheringrequirements. These techniques are interview, prototyping, use case analysis, JAD (Joint Application Design), brainstorming questionnaires andstoryboard. While gathering requirement, we faced many issues that are not capable for successful project. In this paper, there will be discussed thesetechniques and issues that are faced during requirement gathering and their solution.Index Terms- Software project management, interview, prototyping, use case analysis, JAD (Joint Application Development), brainstorming,questionnaires, storyboard—————————— ——————————1. INTRODUCTIONR equirements analysis is critical to the achievement ofdevelopment project. Requirements should bemeasurable, actionable, and testable and also should berelated to the user’s expectations. Requirement without anyambiguity fulfill the user’s requirement make projectsuccessful. While gathering requirements focused on“what” should be required rather than “how” it is required[1].These requirements specification produce good project.There are some requirements types. Every project hassome kind of requirements like [4]:IJSER“Using peer reviews, scenarios, and walkthroughsto validate and verify requirements results in a moreaccurate, specification and higher customer satisfaction.”It is estimated that 85% defects are find in requirementsduring software development [2]. There are sometechniques that are used to gather requirement. Everytechnique is not used for every project. In these techniquessome are useful and some are not but it depends on theproject’ description.Good requirement specifications are listed [3]. Usable during operations and �—— Javaria Mushtaq is currently pursuing MS in Computer Science fromSuperior University, Lahore, Pakistan. E-mail:javariamushtaq58@gmail.com Functional requirementsNon- Functional requirementsDomain requirementsInverse requirementsDuring requirements elicitation there may be manyissues that have to face. That issue and their solutions willdiscussed in this paper. Different techniques and which oneis best for which type of project will discussed in this paper.2. TECHNIQUES OF REQUIREMENTSGATHERINGIn reality there are hundreds of different techniques forrequirement elicitation. In this paper, some commonly usedtechniques are mentioned. These are ainstormingStoryboardPrototypingUse casesJAD (Joint Application Development)2.1 InterviewInterview is common technique used for gather data orinformation. In this technique interviewer conduct ameeting with interviewee. Interviews questions should beIJSER 2016http://www.ijser.org

836INTERNATIONAL JOURNAL OF SCIENTIFIC & ENGINEERING RESEARCH VOLUME 7, ISSUE 9, SEPTEMBER-2016ISSN 2229-5518according to the interviewee’s level. Gather informationaccording to his/her requirement. Questions should beopen ended however; interviewee can provide clear answerof your question.There are three types of questions. These arestructured, unstructured and semi structured. Structuredinterviews are conducted where domain is specified. In thistype specific questions are asked and get to the pointanswer. In this way, all the questions are covered up in thistype. The other is unstructured interview in this typeinterviewer ask questions and require detail answer ofthese questions. Interviewer applies only partial controlover the way of discussion. In this way some topic may beneglected [6]. Semi structured is combination of both. Thesemi structured interview, where elementary usual of thequestion is organized and used.picture of all requirement like tool bar, main window,dialogue boxes etc. After draw full picture of allrequirements, all members agreed upon on it. It is just likepaper prototyping [1]. Storyboarding is very commontechnique for designing about which you want to getinformation for their project. Storyboarding is muchrealistic for understanding about software’s structure forunknown persons who do not know about technical terms.There are some attribute or elements of storyboarding,which explain basic points for draw storyboarding. Theseare [8]. Level of detailsInclusion of textInclusion of people and emotionsNumber of framesPortrayal of time2.2 QuestionnairesQuestionnaire is best technique for gatheringinformation. In this technique questions are listed in paper.Questions are filled by the stakeholders and get the answerof these questions. In this technique stakeholders cannotexpress their idea. No new dimension can defined.Questionnaire type focused on the limited informationeliminated unnecessary information [6].2.3 Brainstorming Level of detailsIJSERBrainstorming technique is group discussion in whichmembers shares their ideas and find out the solution ofspecific problem. Brainstorming generates or gathers newideas rather than its quality. This technique is more popularbecause of it is a group activity all the members share ownidea. It is more productive for the reason that groups. Whenmembers generate idea it is more value able as of groupproduct and members enjoy the group activity.There is method for conducting brainstorming task.These are [7]: Explanation is given below.Subjects and designProcedureResultsDiscussionLevel of details describes existent of actor and objects.It depends upon the designer how to draw scene ordescribe only detail of interface. Inclusion of textIn storyboarding text could be including in design witheach section. It may be possible designer will not use text. Inclusion of people and emotionsDuring designing end users should be in mind. Designshould be according to end user that affects the user orstakeholders. Number of framesNumber of frames should be in mind mostly 1 to 20frames are included in each story. Each storyboard containsdifferent number of frames according to its requirement.Several features are containing in storyboards. Portrayal of timeTime passing is include in storyboarding or usedtransitions.It is not compulsory to manage brainstorming sessionsfor resolve major issues. The purpose of this technique isintroductory mission statement for specific problem.Advantage of this technique is encouraging open-mindedand free ideas or innovation on particular predefineproblem [6].2.4 StoryboardIn this technique user, customer and developers drawpicture of what they want to develop software. DrawIJSER 2016http://www.ijser.org

837INTERNATIONAL JOURNAL OF SCIENTIFIC & ENGINEERING RESEARCH VOLUME 7, ISSUE 9, SEPTEMBER-2016ISSN 2229-5518purpose or goal for interaction with the system withoutknowing about internal system. Here is format of use casedescription [11].Table 1: Template of Use CaseUse case No.GoalScope and levelPreconditionsSuccess end conditionFailed end conditionPrimary, secondaryactorsFigure 1: screen shots of non-functional interfaceTriggerThis figure is about user’s purchasing of differentfoods. User checks different items then add to chart aftersome time exclude some items then finally select someitems and place order [8].2.5 PrototypingGoal name in verb phaseLonger detail of goalstatementWhat system is going topresent, summaryWhat we expected isbefore nowSuccessful completionWhat will objective if goalabortedName of primary andsecondary actors and theirroleActivities upon the systemthat start use caseDescription of all over theuse caseIJSERPrototyping is more significance technique forgathering requirement. Through prototyping detailedrequirements can be gathered if preliminary requirementare already collected [9]. Prototyping is much effective forgathering relevant information from users; users providerelevant information and also provide feedback. Thistechnique is useful when users or stakeholders not awareabout technical terms in this way they deliver rightinformation and react on their requirement which isdevelop by designer or developers. Some times thistechnique is expensive in tenure of cost and time [6].Prototype can be flat diagrams. It helps us to prevent frommisperception.2.6 Use casesUse case analysis is a document that definesrelationship between actor and system. Arrangement ofactions a user uses a system to complete a procedure.Define how system will behave in particular situation. Usecase can be used to represent business functionality [10].An actor is used as interaction with system how todiscuss with system or its environment. Use case will besuccessful when its goal is satisfy. Use case description alsoinclude in use case analysis. Use case steps are written ineasy and understandable format of use case diagram.System is preserved such as black box, in which actorpresents as whom, what will be interact as system andDescriptionIn table 1 there is given a template of use casedescription. Actors who will interact with system, goal ofuse case description, precondition and if use case will notsuccessful then failure condition all these points arementioned in use case description.Diagram of use case can present with an actor, use caseand system boundary through which actor interact withuse case. Diagram of use case presented as:Use caseArrow for relationship betweenactor and system’s use caseSystem boundary (through whichactor will interact with use case)This is a way to present a scenario through diagram.These shapes are used in use case diagram.2.7 JAD (Joint Application Development)In this technique all stakeholders are include forsolution of problem or gathering information. With allparties decision can be made speedily. Main differencebetween JAD and brainstorming is that system havepreviously recognized before stakeholders take part. JADsession is well-maintained with define phases and role ofIJSER 2016http://www.ijser.org

838INTERNATIONAL JOURNAL OF SCIENTIFIC & ENGINEERING RESEARCH VOLUME 7, ISSUE 9, SEPTEMBER-2016ISSN 2229-5518actors. This type of technique is used for solve businessissues rather than technical issues [6].In JAD session a facilitator include for guideline ofsystem requirement and help out to users for resolveinterview, provide information and taking decisions [12]. Inearly JAD acronym was DESIGN, but now it become jointApplication Development. JAD has five stages and theiractivities; table of five stages is given below [13].Table 2: Five stages of JADJAD StagesProject Definition Background Research The Workshop Final DocumentationFig 2: Meeting room of JADIJSER Pre workshopPreparationActivitiesDefine system goal,objective.Identify JAD undknowledge of userrequirement.Known about generalissues that will discussin JAD session.Organize for session.Prepareallthedocuments and visualaids.Train the illuminator.Concludesolutionwithin three to fiveday session.Finalizedocumentmeeting decision.PrepareClosingdocument that containfinal decision attainedat through workshop. 3ISSUES IN REQUIREMENTS GATHERINGWhen talk about the requirement gathering orrequirement elicitation then there may be many issues togather data from users or stakeholders. Here will bedescribing some issues and solution of these issues [6].3.13.23.33.43.5ScopeCommunication and understandingQuality of requirementsStakeholdersPracticeDetail of issues and their solution are specified below.3.1 ScopeJAD is useful due to some reasons like non contributorare encouraged, dominance is reduced during session, sidediscussions are include and true conflicts are underconsideration in JAD session. Meeting room of JAD isdisplayed below in figure 2 [4].Big issue of requirement elicitation is scope. Sometimeuser or stakeholders are not familiar or know the scope ofproject. They can not specify the goal of their project. Whenscope issue occurs, then it creates issue to gatherinformation from users. Scope should be limited and clearlydefine. However, requirements can be gather correctlyaccording to user’s needs or according to nature of project.Scope is very essential for good software projectmanagement. It is seemed that some projects are veryworthy but due to limited scope these are not successful.3.2 Communication and understandingIn communication and understanding issue mostlyfaced end users. During communication with stakeholderssome issue may be language issue. Stakeholders may bepossible they do not know the language or it may possibleIJSER 2016http://www.ijser.org

839INTERNATIONAL JOURNAL OF SCIENTIFIC & ENGINEERING RESEARCH VOLUME 7, ISSUE 9, SEPTEMBER-2016ISSN 2229-5518they are not familiar with your condition and terms.Another issue with communication could be that, howevertheir language is different so their rules may be different.So they are not able to understand your terms and they arenot able to specify their own requirement.Communication issues have four dimensions of theframework. These dimensions show the performanceduring activity of requirement gathering. These are [14]: Stakeholder participant and selectionStakeholder interactionCommunication activitiesTechniques3.4 StakeholdersExplanations of these dimensions are given that canhelp to solve communication issue. Stakeholder participant and selectionFirst select stakeholders for gathering information.Selection should be on right bases and rig

software project management process there are some phases, first phase is requirement gathering. To get correct requirement and to handle it, is most important for complete project successfully. Requirement management used to ensure that product or software meets user’s need or expectations. Requirements are defined during planning phase and then these requirements are used throughout