Slide 10C.52 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.

Slides:



Advertisements
Similar presentations
Ch 3: Unified Process CSCI 4320: Software Engineering.
Advertisements

Slide 2.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
CS 3500 SE - 1 Software Engineering: It’s Much More Than Programming! Sources: “Software Engineering: A Practitioner’s Approach - Fourth Edition” Pressman,
Slide 10.1 CHAPTER 10 REQUIREMENTS PHASE. Slide 10.2 Overview l Requirements elicitation l Requirements analysis l Rapid prototyping l Human factors l.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Slide 11.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition,
Slide 4.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 6C.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 6B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 11C.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 7D.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 8B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 9.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 1.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Slide 7B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 5A.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 8A.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 10.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach.
Slide 5D.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 7A.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 6A.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 19.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 11B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 17.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 7E.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Specification Report CSCI Requirements of Specification Report  Must be clear and intelligible to client  Must be complete and detailed to result.
Slide 12C.50 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005.
Case Study: Class Extraction.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
Slide 12E.121 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Objects What are Objects Observations
OBJECT-ORIENTED ANALYSIS PHASE
Slide 12.1 © The McGraw-Hill Companies, CS 4310: Software Engineering Lecture 7 Systems Analysis Object-Oriented Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 The requirements engineering process.
Slide 10A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005.
1 Analysis Extracting from Use Cases to Create Diagrams.
Lecture 14 & 15: Object- Oriented Analysis Anita S. Malik Adapted from Schach (2004) Chapter 12.
Slide 10.1 Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented and Classical Software Engineering Eighth Edition,
Slide 11C.104 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
CS540 Software Design Lecture 5 1 Lecture 5: High Level Requirements Specification Anita S. Malik Adapted from Schach (2004) Chapter.
Slide 13B.22 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
THE DESIGN WORKFLOW  Object-oriented design  The design workflow  The test workflow: Design  CASE tools for design  Challenges of the design workflow.
Ch 10: Requirements CSCI Requirements Workflow 1.Acquire basic understanding of the application domain (banking, automobile manufacturing) 2.Identify.
Slide 12A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide 13.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach.
THE ANALYSIS WORKFLOW  The specification document  Informal specifications  The analysis workflow  Extracting the entity classes  Functional modeling:
Slide 6D.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
Slide 12D.88 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Slide © The McGraw-Hill Companies, 2007 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Slide 10.1 Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Slide 12F.135 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2010 Stephen R. Schach
Slide 13A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R
Implementation workflow Implementation workflow
Figure 6.1 Entity Class Boundary Class Control Class.
We act as though comfort and luxury were the chief requirements of life, when all that we need to make us really happy is something to be enthusiastic.
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
Tools of Software Development
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process McGraw-Hill, 2004 Stephen R. Schach
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach
WALKTHROUGH and INSPECTION
Requirements Analysis Techniques
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
Presentation transcript:

Slide 10C.52 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach

Slide 10C.53 © The McGraw-Hill Companies, 2005 CHAPTER 10 — Unit C REQUIREMENTS

Slide 10C.54 © The McGraw-Hill Companies, 2005 Continued from Unit 10B

Slide 10C.55 © The McGraw-Hill Companies, Continuing the Requirements Workflow: The Osbert Oglesby Case Study l More details of each use case are needed now l First consider use cases  Buy a Painting, and  Sell a Painting l To refine the descriptions, determine what attributes need to be input when a painting is bought and when a painting is sold

Slide 10C.56 © The McGraw-Hill Companies, 2005 Attributes : The Osbert Oglesby Case Study l Attributes when buying a painting include:  Title of work, name of artist, date of painting, classification, medium, purchase price, name and address of seller  (The complete list of attributes appears in the textbook in Figure — see over) l Attributes when selling a painting are:  Date of sale, name of buyer, address of buyer, actual selling price

Slide 10C.57 © The McGraw-Hill Companies, 2005 Attributes : The Osbert Oglesby Case Study (contd) Figure 10.14

Slide 10C.58 © The McGraw-Hill Companies, 2005 Continuing the Requirements Workflow: The Osbert Oglesby Case Study l Now the algorithm for computing the maximum purchase price is considered l Classify the painting as a  Masterpiece  Masterwork, or  Other painting

Slide 10C.59 © The McGraw-Hill Companies, 2005 Maximum Price for a Masterpiece: The Osbert Oglesby Case Study l Scan worldwide auction records over the past 25 years for the most similar work by the same artist l Use the auction purchase price of the most similar work as the base price l The maximum purchase price is found by adding 8.5 percent to the base price, compounded annually, for each year since that auction

