An Introduction to Object-Oriented Analysis Objects in plain English

An Introduction to
Object-Oriented
Analysis
Objects and UML in plain English.
Chapter 15: Moving to
Object-Oriented Techniques
Based on the book by
David William Brown
John Wiley & Sons, ISBN 0471371378
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
1
Copyright
Copyright 8 2002 Flying Kiwi Productions
All rights reserved.
This slide presentation is based on “An Introduction to ObjectOriented Analysis; Objects and UML in Plain English,” by David
William Brown, Wiley, ISBN 0471371378, “The Book.”
Permission is hereby granted to copy, modify or excerpt all or any
part of this slide presentation, provided it is solely for use with
courses, seminars or other presentations or productions where a
copy of The Book is purchased by or for each and every participant
or recipient.
An instructor guide is available from the publisher for such presentations.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
2
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
 15.3.
 15.4.
 15.5.
 15.6.
 15.7.
 15.8.
 15.9.
Copyright
for O-O Techniques?
Evolution or Revolution?
Getting Started.
Staffing and Training.
The Pilot Project.
Migration Problems.
Dealing with Legacy Systems.
Testing and Quality Assurance
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
3
Chapter 15: Moving to Object-Oriented Techniques
15.1. Is O-O
Technology
the Final Answer?
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
4
Chapter 15: Moving to Object-Oriented Techniques
15.1. Is O-O Technology the Final Answer?
Users usually have:
 Vivid dreams of the future,
 But without:
 A clear idea of what they want built,
 An understanding of the available
technology,
 Sufficient time to arrive at the desired
product,
 Adequate resources to construct their
vision.”
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com

Tom Love
5
Chapter 15: Moving to Object-Oriented Techniques
15.1. Is O-O Technology the Final Answer?
According to Tom Love,
 “The (O-O) technology is not perfect,
 Some projects do have difficulties,
But the developers continue to
use objects on subsequent
projects.”
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
6
Chapter 15: Moving to Object-Oriented Techniques
15.1. Is O-O Technology the Final Answer?
 One suggestion for what comes after
objects is
Frames,
proposed by Paul Bassett in his book:
“Framing Software Reuse,
Lessons from the Real World”
Yourdon Press, 1996
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
7
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
15.2. Is your Organization Ready
for OO Techniques?
 15.3. Evolution or Revolution?
 15.4. Getting Started.
 15.5. Staffing and Training.
 15.6. The Pilot Project.
 15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
8
Chapter 15: Moving to Object-Oriented Techniques
15.2. Is your
Organization Ready
for OO Techniques?
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
9
Chapter 15: Moving to Object-Oriented Techniques
15.2. Is your Organization Ready for OO Techniques?
Levels of Maturity
in dealing with software development:
 Initial Level - Everyone does their own thing.
 Repeatable - Some informal agreement.
 Defined - Written methodology, maybe enforced.
 Managed - Methodology used on all or most
projects. Training, sharing, some policing. Metrics
taken and monitored.
 Optimized - Metrics regularly fed back to
optimize development process.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
10
Chapter 15: Moving to Object-Oriented Techniques
15.2. Is your Organization Ready for OO Techniques?
The further down the list your group is,
and the more your people understand their
own development process,
the easier they can adapt to new methods
with less hassle.
 People in the first two levels
(Initial and Repeatable)
 have a high resistance to any attempt to
formalize their methods.
 They perceive it as control.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
11
Chapter 15: Moving to Object-Oriented Techniques
15.2. Is your Organization Ready for OO Techniques?
Exercise:
 In your group, each write down your
opinion of where your organization is in
this list.
 Also write down a brief justification for
your opinion.
 Now the group discuss each member’s
decision and reasons. Comment and
query. Make them justify it to you.
 Each member of the class present their
final judgment and reasons.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
12
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
for OO Techniques?
15.3. Evolution or Revolution?
 15.4. Getting Started.
 15.5. Staffing and Training.
 15.6. The Pilot Project.
 15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
15.10.
A Little Peek Into the
Future.
2002 Flying Kiwi Productions Inc.
flykiwi@home.com
8
13
Chapter 15: Moving to Object-Oriented Techniques
15.3. Evolution
or
Revolution?
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
14
Chapter 15: Moving to Object-Oriented Techniques
15.3. Evolution or Revolution?
 Objects are an evolution from entities
 But are
