Extending BCDM to support cooperative work

  • Published on

  • View

  • Download

Embed Size (px)


Extending BCDM to support cooperative work. Paolo Terenziani, Alessio Bottrighi, Stefania Montani Dipartimento di Informatica, Univ. Piemonte Orientale, Alessandria, Italy Luca Anselma, Dipartimento di Informatica, Univ. Torino, Italy. Outline. Introduction Goals and Criteria Data Model - PowerPoint PPT Presentation


  • Extending BCDM to support cooperative workPaolo Terenziani, Alessio Bottrighi, Stefania MontaniDipartimento di Informatica, Univ. Piemonte Orientale, Alessandria, Italy

    Luca Anselma,Dipartimento di Informatica, Univ. Torino, Italy

  • OutlineIntroductionGoals and CriteriaData ModelManipulation operationsAlgebraConclusions

  • Introduction (1/5)Cooperative work:Important, e.g. software development-Multiple alternative proposals-SelectionSoftware engineering tools

  • Introduction (2/5)Cooperative work:Analogous problems using DBs to model complex domainsIncremental modeling, cooperative work

  • Introduction (3/5)The case of clinical guidelines:General guideline proposed by a standardization committeeProposals of updateLocal contextualizationNew therapiesEvaluation of proposals* Guideline to be stored in a DB

  • Introduction (4/5) Open issuesAugmenting DB approaches to support cooperative work, i.e.:Distinction between proposals and acceptance/rejectionHistory of the evolution of the proposalsAlternative proposals* Notice: usual semantics of (relational) DBs, conjunction of tuples

  • Introduction (5/5) ContextBoth VT and TT should be supportedConsensus approach (TSQL2) with a high-level semantics (BCDM)BCDM supports several TDB implementations (not only TSQL2)

  • Goals (1/3)Extending BCDM to support cooperative updatesPropose vs accept/rejectAlternative proposals of updatesNotice: underlined implementation

  • Criteria (2/3)Under-constrained policy:Super user vs userSuper user operations: standard + accept/reject proposalsUser operations:delete (not proposals)InsertUpdate (chains allowed)* Notice: easy to specialize E.g.: policy 1: super users can only accept/reject

  • Criteria (3/3)Minimal extension of BCDM:Upward compatibility (manipulation operations)Reducibility (algebra)

  • Data Model (1/9)Two data levels needed:Super users (accepted) dataUser proposals

    * Notice: proposals need to be maintained and affect super-user data only if/when accepted

  • Data Model (2/9)AuthoringNote: author as a data attribute-Basically a standard: attribute (however, author cannot be modified)

  • Data Model (3/9)Super user dataStandard BCDM

  • Data Model (4/9) user proposalsFor each super-user relation r:pi(r): set of insert proposals in rpd(r): set of proposals of deletion of tuples in rpu(r): set of updates of tuples (in r, pi(r), pu(r))

  • Data Model (5/9) insert proposalspi(r) is a set of standard BCDM tuples

  • Data Model (6/9) delete proposalspd(r) is a set of standard transaction-time tuples

    * Notice: no value-equivalent data in r VT not needed

  • Data Model (7/9) update proposalsUpdate involves:An origin tuple to be updated (time not needed)A new temporal tuple (standard BCDM tuple)

    * Notice: multiple update proposals involving the same origin are in alternative

  • Data Model (8/9) update proposalsDefinition: proposal tupleAn originA non empty set of (bi)temporal tuples

    Interpretation: disjunctive set of alternative proposals (each one is a BCDM tuple)

  • Data Model (9/9) update proposalspu(r) is a set of proposal tuples on r

    Property: uniqueness of representation

  • Manipulation operationsE.g.: propose update***

    * Notice: value equivalent proposals for the same origin are not allowed

  • Manipulation operationsE.g.: accept update proposal***Notice: the alternatives of the selected updated are not allowed

  • Manipulation Operationstwo level check on legal operations1)Proposal TimeSuper: Propose_update (x | )REJECTED2) Evaluation Time

  • Manipulation operationsProperty 1. Upward compatibility

    Moreover, if Policy 1 is adopted:Property 2. Semantic upward compatibility

  • Algebraic operationsStandard BCDM algebraic operations for super-user and for pi and pdConversion operations on pu:origin(pu(r)) = { o \ pu(r)}alternative(pu(r)) = Schema(r)BCDM({{a1,, an} \ pu(r)}

  • Algebraic operationsE.g.: natural join:***

  • Algebraic operationsDefinition: conv***

    Propertyconv( OpA( pu(r) ) ) = opBCDM( conv( pu(r) ) )* Note: underlying possible implementation

  • ConclusionsProblem of cooperative update is importantNew problem in DB fieldBCDM extended to support:Data modelManipulation operationsAlgebraUpward compatibilityImplementation


View more >