Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Module Five covers the topic of object oriented (OO)

design, which is the new methodology. The OO design is


distinctly different from the structured or “traditional”
design, which was covered in Module Four. As with all
traditional models, there are new, different models created
that some think are a much more improved way to the old
way. In Modules Four and Five, these distinctly different
models are presented because a systems analyst should
be agnostic to a design methodology. There are projects
that benefit from using structured designs and projects
that benefit from using OO design. Most organizations
have standardized on structured design methods.
Considering the years of investment put into the process,
the training, and the document templates, transitioning to
OO design is typically not a good financial decision, as it is
a very costly transition. This is especially true since there
is not a business case that supports OO design being
more cost effective, providing better system designs, etc.
than existing structured design. The OO design
methodologies are prevalent in newer companies because
OO was the current model used as newer companies
began building the IT system analysis processes.

Be aware, similar to many old and new ideas, there are


strong opinions on both sides of the argument. There is
not one specific right way. The right way is really the entire
system of processes, the documentation, the training, the
skill development and other supporting business
parameters that must occur. The right way is a
comprehensive solution. As a systems analyst, stay open
minded and flexible in choosing methodologies. Each is
similar in purpose, just different in implementation.

Object Oriented (OO) Design


The OO design approach works well in agile project
methodologies. The agile methodology is best suited for
programming languages such as C#, VB Net, Python,
Perl, and Java. The system is broken into objects. The
objects can be reused in other system design, so that the
objects are very modular.

The first step in OO design is to define the system objects.


The object is the noun: the person, the customer, the
student, the car, etc. The object has attributes and
methods. An attribute is something that describes the
object. Consider the attribute the adjective. An attribute is
a characteristic: an age, a color, a make, a model, a score,
etc. The object also has methods. The methods are verbs
that the object can perform. Examples of methods are:
grade the test, drive the car, or buy the item.

Using the time reporting example from Module Four, the


objects include Employee and Supervisor. The attributes
for Employee are Department and Supervisor. The
Supervisor object has Department and Approver (y/n)
attributes. The Employee and Supervisor have additional
attributes that are the same, so each attribute can be
considered a sub-class object, belonging to a class called
Associate. There can also be a super class object called
Person. The classes delineate when attributes are no
longer common. So, Person super class has the attributes
of Name, Gender, and Date of Birth (DOB). The Associate
class can have Hire Date, Salary, and Fulltime (y/n).

Methods for the Employee are Enter Hours, Adjust Hours,


and Review Hours. The Supervisor methods are Approve
Hours, Adjust Hours, Reject Hours, and Review Hours.
Note that an actual person in the organization may map to
both the Employee object and the Supervisor object. The
Supervisor object does not have time entry for his/her
time. This is only on the Employee object.

The next step in OO design is to define the messages that


invoke the methods. Messages specific to the Employee
methods object is Add Time. The Employee and
Supervisor objects have the same messages, but invoke
different methods depending on the object. This is an
example of polymorphism. The polymorphic messages are
Resolve Time Issues and Review Time. The Supervisor
object has the additional message of Approve Time, which
is unique to this object.

For each of the messages, there are steps required to


complete the messages. Using the message, Review
Time, the steps would be as follows:

1. Select Review Link


2. Select Time Period to Review
3. Select Employee to Review
4. Click Review Now Icon
Once all elements are defined, the next step of OO
methodology is to model and diagram use cases using
these elements.

You might also like