Bird Protection & Construction Safety Nets By Safe Nets, Mumbai
CaseStudySolutions - NETS...
Transcript of CaseStudySolutions - NETS...
CaseStudySolutions
This appendix contains the solutions to the Acme Mining Company
Case Study.
Sun Proprietary: Internal Use Only 1Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
The Acme Mining Company
Rewritten Problem Statement
Note – The candidate classes and objects have been underlined.
The Acme Mining Company requires a computerized payroll system.
They need the system to operate on two planets where they currently
trade. Planet Earth and the Planet Zog are the locations, each has a
differing currency with different tax and deduction policies.
Pay is calculated periodically, this is currently monthly and weekly
dependant on the pay type of the employee.
Currently the pay types are monthly paid, weekly paid and hourly
paid employees.
Monthly paid employees have an annual salary divided into twelve
equal amounts, these are paid at the end of each month.
Weekly paid employees are paid their weekly rate of pay at the end of
each calendar week.
Hourly paid employees have an hourly rate of pay. The hours worked
by these employees are determined by a clock in, and clock out time,
recorded by a time clock system. The excess hours worked, above the
normal site working hours are paid at an overtime rate applicable to
their site.
The majority of Acme employees are hourly paid.
The time clock information for hourly employees can be downloaded
directly from the time clock. This must be done once every 24 hours.
Employees are identified by their name and their employee
identification number only.
Weekly paid and hourly paid employees can elect to be paid in cash or
by check. Monthly paid employees can only be paid by cheque. All
payments are paid in the local currency applicable to the planet.
2 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
These are currently, on Planet Earth, Earth Dollars and on Planet Zog,
Zog Groats. Pay is calculated by applying any tax deductions (that
apply to the location) to every employee and company deductions that
apply to an employee. Taxes are cumulative for the financial year.
The Planet and Country taxes are paid on the gross salary at tiered
rates. The Social Security and Pollution taxes are paid on the gross
salary and are at a fixed rate. Other deductions applicable are for
Health Insurance, which is optional. The Pension Scheme however, is
compulsory for all employees. Pensions are deducted at a flat
percentage rate.
Pay rates and employee details can only be recorded and amended by
Human Resources. Weekly and Monthly Payroll runs are both initiated
by the payroll clerk, it produces payslips itemizing the amount paid
and any deductions made to each employee.
It produces a summarized list of payments and deductions made to
each employee for each run. This summary shows total deductions
collected from all employees for each deduction and tax. After the end
of the tax year the Payroll Clerk will request a summary of tax paid by
all employees for that tax year.
Current Taxes Applicable: Planet Tax, Country Tax, Pollution Tax, and
Social Security Tax.
Planet Earth Taxes: Pollution Tax, Planet Tax, and Country Tax.
Planet Zog Taxes: Planet Tax, and Social Security Tax.
Case Study Solutions 3Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Data Dictionary
Word/Phrase Definition
Payroll Run Manually initiated request forcalculations of pay and deductions foreach employee applicable to specificrun.
Monthly Payroll Run Payroll Run only applicable formonthly employees.
Weekly Payroll Run Payroll Run only applicable for weeklyand hourly employees
Employee I.D.Number
A number uniquely identifies theemployee within the company
Zog Groats Currency applicable to Planet Zog
Earth Dollars Currency applicable to Planet Earth
Time Clock A System which records time forcommencement and completion ofemployees work hours. Data is stored,it can be printed or downloaded toanother system.
Monthly Employee Paid on a monthly basis, dividing thepayments into twelve equalinstallments
Hourly Employee Paid by hourly rate for each hourworked according to the specific rateallocated to the individual employee.Subject to overtime payment foradditional hours worked at companyand location rate.
Taxation Tax deductions applied on grossearning. It is a banding system, wheretax is paid at a specified rate forearnings up to a band limit. Anyincome in that band is taxed in thenext band, so forth.
4 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Tiered Rate Tax A deduction that is applied at thespecified percentage rate on grossearnings.
Percentage RateDeduction
A fixed amount deducted at every payperiod.
Flat Rate Tax
Word/Phrase Definition
Case Study Solutions 5Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case
6 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case Scenarios
Monthly Run Scenario I
1. The Payroll Clerk on the Planet Zog selects a Payroll Run.
2. They select the monthly run from the options.
3. All monthly paid employees are selected.
4. The first employee is selected.
5. Their monthly pay is calculated.
6. Their gross pay to date is calculated.
7. Planet Tax is calculated.
8. Social Security Tax is calculated.
9. Pension deduction is calculated.
10. This employee has the health insurance option, so
this is calculated.
11. The net pay is calculated.
12. The payslip is printed.
13. All deductions are accumulated.
14. Next Employee is selected,
15. All as above, exception this employee has no Health Insurance
16. No more employees
17. Print total deductions.
Case Study Solutions 7Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Monthly Run Scenario 2
1. The Payroll Clerk on the Planet Zog selects a Payroll Run.
2. They select the monthly run from the options.
3. All monthly paid employees are selected.
4. No Employees found.
8 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Add Employee Scenario 1
1. Human Resources on the planet Zog log on to the system.
2. They select enter new employee from the menu
3. New Employee Screen Displayed.
4. The enter employee John Simms for the name and 1023 for the
employeeID.
5. System check for identical ID, none found.
6. Further details are requested.
7. They choose the monthly pay type form menu.
8. They are asked to enter monthly salary in Zog Groats.
9. They enter 30500.
10. The are asked to enter starting date.
11. They enter 03/05/2049.
12. They are asked if the employee requires the Health Insurance
option.
13. They select Yes.
14. Employee Details are added to the system.
Case Study Solutions 9Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Add Employee Scenario 2
1. Human Resources on the planet Zog log on to the system.
2. They select enter new employee from the menu
3. New Employee Screen Displayed.
4. The enter employee Peter Smithy for the name and 101 for the
employed
5. System checks for identical ID.
6. Identical ID found
7. User requested to enter ID again.
10 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case Forms
Use Case Form: Monthly Run
Name Monthly Run
Actor payroll Clerk/Human Resources
Priority Low
Status To be agreed
ExtensionPoints
None
Extends None
Includes Payroll Run
Preconditions/Assumptions
Post-conditions
Flow of Events 1. Use Case begins when initiated by actor2. Employees of Type Monthly are selected3. Include (Payroll Run)
AlternativePaths
Non-functional Requirements
Performance
Frequency Monthly
Notes
Case Study Solutions 11Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case Form: Weekly Run
Name Weekly Run
Actor Payroll Clerk
Priority High
Status To be agreed
ExtensionPoints
None
Extends None
Includes Payroll Run
Preconditions/Assumptions
Post-conditions
Flow of Events 1. Use Case begins when initiated by
actor
2. Employees of Type, Hourly are
selected.
3. Employee of Type, Weekly are
added include (Payroll Run)
AlternativePaths
Non-functional Requirements
Performance
Frequency Weekly
Notes
12 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case Form: Find Employee
Name Find Employee
Actor payroll Clerk/Human Resources
Priority High
Status To be agreed
ExtensionPoints
None
Extends None
Includes
Preconditions/Assumptions
Has access to I.D. or name
Post-conditions
Makes available Employee Found
Flow of Events 1.Search for Employee Requested.2.If no Employee Found [A1]3.Make Employee found available.
AlternativePaths
Report Employee Not Found
Non-functional Requirements
Performance
Frequency
Notes
Case Study Solutions 13Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Use Case Form: Payroll Run
Name Payroll Run
Actor Payroll Clerk, Payroll Printer
Priority High
Status To be agreed
ExtensionPoints
None
Extends None
Includes None
Preconditions/Assumptions
Calling Use Case has selected a list ofEmployees for Processing
Post-conditions
record of each Employee’s Payslip is recorded
14 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Flow of Events 1. The use Case begins during the
Weekly Run or Monthly Run Use
Case
2. For each Employee in list provided
by calling Use Case
a) Create new payslip
b) For each Tax, Company
Deduction
i) Calculate deduction to be
made
ii) Add deduction to payslip
iii) Add deduction to running
total
c) Print payslip
d) Save payslip
3. For each deduction
● Print accumulated total
AlternativePaths
Non-functional Requirements
Performance Not an issue. Treat as Batch
Frequency Monthly, Weekly
Notes Reliability is Important
Name Payroll Run
Case Study Solutions 15Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Candidate Object List
Candidate Class/Objects
Reason forElimination Class name
Acme employees SynonymforEmployee
Acme MiningCompany
Outside ofthe system
amount paid Attribute Payslip
annual salary Attribute Monthly Paid employee
check Attributevalue
Employee
clock in time Attribute TimeClockData
clock out time Attribute TimeClockData
companydeductions
Attribute Deduction
country tax CountryTax
currency Attribute Location
deduction Attribute Payslip
deductionpolicies
Method
Earth Dollars Value ofcurrencyattribute
employee Employee
16 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
employee details SynomynforEmployee
employeeidentificationnumber
Attribute Employee
employee type Attribute orclass
EmployeeType
excess hoursworked
Derivedattribute
TimeClockData, Location
financial year Synonyn fortax year
flat rate Attribute orclass
FlatRate
gross salary Attribute Payslip
health insurance HealthInsuranceDeduction
hourly employees Synonymforhourly paidemployees
hourly paid Aynonymfor hourlypaidemployees
hourly paidemployees
Class HourlyPaidEmployee
Candidate Class/Objects
Reason forElimination Class name
Case Study Solutions 17Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
hourly rate of pay Attribute HourlyPaidEmployee
hours worked Attribute TimeClockData
human resources Actor
list of payments Derivedattributes
Payslip
local currency Synonymforcurrency
location Location
month Value oftime
monthly paidemployees
MonthlyPaidEmployee
name Attribute Employee
normal siteworking hours
Attribute Location
overtime rate Attribute Location
pay Attribute Payslip
pay rates Attribute Employee
pay type Attribute Employee
Candidate Class/Objects
Reason forElimination Class name
18 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
list of payments Derivedattribute
Payslip
payroll clerk Actor
payroll system Theapplication
payslips Payslip
pension scheme PensionSchemeDeduction
percentage ratededuction
Attribute orclass
PercentageRate
Planet Earth Value oflocation
Planet Tax PlanetTax
Planet Zog Value oflocation
planet Attribute ofLocation
pollution tax PollutionTax
site Synonymforlocation
social security tax SocialSecurityTax
Candidate Class/Objects
Reason forElimination Class name
Case Study Solutions 19Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
system Not relevant
tax deductions Attribute Payslip
tax year Attribute Tax
tiered rates TieredRate
time clock Actor
time clockinformation
TimeClockData
time clock system Actor
total deductions Attribute Payslip
weeklycalculation
Synoym forweeklypayroll
weekly paidemployees
WeeklyPaidEmployee
weekly payroll Use Case
weekly rate ofpay
Attribute WeeklyPaidEmployee
Candidate Class/Objects
Reason forElimination Class name
20 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Risk Assessment
Risk is a very subjective subject. Here is the author’s simplified risk
analysis ( using threerisk categories) with some brief reasoning:
Case Study Solutions 21Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Key
● High risk -reason customer needs to see working software, so
these Use Cases will gives a working product.
● Medium risk -will add some more functionality, and the time
interface could be tricky.
● Low Risk -n ot essential or not needed for some time.
22 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Packaging Use Cases By Risk
● If the system was larger, you could do further risk assessment to
break into smaller packages.
● In a real project, you would do several iterations in the inception
and elaboration phases before moving onto the build iterations.
In this case study, time constraints make it imperative to compress
several increments into one.
Case Study Solutions 23Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Activity Diagram
Monthly Pay Run
24 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Note – There are alternation notations for showing a loop.They require
nested activities diagrams. See UML documentation for details.
● You could have shown a nested activity diagram for Calculate
Company Deduction, Calculate Tax Deduction, and Print each
Deduction.
Case Study Solutions 25Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
High-Level Packaging
26 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Deployment Diagram
Case Study Solutions 27Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Key Abstractions
28 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Attributes
Case Study Solutions 29Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Associations
30 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Multiplicity
Case Study Solutions 31Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Qualified Associations
32 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Inheritance
● Some of these could have been just attribute values. But they differ
in behavior or attributes, so you have made them extend a base
class.
Note – You have also added a couple of role names.
Case Study Solutions 33Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Additional Classes and Attributes
● You have added new classes and attributes, including an
association class (AmountDeducted ), and including a constraint (
the TierRate must be applied in order).
34 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Aggregation & Composition
● You have based the distinction on ownership, e.g. if the TierRateobjects are only needed for one PlanetTax object. When that
dies, they die too.
Case Study Solutions 35Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Sequence Diagram I
Monthly Payroll Run
● The details of each deduction has been omitted from here.
Calculate pay has also been excluded.
36 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Note – This highlighted a missing class from our diagram, namely the
DeductionSummary , so you have added this.
● Alternatively, you could have derived the values from all of the
Timeslips to avoid creating this extra class. However, you would
then have had to go back and edit our Use Case Form for
PayrollRun etc.
Case Study Solutions 37Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Sequence Diagram II
Monthly Payroll Run Showing Delegation
38 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Sequence Diagram III
For Social Security Tax Calculations
● One of the many alternative Sequence Diagrams for the Monthly
PayrollRun Use Case.
● This one uses some delegation. The Deduction object will add
directly to the Timeslip object, and will do its own printing.
Case Study Solutions 39Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Sequence Diagram IV
Revised for Monthly Payroll Run
● Shows missing interaction.
● In design, you can choose to do this with a Constructor.
40 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
State Transition Diagram
For Payslip Class
● It shows that you have missed an important interaction in our
sequence diagram( namely to initialise the pay details ).
● It also highlights that you should ensure that you cannot change
the details once saved.
Case Study Solutions 41Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Removing Association Class
● You have removed the association class by putting the class
between the two associated classes .This has removed the many to
many relationship.
42 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Revised Logical Packaging
● As the diagrams are getting complicated, you need to look at them
in packages. Here are the two Business Model Packages, and one
new Controller Package.
Case Study Solutions 43Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Deduction Logical Packaging
● You have included both Tax and Company Deductions in one
package. This is contrary to the original planned packages.
This has been done this for the purpose of brevity on the course.
44 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Employee Logical Packaging
● We have included the location classes here.In practice, they
perhaps should be in a separate package.
● One option here would be to delegate the Pay to a PayType,
Monthly, Weekly etc would then inherit from that class, thus
making it easy for an Employee to change their PayType.
However this was not in the specification, so you will not
complicate the diagram here.
Case Study Solutions 45Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Miscelleanous Notes and Changes
● The attribute monthlyCharge PensionDeductions was changed to
annualCharge, so it can apply to different Employees Pay Types.
● The Domain expert points out that the SiteOverTimeRate will
change, therefore you need to record the date of the change and
store a list.
● Having decided to keep the Employee as the base class for
different types, you will end up with this being abstract.
● The scoped down problem doesnt need to keep a history of salary
changes, or timeslips. So once pay is processed the Timeslip
objects are destroyed.
● The hours works are integral.
● Payslip objects do need to be kept.
46 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Adding Delegation
● The class CompanyDeduction served no purpose so you have
deleted it.
● Given that several taxes and other deductions share common
strategies of calculating deductions, you have delegated the
common features, using the Strategy Pattern.
● You can use an Abstract Factory Pattern to set up the correct
deduction strategy for the tax, or deduction.
This is just one solution, there are many others, some more
flexible, however you are trying to keep the scope limited.
Case Study Solutions 47Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
● The Deduction, Tax, and DeductionStrategy are all abstract classes.
● We have not shown CountryTax to keep diagram clearer, but it still
exists.
48 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Monthly Pay Run
Sequence Diagram in Design
● This is one sequence of events for the Monthly Pay Run.
Case Study Solutions 49Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Pay Run
Sequence Diagram for Pay Run in Design
● This is just one sequence of events for the Pay Run.
50 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Calculate Deduction
Sequence Diagarm In Design
● This is just one sequence of events for the Pay Run.
● This is part of the Pay Run Uses Case.
Case Study Solutions 51Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Tiered Rate Deduction
Sequence Diagram in Design
● This is just one sequence of event.
● This is part of the Pay Run Uses Case.
● Although not part of the current iterations, above is the sequence
diagram for calculating tiered deductions.
● The class TieredRate now performs the behaviour originally
given to the PlanetTax class.
52 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
State Transition Diagram
For Payslip Class
Case Study Solutions 53Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Activity Diagram
For Monthly Pay Run
54 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Pay Run Package I
Simple Class Diagram
Case Study Solutions 55Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Pay Run Package II
Pay Run Package Class Diagram
56 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Employee Package I
Simple Employee Package Class Diagram
Case Study Solutions 57Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Employee Package II
Employee Package Class Diagram
58 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
Deduction Package
Deduction Package Class Diagram
Case Study Solutions 59Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B
60 Object-Oriented Application Analysis and Design for Java Technology (UML)Copyright 2000 Sun Microsystems, Inc. All Rights Reserved. Enterprise Services March 2000, Revision B