Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins



Similar documents
Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Bridging the Generic Modeling Environment (GME) and the Eclipse Modeling Framework (EMF)

Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

Metamodels and Modeling Multiple Kinds of Information Systems

A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor

WebSphere Business Modeler

An Eclipse plug-in for Public Administration software system modelling and simulation

Taking Subversion to a Higher Level. Branching/Merging Support. Component Management Support. And More

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Introduction à EMF Eclipse Modeling Framework

VICCI. The Eclipse Modeling Framework (EMF) A Practical Introduction and Technology Overview. Dipl.-Inf. Christoph Seidl

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

XFlash A Web Application Design Framework with Model-Driven Methodology

Revel8or: Model Driven Capacity Planning Tool Suite

Eclipse BPMN Modeler Introducing Intalio Designer

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

SEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation

Development of Tool Extensions with MOFLON

A Framework of Model-Driven Web Application Testing

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts

Concepts for the model-driven generation of graphical editors in Eclipse by using the Graphiti framework

Co-Creation of Models and Metamodels for Enterprise. Architecture Projects.

Winery A Modeling Tool for TOSCA-based Cloud Applications

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

A Tool Suite for the Generation and Validation of Configurations for Software Availability

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools

Integrating Performance Characterization with Software Development

The BPM to UML activity diagram transformation using XSLT

T-Mobile Umsetzung und Einsatz

Tool Support for Model Checking of Web application designs *

Implementing reusable software components for SNOMED CT diagram and expression concept representations

Developing SOA solutions using IBM SOA Foundation

CHAPTER 2 LITERATURE SURVEY

Creating visualizations through ontology mapping

Tools for MDA Software Development: Evaluation Criteria and Set of Desirable Features

Requirements Exchange: From Specification Documents to Models

Jump-Start Tutorial For ProcessModel

Model-Driven Development - From Frontend to Code

UML Modelling of Automated Business Processes with a Mapping to BPEL4WS

Quality Assurance of Software Models within Eclipse using Java and OCL

How To Understand The Difference Between Business Process And Process Model In Java.Java.Org (Programming)

INNOVATOR. The integrated tool suite for business process and software engineering

Concept and Implementation of a Graphical Editor for Composite Application Templates

Exporting from WebSphere Business Modeler Unit 23

Enterprise Application Deployment: Amodel driven approach

UML PROFILING AND DSL

WebSphere Business Monitor

VARIABILITY MODELING FOR CUSTOMIZABLE SAAS APPLICATIONS

UML Profiling Comes of Age Realizing the Potential of Domain-Specific Modeling

Eclipse SoaML: a Tool for Engineering Service Oriented Applications

25 november SAAB Training Systems SESAM - Nov 2008, Göran Calås

Chapter 4 Software Lifecycle and Performance Analysis

The leading platform for Model Driven Architecture (MDA) Content:

SoaML Modeling and Designing Models

A QUICK OVERVIEW OF THE OMNeT++ IDE

Applying MDA in Developing Intermediary Service for Data Retrieval

Astah. Reference Manual. Astah Professional Astah UML. Ver Copyright Change Vision, Inc. All rights reserved.

Verification of Good Design Style of UML Models

An Architecture to Support Model Driven Software Visualization

Traceability Method for Software Engineering Documentation

Roles in Software Development using Domain Specific Modelling Languages

Generating Aspect Code from UML Models

Description. Benefits. Requirements. Selection process. Duration

A Software Development Platform for SOA

Build products with visual solution configuration in an integrated quotation management application.

OpenEmbeDD basic demo

StreamServe Persuasion SP5 Ad Hoc Correspondence and Correspondence Reviewer

Software Specification and Testing

Model Driven Development of Inventory Tracking System*

SOFTWARE TESTING TRAINING COURSES CONTENTS

A Cloud Architecture for an Extensible Multi-Paradigm Modeling Environment

