Application Foundation Templates STREAMLINE SOFTWARE DEVELOPMENT.Resellers and integrators are often in a vulnerable and sometimes perplexing per·plex tr.v. per·plexed, per·plex·ing, per·plex·es 1. To confuse or trouble with uncertainty or doubt. See Synonyms at puzzle. 2. To make confusedly intricate; complicate. position because the products they sell are, by definition, developed by others. Often, vendor-supplied software is either too generic, on the wrong computing platform See platform. , or in a language (Spanish, English) that doesn't fit the specific needs of their target markets. As a result, resellers/integrators either have to spend time making costly modifications to obtain a product that meets their customers' minimum requirements, pay a developer to make costly modifications, or pass on what might have been a potentially rewarding business opportunity. The problem isn't necessarily the absence of advanced technology or a lack of tools, both of which are in abundance. It has more to do with how software suppliers and their distribution partners work in tandem Adv. 1. in tandem - one behind the other; "ride tandem on a bicycle built for two"; "riding horses down the path in tandem" tandem and apply the use of existing technology to attain finished market solutions. Starting from the premise that suppliers often own the technology and application development knowledge while resellers and integrators, who are generally closer to the customer, have domain knowledge, we can imagine enlightened partnerships that acknowledge and leverage the strengths of both parties and then apply the proper technology tools to get results. Unfortunately, this is rarely the case. False Hopes Despite a general understanding of the problem, too many organizations have put on blinders blind·er n. 1. blinders A pair of leather flaps attached to a horse's bridle to curtail side vision. Also called blinkers. 2. Something that serves to obscure clear perception and discernment. and taken a programming-only approach to address it. CASE tools, RAD-based, object-oriented programming object-oriented programming, a modular approach to computer program (software) design. Each module, or object, combines data and procedures (sequences of instructions) that act on the data; in traditional, or procedural, programming the data are separated from the , and other technical fixes from the last 20 years were supposed to alleviate the problem, hastening the arrival of finished products to the market--and to an extent they have. We can now deliver fairly reliable code that runs well and can (sometimes) be migrated from platform to platform (Fig 1). Other organizations have avoided elegant technology solutions and focused solely on finding domain experts, then applying brute programmer (1) A hardware device used to customize a programmable logic chip such as a PAL, GAL, EPROM, etc. See PROM programmer. (2) A person who designs the logic for and writes the lines of codes of a computer program. force to embed em·bed also im·bed v. em·bed·ded, em·bed·ding, em·beds v.tr. 1. To fix firmly in a surrounding mass: embed a post in concrete; fossils embedded in shale. their knowledge into the applications. But the best solution can be found in combining specific advanced technology (application foundation templates) with new business approaches (domain expertise infused into applications by distribution partners) to achieve a solution that addresses everyone's needs--including, not incidentally, those of the customer. Resellers/Integrators As Domain Experts The issue of domain experts is important. They know industry issues, they have faced and solved business problems in their respective industries before and they play a key role in getting an application "right" for the customer. In so doing, they can have a major impact on reducing time to market and the need for costly revisions during and after development. An evolving trend in software development is to use talented people wherever and however they can be found. This means compensating for the fact that a brilliant developer may know nothing about a particular business process or that a vertical market or domain expert might not be technically sophisticated. Providing the environment where such disparate talents can converge con·verge v. con·verged, con·verg·ing, con·verg·es v.intr. 1. a. To tend toward or approach an intersecting point: lines that converge. b. on a business problem is a challenge for all development organizations. For years, many software suppliers, understanding the value of embedding 1. (mathematics) embedding - One instance of some mathematical object contained with in another instance, e.g. a group which is a subgroup. 2. (theory) embedding - (domain theory) A complete partial order F in [X -> Y] is an embedding if industry-specific knowledge in their applications, have turned to resellers and integrators to fill the industry/functionality holes. This enlightened approach is practical, since delivering business solutions requires a broader skill set than simply coding: it requires an understanding of the business environment. The people who have this knowledge are often found in the reseller An organization that sells hardware and software to the general public. Resellers purchase products from software publishers and hardware manufacturers. or consultant communities, not necessarily at the development organizations. This makes sense, since professional development organizations suffer from a common problem: finding enough talented people with the right combination of technical savvy and vertical market or domain expertise. Application Foundation Templates The approach of embedding domain expertise into applications is good but impractical im·prac·ti·cal adj. 1. Unwise to implement or maintain in practice: Refloating the sunken ship proved impractical because of the great expense. 2. , unless a technology can enable easy modifications. Fortunately, that technology has recently emerged in the form of Application Foundation Templates (AFT), which provide 80 to 90 percent of the solution, as well as horizontal functionality and tools capable of integrating with the template (1) A pre-designed document or data file formatted for common purposes such as a fax, invoice or business letter. If the document contains an automated process, such as a word processing macro or spreadsheet formula, then the programming is already written and embedded in the . For the software professional, an Application Foundation Template (AFT) contains a superset A group of commands or functions that exceed the capabilities of the original specification. Software or hardware components designed for the original specification will also operate with the superset product. However, components designed for the superset will not work with the original. of the components, objects, and general functionality typically required to build an application--and offers the benefits of template code template code - Pseudocode generated by an automated CASE system and requiring further hand-coding before compilation. re-usability, ease of maintenance, and easy access to metadata (1) (meta-data) Data that describes other data. The term may refer to detailed compilations such as data dictionaries and repositories that provide a substantial amount of information about each data element. . For the domain expert, the AFT is the environment where technology meets business expertise on an equal footing. Domain experts are usually not software engineers but rather business analysts with particular expertise, or specialty consultants who have experienced and solved similar problems many times over. Therefore, an application foundation template must also: * Be a component-based, point-and-click application specification environment * Enable easy access to metadata by way of self-discovery of the underlying business model * Contain components and structures that know about each other and can be optimally expressed * Be extensible To complete applications, developers should only need to fine-tune the underlying structure and adjust the user interface. For example, using an AFT, a developer would need only to structure reports, arrange graphics, and adjust menus, controls, and so on. About 90 percent of the work would already be done. While programming is still required, it is by nature point and click. Furthermore, it is application specification, not programming in a traditional sense using Java, C, or Visual Basic. In many cases, programmers This is a list of programmers notable for their contributions to software, either as original author or architect, or for later additions. See also: Game programmer, List of computer scientists simply need to modify existing code, inserting their own values into it. This process is significantly different than rapid application development (Fig 2), which, while object-oriented, is still based on a programming model. An application foundation template can provide an important productivity boost, often delivering as much as a ten-fold reduction in the time to market for new applications that are better suited to the demands of a particular vertical market. Benefits Of AFT An AFT environment provides numerous benefits, both technical and economic, to all parties involved with an application. The technical benefits may be most obvious. For example, support is simplified, as support organizations can easily identify foundation vs. application bugs. Once identified, debugging (programming) debugging - The process of attempting to determine the cause of the symptoms of malfunctions in a program or other system. These symptoms may be detected during testing or use by real users. the foundation template positively impacts all applications because the fix gets propagated to all applications derived from the AFT (Fig 3). The same effect is seen in integration. By definition, any applications developed from the same template are completely integrated. So, a third-party retail analysis system developed by one group would integrate with a complementary business system developed by another. But the non-technical and/or financial benefits may be the most significant. First, a properly constructed application in an AFT environment can be language neutral. For the software developer, this means that an application written in English for a corporate headquarters can be re-hosted in Denmark or Poland in the local language without a tedious translation process. This advantage works in both directions, making it possible for application developers in other parts of the world and in smaller markets to develop products with broader applicability. It may be true that good ideas know no national boundaries. However, consider a hypothetical Hypothetical is an adjective, meaning of or pertaining to a hypothesis. See:
The countries of eastern Europe, especially those that were allied with the USSR in the Warsaw Pact, which was established in 1955 and dissolved in 1991. may have written a great application for the home market and then seeks broader distribution. Under "normal" or traditional circumstances CIRCUMSTANCES, evidence. The particulars which accompany a fact. 2. The facts proved are either possible or impossible, ordinary and probable, or extraordinary and improbable, recent or ancient; they may have happened near us, or afar off; they are public or with language or geographic obstacles, the application might sell a few copies in the home market and nothing more. This small distribution may be enough for the developer to make a small return on its initial investment but it also limits further return without significant effort. An AFT-based application could enable easy translation and, depending on the circumstances, easy integration with complementary applications from other sources. This in itself would not assure further distribution for the application, but a community of software houses and users linked by the Internet might be the only thing missing. Suppose a South American software developer builds a discount retail application specification that focuses on metrics metrics Managed care A popular term for standards by which the quality of a product, service, or outcome of a particular form of Pt management is evaluated. See TQM. like gross margin, contribution, inventory, turnover, etc. The software house sells the application to the three largest retail chains in South America, at which point it runs out of prospects for various reasons. Analysts and other professionals in the industry hear about the application and begin asking about possible translations, suitability for integration with other applications or a re-hosting on a different platform. Historically, this would be the beginning of a long consulting project whose outcome would be far from assured. Yet, because the application is based on an AFT, it can automatically modify itself to accommodate a model for drug stores, specialty shops, or even fast food chains if it is of immediate interest to companies in other parts of the world. Further, globalization globalization Process by which the experience of everyday life, marked by the diffusion of commodities and ideas, is becoming standardized around the world. Factors that have contributed to globalization include increasingly sophisticated communications and transportation would be accomplished by using a translator experienced in the vernacular ver·nac·u·lar n. 1. The standard native language of a country or locality. 2. a. The everyday language spoken by a people as distinguished from the literary language. See Synonyms at dialect. b. of the vertical industry to change the (already externalized) vocabulary from, say, Spanish to other target languages. The underlying application would be the same. As this exercise shows, the benefits of leveraging experts to use foundation templates are simply too overwhelming to be ignored. With experts and powerful tools, software suppliers--in tandem with resellers/ integrators--can deliver integrated applications in record time, while customers gain partner-developed, out-of-the-box solutions that incorporate the best practices in their industry area. As globalization continues, corporate IT and international software firms will turn to the AFT as a way to reduce development and deployment costs, as well as maximize profits. The biggest winners in the long run will be customers and end users. They will get applications that are more functional, better integrated, and less prone to errors. Tom Lefort is the vice president of R&D at Pilot Software (Cambridge, MA). |
|
||||||||||||||||||||

Printer friendly
Cite/link
Email
Feedback
Reader Opinion