Demo-educagen

Page 1

Introduction

Module I1E

Student Guide


Student Guide - I1ESG

Module I1E - Introduction A. Overview In this module you will get an introduction of all aspects involved in working with the Gen tool set. It is used by different IT people of all types of organizations. They develop the systems according to their businesses need: web based, GUI C/S, character based, batch, etc. using different environments and using different project and development methodologies. The purpose of this module is to give understanding and hands on experience in the basic purpose and the general aspects of the tool. When finished you will be able to: • understand the purpose • describe which deliverables are produced • describe how the tool is used • use the menu bars • create a model using the tool menus B. Module Topics 1. Contents 1. This is a development tool 2. Application types 3. Model based development 4. Diagrams 5. Encyclopedia 6. Client – server 7. Projects 8. Roles in development 9. Task I1ETK1

2. Demo Code I1EDF1

Demo General features of the toolset

3. Task Code I1ETK1

© Educagen

Task Make yourself familiar with some general aspects of the toolset

2

Show to trainer No


Student Guide - I1ESG

It is a Tool to develop business applications

and maintain them easily © Educagen

3

Gen is a tool that allows you to design, generate and install different types of applications: - Batch - Block mode - Client-Server - Browser based All sepcifications of business and systems are stored in Gen using modeling diagrams. Then Gen can generate all code and take care of all additional actions to deliver a working application. For database access, compiler etc. Gen makes use of industry products. Some of the environments which Gen can generate systems for are • Client-Server (in several different types) • Main Frame (CICS, IMS, Batch) • Windows, GUI, .NET As the picture illustrates the tool might be vague for you now. It is the intention of this course to make the main parts clear to you.

© Educagen

3


Student Guide - I1ESG

Application Types

Browser based and all traditional application types Š Educagen

4

Using AllFusion Gen different types of applications can be developed using the same set of design diagrams. From these diagrams all applications are generated and installed without any hand coding by the developer. Application types supported by Gen are: Batch Character based (3270) Windows applications Client apllications (GUI, Web) Server applications Proxies Several programming languages are available.

Š Educagen

4


Student Guide - I1ESG

Application Environment Analysis and Design Type • GUI • Character • Block • Batch • Browser

• Business Processes • Data Model

Generation C/S communication Operating System DBMS TP Monitor Programming Language

Feed back

Most Industry standards are followed. © Educagen

5

Environment The environment must be known as soon as possible to benefit most from specific features. At latest you can decide about the production environment shortly before an application is generated. The enviroment aspects which must be known are: • Application Type • Operating System • Database Management System • TP Monitor • Communicatin type • Etc.etc

© Educagen

5


Student Guide - I1ESG

Model Based

User Interface

Processing

Data

Model = all entered system specifications

Š Educagen

6

Model Based Development 1 What is it? Model based development means that a system is developed by using a set of diagrams which contain the total definition and design of the system. In many cases it includes the whole development life-cycle. A model is the total of all coherent diagrams. Within a model all parts are integrated and consistent. A consistency check checks all specifications, their consistency, correctness and completeness. When a model has no consistency errors it means that no parts in the model have a conflict with other parts in the model. (no windows with the same name, no Entity Type without attributes, etc, etc) There are diagrams for Data Modeling (Business data) Database Design (Table structure etc) Business Processes User Interfaces System processing Packaging Implementation and many more Most diagrams have a restricted number of topics. Therefore the diagrams are easy to understand. After the design the developer indicates the generation and production environment data. Code is generated using the specification in the diagrams. (no Java, C, C++ or Cobol coding by developer necessary). Also the executable files are produced in a controlled way without any further activity by the developer.

Š Educagen

6 11


Student Guide - I1ESG

Model Based Development

User Interface

Processing

Data

Why use a Model? Š Educagen

7

