Transaction Integrity in Componentbased Systems - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Transaction Integrity in Componentbased Systems

Description:

information systems support business processes inside an organisation, or ... the architecture is the musical composition. Architecture is used: to divide and conquer ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 23
Provided by: Marijke4
Category:

less

Transcript and Presenter's Notes

Title: Transaction Integrity in Componentbased Systems


1
Transaction Integrity in Component-based Systems
  • Kees M. van Hee
  • Dept. of Mathematics and Computer Science

2
Agenda
  • Information systems versus embedded systems
  • Component-based world
  • Software architecture
  • Transaction integrity

3
Info systems vs embedded systems
  • What do information systems do?
  • monitoring of (business) processes
  • planning of (business) processes
  • execution of (business) processes
  • How?
  • registration of states of objects and events
  • generation of management information
  • generating or evaluating decisions
  • facilitating the cooperation between people
  • processing of transactions

4
Info systems vs embedded systems
  • information systems support business processes
    inside an organisation, or
  • between two or more organizations (so called
    inter-organizational i.s.)
  • embedded systems (e.s.) support physical devices
  • e.s. have more simple data structures
  • e.s. have stronger time and resource constraints
  • despite the differences, most methods apply to
    both types of systems

5
Component-based world (1)
  • System network of components
  • both hardware and software
  • components may reside anywhere
  • components are specified and recognized by their
    function and their interface interface
    protocol data types

user interface
component
monitor interface
configuration interface
software interface
6
Component-based world (2)
  • e.g. a Telco operator is built of ca 20 COTS
    components

7
Component-based world (3)
  • Different types of components
  • application components contain business logic
  • generic components support application components
    and have no business logic

8
Component-based world (4)
  • Parameters of predefined components
  • parameters are options, selected from a list or
    input as simple data (often a tree of option
    lists)
  • limited flexibility, but easy to use
  • little ICT knowledge but much application
    knowledge required
  • Parameters of programmable components
  • parameters are models, like data models and
    process models
  • the model defines the function of the component
  • special languages to make models (often diagrams)
  • very flexible, but advanced ICT knowledge
    required

9
Component-based world (5)
  • Component based development is different
  • requirements are determined
  • an architecture is designed
  • components are specified
  • components are selected form vendors or
    constructed from scratch
  • configuring components parameter setting
  • integration is connecting components interfaces,
    often via middleware
  • Programming configuring integration
  • the architecture is essential

10
Component-based world (6)
  • component-based systems will behave in an
    organic way
  • periodically components will be replaced by
    better ones
  • new functionality will be realised by new
    components
  • vendors will compete with the best functionality
    of their individual components
  • prepacked solutions will be offered by third
    parties
  • combinations of components with parameters that
    can be used as a new predefined component
  • prepacked solutions can be made by third
    parties
  • prepackers will compete with vendors of
    packages
  • components may be outsourced to an ASP

11
Features of IS to be componentized
Component-based world (7)
  • Data management
  • User interaction
  • Business process
  • Business logic
  • Component coordination
  • Security control

12
Generic components and some vendors
Component-based world (8)
  • Oracle, Sybase
  • OpenIMS, Worldox
  • Business objects, Cognos
  • Tridion, Tekfuse CMS
  • Apache, IIS
  • WebLogic (BeaSys), Borland Enterprise Server
  • FairIsaac, ILOG
  • Staffware, Cosa
  • BizTalk, Tibco
  • Database man. system
  • Document man. system
  • Datawarehouse / Dataminer
  • Content man. system
  • Webserver
  • Application server
  • Rule engine
  • Workflow man. system
  • Coordination engine

13
Component-based world (9)
Web Server
ApplicationServer
Rule Engine
Workflow Engine
Coordination Engine
Application
Application
Database Manager
Data Warehouse
ContentManager
Document Manager
14
Software architecture (1)
  • System development requires orchestration
  • the architecture is the musical composition.
  • Architecture is used
  • to divide and conquer
  • to define and select components
  • to test and integrate components
  • to manage a system when it is operational

15
Software architecture (2)
  • Definitions
  • Architecture of a system a consistent set of
    views and rules of the system
  • A view is a model of a system (often a graph)
  • Views are related to each other
  • Rule is a constraint on a view or on a
    combination of views
  • Architecture language a language to define views
  • Architecture pattern standard solution for
    generic problem

16
Software architecture (3)
Example
  • business architecture
  • process model
  • information model
  • software architecture
  • logical model.....
  • physical model................
  • infrastructure

17
Software architecture (4)
  • Component-based architecture
  • Components have 4 layers
  • Ports to communicate
  • Processes with tasks (actions, events)
  • Objects to store data, accessible by methods
  • Subcomponents
  • Processes determine the behavior
  • Tasks exchange messages through ports with other
    components
  • Tasks execute operations on objects by method
    calls
  • (Yaffa Yet another framework for architecture)

18
Software architecture (5)
  • Processes are the heart of a component
  • Can be modeled in different ways e.g.
  • Transition system
  • Process algebra
  • Petri net
  • Uml Activity Diagram
  • BPMN
  • BPEL
  • Components execute transactions, tiggered
    externally

19
Transaction integrity (1)
  • Transactions may start up sub transactions in
    other components
  • Transactions should have a clearly defined start
    and end event
  • Two correctness criteria
  • Proper completion transactions should always be
    able to terminate with an end event, and they
    should not leave any unfinished work
  • Invariants constraints on the objects of a
    component should hold as soon as a component has
    finished its transactions

20
Transaction integrity (2)
  • If we use Petri nets as modeling vehicle
  • Processes that are model transactions have the
    structure of workflow nets
  • Proper completion is called soundness
  • Soundness is decidable and there are software
    tools to check it

21
Transaction integrity (3)
  • Example with Yasper
  • A two component system
  • Webservice for query processing
  • Processing is outsourced to a second component
  • Clients pay in advance
  • If the second component has not answered all
    questions before the client stops the payment is
    refunded
  • Are transactions handeled correctly?

22
Challenges for software architects
Challenges
  • The correct orchestration of components
  • To isolate functionality in a generic component
  • Clear, generic functionality required
  • Business plan needed market analysis, who is the
    vendor, do the benefits cover the costs?
  • To deal with overlapping functionality
  • Which one to use?
  • If both have to be used, how do we synchronize
    them?
  • Reshuffling of functionality
Write a Comment
User Comments (0)
About PowerShow.com