Delivering flexible applications using datamanagement patterns - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Delivering flexible applications using datamanagement patterns

Description:

Remia uses Cool:Plex for software development, for it's ability to design ... Field names for field tags. MijnAgenda.xml. XML Generator function. Patterns: XML/XSL ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 35
Provided by: Ca119
Category:

less

Transcript and Presenter's Notes

Title: Delivering flexible applications using datamanagement patterns


1
Delivering flexible applications using
data-management patterns
  • Willem de Vries, Remia C.V.
  • Simon Jasperse, Kiboko

2
Abstract
  • Remia uses CoolPlex for software development,
    for its ability to design abstract software
    patterns.
  • A set of patterns is presented that enables
    end-users to configure parts of an application.
  • The architecture of the Remia pattern-library
    will be presented from the application /
    development perspective.

3
  • Willem de Vries, Remia C.V.
  • IT Management and alignment
  • 15 years IT experience
  • Responsible for Application Architecture
  • User-role for pattern requirements

4
Agenda
  • Remia, the company
  • Remia and Plex
  • Rolodex
  • Remia Patterns
  • Application
  • Design
  • Plex
  • Observations
  • ? time

5
Remia, The Company
  • 75 years of food manufacturing
  • 300 employees
  • Flexibility as a strategic approach
  • IT-systems should support
  • rapid change
  • diversified processes
  • IT-policy with strong development component

6
Remia and Plex
  • Long term AS/400 - iSeries experience
  • Using 2E since 1991
  • Plex since 1999 for
  • quality through standards enforcement
  • speed through reuse of functional patterns
  • Pattern development
  • Framework-approach vs.
  • Explicit experience

7
Rolodex the application
  • Centralised customer-info repository
  • Flexibility structural perspective
  • different channels, different info
  • Flexibility process perspective
  • short time to change
  • independent from IT department
  • Requirement user perspective
  • easy and comprehensive

8
Rolodex The Project
  • Base Layer
  • Separation of Logical and Physical
  • Introduction of Replace - entity
  • Separation of UI and DB models
  • First phase of application project
  • Redesign of Base Layer
  • Build of additional patterns in sync with
    Application Development

9
Rolodex Categories of Patterns
  • Technical patterns
  • Synchronisation / consolidation of data
  • History
  • Supporting patterns
  • Polymorphism
  • Functional patterns data-flexibility
  • User Managed Data
  • Query
  • XML

10
User Managed Data
  • User perspective
  • Definition of questions
  • Conditional application of question-groups
  • Developer perspective
  • Creation of answer-formats
  • Application within owner-context
  • Practice
  • Used within 4 different contexts

11
Comparison to _UserData
  • Goals are comparable
  • Difficult to adjust _UserData to Remias
    BasePattern
  • UI of _UserData too constrained
  • Limited run-time flexibility in _UserData
  • Didnt like the licensing model..

12
Query
  • User perspective
  • Conceptual vs. Table/Column view
  • Tree-wise presentation of compound queries
  • Developer perspective
  • Creation of answer-context
  • Creation of support for elementary concepts
    Datatype Operators
  • Technical ODBC AS/400 support

13
Comparison to Filter
  • Filter can be implemented fast
  • Drawbacks are
  • attached to grid
  • based on single view
  • restricted operator-support for AS/400
    implementation

14
XML
  • User perspective
  • Flexible presentations layout
  • Selective presentation
  • Developer perspective
  • New schemata
  • Schema-extensions
  • Practice
  • XML-based presentation combines with configurable
    data support

15
  • Simon Jasperse, Kiboko
  • 10 years Agronomist UN Africa
  • 6 years Obsydian gt Advantage Plex
  • Application Development
  • Pattern Design / Development
  • Free-lance consultant

16
Patterns User Managed Data
  • Application Demonstration
  • Enter relation data
  • Specify data for relation type

17
Patterns User Managed Data
  • Design

Relation
Relation Type
DataOwner
Characteristic
Delivery Conditions
Product Sales
Use in kg/week (num) Type of Product (list)
Competitor (list)
Data (format)
ListData
18
Patterns User Managed Data
  • Database Implementation

19
Patterns User Managed Data
  • Interface Implementation, Data Entry

Data Value
Characteristics
Data Entry, Format
20
Patterns User Query
  • Create and run query
  • Type A users in Java land, attending Edge 2002

21
Patterns User Query
  • Query example
  • Type A users in Java land, attending EMEA
  • Type A AND Java AND attending EMEA

22
Patterns User Query
  • User Query Pattern
  • ERD
  • Combine queries (AND /OR)
  • UI to build combinations
  • Query by Platform
  • AS400 - file pointer
  • ODBC - SQL

23
Patterns User Query
  • Polymorphism Pattern
  • Super - Subtype
  • Subtype
  • owned by supertype (query)
  • shared functionality (run query)
  • distinct functionality (query view / fields)

24
Patterns Polymorphism
Call RunQuery
Dispatcher
Super Type
Dispatchers
Runquery
Common Functionality
View1
View7
25
Patterns User Query
  • ERD

Relation
Query_ Owner
Query
26
Patterns User Query
  • Implementation

Call RunQuery
27
Patterns XML/XSL
  • Application Demo

28
Patterns XML/XSL
  • XML generation
  • DOM for xml generation
  • Scripting for DOM control
  • Conform with Plex conventions

29
Patterns XML/XSL
  • XML Writer
  • Abstract functions
  • Write xml data from block/single fetch
  • XML generation options
  • Keys in node Attributes
  • Field Names for nodes
  • Impl Names for nodes

30
Patterns XML/XSL
  • XML Writer Tree structure through object scoping
  • Function name gt Node Name
  • Meta calls and parm mapping
  • Field names for field tags

MijnAgenda.xml
XML Generator function
31
Patterns XML/XSL
  • XML Writer Implementation
  • Inherit from abstract functions
  • Replace View / Fetch functions

32
Patterns XML/XSL
  • Display XML - XSL, ActiveX

33
Patterns XML/XSL
  • Display XML - Runtime script generation to
    combine XML and XSL

lthtmlgt ltbodygt ltscript languageVBScriptgt set xml
CreateObject("Microsoft.XMLDOM") xml.async
false xml.load("klnkaart.xml") set xsl
CreateObject("Microsoft.XMLDOM") xsl.async
false xsl.load("Basis.xsl") document.write(xml.tra
nsformNode(xsl)) lt/scriptgt lt/bodygt lt/htmlgt
34
Patterns XML/XSL
Relatie.xml
  • XML for data exchange between platforms
  • Data transfer
  • 1 table 1 file
  • Keys gt Attributes

35
Patterns XML/XSL
  • XML for data exchange
  • Process Data Communication Files

DownloadInfo.xml
36
Observations
  • Flexibility and patterns
  • Balancing between developer and user
  • Weighing reusability and initial investment
  • Application Building
  • Poor impact analysis
  • Huge number of objects
  • Practical results
  • Fast implementation when needed
  • Small team delivers

37
Discussion Questions
deVries_at_remia.nl simon_at_kiboko.nl www.kiboko.nl
Write a Comment
User Comments (0)
About PowerShow.com