• Aucun résultat trouvé

When FMS is the Best Solution FMS should be selected when:

Dans le document VAX/VMS Software (Page 124-132)

• There are requirements.for extensive validations of data at the field level.

• There are requirements for upward system compatibility across operating systems.

• There is no need for the VAX CDD.

• There is a need for field by field interaction between the application program and the form.

• Screen-based applications are to be developed for use in the ALL-IN-!

environment.

7-18 • VAX TDMS and VAX FMS

FMS is preferable for those applications that require aJarge number of fields per form, and require interaction with the. application on a field by field basis. This is contrasted with the record level processing of roMS, where interaction with the application is typically performed after completion of all data entry opera-tions for all input fields on the form. A simple example might be a user form requesting part number, description, quantity, price, back order amount, and total. The field level programming interface ofFMS more easily allows the appli-cation ptogram to read the Pat1 number and verify (from an FMS User Action Routine) that the part number is active and represents a part that is both valid and in stock before prompting the operator for the remaining variables (description, quantity, price, etc.). FMS would

also

be preferable if the applica-tion required the inputting of multiple line items of similar part nUmbers and variable data and required that the operator have the ability to transparently travetse the screen, (up/down arrow keys, backspace, etc.) modifying and vali-dating fields that had been incorrectly entered. Although this kind of applica-tion is possible to handle using TDMS, it is not as efficient as with FMS. FMS may be used· with most VAX programming languages as well as with VAX DATATRIEVE.

Chapter 8 • VAX ACMS

VAX ACMS, the VAX Application Control and Management System, was designed to reduce the lifecycle costs involved in designing, developing, main-taining and controlling transaction processing and other complex VAX/VMS applications.

Unlike traditional application development tools, ACMS allows for the replace-ment of large amounts of application code with high level definitions stored in the VAX Common Data Dictionary. With the use of such definitions, users now have available a fourth generation-like language facility that can significantly reduce the development and maintenance lifecycle costs oflarge, complex soft-ware projects.

VAX ACMS is comprised of two major functional parts. The first is used to design, develop and maintain transaction processing and other complex appli-cations using a fourth generation-like language. The second part is used to monitor and control both applications developed under the first part and those developed with other VMS tools.

Examples of applications appropriate for the use of VAX ACMS include:

• Operations support, such as order administration, personnel administration, inventory control, and scheduling

• Inquiry and information retrieval, such as accessing customer or employee records for quick reference or for providing decision support

• Accounting, including accounts payable and receivable, funds transfer, for-eign exchange, and payroll

ACMS is ideally suited for, but by no means limited to, use in "transaction processing" applications. Processing environments such as payroll, inventory, order processing, airline reservations and on-line banking are generally consid-ered the most "typical" transaction processing applications. ACMS, however, can prove to be an excellent solution in any application where business proce-dures can be broken down into some form of individual events, or units of work.

ACMS is aimed primarily at those applications which will take three or more

"programmer-years" to develop, and which are regarded in the industry as being in the transaction processing class of applications. Furthermore, applica-tions for which ACMS is suitable will typically be highly structured, support large numbers of users, be used in a production environment critical to an organization's daily operations, and will be used with large, complex databases.

They will also tend to be highly subject to change, and often need to run on non-dedicated systetns.

8-2 • VAX ACMS

Many studies estimate that 60% to 80% of the cost of application program' ming is incurred in mamtairiirig applications after they have been developed.

One of the ,goals of ACMS is to reduce those costs.

