Application generators: a case study

Size: px
Start display at page:

Download "Application generators: a case study"

Transcription

1 Application generators: a case study by JAMES H. WALDROP Hamilton Brothers Oil Company Denver, Colorado ABSTRACT Hamilton Brothers Oil Company recently implemented a complex accounting and finance system. This system contains 157 reports, 53 online screens, and 1,320 data elements. The system was designed, developed, and implemented in 20 months. Most of the approximately 300 programs contained in this system were developed with an application generator. Using an application generator allowed the project team to complete the coding and unit testing in three months. Based upon the experience acquired in this effort, many benefits appear to be gained by using an application generator in the system development process. These include reduced coding, faster testing, and enforced structured development. However, these benefits must be weighed against the constraints associated with an application generator. These include potential file and processing inefficiencies, limited language syntax, and minimal debugging facilities. 363

2

3 Application Generators: A Case Study 365 INTRODUCTION Hamilton Brothers Oil Company recently developed anew, comprehensive accounting and financial information system. The development of this complex system was accomplished under an extremely difficult schedule. A key ingredient of this project was the use of an application generator language to address the programming requirements. An application generator is a software tool designed to anticipate standard user requirements in a functional area such as accounting and finance. It provides data 'management facilities, autoinated common functions, and a specialized language. The following narrative presents a brief project background, the project's goals, the impact of an application generator language on the system development process, and several key areas to consider for future use of application generators. PROJECT BACKGROUND Hamilton Brothers' senior management decided in January 1980 to terminate its service bureau computer support and implement an inhouse Financial Reporting System (FRS) consisting of five integrated subsystems: accounts payable, accounts receivable, general ledger, joint interest billing, and budget. After a thorough four-month evaluation of 19 different vendors, it was determined that Hamilton Brothers' requirements could only be met either through a total custom development or through significant modifications to an offthe-shelf software package. Amplifying the magnitude of the challenge, the company simultaneously began a major expansion effort. This expansion led to an increase in new key users who would determine the design of the system. In addition, the company had to establish and staff a complete medium-size computer installation. Furthermore, the data to be used in the new system would also require a complex conversion effort from the previous service bureau environment. The target date for implementation of the new system was January, months elapsed time. The plan to accomplish this substantial effort encompassed several critical phases. First, a detailed evaluation of the request for proposal (RFP) responses from the qualifying vendors was accomplished. The selection criteria focused on several topics: optimum use of off-the-shelf software to address user requirements; utilization of the most current software architecture; maximum software flexibility; and a financially and technically sound software vendor. This phase was accomplished in two months, culminating in the selection of the Corporate Financial System (CFS) marketed by American Management Systems, Inc. This system was developed using their application generator (Generation Five) as the under- lying software. It would become the core of FRS after considerable custom modifications. Second, a system concept definition phase was performed to refine the general requirements presented in the RFP. This phase also required two months. Next, a general system design stage was completed requiring six months. With the completion of the general design, there were only 10 months remaining to accomplish the detail design, programming, testing, and implementation phases. It was obvious that new techniques must be evaluated to maximize the efficiency within the programming, testing, and implementation stages. This requirement, coupled with the fact that CFS had been developed using an application generator, led to the consideration of using an application generator to perform the custom development work. PROJECT GOALS As with any project, the ultimate goal is to provide a sound system which meets the user's requirements. However, because of the special nature of the FRS project, there were several ancillary goals to be addressed. First, FRS must be user friendly. To accomplish this, we introduced the concepts of online processing, user controlled parameters, and user report development with minimal support from the data processing staff. We also required a table-driven architecture to provide flexible data modification by the users. Second, FRS must be capable of easy technical modifications and provide a solid base for future expansion. This consideration introduced the need for a structured development methodology and selfdocumenting code. Third, the system development process must take advantage of key development productivity tools. This aspect included online program development, simple report writers, online screen generators, a data dictionary, and a project task plan. Since this was the department's first project, its success was crucial to establishing the department's credibility. The following synopsis of the characteristics of the system provides an insight into the magnitude of the project: 1,300 pages of general design narrative 6,000 mandays for concept definition, general design, detail design, and implementation 25 people assigned full time at the peak point in the project 3,000 pages of automated technical documentation on a data dictionary 1,320 data items 285 programs (most of these were developed in Generation Five or its associated report writer) 157 reports

