What Managers Need to Know
Software is becoming highly automated. Companies are replacing their traditional, hard-wired applications with composite web applications. Composite web applications are a new generation of software applications that are lightweight, dynamic and much more business-responsive than the monolithic applications of the past.
Companies build composite web applications from web services and other software components. However, instead of programmers in the Information Technology (IT) Department painstakingly crafting each application, the application automatically assembles itself from components right before the user uses it. A major breakthrough in software automation, web services are "chunks" of digitized business functionality that companies can publish, share, embed and exchange ad infinitum over the web without the technical gymnastics of the past. Finally, companies are using software process automation to change software development from a "black art" completely dependent upon highly trained technical experts, into a tool that business people can use.
The ubiquity of the Internet has made software essential to creating customer value and service experiences. Yet, the people charged with creating customer value and service
experiences business managers and specialists in the past have been kept at arm's length from software development because of its technical complexity.
No more. With these three dramatic changes in software composite web applications, web services and software process automation non-technical businesspeople are now able to "turn the knobs" on software development.
Software's Perfect Storm
Software's Perfect Storm is the collision of three major trends. The first trend is that of software morphing into services delivered over the web, a new form of computing that's being called web services. The second trend is composite web applications, lightweight business software programs assembled dynamically, at runtime and near the "point of consumption," from web services and other software components. The third trend is software process automation; this is replacing the traditional programmer-dominated method of building software, with a fast-paced, collaborative process among technical experts and business people.
All three trends are forms of software automation. Web services are the automation of data and business processes chunks of automation that can receive commands, interpret them, act on them and deliver responses, all without human intervention. Composite web applications are the result of automating the integration of web services and software components. Software process automation is the process of streamlining the business of software development.
Businesses can now export their "core competencies" the things that the company does best and accrues the most value from in the form of reusable web services and other
software components. Businesses can then knit these components into customized applications for various audiences. In the past, technology constraints made such business integration and customization prohibitively difficult and expensive.
Software process automation involves transforming software development into a highly automated and repeatable business process, much like engineering or manufacturing. With software process automation, many lightweight "just-in-time" composite applications replace painstakingly crafted, hard-wired and monolithic applications. "Robots" replace most of the low-level, repetitive work that's today done by programmers. Programmers and IT staff can run "what-if" scenarios that test the effect of software on different business goals. Business managers can manipulate and even create applications, and experiment with different market scenarios.
Like the weather events that created the original Perfect Storm, web services, composite web applications and software process automation are inexorably intertwined. So much that so that businesses that try to capitalize on composite applications without the facility to fully exploit these applications that is, without web services and an automated assembly strategy will find themselves weighed down with application backlogs that rival those of the client/server days. Conversely, businesses that hyper-automate software development without embracing web services and composite applications will miss out on the opportunity to efficiently "customize the corporation" for every customer, partner or employee.
Software Process Automation: Changing the Rules
Unfortunately, traditional software development hard-wired applications created by programmers is no match for the variability and dynamic nature of composite web applications. As businesses adopt increasingly complex composite applications with many "moving parts," the time and cost of creating, deploying and managing these applications increase exponentially (see Figure 1.)
The problem with traditional software development is, simply put, people. Companies need to get revolutionary productivity gains from their software development processes. Simply automating programmers' methods isn't enough. Businesses must evolve their development processes into hyper- or multi-automated processes fueled by more built-in intelligence instead of today's linear and serial development processes.
Fortunately, the effort to develop and commercialize technologies that build more intelligence into software development is moving quickly. Technologies in various stages of development and commercialization include domain engineering, generative programming, and software design patterns.
However, beyond software programmer and process automation, businesses must look for technologies that encapsulate software design intent in ways that business people can use it. In other words, businesses have to mainstream software development as a business process. As software development becomes increasingly strategic to company growth, software development has to evolve from a model driven by programmers to a model driven by line-of-business people. Businesses need to empower programmers to address, integrate and repurpose e-business applications, and business people to manage their daily operation, change and customization.
In other words, we need to change the "manufacturing process" for software. A major development in this area is the application of parametric modeling, a time-tested technique from discrete manufacturing, to the process of creating composite web applications. We call this new discipline parametric software automation.
Parametric software automation changes the economics of software development (see Figure 2). It lowers the time and cost of developing composite applications by enabling (1) programmers to build models that capture the process of assembling applications; (2) models to generate thousands of different variations; and (3) non-technical business people to create, modify and publish applications by editing the parameters of these models.
Parametric software automation essentially brings "design" much closer to the actual end-user of the application, eliminating costly and time-consuming programming.
After years as an esoteric, back-room function, software development is about to become part of the businessperson's arsenal, beginning with web services and composite web applications, and accelerating with hyper-automation technologies such as parametric software automation.
More can be found at: http://www.bowstreet.com/resources/whitepapers
Source: Bowstreet
Front Page
A Seismic Shift in Business, A Perfect Storm in Software
BOWSTREET BUSINESS WEB FACTORY Data Sheet
Gartner Files: The Future of Web Services: Dynamic Business Webs
Gartner Files: Service-Oriented Development of Applications: SODA Pops
Gartner Files: The 90/10-10/90 Rule for Portal Deployment
Gartner Files: Bowstreet Refocuses as Web Services Become Mainstream
Bowstreet Web Services Report Web Letter is published by Bowstreet. Additional editorial material supplied by Gartner, Inc. © 2001. Editorial supplied by Bowstreet is independent of Gartner analysis and in no way should this information be construed as a Gartner endorsement of Bowstreet's products and services. Entire contents © 2001 by Gartner, Inc. All rights reserved. Reproduction of this publication in any form without prior written permission is forbidden. The information contained herein has been obtained from sources believed to be reliable. Gartner disclaims all warranties as to the accuracy, completeness or adequacy of such information. Gartner shall have no liability for errors, omissions or inadequacies in the information contained herein or for interpretations thereof. The reader assumes sole responsibility for the selection of these materials to achieve its intended results. The opinions expressed herein are subject to change without notice.
|