Simplifying e Business Collaboration by providing a Semantic Mapping Platform

Framework as a master tool in modern web development

UML-based Test Generation and Execution

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

Using Patterns with WMBv8 and IIBv9

A Model Repository for Collaborative Modeling with the Jazz Development Platform

FreeForm Designer. Phone: Fax: POB 8792, Natanya, Israel Document2

Clarifying a vision on certification of MDA tools

Web-based Multimedia Content Management System for Effective News Personalization on Interactive Broadcasting

Analysis of the Specifics for a Business Rules Engine Based Projects

Quick Guide Business Process Modeling Notation (BPMN)

Polyglot Multi-Paradigm. Modeling. MDA in the Real World. Stefan Tilkov

Towards Integrating Modeling and Programming Languages: The Case of UML and Java

EMC Documentum Composer

Model Driven Testing of Web Applications Using Domain Specific Language

Selbo 2 an Environment for Creating Electronic Content in Software Engineering

MDE Adoption in Industry: Challenges and Success Criteria

DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES

Jairson Vitorino. PhD Thesis, CIn-UFPE February Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations

Towards collaboration between sighted and visually impaired developers in the context of Model-Driven Engineering

An Approach to Software Architecture Description Using UML

Master thesis 60 credits

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

Business-Driven Software Engineering Lecture 3 Foundations of Processes

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS

USAGE OF BUSINESS RULES IN SUPPLY CHAIN MANAGEMENT

Transcription:

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins Rushiraj Heshi Department of Computer Science and Engineering Walchand College of Engineering, Sangli Smriti Bhandari Department of Computer Science and Engineering Walchand College of Engineering, Sangli ABSTRACT Master Data Management requires creation of Central repository, applying constraints on Repository and designing processes to manage data. Designing of Repository, constraints on repository and business processes is very tedious and time consuming task for large Enterprise. Hence Visual Repository, constraints and Process (Workflow) modeling is the most critical step in Master Data Management. In this paper, we realize a Visual Modeling tool for implementing Repositories, Constraints and Processes based on Eclipse Plugin using GMF/EMF which follows principles of Model Driven Engineering (MDE). General Terms Model Driven Development/Architecture, Software Engineering, and Master Data Management. Keywords EMF, GMF, GEF, Repository, Constraint, Process. 1. INTRODUCTION Currently Master Data Management Systems [1] have been widely used in Enterprise information systems. The Master Data Management is a way to unify, manage and integrate references data across the Information System of the company. Master Data is Right view of Information delivered to the right people and processes at a right time. In Enterprise Environment Master Data are stored in CRM, ERP etc. For Master Data Management systems Repositories are main component for data storage and access. All enterprise data and records, master and reference, are created, stored, and managed in repositories. With the increase in Enterprise Data, repository structure increases in size. It is difficult to design repository for enterprise with large Repository structure. There are several challenges to manage structure/properties of repositories and define relationship between repositories. In Master Data Management environment a Repository constraint allow enterprise to specify more complex constraints on attributes. As repository size increases, it is difficult to design constraint on repository. Hence, Repository and Constraint modeling is important aspect of design issues. Workflows are integral to enterprise. Organization supports workflows to manage business process. Workflow modeling is critical step of workflow application technology. In the following text, section II describes related work done. Then section III presents backgrounds and research foundation regarding modeling tool generation. Section IV describes design of visual modeling tool for repositories, constraints and processes. Then, Section V gives conclusion of tool designed. 2. RELATED WORK Last decade, tremendous amount of research conducted on designing of visual modeling tools regarding Master Data Management which is based on Model Driven Engineering. Repositories required for storing organization important data. Previously repositories and constraints on repositories were written in xml format. Sadiq, et al. [2] used a graphical symbolic language to describe the business processes. Vander proposed using workflow-net to describe the business process [3] based on Petri net. Knolmayer, et al. [4] proposed a workflow model based on ECA (Event-Condition-Action, ECA) rules. Davu1cu, et al. [5] described and analyzed the business process using the CTR (Concurrent Transition Logic, CTR). Fan Yu-shun, et al. [6] proposed a workflow modeling method based on coordination theory and feedback mechanism. No tool focusing on design of repositories and constraint of repositories. Design of repositories and implementation of it is very tedious task in master data management environment. Also applying rules on repositories and managing constraints on repositories is also tedious task in Master Data Management. In this paper, proposed the design of a visual Repository, Constraint and Process modeling tool based on Eclipse plugin. Its basic features include: repository, constraint and process object creation, editing and the import and export of the repository, Constraint and process models. 3. BACKGROUND AND RESEARCH FOUNDATION Thorsten Arendta, et.al [7] Describes the paradigm of modelbased software development which provides the efficiency and quality of software development. Especially in modeldriven software development, models become primary artifacts where quality assurance of the overall software product depends on the quality assurance of involved software models. Model-Driven Engineering (MDE) [8] is the software engineering approach that creates increasingly detailed models through transformations, until code is produced. Models are defined according to a meta model, but the growing number of meta models led to a higher abstraction level to describe meta models: meta-meta models. Arguably the most widely used MDE framework is the OMG s Model- Driven Architecture approach, which includes UML (Unified Modeling Language) models, OCL (Object Constraint Language) constraints and MOF (Meta-Object Facility) meta models and meta-meta models. EMF [9] is a code generation facility modeling framework for building tools and applications based on a structured data model. On the base of a model specification 7

