Web Service Conversations: Analysis and Design

Bridging Persistent Data and Process Data Jianwen Su University of California at Santa Barbara Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26

2 Traditional BP Modeling Activity-centric, focusing on control flow (e.g. BPMN) Mainly aiming at business management in general (instead of software design/development) E.g., resource planning, logistics, and management Missing data is a key reason for hindering software design and management, many miserable stories including Hangzhou Housing Management Beauru (HHMB) Kingfore Corporation (KFC, Beijing) RuiJing hospital (Shanghai) & DAB 2013 Cottage hospital (Santa Barbara, 2013/08/26 CA) 3

Four Kinds of Data Business data: essential for business logic Examples: items, shipping addresses Enactment status: the current execution snapshot Examples: order sent, shipping request made Resource usage and state needed for service execution Examples: cargo space reserved, truck schedule to be determined Correlation between processes instances Example: 3 warehouse fulfillment process instances for Janes order Need DAB 2013 models that include both activities and 2013/08/26

4 Four Classes of BP Models Data agnostic models: data mostly absent WF (Petri) nets, BPMN, UML Activity Diagrams, Data-aware models: data present (as variables), but storage and management hidden BPEL, YAWL, Storage-aware models: schemas for persistent stores, mappings to/from data in BPs defined and managed manually jBPM, Data encapsulting models: logical data modeling, automated modeling other 3 types, data-storage mapping Business objects, artifact-centric models DAB 2013 2013/08/26 5

Artifact = Biz Process A business artifact is a key conceptual business element that is used in guiding the operation of the business fedex package delivery, patient visit, application form, insurance claim, order, financial deal, registration, Consists of a business entity and a lifecycle [Nigum-Caswell IBM Sys J 03] Very to business managers and BP Businessnatural (biz) entity modelers preliminary secondary application review review

For this talk : artifact is a synonym of approval BP (practically beneficial) delivary DAB 2013 certificate 2013/08/26 lic. fee payment 6 Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead

Conclusions DAB 2013 2013/08/26 7 Story 1: Toy Application Systems Development of application systems in DB a course Last Winter: a bank system Accounts, clients, transactions; a small number of typical transactions; teller & management: monthly statements, tax reports Typical development approach: EntityRelationship modeling Java classes/modules Java & JDBC code Most frequent mistakes: Mismatch of data design in Java and in ER: omissions, incompatible semantics TooThe

bad: this is the best toseparated teach two sides of the coinavailable are indeed DAB 2013 2013/08/26 8 Story 2: An Application System Heating repair workflow for Kingfore in Beijing The primary workflow consisting of reporting problems, assign service persons, onsite repair,

and post-repair review visits 3-month development contracted to BUPT Their problem: Mid-way requirement change including, in particular, adding an activity to the repair workflow: demands rewriting a lot of code Artifact BP helps conceptualizaing changes, but code mostly involve DB DAB 2013 A close look: rewritten 2013/08/26 9 Database Design & Biz Entity Design Typical development steps: Enterprise database design The repair workflow modeled in XPDL (BPMN) Each activity in the workflow coded, biz entity never designed but just coded as

needed Developers made isolated decisions to link biz entity to database (via SQL) (contrast to BP 2013] [Sun-S.-Wu-Yang model) Elevating to the conceptual level Biz entity artifact info model Link database-entity mappings Integrating the two sides helps application development could enable automating coding db accesses DAB 2013 2013/08/26 10 An XXX Application System Ad hoc design, developed over time, patches, multiple technologies, a typical legacy system Problems: Embedded business logic, hard to learn

hard to maintain, costly to add new functionality hard to change/evolve DAB 2013 2013/08/26 11 SOA Paints a Bright Picture Services encapsulate system details and reflect business logic, easier to learn Easier to manage even if not technically New functions on top of services Inheritance Reassessment Title Change Appraisal

Tax Calculation Determine tax base Salestransaction services DAB 2013 2013/08/26 12 The LEGO Fantasy AssessorPAL HR_PAL AppraisalPAL AccountingPAL

Reassessment Inheritance Title Change Tax Calculation Determine tax base Enterprise System TaxPAL TitlePAL Towards a goal of Business Process as a Service (BPaaS) Enterprises may run virtual IT systems How do we do it? DAB 2013 2013/08/26