4 366 National Computer Conference, online screens 102 master tables 132 data files 48 input forms The selection and use of an application generator contributed to the achievement of the project's goals and its timely implementation. The FRS project was completed within one month of the plan which had been developed nearly two years earlier. IMPACT OF THE APPLICATION GENERATOR ON THE PROJECT'S DEVELOPMENT The programming effort was started six months prior to implementation. The project plan allocated approximately 30% of the elapsed time (50% of the total man days ) for all technical facets of the project. At this point, the project leaders reviewed the application generator (Generation Five) marketed by AMS. It appeared to offer several programming advantages over a standard programming language such as COBOL or PLIl. The syntax appeared easy to code and did not seem to require significant training. General housekeeping functions such as opening and closing files were eliminated. Several application unique keywords were included in the syntax. For example, REJECT-BATCH and REJECT DOCUMENT offered easy techniques to reject an entire batch of data or only an individual document within the batch. The online screen generation facility of Generation Five also appeared to provide a relatively simple, high-level technique for developing input/output screens without acquiring the knowledge necessary to develop native teleprocessing code. The structured methodology inherent in Generation Five coupled with its editing facilities offered the potential of eliminating the occurrence of a program dump. The "forced" structured methodology should also require fewer compiles to complete a program developed in Generation Five. The obvious benefit to be gained was increased programmer productivity and reduced machine utilization. The above expectations were developed by the project team prior to using Generation Five for the first time. As the project progressed through the remainder of the development effort, the actual experiences encountered using Generation Five were somewhat different from the expectations. The following narrative is a synopsis of the benefits gained from using Generation Five as an application generator, a discussion of the key problems encountered in its use, and a review of the project team's expectations of Generation Five compared with its actual performance. Problems encountered The initial obstacle encountered by the project leaders was the project members' occasional resistance to using a new software language. The programmers preferred to use COBOL, a familiar tool, to do the development. This issue and the lack of previous experience with any similar product presented many unknown problems in the design process. Without any previous Generation Five experience, the staff was not aware of the constraints inherent in the software. As each design issue arose, such as file merging/sorting or data element storage and retrieval, the options and capabilities supported by Generation Five had to be reviewed. The conclusions reached from the review of supporting documentation occasionally did not match the actual required implementation of the design issue. For example, a file that required both random and sequential processing could be accomplished with only one copy of the file in a COBOL designed system. Under Generation Five, the random file must be copied to a sequential file for sequential processing. For small files, this was not a critical issue; for large files, it introduced excess processing requirements. The thought processes used by the programming team for such typical data processing functions as file access, edit error message generation, and online screen generation also had to be altered. The file access method used by Generation Five is a non-standard technique. This becomes critical when other program languages are used to access the data stored by the application generator. For example, when non-generation Five software is used to update Generation Five data files, those updates are not integrated with the Generation Five recovery facility, thereby increasing the complexity of the backup and recovery function. One of the unique aspects of Generation Five is its ability to automatically generate online and batch edit error messages based upon the section (or paragraph) name used for the portion of code performing the edit. However, this feature eliminates the dynamic characteristics of edit error message presentation. (For example, "COMPANY CODE xx IS INVALID" where xx is replaced by the invalid company code.) The online screen generation capabilities provided by Generation Five allow extremely easy and fast development of either input only screens or output only screens. It does not provide online interactive screen facilities. Other limitations encountered using Generation Five included constraints on the number of data elements allowed in a random file (master table) record plus the inability to allow multiple record types in a file. These two constraints required an increase in the number of random files that had to be defined in the system leading to suboptimal use of storage space. Also, the architecture of Generation Five presented critical throughput problems during compiling and testing. Simultaneous compiles/tests occurring against the same database were prohibited. This forced the project team to create multiple copies of the database to avoid single thread compiling of Generation Five code. While the limitation of simultaneous executions against a single database is inherent in many non-generation Five systems, the single thread compile requirement is unique to this software (because compilation accesses the database). This fact has had a negative effect on the simultaneous development of multiple programs using Generation Five. Benefits gained While several unexpected problems were encountered using Generation Five, it is also true that several benefits were

5 Application Generators: A Case Study 367 gained from its use. The structured architecture and selected keywords enforced programmer standardization. It als-o provided an excellent technique for developing common code included in many programs. These characteristics reduced the amount of code that otherwise would have been required for a typical program. The online screen generation facility eliminated the need to train the project team to program in native teleprocessing code. The code developed to process the online input data could also be used to process the same data in a batch mode. This eliminated the need to develop two sets of processing code, one for batch and one for online. This was a significant benefit given the 53 online screens that were required. Simple "read-a-record, process, write-a-record" applications were coded and tested rapidly. These last two facets of the system allowed very junior programmers to be immediately productive on the project. A major benefit provided by Generation Five is an automatic transaction suspense processing facility. This is implemented through its document database feature. Input transactions captured through online or batch processing techniques reside in a holding file (the document database) awaiting subsequent processing. After processing, the rejected transactions are retained on the document database until corrected, while valid transactions proceed through the remainder of the processing cycle. The invalid transactions can then be corrected as necessary. This feature eliminates the sizable effort required to design, develop, and implement complex transaction-master file processing requirements. A subtle feature of Generation Five is the ability to use identical names for multiple data fields. This feature offers several advantages. First, data fields with the same name are moved automatically from the input record to the output record (without regard to their relative position within the records). This eliminates encoding numerous MOVE statements to accomplish the same objective. Second, data fields can use standard naming conventions not only among multiple programs but also within a program without the use of qualifying syntax. This reduces the coding required and also greatly simplifies tracing the life cycle of a data element throughout all of the software acting upon it. Third, the use of a data dictionary to document Generation Five code is greatly simplified. With standardized data element names enforced through the Generation Five architecture, the number of unique data element names are minimized. This reduces the information to be captured within the data dictionary and enhances its consistency and accuracy. Coding in Generation Five also eliminates the need to open and close data files. While this is advantageous, a greater benefit is achieved by not coding end-of-file logic. Depending upon the application, this may be a very complex function to accomplish in a traditional programming language. Expectations versus actual performance The actual experiences encountered in using Generation Five when compared to the project team's original expectations highlighted areas where Generation Five could be improved. The language syntax did turn out to be relatively easy to code and was no more difficult to learn than another highlevel language. However, while the structured aspect of the language made it self-documenting, the syntax was occasionally confusing to follow. Portions of the software allowed a PERFORM capability (the EDITOR segment of Generation Five) but did not allow nested IF logic. The remainder of the software (the report writer) allowed nested IF logic but prohibited the use of a PERFORM. Several general housekeeping functions were supported and directly contributed to improved programmer productivity both in the coding and testing stages. The use of selected application unique keywords such as REJECT-BATCH or REJECT-DOCUMENT also eliminated the need to code and test these types of routines. Other application unique keywords such as POST or GENERATE (another form of WRITE or PUT command) offered virtually no productivity gains but did relate the function (WRITE) to application oriented terminology (POST). The online screen generation provided the greatest increase in programmer productivity. Fourteen of the sixteen programmers on the project team had never used a teleprocessing monitor and, therefore, had no experience in generating online screens. The Generation Five screen facility provided each programmer with an easy-to-learn tool to perform that function. However, it does lack the interactive characteristics desirable in some applications such as receiving input parameters, retrieving data from multiple files, performing a calculation, and displaying the results. Perhaps the most criticial disappointment in the use of Generation Five was the frequency with which program dumps were encountered. Unlike using COBOL or PLil where the programmer knows how to interpret the dump, this generally was not the case under Generation Five since it would have required highly specialized training. Unfortunately this facet removes a valuable tool from the programmer's arsenal for solving problems. Unless the problem is fairly simple, it may be very difficult to track down under Generation Five. The obvious solution to this problem is to incorporate significant debugging aids within the application generator language to address this area. Perhaps the best measure of the productivity gains provided by this application generator was the relatively brief time required to develop the code through unit testing. The elapsed time for this task was approximately three months, certainly a significant testimony to the potential value of an application generator. Key considerations in selecting an application generator The Hamilton Brothers FRS project team derived several factors that should be considered prior to the future use of an application generator. The initial point to be evaluated is the size and complexity of the impending project. A complex project requiring unique access methods, specialized processing techniques, and/or sophisticated online requirements may not be suitable for development using an application generator. Whereas for less complex systems, project teams should carefully consider the beneficial contribution of an