revolutionary in their effects.
For many developers, a revolution is
something to be feared and resisted!
 And so also, to them, is anything new.
 You will need:




Mentors,
Training,
Progressive apprenticeships,
People skills.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
15
Chapter 15: Moving to Object-Oriented Techniques
15.3. Evolution or Revolution?
People like this should not be on the pilot
or early production projects!
 They should move on to O-O projects
in the conversion calendar,
later
 When there are plenty of experienced
peers and mentors
 And the completed projects are living
proof that objects work.
(Otherwise you’ll get all kinds of complaints about “new and
untried” methods)
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
16
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
for OO Techniques?
 15.3. Evolution or Revolution?
15.4. Getting Started.
 15.5. Staffing and Training.
 15.6. The Pilot Project.
 15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
17
Chapter 15: Moving to Object-Oriented Techniques
15.4. Getting Started.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
18
Chapter 15: Moving to Object-Oriented Techniques
15.4. Getting Started.
 Start Early!
 Investigations and decisions.
 People never
Plan to Fail,
 They just
Fail to Plan!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
19
Chapter 15: Moving to Object-Oriented Techniques
15.4. Getting Started.
 Adequate planning,
 Sufficient time,
 Everyone is on a learning curve!
 There are more things to go wrong,
And it’s all so new, no-one
knows how to fix it when
they DO go wrong.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
20
Chapter 15: Moving to Object-Oriented Techniques
15.4. Getting Started.
 Choose language, OOGUI and OODBMS
carefully.
 Ensure features
meet your needs.
 Get training early.
 Get
(proven) consultants in early.
There’s never enough time to
do it right,
but always time to do it over.

Copyright
See Chapter 3, finding errors early.
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
21
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
for OO Techniques?
 15.3. Evolution or Revolution?
 15.4. Getting Started.
15.5. Staffing and Training.
 15.6. The Pilot Project.
 15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
22
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing
and Training.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
23
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
 There are not a lot of experienced O-O
analysts and designers out there yet.
 Expect that mostly you’ll need to train
people for the new skills,

Including people skills (see Chapter 16),
 But use
proven consultants,
 With a record of
successful O-O development
 Check with previous clients. (Do actually CHECK!)
 Change is not an easy thing for most people,
so you need a careful, people-centered
approach.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
24
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Selecting the Team:
 Ideal team size is around seven
(7).
 Mix of skills and backgrounds
needed.
Copyright

Important on any project,

But especially with something this new and
different.
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
25
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Project Manager:
 For your pilot, pick the
best one available.
 Must have all the skills and attitudes we
talked about regarding change.
 Must have responsibility, with sufficient
authority


Pilot is a critical project
Must not repeatedly get hung up waiting for approvals
from higher up.
 Must have


Copyright
demonstrated leadership skills
Proven Under fire
Able to inspire a team through difficulties.
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
26
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Recent Graduates:
 Young and enthusiastic
 On the leading edge
 Much to contribute, but
 May require careful supervision.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
27
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Experienced Staffers:
 Experience, stability and common sense.
 But likely more set in their ways.

Some may need help and patience adapting to
change.
 Choose those who
can handle change,
 Flexible in their thinking,
 And are excited about the new technology
but more excited about what it can DO for us.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
28
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Pilots are not for everybody!!
There are many good people who
are just not suited for the pilot!
 Sometimes they’ll quit if the change is a
stress overload for them.

Must minimize the loss of expensive, highlytrained developers.
 These ones should remain on legacy
maintenance for now.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
29
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Training:
 Extensive training, early

Successful transition projects have reported this
to be essential.
 But don’t let the new knowledge “rust out.”


Use it or lose it.
Beware - “lose” may mean they go elsewhere.
 Vendor training for methodology, OOPL,
OODBMS, etc.
 OOA&D courses for everybody.
 A selection of books of varying levels.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
30
Chapter 15: Moving to Object-Oriented Techniques
15.5. Staffing and Training.
Mentors:
 “A wise and trusted advisor.” (Gage)
 “A person with knowledge and experience who is
both willing and able to assist, advise and nurture
those who are beginning their work in this area.”
 Initially, consultants mentor in-house staff.
 Second O-O project, this team mentors their peers.
 Knowledge and expertise spreads through the
whole group.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
31
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
for OO Techniques?
 15.3. Evolution or Revolution?
 15.4. Getting Started.
 15.5. Staffing and Training.
