Subscribe

Models, patterns key to app development


Johannesburg, 18 Mar 2005

Software developers were challenged to embrace model-driven, pattern-based application development at a J2EE application development forum hosted by Compuware SA and ITWeb in Rosebank yesterday.

Jan Bank, Compuware`s Amsterdam-based application development and integration expert, defined a software design pattern as "a common solution to a common problem in a given context".

Bank said the benefits of patterns are widely accepted by programmers, but looking forward, more is needed. For the application development process to benefit from patterns, a reliable and faster implementation is necessary.

This can be achieved by following a development process based on Model-Driven Architecture (MDA), said Bank.

MDA is a standards-based framework for software development, defined by the Object Management Group. The importance of models in the software development process is key to MDA.

Bank pointed to global research showing dismal statistics in software development projects: 44% run over budget, 30% are cancelled, 60% are not considered a success and 90% are delivered late.

[VIDEO]He touted the MDA framework as "a cost-effective way to produce an application through a repeatable production process, with a predictable outcome in terms of quality, on time".

According to Bank, significant productivity and return on investment gains are possible by following an MDA-based development process. However, he stressed that J2EE expertise is still critical.

"J2EE design patterns are captured in transformation patterns, which makes them reusable. But we don`t believe translations can automate everything to everyone`s satisfaction and in all cases. As a technology and application expert, your J2EE skills remain critical."

Heinz Kabutz, CEO of Cape Town-based Java development firm Maximum Solutions, shared his experience of using design patterns in real-life.

[VIDEO]He compared software design patterns with vintage wines. "Design patterns are like good red wine: you cannot appreciate them at first, but as you study them you learn the difference between 'plonk` and vintage. As you become a connoisseur, you experience the various textures you didn`t notice before. But once you are hooked, you will no longer be satisfied with plonk."

Kabutz encouraged developers to learn patterns and said there was a need for BBPEE in the software development sector in SA. "BBPEE stands for Broad-Based Patterns Educational Empowerment.

"Programmers become more effective when designing with patterns, and knowing the basic patterns helps you understand new patterns easily," he concluded.

Share