Fig 1: Graphical Modeling Framework expressed in XMI, EMF provides runtime and tools support to produce a set of adapter classes for viewing, command-based editing of the model, Java classes for the model, and a basic editor. Models can be specified using annotated Java, XML documents, or modeling tools like Rational Rose, and then imported into EMF. EMF consists of three fundamental parts: Ecore is the core of the EMF which includes Metada Model for describing Models. EMF provides runtime support for the models with change notification and persistence support with default XMI serialization. EMF.Edit - The EMF.Edit includes generic classes for building editors for EMF models. EMF.edit provides reusability for building editors. EMF.Codegen - The EMF code generation is capable of generating code to build a editor for an EMF model. The generation facility uses the JDT (Java Development Tooling) component of Eclipse. EMF codegen has three levels of code generation: Model - Provides java interfaces and classes for all class in the model, plus factory and package (metadata) implementation class. Adapter Classes - Generates implementation classes for editing and display. Editor provides structured editor that conforms to style for Eclipse EMF model editors and customization support is provided. Graphical Editing Framework (GEF) provides a Model-View- Controller (MVC) framework for graphical editors. The GMF runtime provides a set of frameworks to assist in the development of Eclipse graphical editors using Eclipse Modeling Framework (EMF) and Graphical Editing Framework (GEF). GMF provides a separation of diagram and domain model. Although both can be persisted in a single file, the runtime provides for automatic persistence of all notational information (position of elements, color, font, and so on), requiring the Tool smith to provide only a domain model. GMF run- time provides the following: A set of reusable diagramming components, such as action bars, connection handles, compartments, geometrical shapes, a diagramming toolbar, a set of diagramming actions, properties view, page setup and print preview, diagram export to image file, SVG support, border shapes, and system Clipboard support. A standard notation model for storing diagram information separate from domain information A command infrastructure that bridges EMF and GEF Extensibility options for the notation model, palette, diagram elements, layout, decorators, and domain model.a service provider infrastructure with priority and policy facilities.1. describes main components in graphical modeling framework. 4. DESIGN OF VISUAL MODELING TOOL Following steps are needed while Designing of visual modeling tool as described in 2. 4.1 Functional Analysis of Visual Modeling Tool 4.1.1 Repository, Constraints and Process Modeling Tool Designing of Graphical modeling tool that provides creation of Repository, applying Constraints on Repository and design of Processes for Master Data Management. Visual Modeling tool enables application developers to manage Repositories, Constraints and Process elements, and creating Repository, Constraint and Process definition by visual interface. 4.1.2 Developers Perspective towards Visual Modeling Tool Developers working on Master Data Management can use Visual Modeling Tool and it can be extended to end users. 4.1.3 Engine Interface Repositories, Constraints and Processes created by modeling tool are passed to engine interface to do simulation and optimization. 8

