Digital Technical Journal, Number 6, February 1988
Total Page:16
File Type:pdf, Size:1020Kb
Digital Technical Journal < Number 6 February 1988 Managing Editor Richard W. Beane Editorial Staff Editor -Jane C. Blake Production Staff Production Editor- Helen L. Patterson Designer- Charlotte Bell Interactive Page Makeup -jonathan M. Bohy Advisory Board Samuel H. Fuller,Chairman Robert M. Glorioso John W. McCredie Mahendra R. Patel F. Grant Saviers William D. Strecker Victor A. Vyssotsky The Digital Technical journal is published by Digital Equipment Corporation,77 Reed Road, Hudson, Massachusetts 0 I 7 4 9. Changes of address should be sent to Digital Equipment Corporation,attention: List Maintenance, 10 Forbes Road,North boro, MA 01532. Please include the address label with changes marked. Comments on the content of any paper are welcomed. Write to the editor at Mail Stop HL02·3/KI I at the published-by address. Comments can also be sent on the ENET to RDVAX::BLAKE or on the ARPANET to BLAKE%RDVAX.DEC@DECWRL. Copyright© 1988 Digital Equipment Corporation. Copying without fee is permitted provided that such copies are made for use in educational institutions by faculty members and are not distributed for commercial advantage. Abstracting with credit of Digital Equipment Corporation's authorship is permitted. Requests for other copies for a fee may be made to the Digital Press of Digital Equipment Corporation. All rights reserved. The information in this journal is subject to change without notice and should not be construed as a commitment by Digital Equipment Corporation. Digital Equipment Corporation assumes no responsibility for any errors that may appear in this document. ISBN 1·55558-005-X Documentation Number EY-8259E-DP The following are trademarks of Digital Equipment Corporation: DATATRIEVE,DEC, DECjCMS,DEC/MMS, DECnet, the Digital logo,EDT, FMS, PjOS, RALLY,Rdb, ReGIS,RMS, RSTSjE, RSX,TEAMDATA, VAX, VAX COD, VAX COBOL GENERATOR,VAX DECjTest Manager, VAX GKS,VAX NOTES,VAX PHIGS, VAX SCAN, VAXset, VAX SOFTWARE PROJECT MANAGER, VAXstation, VAXstation lljGPX, VAXTPU, VAX VALU, VAX VTX, VMS,VT, VT52,VT IOO, VT200 BASIC is a trademark of Dartmouth College. BASIS is a registered trademark of Battelle Development Corporation. HPGL is a trademark of Hewlett-Packard Company. IBM is a registered trademark of International Business Cover Design Machines Corporation. Lightspeed is a trademark of Lightspeed Computers,Inc. The helix of the DNA molecule depicted on our cover is a Macintosh is a trademark of Apple Computer,Inc. visual metaphor for software productivity tools, the theme of Postscript is a trademark of Adobe Systems, Inc. this issue. just as the encoded DNA molecule serves as a tem PowerHouse is a registered trademark of Cognos,Inc. plate for the synthesis of new forms, so software productivity UNIX is a registered trademark of American Telephone & languages and procedures serve as tools for the development Telegraph Company's Bell Laboratories. of new software programs. The image was created using the Xerox is a registered trademark of Xerox Corporation. Lightspeed System. X Window System is a trademark of the Massachusetts Institute of Technology. The cover was designed by Barbara Grzeslo and David Carroll Book production was done by Digital's Educational of the Graphic Design Department. Services Media Communications Group in Bedford,MA. Contents 9 Foreword William J. Heffner Software Productivity Tools 1 0 VAX/VMS Software Development Environment Bert Beander 20 Software Productivity Measurements Anne Smith Duncan and Thomas J. Harris 28 Language-Sensitive Editor Glenn Lupton 4 0 VAX SCAN: Rule-based Text Processing Software Stephen R. Greenwood 51 Software Productivity Features Provided by the Ada Language and the VAX Ada Compiler Robert A. Conti 62 Programmer Productivity Aspects of the VAX GKSand VAX PRIGS Products Brian A. Axtell, William H. Clifford , Jr., and Jeffrey S. Saltz 71 The VAXRALLY System - A Relational Fourth-Generation Language Lewis Lasher 80 V7X and VALU- Software Productivity Tools for Distributed Applications Development Linda E. Benson, Michael Gianatassio, Jr., and Karen L McKeen 91 Pragmatics in the Development of VAX Ada Ronald F. Brender, Bevin R. Brett, and Charles Z. Mitchell I 0 1 Development of a Graphical Program Generator Steven J. Grass 110 Project Management of the VAX DECjTest Manager Software Version 2.0 Linda Ziman and Martin Dickau 117 Development of the VAX NOTES System Peter D Gilbert I 2 5 Software Usability Engineering Michael D. Good Editor's Introduction tures of the Ada language and the additional features provided by Digital's implementation. High-level, functional interfaces for graphics pro gramming, specifically the VAX GKS and VAX PHIGS implementations, are the topics of our next paper. 13rian A..-xtell, Bill Clifford, and jeff Saltz relate how these interfaces have made graphics programming easier and describe the common architecture on which both products are based. The designer of a software tool is sometimes faced with the dilemma of choosing between flexibility and ease of use. Lew Lasher discusses how the designers of VAX RALLY, a forms-based fourth-genera Jane C. Blake Editor tion language, resolved this issue through the design of RAI.LY's application definition system and run-time environment. This issue of the Digital Technical journal features Also designed for application development, the papers on software productivity tools that assist pro VAX VTX and VA.'( VALU tool set allows the develop grammers in the development of high-quality, reli ment and integration of applicatons in distributed, able software. In addition to papers about these heterogeneous environments. Linda Benson, Mike tools, we also present several papers that examine Gianatassio, and Karen McKeen describe the VTX and innovative project practices developed by Digital VALU features and how these serve to enhance pro engineers to improve productivity. ductivity. Our first paper looks at the set of tools developed The next four papers offer insights into some of to support all stages of the software life cycle, from the tools and techniques used by Digital software the requirements and specification 5tages through engineers to reduce project development time. In the maintenance stage. Bert Deander gives an the first paper, Ron Brender, Devin Brett, and Charlie overview of each of the tools and describes how their Mitchell describe how their use of automation, strong integration provides for a rich development instrumentation, self-checking, and self-description environment. not only saved development time but also con Our second paper is not about a software tool, but tdbuted to the VAX Ada compiler's performance. rather about a study to determine to what degree Next, Steve Grass discusses a new approach devised software wols and new development methods are to manage the development of a then unprecedented contributing to reductions in project cost and to graphical interface, the VAX COBOL GENERATOR increases in product quality. Anne Smith Duncan and software. In the third paper, Linda Ziman and Martin Tom Harris discuss the influences on sofrware pro Dickau attribute significant time savings and product ductivity and present findings for three productivity improvements to an iterative approach and the soft metrics. ware tools used to develop the VAX DECjTest Man The subject of the next paper is the VAX Language ager software. One of these tools was the VAX NOTES Sensitive Editor, an imporrant component of the computer conferencing system, which is the topic of VAXfVMS software development environment. Glenn the fourth paper. Peter Gilbert reviews the innova Lupton reviews the research on which the require tive design and development strategies that led to the ments for this advanced text editor were founded and success of NOTES and describes several key product then describes the design of various LSE features. features. The next two papers are about languages that have In our final paper, Michael Good discusses the been integrated with the VMS environment and three principal activities of software usability engi provide programmers increased efficiency in the cre neering. He also gives examples of how this user-ori ation of programs. First, Steve Greenwood describes ented approach has contributed tO software product the VAX SCAN product and gives examples of how design at Digital. this rule-based text processing language simplifies We thank John Henning for his help in preparing the building of software, thereby reducing program this issue. development time. Next, Bob Conti presents an infor mative discussion of the inherent productivity fea- 2 Biographies Brian A. Axtell A principal software engineer in the Core Applications Group, Brian Axtell is the project leader and supervisor for the VAX PHIGS product. Joining Digital in 1980, Brian co-designed the Base Graphics Archi tecture, the VAX PHIGS and VAX GKS products, and was also the project leader in the development of VA X GKS. He earned a B.S. in meteorology ( 1978) and a B.S. in computer science ( 1980) from the Pennsylvania State University. Brian is a member of the ACM, the SIGGRAPH Special Interest Group, and the AmericanMeteorological Society. Bert Beander Bert Beander, a consulting software engineer, joined Digital after receiving his Ph.D. and M.S. degrees in computer sciences from the University of Wisconsin in Madison. Prior to his current work in the area of programming env ironments with the Technical Languages and Environments Group, he supervised the VAX Debugger and the VA X Perfor mance and Coverage Analyzer (PCA) projects and also served as project leader in the development of PCA version 1 and the Debugger versions 3 and 4. Bert is a member of the ACM, SIGPLAN, and SlGSOIT. Linda E. Benson Linda Benson, a principal engineer, is the project leader and supervisor for the VAX VTX and VAX VALU products. Previously, she was development engineer and project leader for the VAX Run-time Library and has also been involved in a project to produce terminal front-ends. Prior to joining Digital in 1979.