Unformatted text preview:

Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach [email protected] 11OverviewOverview (contd)Specification PhaseSpecification DocumentSpecification Document (contd)Solution StrategyInformal SpecificationsMeaning of SpecificationBut Specifications Do Not Say ThisInformal Specifications (contd)Episode 1Episode 2Episode 3Episode 4Case Study (contd)Episode 5Slide 19Structured Systems AnalysisStructured Systems Analysis Case StudySlide 22Slide 23Slide 24Step 1. Draw the DFDStep 1 (contd)Slide 27Slide 28Step 2. Decide What Parts to ComputerizeStep 3. Refine Data FlowsStep 3. Refine Data Flows (contd)Step 4. Refine Logic of ProcessesStep 4 (contd)Step 5. Refine Data StoresStep 6. Define Physical ResourcesStep 7. Determine Input/Output SpecsStep 8. Perform SizingStep 9. Hardware RequirementsHoweverEntity-Relationship DiagramsEntity-Relationship Diagrams (contd)Formality versus InformalityFinite State MachinesFinite State Machines (contd)Extended Finite State MachinesElevator ProblemElevator Problem: FSMElevator Buttons (contd)Slide 49Floor ButtonsFloor Buttons (contd)Elevator Problem: FSM (contd)Slide 53Slide 54Slide 55Power of FSM to Specify Complex SystemsSlide 57Who Is Using FSMs?Petri NetsPetri Nets (contd)Slide 61Slide 62Slide 63Slide 64Slide 65Slide 66Slide 67Slide 68Elevator Problem: Petri NetElevator Problem: Petri Net (contd)Slide 71Slide 72Slide 73Slide 74Elevator Problem: Petri Net (contd)Slide 76Slide 77Slide 78Z (“zed”)Elevator Problem: ZElevator Problem: Z (contd)Slide 82Slide 83Slide 84Slide 85Slide 86Analysis of ZAnalysis of Z (contd)Other Formal MethodsComparison of Specification TechniquesComparison of Specification Techniques (contd)Newer MethodsWhich Specification Method to Use?Testing during the Specification PhaseCASE Tools for the Specification PhaseSlide 96Metrics for the Specification PhaseAir Gourmet Case Study: Structured Sys. Anal.Air Gourmet Case Study: SPMPChallenges of the Specification PhaseSlide 11.1© The McGraw-Hill Companies, 2002Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002Stephen R. [email protected] 11.2© The McGraw-Hill Companies, 2002CHAPTER 11SPECIFICATION PHASESlide 11.3© The McGraw-Hill Companies, 2002OverviewThe specification documentInformal specificationsStructured systems analysisOther semiformal techniquesEntity-relationship modelingFinite state machinesPetri netsOther formal techniquesSlide 11.4© The McGraw-Hill Companies, 2002Overview (contd)Comparison of specification techniquesTesting during the specification phaseCASE tools for the specification phaseMetrics for the specification phaseAir Gourmet Case Study: structured systems analysisAir Gourmet Case Study: software project management planChallenges of the specifications phaseSlide 11.5© The McGraw-Hill Companies, 2002Specification PhaseSpecification document must be –Informal enough for client–Formal enough for developers–Free of omissions, contradictions, ambiguitiesSlide 11.6© The McGraw-Hill Companies, 2002Specification DocumentConstraints–Cost–Time–Parallel running –Portability–Reliability–Rapid response timeSlide 11.7© The McGraw-Hill Companies, 2002Specification Document (contd)Acceptance criteria–Vital to spell out series of tests–Product passes tests, deemed to satisfy specifications–Some are restatements of constraintsSlide 11.8© The McGraw-Hill Companies, 2002Solution StrategyGeneral approach to building the product Find strategies without worrying about constraints Modify strategies in the light of constraints, if necessary Keep a written record of all discarded strategies, and why they were discarded–To protect the specification team –To prevent unwise new “solutions” during the maintenance phaseSlide 11.9© The McGraw-Hill Companies, 2002Informal SpecificationsExample“If sales for current month are below target sales, then report is to be printed, unless difference between target sales and actual sales is less than half of difference between target sales and actual sales in previous month, or if difference between target sales and actual sales for the current month is under 5%”Slide 11.10© The McGraw-Hill Companies, 2002Meaning of SpecificationSales target for January was $100,000, actual sales were only $64,000 (36% below target)–Print reportSales target for February was $120,000, actual sales were only $100,000 (16.7% below target)–Percentage difference for February (16.7%) less than half of previous month’s percentage difference (36%), do not print report Sales target for March was $100,000, actual sales were $98,000 (2% below target)–Percentage difference < 5%, do not printSlide 11.11© The McGraw-Hill Companies, 2002But Specifications Do Not Say This“[D]ifference between target sales and actual sales”–There is no mention of percentage differenceDifference in January was $36,000, difference in February was $20,000–Not less than half of $36,000, so report is printed“[D]ifference … [of] 5%” –Again, no mention of percentageAmbiguity—should the last clause read “percentage difference … [of] 5%” or “difference … [of] $5,000” or something else entirely?Style is poorSlide 11.12© The McGraw-Hill Companies, 2002Informal Specifications (contd)Claim–This cannot arise with professional specifications writersRefutation–Text Processing case studySlide 11.13© The McGraw-Hill Companies, 2002Episode 11969 — Naur PaperGiven a text consisting of words separated by blank or by nl (new line) characters, convert it to line-by-line form in accordance with following rules:(1) line breaks must be made only where given text has blank or nl ;(2) each line is filled as far as possible, as long as(3) no line will contain more than maxpos charactersNaur constructed a procedure (25 lines of Algol 60), and informally proved its correctnessSlide 11.14© The McGraw-Hill Companies, 2002Episode 2 1970 — Reviewer in Computing Reviews–First word of first line is preceded by a blank unless the first word is exactly maxpos characters longSlide 11.15© The McGraw-Hill Companies, 2002Episode 31971 — London found 3 more faults–Including: procedure does not terminate unless a word longer than maxpos characters is encounteredSlide 11.16© The McGraw-Hill Companies,


View Full Document

STAN STATE CS 4800 - SPECIFICATION PHASE

Download SPECIFICATION PHASE
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 SPECIFICATION PHASE 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 SPECIFICATION PHASE 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?