This article is from the Object-Oriented Technology FAQ, by Bob Hathaway firstname.lastname@example.org with numerous contributions by others.
**************** Object Oriented Designer ***************
Prof. Taegyun Kim [email@example.com]
Pusan University of Foreign Studies
Version : Version 1.3.1
Revised : October 6 1994
Let me introduce myself. I am an assistant professor working at Department of
Computer Engineering in Pusan University of Foreign Studies which resides in
Pusan, Korea. My major interest is in software engineering especially in the
area of object oriented methodologies. In teaching courses in systems analysis
and software engineering I found a need for a good case tool that could be used
by my students. Unfortunately, commercial case tools are too expensive for a
university to purchase so I developed OOD. I have spent 17 man months building
OOD. Because this is my first project combining object oriented methods, Motif,
and C++, some of the source code may be a little clumsy. However, it does work
well and it is still evolving. This project is very hard but is also very
interesting. Let's enjoy it together.
P.S.: I am anxious for your criticism or comment on this product. So, if it
works on your system, please respond to me with even a one line (very short)
message. It will give me some encouragement. Moreover please inform me your
status (student, professor etc.) if possible.
--------------- Contents --------------
1. System Environment
2. Building OOD
3. Initializing the Working Environment
6. Reference Books
The Object Modeling Technique [OMT] by James Rumbaugh et al. is a methodology
for object oriented development with a graphical notation for representing
object oriented concepts. Object Oriented Designer [OOD] is a case tool for
constructing the object diagrams defined in OMT. In order to use OOD it is
necessary to understand OMT and its graphical notation. See reference (2).
Why "OMT"? OMT evolved from the Extended Entity Relationship [EER] model which I
have studied since the mid 80's. There are a number of other approaches to
expressing object oriented concepts but I believe that OMT is superior to most
of these. Yourdon's Object Oriented Analysis [OOA] notation, for example, is
another excellent approach to the problem but has some limits in functionality,
particularly with respect to data modeling, that are present in OMT.
Currently, OOD has following primary functions:
- general graphics editor (with limited functionality)
- object diagram layout (with some additions w.r.t. original OMT notation)
- C++ code skeleton generation (header file + source file)
The comments and codes for individual member functions can be documented,
or edited within OOD directly.
The C++ code generator supports inheritance.
I have attempted to make OOD as user-friendly as possible. My students learn to
use it in a day even without a manual. The user-friendliness of OOD is due to my
own object oriented, user interface mechanisms.
Currently OOD generates a C++ code skeleton from an object diagram. I have a
short term final goal to develop an object oriented "environment" with
flexibility and portability. I think that about additional 20 man months effort
could lead me to the final goal. Because I am currently working very hard to
enhance its functionality, I am not especially concerned with system portability
issues at the moment so building OOD on your particular platform may require a
little work on your part. Please inform me of any changes that you need to make
to build OOD on your system.
1. System Environment
OOD was built on a SPARC station running OS4.1.x, X11-R5 and Motif-1.2 and
C++-2.0. OOD has also been successfully built on a SPARC using gcc-2.5.8 and
libg++-2.5.3. It should build on most UNIX systems with X11-R5, Motif-1.2 and a
"reasonable" C++ compiler.
2. Building OOD
1) In ood directory edit the Makefile to reflect your environment
2) run "make depend"
3) run "make"
3. Initialize Working Environment
OOD requires the user to select a working repository in which to store various
output files. If this is the first time you are running OOD:
1) point at the top-menu,
2) select "Environment",
3) select "Setup",
4) define your working repository.
If a working repository has been previously defined, select it:
1) point top-menu
2) select "change to"
3) set your working repository