As we began to learn about Java technologies at Amway Corp, we were introduced to UML (Unified Modeling Language).
We became interested in the modeling aspect of UML to assist in the analysis and design phases of our Java project.
So we decided to try our hand at modeling with UML.
It began with 2 week-long training classes.
1) Object-Oriented Analysis with UML
In order to successfully migrate our mainframe application to a Java/application server based solution,
we had to figure out how to migrate our batch processes.
We had a very good start, in achieving this, by utilizing the LaunchClient command and J2EE Client programs.
It was just a matter of putting the remaining pieces together into a working solution.
For us at Amway Corp, a key part of creating batch processes, with Java, was using the LaunchClient command and
J2EE Client applications. We felt we were very close to being able to run our Java batch processes on the
application server. But more trials and tribulations were ahead of us.
We created a J2EE Client application\program that would call a "hello world" EJB.
Our first Java application (10 years ago) was a migration of a legacy application.
The legacy application consisted of a number of screens and a number of batch processes.
Migrating the screens to Java technology seemed straight forward.
In theory, they would be a direct use of the MVC pattern (EJB, JSP, Servlet). Easy.
Our Java application supports my company's (Amway Corp) Customer and Sales Compensation areas.
This is a very unique and complex part the Amway's business model.
The application requires a large database to store business-related data.
The database consists of dozens of tables and millions of rows.
It contains transactional data and summarized data.
The size of the database grows daily.
As our Java project progressed, we began to add new members to our development team.
This meant many resumes to review and many interviews to conduct.
It was to become quite a time consuming chore for the interviewers.
During a portion of the interview, a series of technical questions about Java are asked.
During the initial architecture and analysis of our J2EE-based application,
one Java issue generated a lot of attention on our team : Enterprise Java Beans or EJBs.
Should we use EJBs?
What flavor of EJBs should we use?
At the time, we received no practical advice on EJB usage.
We got a lot of general advice. "Use what is best for you, etc."
In the beginning, our development team had no Java experience at all.
Most of us were mainframe developers with a decade or so of IT experience.
We realized that not only did we need Java training, but we needed training
on object-oriented concepts as well. It seemed like a very challenging goal to achieve.
One of the reasons we chose our particular Java software tools vendor
When we starting planning how we were going to use Java technology at Amway (10 years ago);
we realized we had many decisions to make about standards to adopt, practices to learn,
architectures to use, patterns to follow, etc.
Fortunately for us, there were many sources of information to help us figure all of this out.
10 years ago, when we were decided to use Java technology to create a new application,
for use at Amway Corp; we thought it was sufficient to say, "We are using Java!".
We were wrong...
We quickly realized that there was Java 2 Standard Edition and there was Java 2 Enterprise Edition.
Since we were architecting our application to run in an application server-based environment,