Fig 2: Case Tool for Visual Modeling Tool In this paper, focus is on the visual modeling tool including Repository, Constraints and process object creation, editing, and the import and export features. 4.2 System Architecture In order to make visual modeling tool able to integrate with other design modeling systems, followed design standards for Repositories, Constraints on repositories and Process definition in XPDL(XML Process Definition Language). 3 shows software architecture of visual modeling tool that we researched in this paper. Modeling tool provides graphical user interface to user to visually define repositories, Constraints on repositories and processes, to save model respective storage format. repositories. Properties of Repositories and defined..5. describes control flow of designing constraints on repository and set properties of constraint..6. describes flow of how processes are defined and how to set connection between processes. After establishing connection between processes properties of processes are defined. After defining processes, save process description in respective format. In the model, view, and control layer, the entities of the visual modeling tool are defined as shown in Table 1. Fig 3: System Architecture of Visual Modeling Tool Visual modeling tool supports model conversion and model validation. Eclipse runtime provides supports for running eclipse plug-in. In this paper, we mainly researched the visual Repository, constraint and process modeling tool. That is to say, we designed the graphical user interface, which is the top-level of.3, and stored the model as the format we wanted in order to transfer to the next layer for model verification and validation. 4.3 Control Flow of Visual Modeling Tool The flowchart of establishing a model when running the system is shown in 4, 5 and 6..4. describes control flow of Repository Design. Repositories are designed using visual interface. After creating new Repositories Mouse events are handled and add relationship between these Fig 4: System operation flowchart for Repository Creation 9

Table.1. The Definition of the Entities of The Visual Modeling Tool in Model, View and Control Layers Entity Model Control View Fig.5: System operation flowchart for Constraint Design Repository Repository Repository Constraint Constraint Constraint Activity Activity Activity Process Process Process Start Node Start Start End Node End End Transition Transition Transition Repository Constraint Activity Process Start End Transition 4.4 Entity Properties of Visual Modeling Tool 4.4.1 Repository Entity Properties Repository Entity Definition contains Properties of repositories such as name, attributes and their properties etc and relationship properties such as name, attributes etc. The basic properties of repository definition are shown in Table 2. Table.2. Basic Properties of Repository Definition Repository Definition Allowed to be Null ID_REPOSITORY No Repository ID Name No Name of Repository Yes of Repository Repository Attributes Definition Fig.6: System operation flowchart for Process Design Name No Name of attributes 10

Type No Type of attribute Length Yes Length of attribute Related Yes on which constraint applied Multi Value Yes Multi value attribute Partition key Yes Partition Key of Table Yes of attribute Definition Name No Name of Yes of Reverse_Name No Reverse name of Yes of Constraint 4.4.3 Process Entity Properties Process definition contains all important process, activities, start node and end node. The start node definesa unique entry point of the process. The end node defines a unique export point of the process. There are multiple types of activity nodes. Process definition provides the context information for the other entities. For process definition certain activity parameters required. Table 4 describes properties of process definition. Table.4. Basic Properties of Process Definition Process Definition Source_repository No Source Repository for Allowed to be null Target_repository No Target Repository for Multiplicity No Multiplicity of Attribute Name No Name of Attribute Type No Type of attribute Length Yes Length of attribute Yes of attribute 4.4.2 Constraint Entity Properties Constraint Entity Definition contains properties of Constraint applied on repositories. The basic properties of constraint definition are shown in Table 3. Table.3. Basic Properties of Constraint Definition Constraint Repository Allowed to be null ID No Process Definition ID Name No Process Name Purpose Yes For which purpose process is used. Process Definition Header Author Yes Creator of process definition Creation time No Time of Process Creation Yes Process Duration Yes Life span of process. 4.4.4 Activity Node Entity Properties Activity describes certain operation to be performed when process executes. Table.5 Describes properties of Activity used in Process operation. Table.5. Basic Properties of Activity Node Definition Activity Name No Name of Constraint Allowed to be Null Type No Type of constraint used Related Repository No Repository on which constraint applied ID No Id of Activity Name No Name of Activity Yes of Activity Action No Action to be performed 11