6 368 National Computer Conference, 1982 application generator to the system development and testing phases of a project. Once a project team concludes that an application generator is an appropriate tool for the project, a careful evaluation of its technical capabilities should be performed. Application generators are inherently oriented to specific functional areas. The selection of the correct application generator for a given functional area is paramount to the ultimate success of the project. The design of a system is directly correlated to the technical capabilities of the underlying software. A limited software tool generally leads to an inefficient system design. Once an understanding of the application generator's capabilities and constraints is developed, the project team must be willing to live within those constraints. The following list identifies several key characteristics desirable in a mature application generator: Provide code usable for both online and batch processing Incorporate facilities to eliminate or minimize program dumps Provide integrated program looping and nested IF processing with self-documenting code Provide online inquiry/retrieval facility with data manipulation and selection features Support a structured development methodology Support standard file access methods Enforce consistent data element naming standards Provide high-level application oriented features such as automated batch balancing and file open or closing facilities Offer easy-to-use debugging aids Provide thorough and accurate documentation with sets of complete examples Provide a simple facility for interfacing with programs developed in a traditional language such as COBOL Offer flexible data storage techniques (i.e., variable length records with multiple record types per file) Provide an integrated online recovery facility for all software (including non-application generator programs) which updates an application generator data file Provide table processing features CONCLUSIONS Hamilton Brothers' use of Generation Five as an application generator language provided several key benefits. It did, however, introduce inefficiencies into the design process that could have been avoided under a COBOL or PLl1 based system. How effective was the project team in meeting the goals of FRS as outlined above? The user friendliness of the system is superior to what existed in the old batch system. Users have complete control, primarily through online techniques, of system parameters. The user report development facility (using the report writer associated with Generation Five) is yet to be attempted. However, it appears that simple reporting can be accomplished by selected users with minimal data processing support. More complex reporting will require direct data processing support. The table-oriented design of Generation Five provides extremely flexible data file modifications, thereby dynamically changing most edit criteria without programmer intervention. Future technical modifications can be easily incorporated into FRS if the code is developed in Generation Five. Non Generation Five online routines will still require extensive technical evaluation prior to implementation. The structured coding requirements of Generation Five were beneficial but were somewhat offset by limitations in the syntax. The implementation of key development productivity tools such as online program development, report writers, screen generators, a data dictionary, and project task planning exceeded the original goals. These tools were critical factors in the success achieved by the project team. The concept of application generators is an innovative technique for improving the quality and timeliness of system development. The facilities provided by Generation Five are beneficial as they exist today. However, the product could be greatly enhanced with a few additional capabilities such as more data manipulation and retrieval flexibility, interactive online processing, and more variable file processing options. American Management Systems has indicated their intention to address these areas in future releases of Generation Five. Generation Five offers a good tool for accounting applications. Its use for other application areas appears, by design, to be limited.

Request for Proposals. The National Center for State Courts (NCSC) requests proposals for the. Graphic Design of Trends in State Courts 2018

Request for Proposals. The National Center for State Courts (NCSC) requests proposals for the. Graphic Design of Trends in State Courts 2018 Request for Proposals The National Center for State Courts (NCSC) requests proposals for the Graphic Design of Trends in State Courts 2018 A six-month contract beginning January 15, 2018 Date of RFP Release:

More information

IBM 3850-Mass storage system

IBM 3850-Mass storage system BM 385-Mass storage system by CLAYTON JOHNSON BM Corporation Boulder, Colorado SUMMARY BM's 385, a hierarchical storage system, provides random access to stored data with capacity ranging from 35 X 1()9

More information

A SERVICE ORGANIZATION S GUIDE SOC 1, 2, & 3 REPORTS

A SERVICE ORGANIZATION S GUIDE SOC 1, 2, & 3 REPORTS A SERVICE ORGANIZATION S GUIDE SOC 1, 2, & 3 REPORTS Introduction If you re a growing service organization, whether a technology provider, financial services corporation, healthcare company, or professional

More information

UNIT - 5 EDITORS AND DEBUGGING SYSTEMS

UNIT - 5 EDITORS AND DEBUGGING SYSTEMS UNIT - 5 EDITORS AND DEBUGGING SYSTEMS 5.1 Introduction An Interactive text editor has become an important part of almost any computing environment. Text editor acts as a primary interface to the computer

More information

1 Overview of Database Management

1 Overview of Database Management 1 Overview of Database Management 1.1 Data, information and knowledge 1.1.1 Data Data is/are the facts of the World. For example, take yourself. You may be 5ft tall, have brown hair and blue eyes. All

More information

TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY

TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY LINGUACULTURE, 1, 2010 TERMINOLOGY MANAGEMENT DURING TRANSLATION PROJECTS: PROFESSIONAL TESTIMONY Nancy Matis Abstract This article briefly presents an overview of the author's experience regarding the

More information

Legacy Metamorphosis. By Charles Finley, Transformix Computer Corporation