Slide 10C.60 © The McGraw-Hill Companies, 2005 Maximum Price for a Masterwork: The Osbert Oglesby Case Study l Compute the maximum purchase price as if the painting were a masterpiece by the same artist l If the picture was painted in the 21st century, multiply this figure by 0.25 l Otherwise, multiply it by (21 – c)/(22 – c), where c is the century in which the work was painted (12 < c < 21)

Slide 10C.61 © The McGraw-Hill Companies, 2005 Maximum Price for an Other Painting: The Osbert Oglesby Case Study l Measure the dimensions of the canvas l The maximum purchase price is then given by the formula F  A, where  F is a constant for that artist (fashionability coefficient), and  A is the area of the canvas in square centimeters l If there is no fashionability coefficient for that artist, Osbert will not buy the painting

Slide 10C.62 © The McGraw-Hill Companies, 2005 Coefficient of Similarity: The Osbert Oglesby Case Study l For a masterpiece or masterwork, the coefficient of similarity between two paintings is computed as follows:  Score 1 for a match on medium, otherwise 0  Score 1 for a match on subject, otherwise 0  Add these two numbers, multiply by the area of the smaller painting, and divide by the area of the larger  The resulting number is the coefficient of similarity

Slide 10C.63 © The McGraw-Hill Companies, 2005 Coefficient of Similarity: The Osbert Oglesby Case Study (contd) l If the coefficient of similarity between the painting under consideration and all the paintings in the file of auction data is zero, then Osbert will not buy that masterwork or masterpiece

Slide 10C.64 © The McGraw-Hill Companies, 2005 Fashionability Coefficients: The Osbert Oglesby Case Study l The software product must include a list of artists and their corresponding F values l The value of F can vary from month to month, depending on the current fashionability of an artist l Osbert determines the value of F on the basis of his knowledge and experience  He changes the value if prices for work by an artist increase or decrease

Slide 10C.65 © The McGraw-Hill Companies, 2005 Auction Data : The Osbert Oglesby Case Study l The software product must utilize information on worldwide auction sales of masterpieces over the past 25 years l Each month Osbert receives a CD with updated worldwide auction prices; these prices are never modified by Osbert

Slide 10C.66 © The McGraw-Hill Companies, 2005 Updated Use Cases: The Osbert Oglesby Case Study l The use-case descriptions must reflect this information The resulting description of the Buy a Painting use case is shown in Figure (see 9 slides back)

Slide 10C.67 © The McGraw-Hill Companies, 2005 Updated Use Cases: The Osbert Oglesby Case Study The description of the Sell a Painting use case: Figure 10.15

Slide 10C.68 © The McGraw-Hill Companies, 2005 Reports: The Osbert Oglesby Case Study l There are three reports:  Purchases during the past year  Sales during the past year  Detection of new trends l Sample reports show Osbert’s needs are as follows (question marks in the first or last name of artist, or in the title or date of the work are to be included in all reports):

Slide 10C.69 © The McGraw-Hill Companies, 2005 Report of Purchases during the Past Year: The Osbert Oglesby Case Study l A report is needed to display all the paintings purchased during the past year  The average ratio of the purchase price to the suggested maximum price is required at the end of the report Figure 10.16

Slide 10C.70 © The McGraw-Hill Companies, 2005 Report of Sales during the Past Year: The Osbert Oglesby Case Study l A report is needed to display all the paintings sold during the past year  The average ratio of the actual selling price to the target selling price is required at the end of the report Figure 10.17

Slide 10C.71 © The McGraw-Hill Companies, 2005 Report of Trends during the Past Year: The Osbert Oglesby Case Study l A report showing artists whose works Osbert has sold at a price that has exceeded the target selling price in every instance during the past year  To appear in this report, at least two of the artist’s works must have been sold by Osbert during that period Figure 10.18

Slide 10C.72 © The McGraw-Hill Companies, 2005 Updated Use Cases: The Osbert Oglesby Case Study The updated description of the Produce a Report use case, incorporating the details listed earlier, appears in Figure (see over)

Slide 10C.73 © The McGraw-Hill Companies, 2005 Updated Use Cases: The Osbert Oglesby Case Study (contd) Figure 10.19

Slide 10C.74 © The McGraw-Hill Companies, The Test Workflow: The Osbert Oglesby Case Study l There is a serious omission  The use case for updating a fashionability coefficient has been overlooked Missing use case Update a Fashionability Coefficient Figure 10.20

