2.1.3 The development process

Geac uses a development process based around the Rational Unified Process, but heavily modifies it. Development process refers to a process that starts at project inception and goes all the way through deployment onto the customer’s site. Rational Software is the prime contributor to the Rational Unified Process.

A key process difference to the normal Geac approach is that the process is iteration-based, rather than traditional waterfall based. The process splits the project into several smaller deliverables rather than one large deliverable at the end of the project. Therefore, a project can consist of several smaller iterations each with identifiable, measurable objectives. Another key difference is that the process focuses on risk elimination. The idea is that identified high risks (for example, potential technical problems) are addressed early on in the process to avoid large surprises later on. This reduces the risk of costly failures late in the project. For more information, see:

http://www.rational.com

The architecture has a key role to play in the development process. Early in the process, any requirements that may impact the architecture, such as the “user interface is going to be Web-based and PC client-based“, are taken into account and the risk is assessed. When there are high technical risks to a project, these risks are mitigated in an “elaboration phase”, which attempts to develop a “proof of concept” deliverable that focuses on the specific risks.

A risk that Geac identified was the need to re-use the existing System21 RPG code base for a specific business function. Geac saw this as a high risk area, because of the different technologies involved and potential performance considerations. If a viable solution could not be found, this would greatly increase the cost of the project because of the need to rewrite large parts of existing business logic in Java.

2.1.4 Implementation

All software development is carried out under VisualAge for Java 3.5.4. Developers test and deploy locally in the WebSphere Test Environment before testing on the iSeries server. The database is always DB2 Universal Database (UDB) for iSeries. Geac uses a shared VisualAge Repository for Source Code control.

2.1.5 The design methodology: Using Unified Modelling Language

Geac uses the Unified Modelling Language (UML) for both high-level and detailed design. It uses Rational Rose as the design tool that supports UML.

Geac’s design methodology is more a component than strict object-oriented (OO)-based design. It designs and implements course grained components based around business subsystems. Each of these subsystems has one or more defined interfaces.

10Geac System21 commerce.connect: Implementation on the iSeries Server

Page 22
Image 22
IBM SG24-6526-00 manual Development process, Implementation, Design methodology Using Unified Modelling Language