Legacy Metamorphosis. By Charles Finley, Transformix Computer Corporation Legacy Metamorphosis By Charles Finley, Transformix Computer Corporation Legacy Metamorphosis By Charles Finley, Transformix Computer Corporation Introduction A legacy application is any application based

More information

Error recovery through programnling

Error recovery through programnling Error recovery through programnling by ALAN N. HIGGINS International Business Machines Corporation ' Kingston, New York INTRODUCTION The requirement for error recovery procedures has existed as long as

More information

The Upside to Active Mail Management - Five Reasons to Actively Manage Mail

The Upside to Active Mail Management - Five Reasons to Actively Manage Mail The Upside to Active Mail Management - Five Reasons to Actively Manage Mail A White Paper from Avalon Introduction As we are all aware, the state of mail management in most organizations is not good. Most

More information

A CALCULATOR BASED ANTENNA ANALYZER

A CALCULATOR BASED ANTENNA ANALYZER A CALCULATOR BASED ANTENNA ANALYZER by Don Stephens ABSTRACT Automated antenna testing has become economical with the MI Technologies Series 2080 Antenna Analyzer. Since its introduction last year, new

More information

DATABASE MANAGEMENT SYSTEMS

DATABASE MANAGEMENT SYSTEMS CHAPTER DATABASE MANAGEMENT SYSTEMS This chapter reintroduces the term database in a more technical sense than it has been used up to now. Data is one of the most valuable assets held by most organizations.

More information

COBOL-IT Developer Studio

COBOL-IT Developer Studio COBOL-IT Developer Studio COBOL-IT Developer Studio is COBOL-IT s Integrated Development Environment. The Developer Studio allows you to develop, debug and maintain your legacy COBOL applications in a

More information

Alberta Pensions Administration Corporation Client Case Study Chooses Fujitsu Legacy Modernization Solution for Mainframe Migration Profile

Alberta Pensions Administration Corporation Client Case Study Chooses Fujitsu Legacy Modernization Solution for Mainframe Migration Profile Client Case Study Alberta Pensions Administration Corporation Chooses Fujitsu Legacy Modernization Solution for Mainframe Migration Profile Located in Edmonton, Alta., Canada, Alberta Pensions Administration

More information

Distribution From: J. A. Weeldreyer Date: April 5, 1978 Subject: Enhancements to the Multics Data Base Manager

Distribution From: J. A. Weeldreyer Date: April 5, 1978 Subject: Enhancements to the Multics Data Base Manager Multics Technical Bulletin To: Distribution From: J. A. Weeldreyer Date: April 5, 1978 Subject: Enhancements to the Multics Data Base Manager Introduction With the advent of MR6.0, the Multics Data Base

More information

NORTH CAROLINA NC MRITE. Nominating Category: Enterprise IT Management Initiatives

NORTH CAROLINA NC MRITE. Nominating Category: Enterprise IT Management Initiatives NORTH CAROLINA MANAGING RISK IN THE INFORMATION TECHNOLOGY ENTERPRISE NC MRITE Nominating Category: Nominator: Ann V. Garrett Chief Security and Risk Officer State of North Carolina Office of Information

More information

Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema

Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Introduction The advanced XML Schema handling and presentation capabilities of Stylus Studio have valuable implications

More information

Chapter 3.12: End-of-Month Procedures

Chapter 3.12: End-of-Month Procedures Chapter 3.12: End-of-Month Procedures Overview This chapter describes essential month-end procedures as well as other items that may be useful to your company as you create and follow a monthly routine.

More information

Supporting Systems Engineering with Methods and Tools: A Case Study

Supporting Systems Engineering with Methods and Tools: A Case Study Supporting Systems Engineering with Methods and Tools: A Case Study Jock Rader and Leslie Haggerty Hughes Aircraft Company and H&A System Engineering Abstract Many projects have applied the Hatley-Pirbhai

More information

Briefing Paper: developing the DOI Namespace

Briefing Paper: developing the DOI Namespace 010123-DOI-NS-paper.doc 1 Briefing Paper: developing the DOI Namespace This briefing paper describes a project that has been commissioned by the IDF for completion during the first half of 2001. The paper

More information

Management Update: Storage Management TCO Considerations

Management Update: Storage Management TCO Considerations IGG-09172003-01 C. Stanley Article 17 September 2003 Management Update: Storage Management TCO Considerations CIOs, asset managers, data center managers and business managers should be aware of the total

More information

Networked Access to Library Resources

Networked Access to Library Resources Institute of Museum and Library Services National Leadership Grant Realizing the Vision of Networked Access to Library Resources An Applied Research and Demonstration Project to Establish and Operate a

More information

CHAPTER. Oracle Database 11g Architecture Options

CHAPTER. Oracle Database 11g Architecture Options CHAPTER 1 Oracle Database 11g Architecture Options 3 4 Part I: Critical Database Concepts Oracle Database 11g is a significant upgrade from prior releases of Oracle. New features give developers, database

More information

Data Conversion Strategies for Yardi Voyager By: David Wolfe President - Lupine Partners

Data Conversion Strategies for Yardi Voyager By: David Wolfe President - Lupine Partners Data Conversion Strategies for Yardi Voyager By: David Wolfe President - Lupine Partners 2 Data Conversion Strategies for Yardi Voyager Is there a list of software systems that Yardi Voyager can convert

More information

Accelerate Your Enterprise Private Cloud Initiative

Accelerate Your Enterprise Private Cloud Initiative Cisco Cloud Comprehensive, enterprise cloud enablement services help you realize a secure, agile, and highly automated infrastructure-as-a-service (IaaS) environment for cost-effective, rapid IT service

More information

CHAPTER 3: DAILY PROCEDURES

CHAPTER 3: DAILY PROCEDURES Chapter 3: Daily Procedures CHAPTER 3: DAILY PROCEDURES Training Objectives Actively participating during this chapter helps you to: Understand the different types of transactions and the procedures for

More information

An Intelligent Method for Searching Metadata Spaces