13 Service Programming is an Art ow to query? arn if #applications r title change involving x reassessment reach 5 age>55 & How to compose? Is it correct? new service Certificate Inheritance Reassessment Title Change Appraisal Tax

Calculation Determine tax base Salestransaction Salestransaction HELP NEEDED Add new edu tax How to do transactions? services How to change & evolve? The real world is not very kind DAB 2013 2013/08/26

14 Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26 15 Workflow instances

Conceptualizing Running Workflows Database Each workflow (BP) instance consists of a biz entity and a lifecycle Data mappings are ad hoc DAB 2013 2013/08/26 16 Data Integration: A Birds View [Lenzerini PODS 02] Local data source ...

Global Database Local data source Global as View (GAV): The global database is a view (result of a query) on local data sources Local as View (LAV): each local data source stores the result of view on the virtual global database Research focused on query evaluation Schema mapping (e.g., Clio) focus on computing general target databases DAB 2013 [Popa et al VLDB 02] [Fagin et al, ICDT 03] 2013/08/26 17 Workflow instances

Data Integration for Workflows? Database GAV is not suitable: Data not stored in workflow instances The number of instances changes at runtime LAV? Data DAB 2013 not stored in workflow instances 2013/08/26 18 Soundness and Completeness Local data source Global Database A

local view is [Lenzerini PODS02] sound: only contains (part of) results of the view complete: contains all results of the view Workflow data mappings? Must be exact, i.e., both sound and complete Open problem: demands a better understanding of data DAB 2013 2013/08/26 mappings 19 Outline Activity data-centricity artifact Lessons from practice

BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26 20 Example: The Database (& Lifecycle) Includes keys, foreign keys, and a cardinality specification on each foreign key Repair Application w(ID) w(Customer Name)

r(Customer Address) ... Application Review ... DAB 2013 Repairperson Assignment w(Service ID) w(Repairperson Name) w(Repairperson Phone) On-site Repair w(Material ID) w(Material) Document Archive Post-repair Visit ...

... 2013/08/26 ... ... 21 Example: The Biz Entity Tuple and (nested) set constructs DAB 2013 2013/08/26 22 Example: Cross Reference Paths

: tRepair.tRepairID aReason = aReason.aRepair [email protected](tRepairID).tReason aCust Addr = aCust Addr.aCust Name.[aCust Last Name, aCust First Name]@tUser(tLastName, tFirstName).tAddress aID DAB 2013 2013/08/26 23 More Cross Reference Paths : tServiceInfo.tServiceID when aServiceID.aService Info.aID = tServiceInfo.tRepairID aServiceID SI aTime = [email protected](tServiceID).tTime In

summary, two kinds of mapping rules: Key mapping rule existentially quantified Non-key mapping rules access path with DAB 2013 2013/08/26 24 Entity-Database Cover ED cover consists of one mapping rule for each primitive attribute in biz entity Key attributes use key mapping rules Non-key attributes use equality access rules Workflow Great DB news: DB accessed can be auto-generated

Workflow modifies its entity, DB hidden Every update on DB can be propogated to entity? Every update on entity can be propogated to DAB 2013 2013/08/26 25 Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013

2013/08/26 26 Updatability Workflow e = m(d) m DB d Database updability: for each update Dd on d, there is an e such that e = m(Dd(d)) Entity updability: for each update De on e = m(d), there is a d such that m(d) = De(e) DAB 2013

2013/08/26 27 Updatability Workflow e = m(d) m DB d De Dd m De(m(d)) Dd(d) Database updability: for each update Dd on d, there is an update De such that De(m(d)) = m(Dd(d)) Entity updability:

for each update De on m(d), there is an update Dd such that m(Dd(d)) = D (m(d)) DAB 2013e 2013/08/26 28 Entity Update & View Update Database updatability: forward, can always be done Entity updatability: backward, often not possible Very closely related to database view update problem [Bancilhon-Spyratos TODS 81] View complement [BS81] [Lechtenbrger et al PODS 03]

Clean source [Dayal-Bernstein TODS 82][Wang et al DKE 06] Fortunate here: Theorem: Every non-overlaping ED cover is entity updatable [Sun-S.-Wu-Yang ICDE 14] DAB 2013 2013/08/26 29 Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths

