Risk Orientation
risk management is at the heart of the analysis process
what are the greatest risks?
integration issues / legacy systems
expected vs. actual system quality
how to mitigate risks?
prototyping (avoid IKIWISI)
show changes to customer iteratively
integrate existing systems sooner than later
28 trang |
Chia sẻ: dntpro1256 | Lượt xem: 752 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Requirement Engineering, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Requirement Engineering Basharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.1Summary of the previous lectureBasharat Mahmood, COMSATS Institute of Information Technology, Islamabad, Pakistan.2Project managementResponsibilities/tasks of a Project managerPlanningRisk management People managementReportingProposal writingTraditional vs. web project managementOutlineIntroduction to RERE basicsRequirements specificationRE processRE specifics in web engineering1. Requirement EngineeringRequirements Engineering: the principles, methods, & tools for drawing, describing, validating, and managing project goals and needsGiven the complexity of Web apps, RE is a critical initial stage activity, but often poorly executedBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.41. Requirement EngineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.5Costs: Inadequate software architectures“Unforeseen” problemsbudget overrunsproduction delays“that’s not what I asked for”Low user acceptance1. Requirement EngineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.6Why requirement engineering:requirements don’t define themselves (Bell & Thayer, 1976) removal of mistakes post hoc is up to 200 times more costly (Boehm, 1981) iterative collection and refinement is the most important function of a software engineer (Brooks, 1987)1. Requirement EngineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.7Why requirement engineering:A study based on 340 companies in Austria, more than two thirds consider the SRS as the major problem in development process (1995)A study on Web applications, 16% systems fully meet their requirement while 53% deployed systems do not (Cutter Consortium, 2000) 1. Requirement EngineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.8Why requirement engineering:A study among 8000 projects, 30% of projects fail before completion & almost half do not meet customer requirements (Standish group, 1994)Unclear objectives, unrealistic schedules & expectations, poor user participation2. RE basicsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.9Identify and involve the stakeholdersthose that directly influence the requirementscustomers, users, developersWhat are their expectations?may be misaligned or in conflictmay be too narrowly focused or unrealistic2. RE basicsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.10What is requirement?The descriptions of what the system should doservices that it provides and the constraints on its operationIEEE 601.12 definition of requirement:1) Solves a user’s problem2) Must be met or possessed by the system to satisfy a formal agreement3) Documented representation of conditions in 1 and 22. RE basicsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.11Requirements typesFunctional requirements:statement of serviceshow system reacts to inputhow system behaves in particular situationNon-functional requirements:constraints on services (timing, quality etc.)applies as a whole2. RE basicsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.12Requirements are collected iteratively and change Keys to requirement definition:NegotiationScenario-based discoveryClear definition of context and constraints3. Requirements specificationsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.13process of writing down the user and system requirements in a requirements documentUser requirements (for users)should be understand able to usersavoid notations, use simple tables, forms etc.System requirements (for Software engineers)starting point for the system designhow system provides the services3. Requirements specificationsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.14Natural language specification:Stories or itemized requirementscreate a standard formatdistinguish between mandatory and desirable requirementsdon’t use the technical wordsassociate rationale with each requirement3. Requirements specificationsBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.15Structured specification:Includesdescriptioninputs/outputsdescription of the actionpre conditionpost condition4. RE processElicitation & NegotiationManagementDocumentationValidation &Verification4. RE processBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.17Elicitation and negotiation:RE engineer involve the stakeholder to defineapplication domainservicesconstraintsSteps:requirement discoveryInterviewing, scenarios, questionnaires, use-cases etc.classification and organizationprioritization and negotiation4. RE processBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.18Documentation:requirements are documented after consensusRequirement verification and validation:validated: doing right things?verification: doing things right?4. RE processBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.19Requirements management:understanding and controlling changesproblem analysis and change specificationchange analysis and costingchange implementation5. RE specifics in web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.20Distinguishing characteristics:Multidisciplinary:experts from different disciplines i.e. media experts, content experts, usability experts etc.challenging to achieve consensusUnavailability of stakeholders:many stakeholders such as users are unknown during RE processneed to find suitable representatives5. RE specifics in web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.21Distinguishing characteristics:Rapidly changing requirements & constraints:environment is highly dynamicharder to stabilize requirementsUnpredictable operational environment:impossible to control the operation environmentaffects the quality requirementschange of bandwidth can change response time5. RE specifics in web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.22Distinguishing characteristics:Legacy Systems:constrained by existing systemexisting components drive the possibilitiesQuality aspects:are decisive i.e. performance, security, availabilityharder to get exact specification5. RE specifics in web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.23Distinguishing characteristics:User interface:key success-critical aspectshould be aware of IKIWISIQuality of content:accuracy, objectivity, credibility, relevance, actuality, completeness, or clarity5.1 RE principles for web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.24Understanding the system contextweb apps are always a component of a larger entitywhy do we need the system?how will people use it?Involving the stakeholdersget all groups involvedbalance – one group’s gain should not come at the expense of anotherrepeat the process of identifying, understanding and negotiating5.1 RE principles for web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.25Iteratively define requirementsrequirements need to be consistent with other system aspects (UI, content, test cases)start with key requirements at a high level; basis for:feasible architectureskey system use casesinitial plans for the project5.1 RE principles for web engineeringBasharat Mahmood, Department of Computer Science, CIIT, Islamabad, Pakistan.26Risk Orientationrisk management is at the heart of the analysis processwhat are the greatest risks?integration issues / legacy systemsexpected vs. actual system qualityhow to mitigate risks?prototyping (avoid IKIWISI)show changes to customer iterativelyintegrate existing systems sooner than laterSUMMARYIntroduction to RERE basicsRequirements specificationRE processRE specifics in web engineeringReferencesChapter 2, Kappel, G., Proll, B. Reich, S. & Retschitzegger, W. (2006). Web Engineering, Hoboken, NJ: Wiley & SonsChapter 4, Sommerville, Software Engineering, ISBN-10: 0-13-703515-2 , PEARSON Basharat Mahmood, COMSATS Institute of Information Technology, Islamabad, Pakistan.28
Các file đính kèm theo tài liệu này:
- lec_4_requirement_engineering_6013_2026952.pptx