Slide 10C.75 © The McGraw-Hill Companies, 2005 The Test Workflow: The Osbert Oglesby Case Study (contd) The description of the use case Update a Fashionability Coefficient Figure 10.21

Slide 10C.76 © The McGraw-Hill Companies, 2005 Second Iteration of the Use-Case Diagram: The Osbert Oglesby Case Study l Incorporate all four use cases Figure 10.22

Slide 10C.77 © The McGraw-Hill Companies, 2005 The Test Workflow: The Osbert Oglesby Case Study (contd) l A fault was detected  There was a missing use case  The existing artifacts did not need to be changed l Two additional artifacts had to be added  A use case, and  Its description

Slide 10C.78 © The McGraw-Hill Companies, 2005 The Test Workflow: The Osbert Oglesby Case Study (contd) l The Unified Process is iterative and incremental  Members of the development team must always be aware that changes and extensions to the current version of the software product may have to made at any time

Slide 10C.79 © The McGraw-Hill Companies, The Classical Requirements Phase l There is no such thing as “object-oriented requirements”  The requirements workflow has nothing to do with how the product is to be built l However, the approach presented in this chapter is  Model oriented, and therefore  Object oriented

Slide 10C.80 © The McGraw-Hill Companies, 2005 The Classical Requirements Phase (contd) l The classical approach to requirements  Requirements elicitation  Requirements analysis  Construction of a rapid prototype  Client and future users experiment with the rapid prototype

Slide 10C.81 © The McGraw-Hill Companies, Rapid Prototyping l Hastily built (“rapid”)  Imperfections can be ignored l Exhibits only key functionality l Emphasis on only what the client sees  Error checking, file updating can be ignored l Aim:  To provide the client with an understanding of the product

Slide 10C.82 © The McGraw-Hill Companies, 2005 Rapid Prototyping (contd) l A rapid prototype is built for change  Languages for rapid prototyping include 4GLs and interpreted languages

Slide 10C.83 © The McGraw-Hill Companies, Human Factors l The client and intended users must interact with the user interface l Human-computer interface (HCI)  Menu, not command line  “Point and click”  Windows, icons, pull-down menus

Slide 10C.84 © The McGraw-Hill Companies, 2005 Human Factors (contd) l Human factors must be taken into account  Avoid a lengthy sequence of menus  Allow the expertise level of an interface to be modified  Uniformity of appearance is important  Advanced psychology vs. common sense? l Rapid prototype of the HCI of every product is obligatory

Slide 10C.85 © The McGraw-Hill Companies, Reusing the Rapid Prototype l Reusing a rapid prototype is essentially code-and- fix l Changes are made to a working product  Expensive l Maintenance is hard without specification and design documents l Real-time constraints are hard to meet

Slide 10C.86 © The McGraw-Hill Companies, 2005 Reusing the Rapid Prototype (contd) l One way to ensure that the rapid prototype is discarded  Implement it in a different language from that of the target product l Generated code can be reused l We can safely retain (parts of) a rapid prototype if  This is prearranged  Those parts pass SQA inspections  However, this is not “classical” rapid prototyping

Slide 10C.87 © The McGraw-Hill Companies, CASE Tools for the Requirements Workflow l We need graphical tools for UML diagrams  To make it easy to change UML diagrams  The documentation is stored in the tool and therefore is always available l Such tools are sometimes hard to use l The diagrams may need considerable “tweaking” l Overall, the strengths outweigh the weaknesses

Slide 10C.88 © The McGraw-Hill Companies, 2005 CASE Tools for the Requirements Workflow (contd) l Graphical CASE environments extended to support UML include  System Architect  Software through Pictures l Object-oriented CASE environments include  Rose  Together  ArgoUML (open source)

Slide 10C.89 © The McGraw-Hill Companies, Metrics for the Requirements Workflow l Volatility and speed of convergence are measures of how rapidly the client’s needs are determined

Slide 10C.90 © The McGraw-Hill Companies, 2005 Metrics for the Requirements Workflow (contd) l The number of changes made during subsequent phases l Changes initiated by the developers  Too many changes can mean the process is flawed l Changes initiated by the client  Moving target problem

Slide 10C.91 © The McGraw-Hill Companies, Challenges of the Requirements Phase l Employees of the client organization often feel threatened by computerization l The requirements team members must be able to negotiate  The client’s needs may have to be scaled down l Key employees of the client organization may not have the time for essential in-depth discussions l Flexibility and objectivity are essential