Puse 78 če PO WEEKNAPBLICATIOM DEVELOPMENT. / JuY 17, teo a | APPLIED INTELLIGENCE | MM SA As Standards, Tools Promise Big Productivity Gains This is Part 2 of a series of articles on IBM Systems Application Ar- chitecture (SAA). Imtegrat- ed computing environments such as SAA will have a ma- jor impact on the software technologies of the 905. SAA is based on a well-defined architecture and a set of censistent standards that define how applications are built. The use of stan- dards and architectures is not new to the computer industry. Standards orga- nizations have been in place for years. There is always a conflict between standards-setting organizations and ven- dors developing proprietary products. A primary function of standards is to cre- ate an open environment. However, ven- dor-imposed standards are often de- signed to lock customers into a propri- etary environment. Some de facto standards are set simply because one product, becomes widely used. The standards for databases, commu- nication facilities and languages have all focused on the funetionality supported by these technologies. Over the last few years the importance of standard appli- cation arehitectures has emerged. Many vendors are pu! 5 "en developing standard application envi: ronments. Standards organizations are wrestling with the same issues. The Open Soft- ware Foundation was organized to ad- dress the issues of Unix environments and is using IBM's AIX as the basis for (he future development of a Unix stan- dard. lis goal is to provide an open framework for application development that does not lock a customer into a sin- gle-vendor environment. The American National Standards In- stitute is also looking at these issues and is working on a standard for the critical base technology of a repository. A re- pository will contain full application specifications that can then be used to generale applications for particular en- ents. A common repository of de- se tting inereasing emphasis Communication Services (CCS). Let's look at how each of these encap- sulates some of the repetitive work of application development. Common User Access Every application has a user inter- face. The developer must design the user interface and implement it. In the past, user interfaces were developed at the convenience of the programmer. The us- ability of the interface was secondary to simply getting the application to work: Today, everyone recognizes the value of a good user interface—it changes the relationship between users and applica- tions. Poorly designed interfaces make Developit Applleatlons for SMA Code Soul ie Bele tabo Modtales Bat Mlurye BA AS CotrititoH Brogramtnlag titetface Ful fetiš Praditatitiable Wotkstatioh | [Mi dni Hialogiit latartacaš SAA provides a powerful means Jor programmers to avoid many repetitive and difficult tasks of application develop- ment not directly related to application-functional logic. Bei opadl (ications is im essential compo- nent of computer-aj few E neering tools. n.o nesem and vendors alike are € value of specifying standard applica- | the user a slave to the a lication and podn nan ing architectures. Whenever a force the user to learn an šle K škem sm gem application develop- that is unigue to the application. With a eh tifed, a standard way good interface, the user is in control and ane Ii Mara a tool to the application becomes a tool, ' | firme it tajen pa gan be built, and the ; zde problem is, its dificult to desi RIO s to build an application is and 8 good user interface. People 4 disagree on wj SM — SAA is an impressive effort, to Without an a a y Ms application environments ronment, there are no consistent tools pereč, single architecture. The result (or building Interfaces, An application me tremendous productivity gains ae uns on one machine can't be SAN ported to another because the tools for re er, peer re td j ccess k the Common mi S The | ing Interface (ceh, and the Common | First, peč vrele a Cotitiutilcatloh fiteace The vast amounts of code needed to connect; different machines is completely hidden. The programmer simply uses high-level verbs that specify program-to- program communications. Again, the repetitive work of connect: ing machines is isolated and encapsulat- ed by the SAA architecture. The archi- tecture allows the programmer to con- centrate on application logic rather than on communication implementation. Only the logtical connections between pro- grams need to be specified. Furthermore, these connections are specified in a con- sistent, standard fashion, independent of machine environment. Common Programming Interface The CPI contains language standards and service standards. The provision of common in-house'services makes SAA a powertful standard. As shown in the graph, the language, user-interface, com- munications and in-house services are all specified as part of the CPI. The graph also illustrates that application modules developed using CPI services exactly mirror the architectural bound- aries of CPI. Another important service supplied by the CPI is database access. There are many different types of data- and file- management facilities available today, and each reguires different implementa- tions in different environments. The pro- grammer has to decide which facility to use and learn how to use it. With SAA, relational database man- agement. becomes tlie standard. Furthe da SeS—5 4, yoLa z a (SAL)—is consistent from environment. to environment. Because SOL deals only with the logical access of data, the pro- grammer is freed from having to write Code to a physical database design. Again, the data access and retrieval is isolated and encapsulated for enhanced programmer productivity. SAA and the tools that enable it pro- vide a powerful means for programmers to avoid many of the repetitive and dif- ficult tasks of application development that are not directly related to applica- tion-functional logic. It does this by architecturally isolating certain elements of application design, specifying stan- dards for those elements and providing tools that enable the standards. Every organization using SAA will certainly benefit from SAA, but even larger benefits can be gained by extend- ing the architecture to better model its own application-development process. Next week, Tll describe the planning functions that are reguired today to pre- pare for the integrated computing envi- ronments of the 19905. 8 interface, eliminating much of the de- bate over what the interface will look like. Then it specifies the tools that will be used to enable that design, thus pro- viding for consistent tools across differ- ent hardware and software environ- ments. In both cases, the architecture isolates and encapsulates a portion of the repetitive programming work. The design chosen for the CIJA is a good interface design, based on Xerox's research and popularized by the Macin- tosh: It was further refined-and devel- oped through user-interface studies at IBM, which enhanced it. with technology acguired from firms with excellent user- interface reputations, such as Metaphor. Satvlceš htertac8 [O lH.Hause Servleiš Jon Avaki There are two levels of tools specifjed for enabling CUA interfaces. One is the presentation interface, which gives the Programmer a high degree of control over building interactive applications, such as ts or graphics pro- grams. The other is the dialogue inter- face, which allows the programmer to specify logically the components of the vn o ii The James Martin Producttvii Series, an information service mani guar- terly, is available through High Pro- ductivity Software Ince., of Marble- interface, such as menus and forms, head, Mass. (. i2- These standard constructs do not have mation on Stiie, aka zenski (8 S be reimplemented, but simply logical- — the United States and Canada) Tech- specifled. The tools do the rest. nology Transfer Institute, 741 10th St., Common Comm Services ma onea Se poioa ae h nurope, The CCS provide the Breatest architec- New St, Ca k kJIH La: LA5 tural simplification for the programmer. United posili 0524) 734 505.