15.6. The Pilot Project.
 15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
32
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
33
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Choose
Three
Pilots!!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
34
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Your first and second projects will be about
30% more expensive.
 The third and on will show benefits.
 Reduced
cost
 Reduced time
 Enhanced software quality
This is because of . . .
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
35
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
The learning curve for O-O methods,


Much more than just learning a new language or
development environment.
We need to learn “Objectthink”

Remember the logger!
 The first two projects will develop your inhouse class library.

This enshrines all your corporate development
and coding standards and conventions.

You need to do some investigation and planning
here, and develop any standards and conventions
that are missing. An opportunity!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
36
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Keep a Low Profile:
Choose a project that
 Can be made highly visible if successful,
but if not,
 Keep a low profile,
 Lick your wounds, pick yourself up,
 Learn,
And try another one.

Pilots are by nature experimental, and for
learning, and can be expected sometimes to
fail,2002 Flying Kiwi Productions Inc.
Copyright
8
so . . .
flykiwi@home.com
37
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Be Prepared to Deal with Possible Failure:
 Have contingency plans in place.
 Leader will need those people skills here!

Keep team spirits and motivation up.
 Choose team members who will not be
devastated by a failure.
The ability to learn from failure
and carry on to try again is
characteristic of winners and
high
achievers.
8
Copyright
2002 Flying Kiwi Productions Inc.
flykiwi@home.com
38
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Pilot Should Have a GUI:
 GUIs are one of the most widespread
and spectacular applications of O-O
technology.
 Large and varied set of software
products available.
 GUIs will get you a lot of media and
user attention.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
39
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
Independent Project:
 Make sure you choose a pilot so that if it fails,
it will not bring down another project.
or worse,
Stop the whole O-O conversion process!
 It is a proof-of-concept, and a first attempt
 Keep it clear of corporate politics
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
40
Chapter 15: Moving to Object-Oriented Techniques
15.6. The Pilot Project.
If you want a way to go down in
corporate history,
Choose a major
mission-critical project
for your first baby step
into objects!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
41
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
 15.3.
 15.4.
 15.5.
 15.6.
for OO Techniques?
Evolution or Revolution?
Getting Started.
Staffing and Training.
The Pilot Project.
15.7. Migration Problems.
 15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
42
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
43
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Software:
 O-O tools are about the same price as the old ones.
 Major costs are training on new software tools.
 Other migrations are going on in parallel with the
move to objects:
 Away from mainframes
 To client-server and multi-tier
 To networks with UNIX, NT, etc.
 To Web-based, e-biz, XML, EDI, etc.
 Careful planning and management are needed
to foresee the effects of interactions between these
and the object migration.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
44
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Training:
 The biggest problem is making sure it
happens,
 And early enough.
 The literature abounds with project
post-mortems containing the statement:
“More training was
needed.”
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
45
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Tool vs Methodology:
 The object paradigm will not solve all your
problems.
And especially,
 The finest new object CASE tool will not.
 Even a methodology doesn’t help much,
unless it is used
(and better, enforced and policed.)
 This means being in the top 3 of the 5 levels of
development maturity,
Defined, Managed or Optimized.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
46
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Tool vs Methodology:
You can use a method
without a tool,
but not a tool without a
method,
Ivar Jacobson
(Eevar Yahcobson)
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
47
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
A lumberjack brought his old hand saw to be
sharpened, and the store owner talked him
into buying a shiny new chainsaw. “You’ll cut
down three times as many trees!” he said.
Off went the lumberjack, only to return three
days later, disappointed. “I’m only cutting
down half as many as before,” he complained.
The storekeeper said, “Let me see how you’re
doing it,” and took him out the back to an old
stump. He fired up the motor - and the
lumberjack recoiled in horror.
“What’s all that noise?” he cried.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
48
Chapter 15: Moving to Object-Oriented Techniques
15.7. Migration Problems.
Software:
Watch we don’t get
the old guys
doing things the old way
with the new tools.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
49
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
 15.3.
 15.4.
 15.5.
 15.6.
 15.7.
