170 likes | 305 Views
Validation, verification and versioning IN information interoperability. VVV III. Presented by Muzaffar Igamberdiev. OVERVIEW. Problem State-of-the-art Challenges. Information Interoperability. GAP in traditional development. Designer. Programmer. MDE – Model Driven Engineering.
E N D
Validation, verification and versioning IN information interoperability VVV III Presented by MuzaffarIgamberdiev
OVERVIEW Problem State-of-the-art Challenges
GAP in traditional development Designer Programmer
MDE – Model Driven Engineering Model-Driven Architecture (MDA) Domain-Specific Modeling (DSM) PIM Analysis Model PSM Design Code Implementation Code
Model / Model Transformations Verification & Validation Code generation Static Analysis MODEL Rapid prototyping Documentation Dynamic Analysis Automatic Testing Versioning
Model versioning Survey papers: 1. Kerstin Altmanninger, Martina Seidl, Manuel Wimmer: A survey on model versioning approaches. IJWIS 5(3): 271-304 (2009) 2. Brosch, P., et al. (2012). An Introduction to Model Versioning. Formal Methods for Model-Driven Engineering., Springer Berlin Heidelberg. 7320: 336-398. Tool papers: 1. AMOR- Towards Adaptable Model Versioning, MCCM’08, Workshop at MODELS’08 (2008) by Kerstin Altmanninger, GertiKappel, Angelika Kusel, et al. 2. EMF compare - Toulmé, Antoine, and I. Inc. "Presentation of EMF compareutility." Eclipse Modeling Symposium. 2006. 3. RSA - Leroux, D., M. Nally, and K. Hussey. "Rational software architect: A tool for domain-specific modeling." IBM systems journal 45.3 (2006): 555-568. 4. Odyssey-VCS - Murta, Leonardo, et al. "Towards odyssey-VCS 2: improvements over a UML-based version control system." Proceedings of the 2008 international workshop on Comparison and versioning of software models. ACM, 2008. Evaluation criteria Approaches Tools retrieve Open Challenges
Model versioning evaluation criteria • Collaboration (pessimistic [lock-modify-unlock], optimistic [copy-modify-merge] • Repository Architecture (Centralized [ex: SVN], Distributed [ex: GIT] ) • Branching (Implicit, Explicit) • Model merging (raw, two-way & three-way) • Model differencing, matching, comparing [state-based [UUIDs vs. Heuristics], change-based; line/tree/graph-based, Fixed vs. Configurable Granularity; Generic/Specific Atomic, Specific Composite], • Conflict detection [textual, graphical; syntactic/semantic conflicts, Conflict due to Equivalence ], resolution
Model versioning challenges • Generic VCS with language-specific extensions • Detection and specification of composite operations • Configurable granularity level • Accurate conflict detection and representation: • - Realization of accurate conflict detection • - Visualization of differences and conflicts • - Grouping of differences and conflicts • User support for conflict resolution • Identification of conflict dependencies • Supporting the user by conflict resolution recommendations. • Guaranty of a consistent model merge • Intention-aware model versioning • Semantics-aware model versioning - Incorporation of semantic match techniques • Validation of merging of two versions
Model Verification and Validation Survey papers Daniel Calegari, Nora Szasz, Verification of Model Transformations: A Survey of the State-of-the-Art, Electronic Notes in Theoretical Computer Science, Volume 292, 5 March 2013, Pages 5-25 properties Verification techniques Transformation Verification techniques Verification techniques
Challenges, Ideas and future work • Validation of merging of two versions • Model versioning independently of data model, so that it can be used in any modeling tool. How can we do that ?By using layered architecture - Extensible database management systems - Deductive Database
Model versioning challenges • B. Westfechtel, B. P. Munch, and R. Conradi. 2001. A Layered Architecture for Uniform Version Management. IEEE Trans. Softw. Eng. 27, 12 (December 2001), 1111-1133.