Model Based Development 2 Why is it used? 1. Many systems are designed using text documents and screen paintings. Unfortunately it is not easy to write down ideas in a way that it is understood correctly by all readers. And it is also the case that many application developers have problems in understanding correctly what the meaning of a text is. Therefore one has tried to describe the system specifications in a way that it is easy to write and understand specifications in an unambiguous way. Numerous types of diagrams have been invented: from simple to very complex ones. The tool uses many of those diagrams. Most people consider them to be not very complex. In the background the tool controls all those different diagrams in one big picture. This means that the developer takes care of the (simple) individual diagrams, while the tool takes care that all diagrams are a consistent part of a big complex picture. 2. Generation of the applications can only be done from the logical specifications in the model. Therefore the executables always are consistent with the specifications in the model. 3. An Encyclopedia is used for housing models and supervising the results of a project team.

Š Educagen

7


Student Guide - I1ESG

A Model is …

Entity Type 2 Entity Type 1 Window 1 Program 3

Window 2 Entity Type 4 Program 2

Window 4 Entity Type 3

Window 3 Program 1

Consistent specifications © Educagen

8

Model Based Development 3 How is it used? All specifications the developer enters in the tool, are entered in small parts. Example: In a Data Model an entity type is entered by typing the name and pressing the ENTER key. A new piece of information is added. Such a piece of information is called object. Examples of objects are: Entity Type, Attribute, Identifier, Permitted Value, Description, Window, Dialog Box, Procedure, Action Diagram, Statement, etc. All these object types will be discussed in this and next modules.

© Educagen

8


Student Guide - I1ESG

Diagrams for Business and System

Actions

Š Educagen

9

The system specifications are stored using diagrams. Be aware that there is only one occurrence of each object in the model. All diagrams show this one occurrence. The different diagrams are only different views on all objects in the model. When you add or change an object in one diagram, it will be visible/changed in other diagrams too. Consistency Check When the tool set will allow you to generate an application, you can be sure that the system is consistent. This means: all parts (data definitions, screen definitions, process actions) in the system are not conflicting with all other parts. Example: It is impossible to define a retrieve action for an entity that was not defined in the Data Model or in other parts, necessary for the database action. Management methods are used to control project progress, project interactions, variations in the development life-cycle.

Š Educagen

9


Student Guide - I1ESG

Development Stages and Road Map BUSINESS

Data

Analysis

DATA MODEL

SYSTEM Design

APPLICATION

Construction

DDL

DATABASE DESIGN

Database Database Industry DBMS

Logic

LOAD MODULE

BUSINESS ACTIVITIES

Source Code

Statements

Inside the tool

Exe

Outside

Š Educagen

10

Diagrams This picture shows the two areas (horizontal) for which diagrams in the tool are created: 1. Data: from Data Model via Database Design to Database 2. Activities: from Procedures to generated executables There are two areas for which diagrams are made (see vertically: business and system). In the horizontal direction the sequnece of development stages is shown. Analysis The analysis part includes a collection of business diagrams. Many developers only use the Data Modeling tool. Nowadays the other diagrams are not used very often anymore. This is probably due to the fact that among analysts, other analysis tools are more popular than Gen. Many analysis projects are still done using MS Word. Design and Construction This is the workplace for the developer/programmer. This part inclues the most important diagrams for the development of the system applications. They will be discussed in detail in the following modules.

Š Educagen

10


Student Guide - I1ESG

Easy Prototyping

Š Educagen

11

Prototyping Prototyping is a development strategy with a strong interaction between business users and developers. Together with the user the flow of the application is designed. The window is painted while the users discuss the appearance, contents and type of the user interface. In this way users can design a system and check for completeness, correctness etc in an early stage of the project. It is also an ideal way to set up project and system standards. It is not yet necessary to complete the logic for the application. This can be detailed in a later phase. This is one of the ways that the tool can be used. It requires great skills of the developers (analysts and designers), because all user information has to be captured during the user sessions.

Š Educagen

11


Student Guide - I1ESG

It is also ‌

Encyclopedia

Manageable documentation

Model storage

Books on line Rule checking Allowing people working together Š Educagen

12