for OO Techniques?
Evolution or Revolution?
Getting Started.
Staffing and Training.
The Pilot Project.
Migration Problems.
15.8. Dealing with Legacy Systems.
 15.9. Testing and Quality Assurance
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
50
Chapter 15: Moving to Object-Oriented Techniques
15.8. Dealing with
Legacy Systems.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
51
Chapter 15: Moving to Object-Oriented Techniques
15.8. Dealing with Legacy Systems.
Legacy System:
A system
(usually out-of-date)
that already exists,
and must continue to
exist for now.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
52
Chapter 15: Moving to Object-Oriented Techniques
15.8. Dealing with Legacy Systems.
 Your new O-O systems will need to interface to






some legacy systems.
The standard way to handle this is to place an O-O
“wrapper” around the legacy system
To encapsulate all its messy details.
From the “outside” the wrapper looks like one or
more regular objects,
But inside it’s still the same old COBOL code still
doing its thing.
But all that is hidden from the objects in the new
system.
They just send messages, and get responses, as if
this was a true object.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
53
Chapter 15: Moving to Object-Oriented Techniques
15.8. Moving
Dealing
Legacy
yourwith
organization
to Systems.
Objects
 O-O wrapper “Surrounds” the legacy system
 Receives messages from other objects
 Translates into what the legacy code understands


COBOL ‘perform’, etc.
May need to simulate keystrokes
 Translates responses into O-O messages

May need to trap printer and screen output
 Rest of legacy system continues to perform as always
 Wrapper “Encapsulates” messy legacy details
 No-one need know when legacy rewritten in
OOA/OOD/OOP
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
54
Chapter 15: Moving to Object-Oriented Techniques
15.8. Dealing with Legacy Systems.
When we later redevelop
the legacy system
with objects,
the wrapper is replaced
by true objects,
and the other systems
needs
no
changes.
8
Copyright
2002 Flying Kiwi Productions Inc.
flykiwi@home.com
55
Chapter 15: Moving to ObjectOriented Techniques
 15.1. Is O-O Technology the Final Answer?
 15.2. Is your Organization Ready
 15.3.
 15.4.
 15.5.
 15.6.
 15.7.
 15.8.
for OO Techniques?
Evolution or Revolution?
Getting Started.
Staffing and Training.
The Pilot Project.
Migration Problems.
Dealing with Legacy Systems.
15.9. Testing and Quality Assurance.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
56
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and
Quality Assurance.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
57
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
Consider this:
 All software fails in its first production
run.
 Have
you ever written a (non-trivial)
program that worked first try?
 NORAD uses much software.

The first production run for
NORAD is World War Three
We’re in trouble !!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
58
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
 Mission-critical software applications
require extremely high levels of quality.
 In general,
quality means customer
satisfaction
 So it must satisfy the users’ actual
requirements.
 Note that the specs are merely our attempt
to document those requirements,
 And the specs are not always right!
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
59
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
Objects and Quality
 We test inside the class,
 Then from outside the interface.

Use Cases are also test scenarios.
 Encapsulation reduces the number of
connections among classes, reducing the
number of test cases needed.
 Each class must have an automated test
suite, implemented as a “tester class.”
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
60
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
Objects and Quality
 High levels of reuse require repeated retesting.
 Each time a class is reused, its test suite, run in the




new environment, becomes an acceptance test.
Then we test it in relation to the new project.
So each time we reuse it, we further test all its
methods, uncovering some old errors,
So each reuse will then benefit earlier programs that
used this class.
The stability and trustworthiness of the class are
progressively improved.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
61
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
Objects and Quality
 Because of better traceability from Analysis to
Design to Coding,
 Corrections to the requirements or design
point us directly to the affected code,
and vice-versa.
 There are no hidden pieces of code to change
 This is all of it,
 Encapsulation makes sure the changes have
limited effect in other places in the code.
 There is reduced ripple effect from the changes.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
62
Chapter 15: Moving to Object-Oriented Techniques
15.9. Testing and Quality Assurance.
Class Libraries
 Effective reuse demands:

Good class libraries, and

Ways to find classes that will do the job for us.
 The browser that comes with a class library can
be as important as the classes.
 Watch that responsibility for maintenance is
clearly spelled out among the re-users.
 Watch naming conventions,
 And avoid having a multitude of classes all doing
almost the same thing.
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
63
End of Chapter 15
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
64
End of Chapter 15
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
65
End of Chapter 15
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
66
End of Chapter 15
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
67
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
68
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
69
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
70
Copyright
8 2002 Flying Kiwi Productions Inc.
flykiwi@home.com
71