The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26 30 SeGA: A Service Wrapper/Mediator SeGA [Sun-Xu-S.-Yang CoopIS 12] separates data from execution engine Serves as a mediator DAB 2013 Possible only if footprints of BP instances disjoint 2013/08/26

31 m ... Snapshot Isolation of BP Instances DB d is isolating if each update on a single entity (instance) will not affect write (and/or read) attributes of other entity instances Theorem: Isolation can be tested Testing conflicting updates EXPTIME with conditional updates [Sun-S.-Wu-Yang ICDE 14] m DAB 2013

2013/08/26 32 Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26 33

Connecting Biz Entities and Databases Fundamentals What are these mappings? db queries phrased in 1960s, not understood until [Chandra-Harel JCSS 79, Bancilhon-Paredaens IPL 79] Updatability, what else? Mapping languages Design principles Isolation, for lifecycles?, runtime mechanisms? Data design completeness, needs ontology Implementability: translating IOPEs on artifact to DB Transactions Workflow vs databases DAB 2013 2013/08/26 34

Outline Activity data-centricity artifact Lessons from practice BP as a Service Extending the artifact concept: Help from data integration? (or not) Cross reference paths The updatability requirement Isolation of process footprints or dataprints Many challenges ahead Conclusions DAB 2013 2013/08/26 35 Conclusions Research

on artifact BPs: need to look outside Data is the enabler/destroyer Holistic approaches including data and BPs can benefit practice, i.e., software design for enterprises BPaaS requires independence of service and data management [S. ICSOC12] Need a new forum to explore holistic approaches DAB 2013 2013/08/26 36

Recently Viewed Presentations

  • PowerPoint Presentation

    PowerPoint Presentation

    Hebrews 10:24-26 (CEB)24 And let us consider each other carefully for the purpose of sparking love and good deeds. 25 Don't stop meeting together with other believers, which some people have gotten into the habit of doing.Instead, encourage each other,...
  • Assessing Mechanisms of Isotopic Fractionation During ...

    Assessing Mechanisms of Isotopic Fractionation During ...

    Welcome to the CLU-IN Internet Seminar Applications of Stable Isotope Analyses to Environmental Forensics (Part 3), and to Understand the Degradation of Chlorinated Organic Contaminants (Part 4)
  • Chapter 2

    Chapter 2

    On a busy Friday night during the fall football season, one of Ms. Mitchell's servers approached a table with four female patrons. Since all appeared to be near 21 years old, but well under the 35-year-old limit Ms. Mitchell had...
  • Collagen - med.uth.edu

    Collagen - med.uth.edu

    Hyperlaxity of distal joints. Joint contractures of elbows, knees, spine, neck. Clubfoot (rare) Dysphagia with transient feeding difficulties. Presentation of UCMD (continued) Propensity for abnormal (atrophic, keloid) scars. ... Col6a1 knock-out mouse models .
  • Java Object-Oriented Programming - 國立臺灣大學

    Java Object-Oriented Programming - 國立臺灣大學

    Chapter 27 - Java Object-Oriented Programming Outline 27.1 Introduction 27.2 Superclasses and Subclasses 27.3 protected Members 27.4 Relationship between Superclass Objects and Subclass Objects 27.5 Implicit Subclass-Object-to-Superclass-Object Conversion 27.6 Software Engineering with Inheritance 27.7 Composition vs. Inheritance
  • Chapter 5: Learning  What is learning? The cessation

    Chapter 5: Learning What is learning? The cessation

    Identify the UCS, UCR, Neutral Stimulus/CS, and CR. 1. To discourage coyotes from attacking their sheep, ranchers feed the coyotes small pieces of mutton tainted with poison that, when ingested, cause the coyotes to experience extreme dizziness and nausea.
  • Atmosphere PowerPoint - Henry County School District

    Atmosphere PowerPoint - Henry County School District

    The Layers of the Earth's Atmosphere Please follow along and add notes to your graphic organizer EXOSPHERE THERMOSPHERE MESOSPHERE STRATOSPHERE TROPOSPHERE The Atmosphere The atmosphere consists of layers of air that surround the Earth.
  • Elementary Statistics 3E

    Elementary Statistics 3E

    Example: General Multiplication Rule Among those who apply for a particular job, the probability of being granted an interview is 0.1. Among those interviewed, the probability of being offered a job is 0.25.