Upload
elijah-owens
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Internet application development using a meta-repository
Michel TilmanSystem Architect, Unisys Belgium
http://users.pandora.be/michel.tilman
ESUG’2000 Summer SchoolESUG’2000 Summer SchoolSouthamptonSouthampton
August 29, 2000August 29, 2000
Contents
IntroductionDynamic Object ModelsBusiness application framework Internet frameworkBuilding applicationsDemoDesignReferences
Introduction
Application requirements Configurable, flexible, adaptable
‘End-user’ ‘programmable’
No hard-coding of model and business rules Dynamic
High-level Domain-specific languages
Metadata Self-description
Dynamic Object Models
A system with a dynamic object model has an explicit object model that it interprets at run-time. If you change the object model, the system changes its behavior.
The model defines the objects, their states, the events, and the conditions under which an object changes state.
Business rules can be stored in a dynamic object model that makes it easy to evolve the way a company does their business.
Business application framework
Goal End-user applications
Databases, electronic documents, workflow• Client / server + Internet
Common business model
Flexible application development framework
Subject to change by ‘end-user’ Business model
Organization model, object model, business rules, …
Application specificationsOverview lists, forms, query screens, ...
ApproachTraditional data repository
Repository
Employee Name Employee ID Department IDSmith 1280 12Adams 1281 19Washington 1282 12
End-user applications
ApproachAdding meta-repository
Meta-repository
End-user tools Configuration and administration tools
Employee
PersonNameId
DepartmentId
Works in
Layout User ApplicationMy layout Tilman DocumentationDefault Documentation
Object model
Application specifications
ApproachCombining repositories
End-user, configuration and administration tools
Object model
Meta-model
Applications, views, queries, rules, processes
Objects
(Meta-)Repository
Employee Name Employee ID Department IDSmith 1280 12Adams 1281 19Washington 1282 12
Building applications
Define or extend object model
Object types, associations and basic constraints
Define application environment
Views on shared object model
Business rules
Authorizations, user-defined constraints, event-condition-action rules, workflow processes
Object behavior
Building Internet applications
Re-use existing framework
Application environment, queries, layouts, business rules, ...
Internet server
Framework client
4-Tier architecture
• Browser - HTTP server - Internet server - DB
Orthogonal application view
Design
4-Tier architecture
Partial use of VisualWave
Session management
HTTP / CGI interface
SAV-triad
Session (resolver)
Application model
View
Design
Session resolver identifies
Application (id)
Message
Registered, typed arguments
Application
Main application id
Subcomponent
Access path
Design
View
Generates Web page
HTML / Javascript
• Compatibility
• Event handlers generated dynamically at client site
Document builder
XML document
Avoids syntactic errors
Future directions
Regeneration of session context
Bookmarks
SOAP-compatible message protocol
Applets
True XML documents
XSL
References
Argo framework
http://users.pandora.be/michel.tilman/Publications/Wiley/Af1179.doc
http://users.pandora.be/michel.tilman/Publications/Wiley/figures.zip
Dynamic object models
http://st-www.cs.uiuc.edu/users/johnson/DOM.html
http://users.pandora.be/michel.tilman/Publications/PLoP2000.pdf