SAD10e Ch06 Solutions To Exercises
SAD10e Ch06 Solutions To Exercises
Chapter Exercises s
Questions
1. What is object-oriented analysis, and what are some advantages of this method?
Object-oriented analysis is a popular approach that sees a system from the viewpoint of the
objects themselves as they function and interact with the system during the implementation
phase of the SDLC. Systems analysts and programmers transform the objects into program
code modules. A modular approach saves money and time, because the modules can be
optimized, tested, and reused as often as necessary. (Page 230)
7. Define a class, subclass, and superclass, and provide three examples of each.
A class is a group of similar objects. Subclasses are more specific categories within a class.
A superclass is a more general category into which a class falls. For example, a NOVEL
class belongs to a superclass called BOOK, because all novels are books. The NOVEL class
can have subclasses called HARDCOVER and PAPERBACK. Students be able to suggest
many more examples of this concept. (Pages 236 - 237)
9. Define a use case and a use case diagram, and prepare a sample of each.
A use case represents the steps in a specific business function or process. A use case
diagram is a visual summary of related use cases within a system or subsystem. One
example is an auto service department. The operation involves customers, service writers
who prepare work orders and invoices, and mechanics who perform the work.
Example of a use case diagram for an auto service department: (Page 239; 241)
Systems Analysis and Design, Tenth Edition Page 3 of 42
10. Define the term black box, and explain why it is an important concept in object-oriented
analysis. Can you think of other black boxes that you use in everyday life?
An object can be viewed as a black box, because a message to the object triggers changes
within the object without specifying how the changes must be carried out. One advantage to
using a black box approach is that you do not need to think about how the object performs a
task, as long as it does so properly. (Page 235)
Discussion Topics
1. The chapter mentioned that systems analysts and programmers transform objects into
program code modules that can be optimized, tested, and reused. Modular design is a very
popular design concept in many industries. What other examples of modular design can you
suggest?
Examples might include the following: Car manufacturers that offer options that customers
can add or remove when they custom-order a vehicle; or computer vendors that allow
customers to pick and choose hardware and software options to build a customized
computer system.
2. You are an IT consultant, and you are asked to create a new system for a small real estate
brokerage firm. Your only experience is with traditional data and process modeling
techniques. This time, you decide to try an object-oriented approach. How will you begin?
How are the tasks different from traditional structured analysis?
After the initial research is completed, you would identify all possible actors and objects
and determine how they will interact with one another. Because this method integrates data
and processes into objects, it differs from structured analysis, which treats data and
processes as two separate concepts.
3. You are creating a system for a bowling alley to manage information about its leagues.
During the modeling process, you create a state transition diagram for an object called
LEAGUE BOWLERS. What are the possible states of a league bowler, and what happens to
a bowler who quits the league and rejoins the following season?
The possible states of a league bowler might include: Potential (signed up but has not been
sanctioned), Active (signed up, sanction fees paid), Suspended (Delinquent in dues), Former
(quit league or delinquent beyond reasonable limit).
4. A debate is raging at the IT consulting firm where you work. Some staff members believe
that it is harder for experienced analysts to learn object-modeling techniques, because the
analysts are accustomed to thinking about data and processes as separate entities. Others
believe that solid analytical skills are easily transferable and do not see a problem in
crossing over to the newer approach. What do you think, and why?
Some experienced analysts find it difficult to change their way of thinking; others grasp the
object-oriented approach easily. Many analysts recognize the current trend toward object-
oriented analysis and design, but differ in their views about the value of object-oriented
methodology.
Projects
1. Search the Internet for information about the history and development of UML.
Students should have no difficulty locating this information. A recent search using the
phrase “History of UML” produced many results, several of which are shown in the
following screen:
Systems Analysis and Design, Tenth Edition Page 4 of 42
2. Contact the IT staff at your school or at a local business to learn whether the organization
uses object-oriented programming languages. If so, determine what languages and versions
are used and why they were selected.
The results should be interesting. Many organizations use Visual Basic, C++, and Java. If
students cannot determine whether object-oriented languages are used, you might suggest
that they perform some research on the Internet to learn more about the growth and
popularity of various programming languages.
3. Search the Internet for information about groups and organizations that support and discuss
object-oriented methods and issues.
As in Project 1, students should have little difficulty in locating information by using
standard search techniques.
4. Search the Internet for information about CASE tools that provide UML support.
In Google and many other search engines, it is possible to base a search on more than one
phrase, or a phrase and one or more additional terms. For example, the following screen
shows the results of a Google search on the combined search terms "CASE Tools" and
“UML support”.
Systems Analysis and Design, Tenth Edition Page 5 of 42
Systems Analysis and Design, Tenth Edition Page 6 of 42
Tasks
1. Identify possible actors and use cases involved in Osceola’s business functions.
Answers will vary; sample answers provide a model for students.
Actors might include Customer, Mechanics, and Delivery Drivers. Use cases might include
Buy Parts, Manage Parts Inventory, Test Customers Cars, and Deliver Parts. Sample
documentation for the Buy Parts use case is shown in the following table.
Buy Part
CUSTOMER
STORE
ASSOCIATE
Adjusts
Inventory
Changes
Min/Max
Levels
Manage Part
Inventory
Systems Analysis and Design, Tenth Edition Page 8 of 42
Requests
Store Associate parts Customer
Receive delivery
0..* Request other services
0..*
Sells Part 1..* Changes
min/max
levels
1 Adjusts 1..*
Part ID Part ID
Invoice Number Part Model
Date Quantity in stock
Number purchased Minimum level
Amount due Maximum level
Payment method
Adjust minimum
Adjust maximum
Adjust Part inventory Report stock value
Apply adjustment
Systems Analysis and Design, Tenth Edition Page 9 of 42
Request Part
Check Availability
Notify
STUDENT
Pay
Handle
Transaction
Decrease
Inventory
X
Systems Analysis and Design, Tenth Edition Page 10 of 42
Tasks
1. Identify possible actors and use cases involved in ATA’s bus operations.
Answers will vary; sample answers provide a model for students.
Actors might include Applicant, Dispatcher, Driver, and Passenger. Use cases might
include Add Driver, and Add Route. A sample use case diagram for the Add Driver use case
follows:
Add Driver
Applicant Updates Dispatcher
Driver Data
Assigns
Driver
Assign Route
Systems Analysis and Design, Tenth Edition Page 11 of 42
Get Hired
Notify
Assign Driver
4. Create a state transition diagram that describes typical passenger states and how they change
based on specific actions and events.
A sample state transition diagram for the Add Driver use case follows:
Gets Fired
Cleared to
Return
Fired
Accident or
Ticket Suspended
Systems Analysis and Design, Tenth Edition Page 12 of 42
Tasks
1. List possible objects in the registration system, including their attributes and methods.
Answers will vary; sample answers provide a model for students.
Objects might include Student, Instructor, Course, Schedule, and Registration Record,
shown as follows:
Adds Course
Checks
Receives Course
Fee Register for Availability
Pays Statement
Course
Registrar
Student Confirms
Receives
Payment
Process
Payment
Cashier
4. Create a state transition diagram that describes typical student states and how they change
based on specific actions and events.
A sample state transition diagram for Student states might appear as follows:
Drops Out
Probation
Removed
Disenrolled
Academic
Probation Suspended
Systems Analysis and Design, Tenth Edition Page 14 of 42
Tasks
1. List possible objects in the library operation, including their attributes and methods.
Objects might include Student, Instructor, book Order, and Catalog Inventory Item, which
are shown as follows:
Request
book Approve
book
Order Submit Order
Notify
Receive
Add to
Catalog
X
Systems Analysis and Design, Tenth Edition Page 16 of 42
4. Create an object relationship diagram that provides an overview of the system, including
how books are requested by faculty and checked out to students.
A sample object-relationship diagram might appear as follows:
Faculty
Requests
Book
Notifies
Checks Out
Adds Book
Student
Book Order
Checks Out
Adds To
Catalog Item
Systems Analysis and Design, Tenth Edition Page 17 of 42
Case Studies
Each chapter includes a Chapter Case, a Continuing Case, a Capstone Case, and an Online
Case Simulation. You can learn more about the Online Case Simulation in the MIS CourseMate
Features section.
Background
Campus Bikes sells several brands of new bikes, including everything from high-end racing
models to beach cruisers. In addition to sales of new bikes and accessories, Mark’s service
department is always busy. The staff includes Mark himself, a bookkeeper, two part-time sales
reps, a full-time mechanic, and several part-time service helpers who assemble bikes.
Before opening the shop three years ago, Mark worked for many years in his father’s auto
dealership, Turner Motors, and he learned all about the automobile business. In the bike shop, he
runs a similar operation, but on a much smaller scale. For example, sales orders are recorded on
pre-printed forms, and service requests are written up just as they would be in an auto service
department.
Mark’s customers find him fair and reasonable. He likes to say that the main difference
between his business and a big-box retailer is that he knows his customers and will do whatever it
takes to keep them happy.
You work at the college as a lab assistant in the computer information department. You earned
a computer science degree at a two-year school, and you recently decided to work toward your
four-degree. The computer lab manager, Jill, often suggests that local businesses contact you for
help in troubleshooting IT issues.
This morning, you received a call from Mark, who wants to hire you as a consultant to help
plan a system for Campus Bikes. You learned that Jill had referred him, and you are excited to
have this opportunity. It probably didn’t hurt that both you and Jill had bought bikes from Mark,
and already knew him. After spending several weekends talking with Mark and the staff, you are
ready to start. You decide to use an object-oriented approach that will be easy to understand.
Tasks
1. List possible objects in the new bike shop system, including their attributes and methods.
Objects might include mechanic, sales rep, service help, and bookkeeper. Inventory objects
could include bikes and parts.
3. Create a use case diagram that shows how service requests are handled.
Figure 6-27 on page 242 shows an excellent example of a service department at an auto
dealership. With a little imagination, students can modify this use case diagram to reflect
Mark’s operation.
4. Create a state transition diagram that describes typical customer states and how they change
based on specific actions and events.
A sample state transition diagram for Customer states might appear as follows:
Prospective
customer
Customer
visits Mark’s
makes a
site or store
purchase
Prospective Current
New order
No sales
activity in
three years
Inactive
Systems Analysis and Design, Tenth Edition Page 19 of 42
Background
Working as an IT consultant for Personal Trainer, Susan Park used data and process modeling
tools to create a logical model of the proposed information system. Now she wants to build an
object-oriented view of the system using O-O tools and techniques. Before you perform the
following tasks, you should review the information and background in Chapters 1 and 2, and the
fact-finding summary of the case provided in Chapter 4.
Tasks
1. Identify possible actors and use cases involved in Personal Trainer’s operations.
Possible actors might include Member, Instructor, Staff, and Manager. Use cases might
include Add Member, Cancel Membership, Member Purchase, Track Usage, and Bill
Member. Sample documentation for the Bill Member use case follows:
2. Create an object relationship diagram for the Personal Trainer information system.
A sample object relationship diagram follows:
Systems Analysis and Design, Tenth Edition Page 22 of 42
Makes
Purchase Member
Purchase Records Purchase
Updates
Updates Staff
Member
Notifies
Monitors
Bill Member
Manager
Track Usage
4. Select one of the use cases and create a state transition diagram.
A sample state transition diagram for member states follows:
Accepts
Membership Cancels Membership
Active Former
Member Member
Prospective
Member
Declines Potential
Membership Member
Systems Analysis and Design, Tenth Edition Page 23 of 42
Tasks
1. Identify possible actors and use cases involved in Personal Trainer’s operations.
Possible actors might include Member, Instructor, Staff, and Manager. Use cases might
include Add Member, Cancel Membership, Member Purchase, Track Usage, and Bill
Member.
2. Create an object relationship diagram for the Personal Trainer information system.
A sample object relationship diagram follows:
Fitness Center
Employee
Is a
Assists
Registration Member
Staff Member Manager
Services
Staff
Makes
Records
Records Monitors
Monthly
Registrations Adds To
Statement
and Purchases
Usage
Notifies
Systems Analysis and Design, Tenth Edition Page 24 of 42
Makes
Purchase Member
Purchase Records Purchase
Updates
Updates Staff
Member
Notifies
Monitors
Bill Member
Manager
Track Usage
4. Select one of the use cases and create a state transition diagram.
A sample state transition diagram for member states follows:
Declines Non-
Membership Member
Tasks
1. Identify possible use cases and actors, and create a use case diagram for the New Century
Wellness Group system.
Use cases might include Establish New Patient, Make or Change Appointment, Remind
Patient, Provide Service, Bill Patient, Handle Insurance Claim, and Update Records.
Actors might include Patient, Provider, Medical Staff, and Office Staff.
A sample diagram for the Make or Change Appointment use case follows:
Sample documentation for the Make or Change Appointment use case follows:
Alternative: None
Pre-Condition: Patient has scheduled appointment during the following week
Post- Patient receives reminder postcard and reminder calls
Condition:
Assumptions: Patient has valid mailing address and phone number
Sample documentation for the Establish New Patient use case follows:
Name: Establish New Patient
Actor: Patient/Office Staff
Description: Describes the process used to set up new patient records
Successful 1. Office staff provides patient with medical history and insurance billing forms
Completion: 2. Patient returns completed forms
3. Office staff creates a patient file
4. Office staff adds patient to current list
Alternative: 1. Office staff provides patient with medical history and insurance billing forms
2. Patient does not complete forms
3. No file is created
Alternative: None
Pre-Condition: Patient has provided evidence of coverage and policy number
Post- Claim submitted with identification number
Condition:
Assumptions: Patient has insurance
Systems Analysis and Design, Tenth Edition Page 27 of 42
A sample use case diagram for Make or Change Appointments and Remind Patient follows:
Requests
Appointment
Checks Appointment
Confirms Availability
Make or Change
Appointment
Patient Office Staff
Initiates Reminder
Notifies
Remind Patient
Systems Analysis and Design, Tenth Edition Page 28 of 42
A sample use case diagram for Establish New Patient and Update Patient Records follows:
Establish
New Patient
Patient Changes
Updates Existing Provides
Medical
Information
Update Records
Medical Staff
A sample use case diagram for Bill Patient and Submit Insurance Claim follows:
Request
Submits Bill
Bill Office Staff
Patient Patient
Updates
Requests
Files Claim
Requests
Office Staff Appointment Patient
Name
Name Address
Position 0..* 0..*
Phone
DOB
Sex
Schedule Appointment SSN
Confirm Appointment Insurance
Remind
Change Appointment Make New
Check Availability 0..* Appointment
Change Appointment
1..*
Appointment Medical Staff
Patient Name Name
Provider Name Position
Appointment Date Hours
Appointment Time
0..* 0..*
Type of Appointment Notifies
Clear Schedule
Block Dates
Add
Delete
Verify
Print
Systems Analysis and Design, Tenth Edition Page 30 of 42
3. Create a sequence diagram for the use case that you selected.
A sample sequence diagram for the Make or Change Appointment and Remind Patient use
case follows:
Requests
Appointment Check Availability
Offers Available
Schedules Notifies
Selects
Request Reminder
Reminds
x
A sample sequence diagram for the Bill Patient and Submit Insurance Claim use case
follows:
Response
Bill Patient
Payment
Systems Analysis and Design, Tenth Edition Page 31 of 42
4. Create a state transition diagram that describes typical patient states and how they change
based on specific actions and events.
Sample Patient State Transition Diagram:
Patient chooses
another practice
Patient completes
treatment
Systems Analysis and Design, Tenth Edition Page 32 of 42
Tasks
1. List possible objects in the new business, including their attributes and methods, and create a
use case diagram that shows how an on-site service request would be handled.
Some possible objects, attributes, and methods might include:
Customer
Scheduler
Determine Schedule
Requests
Service
Receives
Auto Dealer Receives Schedule
Roster
Trains
Evaluates
ins Performs
Tasks Employee
2. Create a sequence diagram that models the on-site service request mentioned in Task 1.
A sample sequence diagram for the Make or Change Appointment and Remind Patient use
case follows:
Creates
Pays for Service Performs Tasks
x
Systems Analysis and Design, Tenth Edition Page 35 of 42
Tasks
1. I need to review Jesse’s e-mail message regarding object modeling and the JAD session
summary. I need to identify possible use cases and actors, and create a use case diagram for
the TIMS system.
Possible use cases might include Student Payment, Register, Request Course, Teach Course,
Determine Schedule, and Maintain Training Records. Possible actors might include
Student, Instructor, Training Administrator, and Corporate Client. A sample use case
diagram for Determine Schedule, Register, and Prepare Training Report follows:
Systems Analysis and Design, Tenth Edition Page 36 of 42
2. She wants me to create a model of the use case that shows how students register. She also
wants to see a class diagram.
A sample class diagram for the Register use case follows:
Request course
Add course
Determine tuition
Complete course
Prepare roster
Drop course
Confirm
Change student data
Includes 1..*
1..*
Instructor Course
Instructor ID Course number
Name Course name
Courses qualifications Instructor
Teaches Day/Time
Location
Phone 1 1..*
Add Course
Teach course Change Course
Report outcome Delete Course
3. I need to create a sample registration sequence diagram that shows the steps in the
registration process.
Sample Registration Sequence Diagram:
Requests
Course Checks
Availability
Confirms
Available
Bill Schedules
Payment Confirms
Bills
Notifies
4. Jesse asked me to create a state transition diagram that describes typical student states and
how they change based on certain actions and events. She said to include a brief cover
memo.
Possible use cases might include Student Payment, Register, Request Course, Teach Course,
Determine Schedule, and Maintain Training Records. Possible actors might include
Student, Instructor, Training Administrator, and Corporate Client. A sample use case
diagram for Determine Schedule, Register, and Prepare Training Report follows:
Systems Analysis and Design, Tenth Edition Page 38 of 42
Entity Methods
Customer Request product information
Place order
Respond to Web promotion
Sign up on game blog
Sales Rep Initiate sales call to customer
Respond to customer inquiry
Follow up after prior order
Follow up after prior information request
You also learned that customer categories are based on specific conditions, as shown:
Category Conditions
Potential Has not placed an order in the last 24 months, but has responded to a Web
promotion or requested product information or signed up on our game blog
Active Has placed at least one order in the last 24 months
Preferred Has placed at least three orders in the last 24 months
Former An Active or Preferred customer with no orders in the last 24 months
2. Draw a state transition diagram that shows the customer categories and the conditions for each
category.
Systems Analysis and Design, Tenth Edition Page 40 of 42
1. Draw a new version of the use case diagram that adds the new marketing technician.
Systems Analysis and Design, Tenth Edition Page 41 of 42
2. Draw a state transition diagram that shows the new customer categories and the conditions
for each category.
Systems Analysis and Design, Tenth Edition Page 42 of 42
Note: The textbook includes 18 Video Learning Sessions and an introductory session to help
students become familiar with this feature. In Chapters 2, 3, 4, 5, 6, 7, 9, and 11, students assist
the IT Training Director by creating a preview to boost interest in the VLS for that chapter. In the
role of a training assistant, the student must be perceptive, creative, and an effective
communicator.
Chapters 1, 8, 10, and 12 do not align with a specific VLS, so students are asked to help
create a new VLS for that chapter. Still in the role of a training assistant, the student is asked to
describe the specific skills and concepts to be covered, explain how the material would be
presented, and describe at least three graphic images to be included in the session.
Training Tasks
These tasks might seem quite simple, but they actually require metacognition, which can be
described as “knowing what you know.” Students need to step back and provide an overview of
the session and why it is important, and then select a specific segment that does a “good job” of
explaining a skill or concept. To do that, the student must evaluate the topics, and choose one that
is effective, in his or her view. The topic is not important, and answers will vary.
The real issue is the student’s ability to grasp the objective of the training and come up with
effective ways to explain key points and concepts. Those skills will be extremely valuable in the
workplace.