codepainter revolution trainer course max vizzini zucchetti international operation

Post on 30-Mar-2015

229 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CODEPAINTER RevolutionTrainer Course

Max Vizzini

Zucchetti International Operation

Software Engineering

CODEPAINTER METHODOLOGY

Trainer Course Max Vizzini – Zucchetti International Operation

What is Software Engineering all about?

Trainer Course Max Vizzini – Zucchetti International Operation

Software Engineering

The MythicalMan-Month?

Go to the essence!

REUSE!!!

Trainer Course Max Vizzini – Zucchetti International Operation

CODEPAINTER Methodology

• Template-Based source code generation

• Object-Oriented programming

• Rapid Prototyping

REUSE

Trainer Course Max Vizzini – Zucchetti International Operation

DOMAIN ANALYSIS

YOU DO NOT HAVE TO DO IT.

WE DID IT FOR YOU!!!

Trainer Course Max Vizzini – Zucchetti International Operation

MASTER FILE

• Contains a Form for data entry and a Database Table.

• Use it when records must be processed one by one (i.e. Each record is processed on its own).

Trainer Course Max Vizzini – Zucchetti International Operation

MASTER/DETAIL

• Contains a Form and two database tables (Master Table and Detail Table).

• Master table contains all unrepeated fields.• Detail Table contains all repeated fields.• The primary key of the Detail Table is

formed by the primary key of the Master Table plus all attributes constituing a key for the Detail Table.

Trainer Course Max Vizzini – Zucchetti International Operation

DETAIL FILE

• Costituted by a Database Table and a Form.

• All the unrepeated fields are part of the primary key.

• The primary key must also contain repeated field.

• Usually this entity has a Parent/Child Relationship with a Master File.

Trainer Course Max Vizzini – Zucchetti International Operation

ROUTINE

• They do not have an user interface

• They can represent functions, procedures and batches

• They use a meta-language that is portable between different programming languages.

Trainer Course Max Vizzini – Zucchetti International Operation

DATABASE TABLE

• They do not have an user interface

• They are usually linked with Routine and Dialog Window Entities.

• They are used as working table or to store historical data.

Trainer Course Max Vizzini – Zucchetti International Operation

DIALOG WINDOW

• They do not have database tables.

• They are usally connected with other entities with database tables.

• They contain variables ONLY and they are quite used as “Option Windows”.

Trainer Course Max Vizzini – Zucchetti International Operation

OUTPUT

• They represent output like Zooms, Graphs, Reports, MS Word Documents, and MS Excel SpreedSheets.

• These entities are defined during run-time using the Visual Framework generated with the application.

Trainer Course Max Vizzini – Zucchetti International Operation

HOW ALL ENTITIES INTERACT AND

EXCHANGE DATA?

LINKSLINKS

Trainer Course Max Vizzini – Zucchetti International Operation

LINKS

• Relationship

• Parent/Child

• Dataflow

• Event

• Read data ... from

Trainer Course Max Vizzini – Zucchetti International Operation

Relationship Link

• It establishes a referential integrity between the two tables belonging to the connected entities.

• Some data can be read from one table to another.

• Some back updates can be specified.

• It has a direction (from Entity A to Entity B).

Trainer Course Max Vizzini – Zucchetti International Operation

Parent/Child Link• It establishes a link between a Parent Entity and a Child Entity.

• The Child Entity Primary key must be made with the Parent one.

• Referential integrity is established between the two database tables.

• When a row is deleted in the Parent ALL related rows are deleted in the Child.

Trainer Course Max Vizzini – Zucchetti International Operation

Dataflow Link

• It represents the flow of data between entities.

• A Routine Entity must be placed at one link end.

• No code is generated. Documentation purpose ONLY.

Trainer Course Max Vizzini – Zucchetti International Operation

Event Link

• This link establishes a triggering event for a given Entity.

• The Database Table Entity cannot be triggered by an event.

• The list of Events is not customizable.

Trainer Course Max Vizzini – Zucchetti International Operation

Read data ... From ... Link

• It shows how Routine, Dialog Window and Output Entities read data from other entities.

• It is used for documentation purpose ONLY.

• No code is generated.

Trainer Course Max Vizzini – Zucchetti International Operation

Cardinalities: Relationship Link

0,1 0...N

0,1 0...N

0,1 0...N

Trainer Course Max Vizzini – Zucchetti International Operation

Cardinalities: Parent/Child Link

1 0,1

1 0...N

1 0...N

Trainer Course Max Vizzini – Zucchetti International Operation

Questions?

Trainer Course Max Vizzini – Zucchetti International Operation

Example

Manage a Warehouse so that it is possible to add / modify / delete items, and place purchasing orders. In particular, each item must have a V.A.T. code, and a set of price lists associated.

Customer Requirements:

Trainer Course Max Vizzini – Zucchetti International Operation

Solution

Items

OrdersPrice Lists per Item

Trainer Course Max Vizzini – Zucchetti International Operation

Solution 2

Items

OrdersPrice Lists per Item

V.A.T. RatesPrice Lists

Trainer Course Max Vizzini – Zucchetti International Operation

“Items” Entity

ITEMS:

• ItemCode Char(8) Primary Key

• ItemDescr Char(40) Secondary Key

• ItemVAT Char(8)

• ItemStock Num(10)

Trainer Course Max Vizzini – Zucchetti International Operation

“Price Lists” & “VAT Rates” Entities

PRICE LISTS:

• PLCode Char(8) Primary Key

• PLDescr Char(40) Secondary Key

VAT RATES:

• VATCode Char(8) Primary Key

• VATDescr Char(40) Secondary Key

Trainer Course Max Vizzini – Zucchetti International Operation

“Orders” Entity

ORDERS:

• OrderCode Char(8) Primary Key

• OrderDate Date

• CPROWNUM Num(8) Rep. Primary Key

• OrderItem Char(8) Rep.

• OrderQty Num(10) Rep.

Trainer Course Max Vizzini – Zucchetti International Operation

“Price Lists Per Item” Entity

PRICE LISTS PER ITEM:

• PLIItem Char(8) Primary Key

• PLICode Char(8) Rep. Primary Key

• PLIPrice Char(8) Rep.

Trainer Course Max Vizzini – Zucchetti International Operation

Links

VATCode (R) ItemVAT

PLCode (R) PLICode

ItemCode (P/C) PLIItem

ItemCode (R) OrderItem

ItemStock (R) <-- OrderQty (+)

Trainer Course Max Vizzini – Zucchetti International Operation

EXERCISELibrary Management

Trainer Course Max Vizzini – Zucchetti International Operation

COFFEE BREAK

top related