codepainter revolution trainer course max vizzini zucchetti international operation
TRANSCRIPT
![Page 1: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/1.jpg)
CODEPAINTER RevolutionTrainer Course
Max Vizzini
Zucchetti International Operation
![Page 2: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/2.jpg)
Software Engineering
CODEPAINTER METHODOLOGY
![Page 3: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/3.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
What is Software Engineering all about?
![Page 4: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/4.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Software Engineering
The MythicalMan-Month?
Go to the essence!
REUSE!!!
![Page 5: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/5.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
CODEPAINTER Methodology
• Template-Based source code generation
• Object-Oriented programming
• Rapid Prototyping
REUSE
![Page 6: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/6.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
DOMAIN ANALYSIS
YOU DO NOT HAVE TO DO IT.
WE DID IT FOR YOU!!!
![Page 7: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/7.jpg)
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).
![Page 8: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/8.jpg)
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.
![Page 9: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/9.jpg)
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.
![Page 10: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/10.jpg)
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.
![Page 11: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/11.jpg)
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.
![Page 12: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/12.jpg)
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”.
![Page 13: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/13.jpg)
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.
![Page 14: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/14.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
HOW ALL ENTITIES INTERACT AND
EXCHANGE DATA?
LINKSLINKS
![Page 15: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/15.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
LINKS
• Relationship
• Parent/Child
• Dataflow
• Event
• Read data ... from
![Page 16: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/16.jpg)
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).
![Page 17: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/17.jpg)
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.
![Page 18: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/18.jpg)
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.
![Page 19: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/19.jpg)
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.
![Page 20: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/20.jpg)
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.
![Page 21: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/21.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Cardinalities: Relationship Link
0,1 0...N
0,1 0...N
0,1 0...N
![Page 22: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/22.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Cardinalities: Parent/Child Link
1 0,1
1 0...N
1 0...N
![Page 23: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/23.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Questions?
![Page 24: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/24.jpg)
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:
![Page 25: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/25.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Solution
Items
OrdersPrice Lists per Item
![Page 26: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/26.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Solution 2
Items
OrdersPrice Lists per Item
V.A.T. RatesPrice Lists
![Page 27: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/27.jpg)
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)
![Page 28: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/28.jpg)
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
![Page 29: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/29.jpg)
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.
![Page 30: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/30.jpg)
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.
![Page 31: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/31.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
Links
VATCode (R) ItemVAT
PLCode (R) PLICode
ItemCode (P/C) PLIItem
ItemCode (R) OrderItem
ItemStock (R) <-- OrderQty (+)
![Page 32: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/32.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
EXERCISELibrary Management
![Page 33: CODEPAINTER Revolution Trainer Course Max Vizzini Zucchetti International Operation](https://reader036.vdocuments.us/reader036/viewer/2022081422/5518b085550346881f8b4eca/html5/thumbnails/33.jpg)
Trainer Course Max Vizzini – Zucchetti International Operation
COFFEE BREAK