DOC PREVIEW
MSU CSE 470 - 08a-Requirements1
Course Cse 470-
Pages 44

This preview shows page 1-2-3-21-22-23-42-43-44 out of 44 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 44 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Approaching a ProblemWhere Do We Start?How Do We Continue?How Do We Wrap Up?Putting It TogetherWaterfall ApproachFrequent Industrial ApproachSensible ApproachProcess OverviewRequirements AnalysisRequirements Elicitation ProcessRequirementsSlide 13Slide 14Analysis PrinciplesPerspective and Early Binding of ConstraintsEarly Focus on ConstraintsFocus ChangeReviewing a requirements documentWhy is requirements analysis difficult?Escalator System RequirementsSlide 22First Law of Software EngineeringReasons for changing requirementsRequirements ProductsOverview: Steps to FollowAnalysis: Steps to followUse CasesAnalysis: Object ModelSlide 30Slide 31Client View of DomainObject Model: Steps to followAnalysis: Dynamic modelDynamic Model: Steps to followAnalysis: IterationObject Model: Four main system objects or classesMeeting PurposesMeeting RequirementsProject Issue ListInterviewingClose-ended questionsOpen-ended questionsResponses08a-Requirements108a-Requirements111Approaching a ProblemApproaching a ProblemWhere do we start?How do we proceed?208a-Requirements1Where Do We Start?Where Do We Start?Start with the requirementsCapture your goals and possible constraintsEnvironmental assumptionsUse-case analysis to better understand your requirementsFind actors and a first round of use-casesStart conceptual modelingConceptual class diagramInteraction diagrams to clarify use-casesActivity diagrams to understand major processing308a-Requirements1How Do We Continue?How Do We Continue?Refine use-casesPossibly some “real” use-casesUsing interface mockupsRefine (or restructure) your class diagramBased on your hardware architectureFor instance, client serverRefine and expand your dynamic modelUntil you are comfortable that you understand the required behaviorIdentify most operations and attributes408a-Requirements1How Do We Wrap Up?How Do We Wrap Up?Refine the class diagram based on platform and language propertiesNavigability, public, private, etcClass librariesIdentify most operationsNot the trivial get, set, etc.Write a contract for each operationDefine a collection of invariants for each classImplement508a-Requirements1Putting It TogetherPutting It TogetherPrinciplesRigor and FormalitySeparation of ConcernsModularityAbstractionAnticipation of ChangeGeneralityIncrementalityNotion of Process608a-Requirements1Waterfall ApproachGatherRequirementsGatherRequirementsGenerateDesignGenerateDesignRequirementsDocumentsRequirementsDocumentsDesign DocumentsDesign DocumentsWrite CodeWrite CodeImplementationImplementationTestTestDomain languageModels, technical language708a-Requirements1Frequent Industrial ApproachGatherRequirementsGatherRequirementsGenerateDesignGenerateDesignRequirementsDocumentsRequirementsDocumentsDesign DocumentsDesign DocumentsWrite CodeWrite CodeImplementationImplementationTestTestPrototypesPrototypes808a-Requirements1Sensible ApproachGatherRequirementsGatherRequirementsGenerateDesignGenerateDesignRequirementsDocumentsRequirementsDocumentsDesign DocumentsDesign DocumentsWrite CodeWrite CodeImplementationImplementationTestTestPrototypesPrototypesiterate908a-Requirements1Process OverviewProcess OverviewInceptionElaborationConstructionMany iterationsTransitionInception ElaborationConstruction 1Construction 2Construction 3Construction nTransition08a-Requirements108a-Requirements11010Requirements AnalysisRequirements AnalysisDefining the WHAT1108a-Requirements1Requirements Elicitation ProcessSystemClient DomainClientClientProblemUsUsSRSSRS1208a-Requirements1RequirementsRequirementsSpecify functionalitymodel objects and resourcesmodel behaviorSpecify data interfacestype, quantity, frequency, reliabilityproviders, receiversoperational profile (expected scenarios)stress profile (worst case scenarios)1308a-Requirements1RequirementsRequirementsSpecify interfaces Control interfaces (APIs)User interfaces - functionality and styleHardware interfacesSpecify error handlingIdentify potential modifications1408a-Requirements1RequirementsRequirementsIdentify necessary constraintsperformance, security, reliabilityIdentify areas of riskalternatives to be exploredSpecify validation plansSpecify documentation to be provided1508a-Requirements1Analysis PrinciplesAnalysis PrinciplesDocument reason for specific requirementsPrioritize requirements High, medium, lowIgnore implementation detailsNeed to know feasible solutions can be developedIf feasibility is a concern, then propose alternatives to be exploredBe prepared to change1608a-Requirements1Perspective and Early Binding of ConstraintsAABCBCConnect like letters without crossing lines or leaving box.1708a-Requirements1Early Focus on ConstraintsA-A line seems to be only solutionBut, is it really?Need to examine domain and constraints more?What transforms or shifts would yield easier problem?AABCBCEarly choice, eliminates C,B1808a-Requirements1Focus ChangeFocus ChangeAABCBCThese choices stillleave a path betweenA’sAABCBCTransforms to:1908a-Requirements1Reviewing a requirements documentReviewing a requirements documentIs it ambiguous?Carefully define terms and use these termsIs it consistent?Is it complete?Vague requirementsOmitted requirementsIs it verifiable?Is it realistic?Does it plan for change?Does it not overly constrain the problem?Have alternatives been considered and explored?Is it clearly presented?Precise, concise, cleardiagram complex objects and behaviorsIs it what the customer wants?2008a-Requirements1Why is requirements analysis difficult?Why is requirements analysis difficult?Communication: misunderstandings between the customer and the analystAnalyst doesn’t understand the domainCustomer doesn’t understand alternatives and trade-offsProblem complexityInconsistencies in problem statementOmissions/incompleteness in problem statementInappropriate detail in problem statement2108a-Requirements1Escalator System RequirementsShoes Must Be WornShoes Must Be WornDogs Must Be CarriedDogs Must Be CarriedTwo Signs on Escalator: You must have on shoes, and you must be carrying a dog.You must have on shoes, and you must be carrying a dog.If you have a dog, you have to carry it, so you have to wear all the shoes you are carrying.If you have a dog, you have to carry it, so you


View Full Document

MSU CSE 470 - 08a-Requirements1

Course: Cse 470-
Pages: 44
Download 08a-Requirements1
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view 08a-Requirements1 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view 08a-Requirements1 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?