What's Wrong With Application Software? - A Possible Solution? What Is It, Why And How Does It Fit Into Your Future

  • Written By: Olin Thompson
  • Published On: May 12 2003



Introduction

In the series, "What's Wrong With Application Software" we explored key challenges found in enterprise applications. We also discussed the characteristics of next generation architectures that would provide better support for applications. While the series ran, we received a lot of feedback. The messages we received both validating the problems and pointing to some potential answers. A number of vendors are working on solutions (see "What are vendors doing about it") and we are encouraged by their efforts. The first step to moving ahead is accepting that the current generation of solutions is not meeting the needs, and the vendors clearly see the need for improvements.

Evaluating the approaches leads us to a possible solution, a promising approach known as the Model Based Architecture.

Model Based Architecture, What Is It?

Model Based Architecture, and the related Model Driven Architecture, are application development frameworks that allow software applications to be described in terms of what they must do (the business view of the software) rather than how they must do it (the technical view of the software). Model Based Architecture puts the emphasis on designing the business processes and the business rules up front to make sure that business functionality is complete and correct before coding begins. The modeling approach allows visualization of the intended solution so that business analysts, end-users and developers can ensure that business needs are met before implementation in software code renders changes difficult and expensive to make. Using the model, the framework automatically generates the executable application instead of a programming team manually converting the specifications into software. This code generation increases development efficiency and typically allows generation onto a range of platform choices. Model Based Architectures are being used for custom development and are now appearing in packaged application products.

Why?

Early adopters are learning that Model Based Architectures create significant efficiencies throughout the application lifecycle. Some statements by vendors include:

Vendor Claim
Arius Software Corporation www.ariussoftware.com Overall project costs using Model Based Architecture may be as little as one-tenth of the traditional approach and typically generate savings in excess of 50%.
Gentastic!
www.gentastic.com
Allows software development teams to achieve greater structure, speed and quality for any software platform, any architecture, any technology.
Interactive Objects Software
www.io-software.com
Customer Deutsche Bank completed a major customer project with 40% the effort of more traditional approaches
Ramco Systems
www.ramco.com
Projects take half of the time compared to using traditional development approaches and significantly reduced costs.

Ramco also recently introduced a series of application products based on their Model Based Architecture (see Ramco Systems' Users) that appear rich in both functionality and technology.

When compared to the requirements discussed in the series, "What's Wrong With Application Software":

What's Wrong with Applications? Model Based Architecture
It's the Economics (See "What's Wrong with Applications It's the Economics") Academic research is beginning to show significant reductions in the time, effort and cost to build applications using Model Based Architecture. Customizations, which have traditionally been viewed as an undesired practice, become much more sustainable because of automation. The high cost of rebuilding applications as technologies change is greatly reduced because the business process and rules of the application are stored independently from the software code, and can be re-generated onto new architectures.
Businesses Change (See "What's Wrong with Applications Business Changes, Software Must Change With The Business") Business changes are analyzed based on changes to business processes and business rules. The impact on the application can be assessed, and changes can be incorporated and visualized by the business analysts. Once the business is satisfied with the new application, new application code can be automatically generated.
Businesses are Unique (See "What's Wrong with Applications Businesses Really Are Unique One Size Can Never Fit All") Applications using Model Based Architectures are built on business processes and rules. This allows business analysts to understand and make customizations to the application without compromising the quality of the application. Model-based applications replace complex switches and tables to configure the application with simple changes to rules. Custom applications can be built rapidly for very unique businesses or business functions.
Business Processes Cross Application Boundaries (See "What's Wrong with Applications Business Processes Cross Application Boundaries") Business processes are defined externally to the underlying applications. Existing applications can be assembled into new, composite applications to support business processes. The business process layer shields the users from the complexity of multiple systems. New functionality can be rapidly developed to provide support where existing applications fall short to fill the gaps.
Quality While not specifically addressed in the series of articles, software quality is another frequently discussed problem with enterprise applications. Model Based Architectures allow for less complexity in the code and significant automation of the software code development, which promises to result in significantly increased application quality.

Another reported advantage is that, organizationally, projects have shown a shift of control to the business analysts and end-users and better communications between the user community and IT.

How Does It Fit Into Your Future?

Can you abandon your existing infrastructure and go to a model-based world today? Yes, in theory, but that will not prove practical to the vast majority of enterprises. For most of us, our IT world is a mix of multiple applications, technologies, etc. Model based architecture is a tool to rationalize business processes without ripping out the current investments in applications that most companies have made. It is a tool that leverages existing applications and fills in the cracks that exist in your business processes. When combined with business process components written with Model Based Architectures, it allows for the efficient construction of complex applications.

Summary and Recommendations

In many ways, the ideas behind Model Based Architectures are not new; many approaches to technology share a lot of of the same basic concepts. What makes Model Based different today is that it practical, proven and changing some of the basic rules of software.

Is this the beginning of the Model Based Architecture hype cycle or a real break through in how we build, implement, support and enhance applications? Early adopters are seeing positive results with Model Based Architectures. Research by universities is validating both the approach and the effectiveness. Model based architectures deserve to be on an enterprise's "technologies to watch" list. Pilots are justified given the long-term potential seen by those with actual experience. Those companies who see technology as a key to their competitive advantage should start now with a pilot.

About the Authors

Jim Brown is the President of Tech-Clarity Associates; a consulting firm dedicated to helping software companies communicate the value of their offerings to their market (www.tech-clarity.com). He has served as a marketing executive for software companies specializing in PLM and process manufacturing solutions and has over 15 years of experience in management consulting and application software. Jim can be reached at jim.brown@tech-clarity.com.

Olin Thompson is a principal of Process ERP Partners. He has over 25 years experience as an executive in the software industry. Olin has been called "the Father of Process ERP." He is a frequent author and an award-winning speaker on topics of gaining value from ERP, SCP, e-commerce and the impact of technology on industry. He can be reached at Olin@ProcessERP.com

 
comments powered by Disqus