Manageable Documentation All specifications about the systems (application and database) are stored as objects in the Encyclopedia. Diagrams show all information to the developer. It is generally easier to change a diagram held in electronic form than one drawn by hand on paper. A change in one diagram will automatically be reflected in the other diagrams. From the model reports can be generated to support the developer. Working together using the Encyclopedia The tasks of all developers are managed by the Encyclopedia. The Encyclopedia enables a developer to work on his project task without interfering the work of others. Books on line Books on methods and tool features are offering a great help for all tasks of the developer. Rule checking Checks control the consistency of the model to be according the modeling rules of the tool. The final consistency check will guarantee that the model is (technically) complete. Then the application may be generated.

Š Educagen

12


Student Guide - I1ESG

Functions of an encyclopedia Linked diagrams

part 1

part 2

Encyclopedia

Actions

User Access

Model parts Old => New

Linked diagrams Linked diagrams Linked diagrams Actions

Actions

Model Management Version Control

Š Educagen

13

Encyclopedia Two types of encyclopedias exist: 1. The encyclopedia on the main frame (CE), also called Host Encyclopedia 2. The CSE, client-server encyclopedia, The functionality of both types is almost the same. They can be included in a network structure to be able to communicate between encyclopedias. The main tasks Model Management includes facilities to rename, delete, and copy a model and do other actions on the model. Access Control permits a developer access to an encyclopedia, model, or subset with different permission for the users Subsetting is the concept of sharing the model between developers. It allows them to work simultaneously. Version Control allows developers to control model versions and to share and compare objects Construction; if installed this option allows generation from the encyclopedia Other mechanisms to access the model data are available

Š Educagen

13


Student Guide - I1ESG

Encyclopedia for Team Coordination Subset 2

Subset 1 Subset 2 Subset 1 © Educagen

Model in Encyclopedia

14

Team Coordination In development projects the teams consist of a number (more than one) developers. Each developer will get a part of the model, containing just a selction of all model objects. Such a model part is called a subset. The developers define the objects for their subset in the encyclopedia. After definition the subset is downloaded to the workstation to do the project task. The encyclopedia takes care of the coordination of all subsets and controls the integrity of the subsets and the model. It ensures that one developer’s work does not conflict with another developer’s result.

© Educagen

14


Student Guide - I1ESG

Development Approaches

Components to assemble a system One System Š Educagen

15

Traditional and Component approaches During the last decades system development was based on system development methodologies which were executed by hand. One of these methodologies was the Information Engineering Methology (IEM). This methodology is the basis for the Gen tool. The systems built existed of two parts: applications and databases. Once the initial development was done, the systems were susceptible to change requests. Add-ons to the systems caused a complex structure of these applciations. In practice it became more and more difficult to change an application in production and leave the existing part unchanged. Therefore it would be preferable to define applications in a way that the impact on other applications is as small as possible. They should exist as independent software modules. At Gen sites this leads to the tendency to develop systems according to a different methodology: Component Based Development. This is a way to try to achieve that independency.

Š Educagen

15


Student Guide - I1ESG

Client - Server Application Server

Parts of the Solution

Deployment Environment

Clients

Š Educagen

16

The client/server architecture at program module level contains a modular structure both at client side and at server side. The clients have window application modules and attached sub modules. At the server side the server module takes care of the business processes which write data to the database. For the client and server modules and submodules the tool uses the names procedure step and action block. In these modules the actions on the data are described. A procedure step and action block contain a collection of procedural statements written in the high level structured language. It generates the final program code from these statements and other related descriptions. So the developer does not have to know the programming language the tool set will generate, (C, Cobol, java).

Š Educagen

16


Student Guide - I1ESG

Client/Server Architecture Distributed Process

Application Server

Remote Data Access

GUI Client

1

Client 2 Data base

Web Server

3

© Educagen

Browser

17