An Intelligent Method for Searching Metadata Spaces An Intelligent Method for Searching Metadata Spaces Introduction This paper proposes a manner by which databases containing IEEE P1484.12 Learning Object Metadata can be effectively searched. (The methods

More information

Strategic IT Architectures and The SAS System A Case Study of the Application of The SAS System within British Gas Trading

Strategic IT Architectures and The SAS System A Case Study of the Application of The SAS System within British Gas Trading Strategic IT Architectures and The SAS System A Case Study of the Application of The SAS System within British Gas Trading Presenters: John Ingram - British Gas Trading Ty Sapsford - OCS Consulting Plc

More information

IMI WHITE PAPER INFORMATION MAPPING AND DITA: TWO WORLDS, ONE SOLUTION

IMI WHITE PAPER INFORMATION MAPPING AND DITA: TWO WORLDS, ONE SOLUTION n ao in i f rpp a t IMI WHITE PAPER INFORMATION MAPPING AND DITA: TWO WORLDS, ONE SOLUTION Abstract Introduction Information Mapping is a structured writing method with a long and successful history. It

More information

ECE519 Advanced Operating Systems

ECE519 Advanced Operating Systems IT 540 Operating Systems ECE519 Advanced Operating Systems Prof. Dr. Hasan Hüseyin BALIK (10 th Week) (Advanced) Operating Systems 10. Multiprocessor, Multicore and Real-Time Scheduling 10. Outline Multiprocessor

More information

LESSON 13: LANGUAGE TRANSLATION

LESSON 13: LANGUAGE TRANSLATION LESSON 13: LANGUAGE TRANSLATION Objective Interpreters and Compilers. Language Translation Phases. Interpreters and Compilers A COMPILER is a program that translates a complete source program into machine

More information

CAPACITY PLANNING FOR THE DATA WAREHOUSE BY W. H. Inmon

CAPACITY PLANNING FOR THE DATA WAREHOUSE BY W. H. Inmon CAPACITY PLANNING FOR THE DATA WAREHOUSE BY W. H. Inmon The data warehouse environment - like all other computer environments - requires hardware resources. Given the volume of data and the type of processing

More information

Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications

Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications Multi-threading technology and the challenges of meeting performance and power consumption demands for mobile applications September 2013 Navigating between ever-higher performance targets and strict limits

More information

System/370 integrated emulation under OS and DOS

System/370 integrated emulation under OS and DOS System/370 integrated emulation under OS and DOS by GARY R. ALLRED International Business Machines Corporation Kingston, N ew York INTRODUCTION The purpose of this paper is to discuss the design and development

More information

Database Segmentation

Database Segmentation Database Segmentation Today s CA IDMS databases continue to grow. Among the reasons for this growth may be the addition of new application functionality, business consolidations, or the inability to archive

More information

Introduction to Software Testing

Introduction to Software Testing Introduction to Software Testing Software Testing This paper provides an introduction to software testing. It serves as a tutorial for developers who are new to formal testing of software, and as a reminder

More information

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM: CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM: TOPICS TO BE COVERED 1.1 Need of Operating System 1.2 Evolution of os 1.3 operating system i. Batch ii. iii. iv. Multiprogramming Time sharing Real time v.

More information

Three Key Considerations for Your Public Cloud Infrastructure Strategy

Three Key Considerations for Your Public Cloud Infrastructure Strategy GOING PUBLIC: Three Key Considerations for Your Public Cloud Infrastructure Strategy Steve Follin ISG WHITE PAPER 2018 Information Services Group, Inc. All Rights Reserved The Market Reality The race to

More information

-archiving. project roadmap CHAPTER 1. archiving Planning, policies and product selection

-archiving. project roadmap CHAPTER 1.  archiving Planning, policies and product selection INSIDE email archiving Planning, policies and product selection CHAPTER 1 Ready to dive into email archiving? Try this four-phased approach to get your project up and running Email-archiving project roadmap

More information

EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH

EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH White Paper EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH A Detailed Review EMC SOLUTIONS GROUP Abstract This white paper discusses the features, benefits, and use of Aginity Workbench for EMC

More information

CS352 Lecture: Database System Architectures last revised 11/22/06

CS352 Lecture: Database System Architectures last revised 11/22/06 CS352 Lecture: Database System Architectures last revised 11/22/06 I. Introduction - ------------ A. Most large databases require support for accesing the database by multiple users, often at multiple

More information

SAGE ACCPAC. Sage Accpac ERP. G/L Consolidations. User Guide

SAGE ACCPAC. Sage Accpac ERP. G/L Consolidations. User Guide SAGE ACCPAC Sage Accpac ERP G/L Consolidations User Guide 2008 Sage Software, Inc. All rights reserved. Sage Software, Sage Software logos, and all Sage Accpac product and service names are registered

More information

Introduction. A Brief Description of Our Journey

Introduction. A Brief Description of Our Journey Introduction If you still write RPG code as you did 20 years ago, or if you have ILE RPG on your resume but don t actually use or understand it, this book is for you. It will help you transition from the

More information

archiving survey in United Kingdom

archiving survey in United Kingdom Email archiving survey in United Kingdom This document contains the results of a survey on email archiving among 408 small and medium sized businesses, conducted in the United Kingdom in June/July 2008.

More information

Introduction Database Technology [DBTECO601]

Introduction Database Technology [DBTECO601] Introduction Database Technology [DBTECO601] Thomas D. Devine http://www.noucamp.org thomas.devine@lyit.ie September 8, 2008 1 Contents 1 Document Information 4 2 Introduction 4 3 Traditional File-Based

More information

Overview of Sentence Order Reference Document Development Process

Overview of Sentence Order Reference Document Development Process Overview of Sentence Order Reference Document Development Process Scott Came Justice Integration Solutions, Inc. September 14, 2004 Purpose The purpose of this document is to outline the process/methodology

More information

H1 + HSE FFB Integrated Architecture Demonstration

H1 + HSE FFB Integrated Architecture Demonstration WHITE PAPER FOUNDATION Fieldbus H1 + HSE FFB Integrated Architecture Demonstration International Specialty Products (ISP) Lima, Ohio Abstract What End Users have asked for The challenge facing industry

More information

SALVO-a fourth-generation language for personal computers

SALVO-a fourth-generation language for personal computers SALVO-a fourth-generation language for personal computers by MARVIN ELDER Software Automation, Inc. Dallas, Texas ABSTRACT Personal computer users are generally nontechnical people. Fourth-generation products

More information

SolarWinds Technical Reference

SolarWinds Technical Reference This PDF is no longer being maintained. Search the SolarWinds Success Center for more information. SolarWinds Technical Reference Understanding Orion Advanced Alerts Orion Alerting... 1 Orion Advanced

More information

EPRO. Electric Infrastructure Protection Initiative EPRO BLACK SKY SYSTEMS ENGINEERING PROCESS

EPRO. Electric Infrastructure Protection Initiative EPRO BLACK SKY SYSTEMS ENGINEERING PROCESS EPRO Electric Infrastructure Protection Initiative EPRO BLACK SKY SYSTEMS ENGINEERING PROCESS EPRO BLACK SKY SYSTEMS ENGINEERING PROCESS The Role of Systems Engineering in Addressing Black Sky Hazards

More information

Records Retention Schedule

Records Retention Schedule Retention Schedule Form C must Record Title Storage 1. Page 18 of 104 106 Category 2: Electronic Data Processing Section 2.1 Automated Applications 2.1.001 38 Automated Files - Processing Files Machine-readable

More information

Hashing. Hashing Procedures

Hashing. Hashing Procedures Hashing Hashing Procedures Let us denote the set of all possible key values (i.e., the universe of keys) used in a dictionary application by U. Suppose an application requires a dictionary in which elements

More information

Technical Documentation Version 7.4. Performance

Technical Documentation Version 7.4. Performance Technical Documentation Version 7.4 These documents are copyrighted by the Regents of the University of Colorado. No part of this document may be reproduced, stored in a retrieval system, or transmitted

More information

Scheme of work Cambridge International AS & A Level Computing (9691)

Scheme of work Cambridge International AS & A Level Computing (9691) Scheme of work Cambridge International AS & A Level Computing (9691) Unit 2: Practical programming techniques Recommended prior knowledge Students beginning this course are not expected to have studied

More information

Next Generation Backup: Better ways to deal with rapid data growth and aging tape infrastructures

Next Generation Backup: Better ways to deal with rapid data growth and aging tape infrastructures Next Generation Backup: Better ways to deal with rapid data growth and aging tape infrastructures Next 1 What we see happening today. The amount of data businesses must cope with on a daily basis is getting

More information

A Next Generation Software Platform for LS-DYNA Modeling and Configurable Vertical Application Development

A Next Generation Software Platform for LS-DYNA Modeling and Configurable Vertical Application Development A Next Generation Software Platform for LS-DYNA Modeling and Configurable Vertical Application Development H. Ouyang, Tim Palmer, Q. He Engineering Technology Associates, Inc., Troy, Michigan, USA Summary:

More information

Type Checking and Type Equality

Type Checking and Type Equality Type Checking and Type Equality Type systems are the biggest point of variation across programming languages. Even languages that look similar are often greatly different when it comes to their type systems.

More information

Virtuozzo Containers

Virtuozzo Containers Parallels Virtuozzo Containers White Paper An Introduction to Operating System Virtualization and Parallels Containers www.parallels.com Table of Contents Introduction... 3 Hardware Virtualization... 3

More information

Challenges of Analyzing Parametric CFD Results. White Paper Published: January

Challenges of Analyzing Parametric CFD Results. White Paper Published: January Challenges of Analyzing Parametric CFD Results White Paper Published: January 2011 www.tecplot.com Contents Introduction... 3 Parametric CFD Analysis: A Methodology Poised for Growth... 4 Challenges of

More information

STAFF REPORT. January 26, Audit Committee. Information Security Framework. Purpose:

STAFF REPORT. January 26, Audit Committee. Information Security Framework. Purpose: STAFF REPORT January 26, 2001 To: From: Subject: Audit Committee City Auditor Information Security Framework Purpose: To review the adequacy of the Information Security Framework governing the security

More information

The Migration/Modernization Dilemma

The Migration/Modernization Dilemma The Migration/Modernization Dilemma By William Calcagni www.languageportability.com 866.731.9977 Approaches to Legacy Conversion For many years businesses have sought to reduce costs by moving their legacy

More information

Visualizing Verification. Adrian A. Marsh April 2004

Visualizing Verification. Adrian A. Marsh April 2004 Visualizing Verification Adrian A. Marsh April 2004 Abstract This paper proposes extending UML modeling to system verification. Changing the utilization of the UML diagrams will increase the quality of

More information

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES 5 THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES THIS E-BOOK IS DIVIDED INTO 5 PARTS: 1. WHY YOU NEED TO KNOW YOUR READER 2. A USER MANUAL OR A USER GUIDE WHAT S THE DIFFERENCE?

More information

Automation Change Management for Regulated Industries

Automation Change Management for Regulated Industries Automation Change Management for Regulated Industries Achieving Part 11 Compliance A White Paper Synopsis This whitepaper provides information related to FDA regulation 21 CFR Part 11 (Part 11) for organizations

More information

10 Steps to Building an Architecture for Space Surveillance Projects. Eric A. Barnhart, M.S.

10 Steps to Building an Architecture for Space Surveillance Projects. Eric A. Barnhart, M.S. 10 Steps to Building an Architecture for Space Surveillance Projects Eric A. Barnhart, M.S. Eric.Barnhart@harris.com Howard D. Gans, Ph.D. Howard.Gans@harris.com Harris Corporation, Space and Intelligence

More information

Virtualization. Q&A with an industry leader. Virtualization is rapidly becoming a fact of life for agency executives,

Virtualization. Q&A with an industry leader. Virtualization is rapidly becoming a fact of life for agency executives, Virtualization Q&A with an industry leader Virtualization is rapidly becoming a fact of life for agency executives, as the basis for data center consolidation and cloud computing and, increasingly, as

More information

CG: Computer Graphics

CG: Computer Graphics CG: Computer Graphics CG 111 Survey of Computer Graphics 1 credit; 1 lecture hour Students are exposed to a broad array of software environments and concepts that they may encounter in real-world collaborative

More information

CPS352 Lecture: Database System Architectures last revised 3/27/2017

CPS352 Lecture: Database System Architectures last revised 3/27/2017 CPS352 Lecture: Database System Architectures last revised 3/27/2017 I. Introduction - ------------ A. Most large databases require support for accesing the database by multiple users, often at multiple

More information

Manager, Infrastructure Services. Position Number Community Division/Region Yellowknife Technology Service Centre

Manager, Infrastructure Services. Position Number Community Division/Region Yellowknife Technology Service Centre IDENTIFICATION Department Position Title Infrastructure Manager, Infrastructure Services Position Number Community Division/Region 32-11488 Yellowknife Technology Service Centre PURPOSE OF THE POSITION

More information

Evolution of IT in the Finance Industry. Europe

Evolution of IT in the Finance Industry. Europe 2011 Evolution of IT in the Finance Industry Europe CONTENTS Evolution of IT in the Finance Industry... 4 Methodology... 6 Focus... 8 Finding 1: Finance Industry Has Mature View on IT Trends...10 Finding

More information

The White Papers. Employing Knowledge Management for Oracle, DB2 and SQL Server. By Steve Hilker & Daniel Norwood

The White Papers. Employing Knowledge Management for Oracle, DB2 and SQL Server. By Steve Hilker & Daniel Norwood The White Papers Employing Knowledge Management for Oracle, DB2 and SQL Server By Steve Hilker & Daniel Norwood Contents Employing Knowledge Management... 3 Introduction... 3 Overview... 3 The Challenges...

More information

COBOL-SO: The new structured language

COBOL-SO: The new structured language COBOL-SO: The new structured language by JEROME GARFUNKEL Jerome Garfunkel Associates, Inc. Litchfield, Connecticut ABSTRACT This paper includes a presentation of the most important new features of COBOL-

More information

How to Evaluate a Next Generation Mobile Platform

How to Evaluate a Next Generation Mobile Platform How to Evaluate a Next Generation Mobile Platform appcelerator.com Introduction Enterprises know that mobility presents an unprecedented opportunity to transform businesses and build towards competitive

More information

CONTENTS. 1. Introduction. 2. How To Store Data. 3. How To Access Data. 4. Manage Data Storage. 5. Benefits Of SAN. 6. Conclusion

CONTENTS. 1. Introduction. 2. How To Store Data. 3. How To Access Data. 4. Manage Data Storage. 5. Benefits Of SAN. 6. Conclusion CONTENTS 1. Introduction 2. How To Store Data 3. How To Access Data 4. Manage Data Storage 5. Benefits Of SAN 6. Conclusion 1. Introduction: A Storage Area Network (SAN) is a dedicated network that carries

More information

Introduction. JES Basics

Introduction. JES Basics Introduction The Job Entry Subsystem (JES) is a #11 IN A SERIES subsystem of the z/os operating system that is responsible for managing jobs. The two options for a job entry subsystem that can be used

More information

Metadata for Digital Collections: A How-to-Do-It Manual

Metadata for Digital Collections: A How-to-Do-It Manual Chapter 4 Supplement Resource Content and Relationship Elements Questions for Review, Study, or Discussion 1. This chapter explores information and metadata elements having to do with what aspects of digital

More information

6.001 Notes: Section 15.1

6.001 Notes: Section 15.1 6.001 Notes: Section 15.1 Slide 15.1.1 Our goal over the next few lectures is to build an interpreter, which in a very basic sense is the ultimate in programming, since doing so will allow us to define

More information

PeerApp Case Study. November University of California, Santa Barbara, Boosts Internet Video Quality and Reduces Bandwidth Costs

PeerApp Case Study. November University of California, Santa Barbara, Boosts Internet Video Quality and Reduces Bandwidth Costs PeerApp Case Study University of California, Santa Barbara, Boosts Internet Video Quality and Reduces Bandwidth Costs November 2010 Copyright 2010-2011 PeerApp Ltd. All rights reserved 1 Executive Summary

More information

Chapter 11 Running the Model

Chapter 11 Running the Model CHAPTER CONTENTS Simulation Menu 568 Section 1 Simulation Options...569 General Options & Settings 570 Output Reporting Options 572 Running a Specific Replication 574 Customized Reporting 574 Section 2

More information

CA Dynam /T Tape Management for z/vse

CA Dynam /T Tape Management for z/vse PRODUCT SHEET CA Dynam/T Tape Management for z/vse CA Dynam /T Tape Management for z/vse CA Dynam /T Tape Management for z/vse (CA Dynam/T) is a tape library management solution providing a single point

More information

Chapter 8. Achmad Benny Mutiara

Chapter 8. Achmad Benny Mutiara Chapter 8 SOFTWARE-TESTING STRATEGIES Achmad Benny Mutiara amutiara@staff.gunadarma.ac.id 8.1 STATIC-TESTING STRATEGIES Static testing is the systematic examination of a program structure for the purpose

More information

UX Research in the Product Lifecycle

UX Research in the Product Lifecycle UX Research in the Product Lifecycle I incorporate how users work into the product early, frequently and iteratively throughout the development lifecycle. This means selecting from a suite of methods and

More information

Educational Fusion. Implementing a Production Quality User Interface With JFC

Educational Fusion. Implementing a Production Quality User Interface With JFC Educational Fusion Implementing a Production Quality User Interface With JFC Kevin Kennedy Prof. Seth Teller 6.199 May 1999 Abstract Educational Fusion is a online algorithmic teaching program implemented

More information

COPYRIGHTED MATERIAL. Introducing VMware Infrastructure 3. Chapter 1

COPYRIGHTED MATERIAL. Introducing VMware Infrastructure 3. Chapter 1 Mccain c01.tex V3-04/16/2008 5:22am Page 1 Chapter 1 Introducing VMware Infrastructure 3 VMware Infrastructure 3 (VI3) is the most widely used virtualization platform available today. The lineup of products

More information

BEFORE THE PENNSYLVANIA PUBLIC UTILITY COMMISSION PETITION OF PECO ENERGY COMPANY FOR APPROVAL OF ITS SMART METER UNIVERSAL DEPLOYMENT PLAN

BEFORE THE PENNSYLVANIA PUBLIC UTILITY COMMISSION PETITION OF PECO ENERGY COMPANY FOR APPROVAL OF ITS SMART METER UNIVERSAL DEPLOYMENT PLAN PECO ENERGY COMPANY STATEMENT NO. 2 BEFORE THE PENNSYLVANIA PUBLIC UTILITY COMMISSION PETITION OF PECO ENERGY COMPANY FOR APPROVAL OF ITS SMART METER UNIVERSAL DEPLOYMENT PLAN DOCKET NO. M-2009-2123944

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design Database Systems: Design, Implementation, and Management Tenth Edition Chapter 9 Database Design Objectives In this chapter, you will learn: That successful database design must reflect the information

More information

OPTIMIZATION MAXIMIZING TELECOM AND NETWORK. The current state of enterprise optimization, best practices and considerations for improvement

OPTIMIZATION MAXIMIZING TELECOM AND NETWORK. The current state of enterprise optimization, best practices and considerations for improvement MAXIMIZING TELECOM AND NETWORK OPTIMIZATION The current state of enterprise optimization, best practices and considerations for improvement AOTMP.com The Next Evolution of Telecom Management OVERVIEW As

More information

COBOL-IT Developer Studio 2.0

COBOL-IT Developer Studio 2.0 COBOL-IT Developer Studio 2.0 COBOL-IT Developer Studio is COBOL-IT s Integrated Development Environment. The Developer Studio allows you to develop, debug and maintain your legacy COBOL applications in

More information

Operating- System Structures

Operating- System Structures Operating- System Structures 2 CHAPTER Practice Exercises 2.1 What is the purpose of system calls? Answer: System calls allow user-level processes to request services of the operating system. 2.2 What

More information

General Architecture of HIVE/WARE

General Architecture of HIVE/WARE General Architecture of HIVE/WARE 1. Layman s Description One of the largest paradigm shifts in writing took place when we moved from the use of the typewriter to the use of the computer. Just as the typewriter

More information

A Mission Critical Protection Investment That Pays You Back

A Mission Critical Protection Investment That Pays You Back A Mission Critical Protection Investment That Pays You Back By Wade Ettleman and Earl Philmon June 2012 Page 1 of 8 www.cellwatch.com A Mission Critical Protection Investment That Pays You Back Reliable

More information

Hyperion Essbase Audit Logs Turning Off Without Notification

Hyperion Essbase Audit Logs Turning Off Without Notification Hyperion Essbase Audit Logs Turning Off Without Notification Audit logs, or SSAUDIT, are a crucial component of backing up Hyperion Essbase applications in many environments. It is the equivalent of a

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 1 Operating Systems Overview 2 Chapter 2 3 An operating System: The interface between hardware and the user From the user s perspective: OS is a program that controls the execution of application programs

More information

A DESIGN FOR A MULTIPLE USER MULTIPROCESSING SYSTEM

A DESIGN FOR A MULTIPLE USER MULTIPROCESSING SYSTEM A DESIGN FOR A MULTIPLE USER MULTIPROCESSING SYSTEM James D. McCullough Kermith H. Speierman and Frank W. Zurcher Burroughs Corporation Paoli, Pennsylvania INTRODUCTION The B8500 system is designed to

More information

Intel Xeon Scalable Family Balanced Memory Configurations

Intel Xeon Scalable Family Balanced Memory Configurations Front cover Intel Xeon Scalable Family Balanced Memory Configurations Last Update: 20 November 2017 Demonstrates three balanced memory guidelines for Intel Xeon Scalable processors Compares the performance

More information

Introduction to the UML

Introduction to the UML c02.qxd p039-048 11/15/01 5:37 PM Page 39 CHAPTER 2 Introduction to the UML Why should I use the UML? What can it contribute to my software development effort? To effectively utilize any technology, we

More information

D-Optimal Designs. Chapter 888. Introduction. D-Optimal Design Overview

D-Optimal Designs. Chapter 888. Introduction. D-Optimal Design Overview Chapter 888 Introduction This procedure generates D-optimal designs for multi-factor experiments with both quantitative and qualitative factors. The factors can have a mixed number of levels. For example,

More information

System quality through structured programming

System quality through structured programming System quality through structured programming by F. T. BAKER IBM Corporation Gaithersburg, Maryland INTRODUCTION Experience in development and maintenance of large computer-based systems for government

More information

Honeywell. The Multics System

Honeywell. The Multics System Honeywell The Multics System O 1975,1976, Honeywell Information Systems Inc. FileNo.:lLll - -- - ecure A Unique Business Problem-SolvingTool Here is a computer system that enables data processing users

More information

Human Error Taxonomy

Human Error Taxonomy Human Error Taxonomy The Human Error Taxonomy (HET) provides a structure for requirement errors made during the software development process. The HET can be employed during software inspection to help

More information

SAP Security Remediation: Three Steps for Success Using SAP GRC

SAP Security Remediation: Three Steps for Success Using SAP GRC SAP Security Remediation: Three Steps for Success Using SAP GRC All companies need strong application security environments as part of a successful overall risk management strategy. Strong risk-oriented

More information