by activity Type No Type of activity (routing activity or process/action) Input parameters No Activity Input Parameters. Output parameters No Activity output parameters 4.4.5 Connection Arc Entity Properties In a process definition, the connection arc of visual modeling tool connects the activity nodes; the connection arc describes the condition of whether the transition occurred or not during the running of process. Connection arc properties are described in table 6. Table.6. Basic Properties of Connection Arc Definition Connection Arc Allowed to be Null ID No Arc Id Name No Name of Arc Yes of arc Source Node No Id of source node Target Node No Id for target node Type_of_arc No Type of arc Con_Expr No Condition expression 4.5 Function Design of Visual Repository, Constraint and Process Modeling Tool While making function module decomposition functions that to be supported by visual modeling tool is as follows: 1. Graphics generation for repositories, constraint and processes. 2. Selection of graphics. 3. Moving of graphics. 4. Deleting of graphics. 5. Changing size of graphics. 6. Storing model elements based o xml. 7. Providing import/export feature of model. 5. CONCLUSION Based on GMF technology, design of visual modeling tool described in this paper. The specific approach is to construct visual modeling tool for Eclipse plugins and master data management which will help in designing of Repositories, applying constraints on repositories and designing of processes to perform operations on data. Hence, realized how repositories should be defined, how constraints on repositories should be applied and how process should be designed through eclipse modeling framework. Further work is implementation of visual modeling tool and simulation and validation of visual modeling tool in master data management environment. 6. REFERENCES [1] Lei Wang, Xinguo Ming, Jing You, The Steps and Methodology of Identifying Master Data from Business Processes, World Congress on Software Engineering, pp. 329 333, IEEE 2009. [2] W. Sadiq, and A. M. Orlowsk, "Analyzing process models using graph reduction techniques," Information Systems, vol. 25, no. 2, p. 117-134, 2000. [3] W. M. P. Vander Aalst, "The application of Petri nets to workflow management," The Journal of Circuits, Systems and Computers, vol. 8, no. 1, pp. 21-66, 1998. [4] R. Endl, G. Knolmayer, M. Pfahrer, Modling processes and workflows by business rules, Proceedings of the 1 st European Workshop on Workflow and Process Management, Zurich, Switzerland, 1998, pp. 47-56. [5] H. Davu\cu, M. Kifer, and C. Ramakrishnan, "Logic based modeling and analysis of workflows," Proceedings of the ACM Symposium in PODS'98, Seattle, USA, 1998, pp. 25-33. [6] Y. S. Fan, and C. Wu, "Research on a workflow modeling method to improve system flexibility," Journal of Software, vol. 13, no. 4, pp. 833-839, 2002. [7] Thorsten Arendta, Florian Mantzb, Gabriele Taentzera, EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework, Elsevier, November, 2011. [8] Jean Bézivin, Christian Brunette, Régis Chevrel, Bridging generic modeling Environment and Eclipse modeling Framework, IRINA & LINA, 2010. [9] Jean Bézivin, Guillaume Hillairet, Frédéric Jouault, Bridging the MS/DSL Tools and the Eclipse Modeling Framework, ATLAS Group, 2010. 12