Presentation is loading. Please wait.

Presentation is loading. Please wait.

Www.sparxsystems.com Collaborative Modeling Best Practices for Distributed Teams Ben Constable Chief Operations Officer Sparx Systems ISO/TC 211: 31st.

Similar presentations


Presentation on theme: "Www.sparxsystems.com Collaborative Modeling Best Practices for Distributed Teams Ben Constable Chief Operations Officer Sparx Systems ISO/TC 211: 31st."— Presentation transcript:

1 www.sparxsystems.com Collaborative Modeling Best Practices for Distributed Teams Ben Constable Chief Operations Officer Sparx Systems ISO/TC 211: 31st Plenary Meeting, Canberra, 2010 © Sparx Systems Pty Ltd 2010

2 www.sparxsystems.com Overview Collaborative Modeling Concepts Team Deployment Version Control Modeling Workflows for Distributed Teams Managing Cross-Package Dependencies Merging Changes from Incomplete Models Applying Version Control Future Work Q & A

3 www.sparxsystems.com Team based modeling – the challenges Widely distributed teams Shared development of standards Big models and wide scope Change control, merging work, revisions etc

4 www.sparxsystems.com Sample Real-World Global Model Deployment

5 www.sparxsystems.com Multi-site Models – How? Ideal Scenario: Single, Shared (Master) Repository Site 2 Site 3 Site 1 Site n Assumes good connectivity between each site

6 www.sparxsystems.com Multi-site Models – How? Alternative Scenario: Local Replicas Site 2 Site 3 Site 1 Site n Allows broad replication even across slow links

7 www.sparxsystems.com Version Control: What the user sees Packages Checked-in (Locked) Packages Checked-out (Editable)

8 www.sparxsystems.com Version Control: Behind the scenes interfaces

9 Version Control: Multiple Users, Local Models

10 www.sparxsystems.com Versions in Enterprise Architect models Package-Based Versions: Packages serialized as XMI (XML Metadata Interchange) file 1 Package Version = 1 XMI file Enterprise Architect allows version comparisons: Compare utility operates on Baseline vs Current State Current State: The ‘live’ Package in the model repository Baseline (snapshot): XMI-based version of the same package Baseline may take one of these physical forms: ‘Model Baseline’ (Snapshot stored in the model) XMI exported file (Snapshot exists on disk) Version controlled Package (Snapshot in VC Repository)

11 www.sparxsystems.com Overview Collaborative Modeling Concepts Team Deployment Version Control Modeling Workflows for Distributed Teams Managing Cross-Package Dependencies Merging Changes from Incomplete Models Applying Version Control Future Work Q & A

12 Managing Cross-Package Dependencies Examples of Cross-Package Dependencies: UML Connector between Elements in different Packages (eg Inheritance) Classifier referenced from an external package (eg. Attribute type) Move Elements between packages Model contains all related packages. Avoids info loss during XMI export/import

13 www.sparxsystems.com Managing Cross-Package Dependencies Sharing Packages Across Multiple Projects:

14 www.sparxsystems.com Model Merge When it’s needed: Concurrent work on a single package needs synchronization Offline work needs to be ‘uploaded’ Selective roll-back of changes Selective inclusion of changes (‘Phase based’ development) Occurs at the package level Between versions of a package 1-way merge of Model Baseline to live Package Baseline may exist in another model, file (eg. version control) Requires same starting Package Think version, not ad-hoc model merge

15 www.sparxsystems.com Managing Cross-Package Dependencies Consider some possible synchronization scenarios: Merging changes made in a complete model (only one external editor supplies) Merging changes made in an incomplete model (out of date with respect to ‘Master’) How Version Control could streamline the above processes in larger scale

16 www.sparxsystems.com Merging Changes from Complete Models Example Workflow: 1.‘Editor1’ is assigned to Package 1 (P1) 2.Editor1 adds a new element 3.No other updates occur to P1 by other editors 4.Changes to P1 submitted to Model Manager via Baseline 5.Model Manager reviews and merges into Model Master Demonstration: Baseline Merge Complete Changes

17 www.sparxsystems.com Merging Changes from incomplete models Example Scenario 1.Editor1 makes further updates 2.Meanwhile, Editor2 submits other changes to P1 for merge 3.Editor1 now submits changes to P1 4.Model Manager must preserve Editor2’s changes while incorporating Editor1’s new updates (resolve conflicts) Demonstration: Selectively merge changes from Editor1’s Baseline

18 www.sparxsystems.com Applying Version Control Benefits Allows all editors to work with complete models Distribution of model information automated Conflicts avoided by version control locks Enables check-out of all cross-dependant packages Demonstration: Version Controlled Packages

19 www.sparxsystems.com Future Work: Package Dependency Checks Automated Dependency Checking: Ensure classifiers available in model prior to check-in Report on missing classifiers Allow automatic “add from baseline” Enterprise Architect 9

20 www.sparxsystems.com Future Work: Model Registry Facilitate systems-of-systems modeling A central store for multiple information models Cross-domain, reusable models published by SDO’s Inter-model dependencies, automatically retrieved Implementation: Solid Ground, hosted by CSIRO More Info: https://wiki.csiro.au/confluence/display/solidground/Model+Registry+Tools

21 www.sparxsystems.com Best Practices Summary Edit complete models, where possible Use Baseline Merge to selectively include changes, otherwise Assign ‘Model Manager’ to coordinate efforts Apply Version Control for wide distribution and ‘auto-update’ Editors use ‘Get All Latest’ to retrieve complete, up-to-date model Check out all cross-dependent packages, commit atomically More Info: http://www.sparxsystems.com/WhitePapers/Version_Control.pdf

22 www.sparxsystems.com Overview Collaborative Modeling Concepts Team Deployment Version Control Modeling Workflows for Distributed Teams Managing Cross-Package Dependencies Merging Changes from Incomplete Models Applying Version Control Future Work Q & A

23 thank you for your attention!


Download ppt "Www.sparxsystems.com Collaborative Modeling Best Practices for Distributed Teams Ben Constable Chief Operations Officer Sparx Systems ISO/TC 211: 31st."

Similar presentations


Ads by Google