This chapter contains these topics:
Computer Aided Software Engineering (CASE) covers the entire application development life cycle, including:
Design tools
Code generation
Automatic documentation generation
Prototyping
Repositories
Other productivity improvement tools
You use these tools to develop, operate, and maintain flexible, business application software.
There are three technical levels in the JD Edwards World Application Development Cycle (A/D Cycle):
Level | A/D Cycle |
---|---|
Level 1 | The Application Platform, which represents the Technical Foundation Guide. |
Level 2 | The Design Platform, which represents the Advanced Programming Concepts and Skills (APCS) Guide. |
Level 3 | The Development Platform, which represents the Program Generator (CASE) Guide. |
You define a program using various Program Generator specifications. You perform the following:
Define program purpose and type
Specify the files
Create help text
Define function exits and options
Add field-specific logic
You can also create processing options and document Automatic Accounting Instructions (AAIs). After you define the specifications, the Program Generator creates the program, adding the correct validation files and servers to complete the program.
There are basic building blocks for a program. Program types are basic definitions of the programs. Using the Question and Answer facility, the system determines, based upon your answers, which program type to select. The program generator builds the program using primary and detail logic modules. You can add AAIs to your programs and create Control Language (CL) programs to launch programs from menu options.
Development started in 1984
First called Clone
First program generation was in April, 1985
Rewrite of all systems (World Systems) done through Clone I & II
Became known as the KBG (Knowledge Based Generator) in 1991
Became known as the Program Generator in 1992
Dynamic Data Dictionary
Dynamic totaling and page skipping - created 39 lines of code per field which caused large S002 subroutines
Started in 1989
Dynamic totaling and page skipping - creates 80 lines of code for ALL fields
No more "?" code generated
Cursor Sensitive Help (F1)
F24 Window
Code for subfile option processing generated
Current Program Generator Programs
More utilization of file servers
Use of the Program Design Language (PDL) allow you to make modifications instead of making changes through Source Entry Utility
JD Edwards World provides several tools to help create and customize your programs.
PDL is available to add field-specific logic to your programs.
Quick Start asks a few basic questions, and then creates a basic Report Program Generator (RPG) or CL program.
JD Edwards World provides many different utilities to assist you in creating and maintaining your code.
PDL enables you to add calculations or comparisons to specific fields within the program.
Precompiler commands are available to specialize your compile environment
CASE includes the following features:
Foundation
Program Generator
Program Design Language
Source Modifications
CASE Programs
Additional Tools
Source Inventory and Database
Note:
You cannot use the Program Generator to modify existing JD Edwards World programs.Every program you create using the Program Generator automatically includes and uses JD Edwards World functionality, such as:
Data Dictionary
User defined codes
Vocabulary overrides
Action code security
Business unit security
Standard function exits
Function exit and option exit security
Cursor sensitive help
Program help
DREAM Writer
Processing options
This functionality is consistent across all applications you generate because it is built into the Program Generator and Master Source.
The Program Generator is the same tool that JD Edwards World uses to generate the JD Edwards World application programs.
You can create simple programs in a short period of time using the Program Generator. Due to the standard structure and subroutines of the programs you generate, it is easier to incorporate complexities in either the Program Specifications or the source code.
You generate the source RPG code from Program Specifications, Program Types, and Master Source Code; therefore, you can regenerate the source as JD Edwards World enhances the functionality of its software. Because the enhanced functionality is in the Master Source Code File, you need to regenerate only the source code using the original Program Specifications.
Note:
The JD Edwards Program Generator output is in RPGIII code. When you complete the program development cycle, you can use RPGIII to RPGIV converters from IBM and third party vendors. As of A7.3.14, A8.1.5 and A9.1, you can use the Software Versions Repository to manage RPGIV programs with the Function Code set to RPGL.As an industry term, CASE is an acronym for Computer-Aided Software Engineering. Many suppliers offer tools that implement various aspects of software engineering. These tools are either upper CASE or lower CASE tools.
Upper CASE tools focus on the business process and data models. Products that provide upper CASE capabilities include tools for organizational charts, decomposition diagrams, entity relationship diagrams, and data flow diagrams.
Lower CASE tools, on the other hand, focus on data models and generating source code. An example of a lower CASE product is J.D. Edward World CASE.
See CASE Profiles JD Edwards World Advanced Programming Concepts and Skills Guide for information on setting up the CASE profile. There are several methods to access the CASE profile:
Choose CASE profile from the Computer Aided Design menu (G92)
Choose Software Versions Repository from the Computer Aided Design menu (G92), and then choose Repository Services (F6) to access the Repository Services window.
You enter the CASE program source generation file and compiler options on this screen.
CAD includes the following:
Data Dictionary
User Defined Codes
File Design Aid (FDA)
Screen Design Aid (SDA)
Report Design Aid (RDA)
CAP includes the following:
Program Generator
Program Purpose and Type
File Specifications
General Instructions (Help)
Option and Function Key Exits
Detailed Programming Facility
Processing Options
CL Generator
Model CL programs (J98MODEL1 through J98MODEL8)
Quick Start CL Generator
Quick Start Application Tool
The Program Generator is the JD Edwards World tool that generates source code for both RPG programs and CL programs. In many respects the Program Generator is a very simple tool that combines three functions and produces the source code as a result of combining the functions. The three functions are:
Program Types
Master Source Code
Program Specifications
The Program Generator builds software depending on the program type you choose. The program types combine the features of:
Interactive, for example, screen
Batch, for example report or conversion
Single record or multi-record
These program types contain a list of individual definitions which you combine to form a functional program. JD Edwards World refers to individual definitions as primary logic modules and the system uses them to build the source code for the program type. The system stores each primary logic module in the Master Source Code File. These logic modules are the components of all JD Edwards World program types.
The Master Source Code File consists of over 11,000 lines of RPG source code. Some lines are pure RPG source code. Others contain some RPG code and some JD Edwards World directives, which the Program Generator interprets and replaces with RPG code. The interpretation of the directives is based on the Program Specifications that you establish for generating a specific program type.
To generate a program, you must first complete the Program Generator Specifications. These specifications are the details of your program that the Program Generator uses to complete the RPG code it builds from the master source directives. There are six specifications. You must determine:
A program type
The files the program uses
After you specify this information, you can generate complete source code that you can then compile and execute.
There are five categories of program types:
Can be either update or inquiry
Can contain Action Codes
Can contain a subfile
Can interface with DREAM Writer to provide run-time options
Normally includes cursor sensitive helps (F1)
Fits inside current interactive program
Provides for accumulated values (totals)
Interfaces with DREAM Writer
Can contain sub-headings
Name includes a prefix of X
Updates master files
Can contain a report
Use this program type to convert data from one file to another
Can contain a report
JD Edwards World currently provides 25 pre-defined program types with the Program Generator. The CASE Guide includes information to modify existing program types and to create of your own program types.
JD Edwards World systems are menu driven. System functions are organized according to their function and frequency of use. The options on these screens illustrate the flow to the functions in this guide.
Figure 1-2 Advanced & Technical Operations screen
Figure 1-3 Computer Assisted Programming (CAP) screen