Client server means that a system is implemented using more than one computer. Several different client server architectures are recognized The common approach to classify them is based on where the application is divided into the different parts. With the web applications the structure of client server is based on several layers. The most important types of applications are: 1. Distributed Processing The programs for business processes and writing data in the database are implemented on one computer. The application part of the windows is implemented on the user’s pc. This performs data manipulation and checking on the window. 2. Remote Data Access Only the data part is implemented on a server. All programs are on the user’s client. 3. Comprehensive environments The number of levels in application systems is growing. In an application with a web browser interface usually more than 1 additional layer is implemented. The web browser calls a web server that calls an application server that write/reads data. The browser is the client access and the webserver controls the communication with the other systems. Creative thinking enables a lot of possible more comprehensive structures.

© Educagen

17


Student Guide - I1ESG

Project Management Issues – – – – – – – –

Managing the life cycle Integrating applications Maximizing reusability Estimating total effort Staffing Developing a model management plan Establishing change management procedures Coordinating development

© Educagen

18

Project management will meet new challenges. It enables to develop faster, but the project management style has to be adapted to the possibilities. If the management does not take in account the specific characteristics, you will not benefit all advantages. So read the issues above with the specific features in mind. The tool will enforce to test the production environment much faster. The project manager has to take the initiative to make that possible.

© Educagen

18


Student Guide - I1ESG

Roles in Development – – – – – – – – –

Business Analyst Business User System Developer Database Administrator Encyclopedia Administrator Model Manager Configuration Administrator Project Manager Run time specialist

© Educagen

19

Analysts describe the business rules and processes. They use often additional third party tools to deliver analysis results of a high quality. The data administrator is an analyst dedicated to the business data model. The model manager is a role specifically for the coordination of developers and models during the project and the system’s life cycle. He is responsible for the definition of the subsets. He has to carry out the model management strategy. The run time specialist will have to know which run time modules and executables will appear after the generation and install. He must know how to handle them in the target environments and network.

© Educagen

19


Student Guide - I1ESG

Demo I1

Š Educagen

20

In this demo I1EDF1 you get familiar with the menu bars and one of the diagrams. All current Versions will look more or less similar. Do not try to understand the meaning of all diagrams. All important diagrams will be explained to you in the next modules. This demo is only to show the general menu and diagram appearance.

Š Educagen

20


Module I1E

Task I1ETK1

Task I1ETK1 – Introduction Objective

Practicing the main access and menu of the tool set

Assignment

1. Open the tool set. Then it will show the main window.. 2. Select Model and New Model… Create a new model. Give it the long model name MY FIRST GEN MODEL. Use MYFIRST as the local name. Press OK. Now the tool is prepared to start the modeling activities. All modeling information is hold together and stored in this one model MYFIRST. Gen prevents the objects in the model to conflict with each other in a technical way. Of course the correct logical or business meaning never can be checked by the tool set. 3. This model will be used in the tasks of the next modules. So often use the Save option (Model, Save Model), and do not delete the model after each task. You will need it during the next module. 4. Check the menu options. You’ll see that it will be possible to get access to most diagrams. Real actions will only be available when an object can be selected. 5. Select the Help menu option. You may explore and read a bit. You’ll see that the help functionality really is very comprehensive. You don’t need to understand all things you read. All statements and menu items are explained. Lots of examples can be found. Make yourself familiar with it from the first day. You’ll benefit from knowing how to explore it. Most of it will be explained during the rest of the course. 6. The model is stored at the location that is specified in the tool. Go to the main window. (= when you start the tool set). Select Model, Settings and Paths to read the path for your models. Your model has been stored in a folder with the name MYFIRST.IEF at the location you read in the path dialog box: C:\MODELS\. (Attention: The path on your pc may differ from the one in this example.) Use the Windows explorer to search for the folder with the name MYFIRST.IEF. In this folder all model files are stored. Within this folder you’ll see 4 files with the extension .DAT. Those four .DAT files contain all specifications of your model. So when you have to send your task model to your coach, send these four .dat files (zipped). Check the existence of these files on your pc.

© Educagen

21


Module I1E

Š Educagen

Task I1ETK1

22


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.