A key principle begind ACMS is the separation of application development ftom applicatiqn us~ and, col;J.trol. Mor~ specifically, applicati(;m characteristics that are likely to change often, such as which users can run which tasks, should not be the concern ofdeveloPfllent personnel. VAX ACMS therefor~ both pro-vides the tools to design; develop and maintamon-line applications, and also separately helps you to create the operational environment in which they run.

With VAX ACMS you can:

• Describe, using a high-level definition language, the wbrk or task(s) a user needs to do.

• Definecaccess and control characteristics for users and devices

• Set up or change menus that let terminal users easily select the task they want to run

• Employ termirial user commands to run tasks, get help information, and exit ACMS

• Control what resources are available to process the tasks in an application

.~onitor and record system activity, application use and performance

• Change system parameters at runtime, "tuning" your usage of system resources

• Control the startup and shutdown of applications

• Who Uses VAX ACMS

VAX ACMS addresses several different types of users, all of whom are in some way involved with complex, online applications:

• Application designers; responsible for the overall specification and definition of an application and its tasks.

• Application programmers, responsible for creating andmairitamirig the pro-grams for that application.

• Applicatiol1managers, who set up

~enus,9efineapplications;

control user

· access to applications and tasks,aqd monitor and mamtain applic!!tions .

•. System managers,

who authorize users and termirials for access to ACMS, and ACMS applicationsJor access to VMS.

• Terminal users, who select and run tas~s from ACMS menus.

• ACMS operators, ~ho control and monitor the day-t~-day operations of ACMS applications.

8-3 Note that these terms represent roles, not job titles.

In

many organizations, a single person performs more than one of these roles.

• Benefits of VAX ACMS

• ACMS forces application design work at the outset of a project. The better the original design, the less rework tends to be needed.

• ACMS's task-oriented, modular solutions allow the sharing of individual pieces (tasks) among multiple applications. The "ripple effect"

0/

necessary changes is minimized by this modularity.

• Debugging need not wait until an entire application is coded. With ACMS, programmers can debug task by task, as the tasks become complete. Errors can be detected and corrected in early development.

• ACMS provides a high level definition language, requiring much less coding than with traditional application development tools.

• ACMS is an integrated member bf the VAX Information Architecture. It uses TDMS to handle terminal

va

and VAX DBMS to provide automatic database . journaling and recovery.

• These advantages, indipidually and taken in total; can yield a significant increase in programmer productivity.

• The system manager can exercise some. control over users' terminals.

• Designated

terminals

can bypass VAX!VMS login procedures.

• Each image is started only once, then shared by all its users.

• Users of an ACMS application share a number of central ACMS processes, rather than each needing their own. Although the overhead of these processes is higher than that of VMS processes, this Cost is outweighed by savings in system resources.as the number of users increases.

• These features enable an improvement in the efficient usage

0/

VAX system resources.

• Both development and system management can control access to applica-tions at different levels.

• The system manager can optimize performance of an ACMS application by:

- Monitoring use by user or task

- Increasing or decreasing the number of processes - Setting priorities, changing quotas, limiting functions.

• So, both the developer(s) and the system manager can control the application(s) via standard utilities.

8-4 • VAXACMS

• A Closer Look at VAXACMS

Application Development

VAX ACMS provides tools for developing complex on-line applications. Appli~

cations developed using ACMS then also run under its control.

One critical goal of ACMS is to reduce application maintenance costs and increase programmer productivity without sacrificing. efficient. use of system resourCes. It accomplishes this by providing a way of implementing th~ tasks in an application that is different from

thbSe

provided by VMS or by the other VMS-layered products.

In contrast to traditional applicationdevelopm~nt tools, which require substan-tial programming knowledge, ACMS lets you replacelarge portions of program code with high level definitions. These definitions, called multiple-step tasks,are simple, direct statements. ACMS provides Application DefinitionUtility (ADU) clauses for creating task definitions which, like other ADUdefinitions, are stored in theCDD.

There are two types of steps ina multiple-step task. An exchange step handles terminal I/O, usually by means of a VAX TDMS request. The request uses forms for input and output. A processing step does the computation or database work needed by the task. It uses a subroutine or procedure written in a programming language such as VAX COBOL or VAX BASIC, a VAX DATATRIEVE comrriand or procedure, a DCL command or procedure, or a VAXiVMS image:· At the end of each step you can define one or more actions that determine what the task will do next. Interaction between the exchange step and the processing step is han-dled via workspaces that are passed between steps ..•.

Figure 8-1 shows the definition for a simple task that writes a new employee recotd to a file. The task first calls a TDMS request that asks the user for infor-mation about the employee. When the inforinfor-mation has been entered, the task calls a program to write that information toa file. If lin erior occurs in writing the information, the task returns to the exchange step to display lin error message.

Dans le document VAX/VMS Software (Page 124-132)