CSI5112 Software Engineering Team: Andrei Anisenia Margi Fumtiwala.

Slides:



Advertisements
Similar presentations
Comparison of Several Meta-modeling Tools 2 Yi Lu Computer Science Department McGill University
Advertisements

System Development Life Cycle (SDLC)
IAAnalyzer: Towards a Model-Driven Modeling and Analysis Framework for C ONNECT(ors) Massimo Tivoli, University of L’Aquila (UNIVAQ)
© 2008 by Borland Software Corp; made available under the EPL v1.0 | 17 March 2008 Introduction to the Graphical Modeling Framework Artem Tikhomirov, Borland.
IEC Substation Configuration Language and Its Impact on the Engineering of Distribution Substation Systems Notes Dr. Alexander Apostolov.
SBML Viewer Laurent Francioli. Introduction SBML Viewer is… A java application belonging to the bio-chemical modelling tools framework –Provides graphical.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
© Copyright Eliyahu Brutman Programming Techniques Course.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Common Mechanisms in UML
Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl.
Chapter 7 Structuring System Process Requirements
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Chapter 6– Artifacts of the process
Intelligent Workflow Management System(iWMS). Agenda Background Motivation Usage Potential application domains iWMS.
An Approach and Tool for Synchronous Refactoring of UML Diagrams and Models Using Model-to-Model Transformations Hafsteinn Þór Einarsson Helmut Neukirchen.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
K. Jamroendararasame*, T. Matsuzaki, T. Suzuki, and T. Tokuda Department of Computer Science, Tokyo Institute of Technology, JAPAN Two Generators of Secure.
Chapter 7 Structuring System Process Requirements
Funded by: European Commission – 6th Framework Project Reference: IST WP 2: Learning Web-service Domain Ontologies Miha Grčar Jožef Stefan.
Introduction to MDA (Model Driven Architecture) CYT.
1 MDWE'2008, Toulouse, France, September 30, 2008 A Comparative Analysis of Transformation Engines for User Interface Development Juan Manuel González.
Integrated Development Environment for Policies Anjali B Shah Department of Computer Science and Electrical Engineering University of Maryland Baltimore.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Introduction To System Analysis and Design
Copyright © 2009 AtlanMod. All Rights Reserved Frédéric Jouault & Hugo Bruneliere AtlanMod team (INRIA & Mines de Nantes) Possible Benefits of Bridging.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Vision The ultimate IDE/CASE tool should supports all steps in the software development process. Current tools perform only minimal semantic-level analysis.
Hyper/J and Concern Manipulation Environment. The need for AOSD tools and development environment AOSD requires a variety of tools Life cycle – support.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
Selected Topics in Software Engineering - Distributed Software Development.
Generic API Test tool By Moshe Sapir Almog Masika.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
Implementing a Domain-Specific Modeling Environment For a Family of Thick-Client GUI Components Milosz Muszynski Tanner AG
Attributed Visualization of Collaborative Workspaces Mao Lin Huang, Quang Vinh Nguyen and Tom Hintz Faculty of Information Technology University of Technology,
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
Evolutionary Art with Multiple Expression Programming By Quentin Freeman.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Graphical Modeling Framework (GMF) Richard C. Gronback Project Lead.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
1. 2 Preface In the time since the 1986 edition of this book, the world of compiler design has changed significantly 3.
INFORMATION NETWORKING MODEL DSL James McAvoy and Yifeng Li CSI Information Networking Model DSL 1 Winter Term
Formalizing Material Flow Diagrams Robert-Jan Bijl.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
 Programming - the process of creating computer programs.
Conceptualization Relational Model Incomplete Relations Indirect Concept Reflection Entity-Relationship Model Incomplete Relations Two Ways of Concept.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
Presented by: Elena C. Ciobanu Mihai V. Ciobanu Kuntal Ghosh
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Chapter – 8 Software Tools.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Tieflow Workflow Toolkit -:By:- CSCI 6831 Capstone project Instructor: Dr. Kwok-Bun Yue Mentor: Mr. Scott Hetherington Midterm Presentation 04/15/2008.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
Algorithms II Software Development Life-Cycle.
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
CIS16 Application Development – Programming with Visual Basic
Jochen Seemann Program Manager Enterprise Tools Microsoft Corporation
Programming Logic and Design Eighth Edition
Software Architecture & Design
Presentation transcript:

CSI5112 Software Engineering Team: Andrei Anisenia Margi Fumtiwala

Agenda DSL overview Goals of DSL Tool support for the DSL DSL creation technology Sample usage Foreseen impact of language evolution Potential for analysis Conclusions

DSL Overview Domain Specific Language (DSL) is a specific language being used to solve problems in a particular domain It is not intended to work outside that domain Contains very specific goals in design and implementation

DSL for Pedigree Rearrangements Genetic analysis of biological data is one of the most important research directions in modern bioinformatics The data to be analyzed is supplied in different textual formats by hospitals/researchers and may be analyzed by different bioinformatics tools Our focus is on the type of genetic data called pedigree data presented in so-called PEDFILES Typical pedigree data is presented by the family structure Includes persons and child-parents relations between the persons

A simple pedigree example Graphical representation of the pedigree data Textual representation of the pedigree data - PEDFILES  Each line represents Pedigree data and Biological data for a specific person

Why do we need a graphical tool? Usual work flow of a bio informaticians involve extensive editing of PEDFILEs Initial PEDFILEs received from hospitals may include too big pedigrees or too much biological data in order to be analyzed by existing software This problem requires splitting PEDFILEs into smaller sub pedigrees or/and removal of different persons from a pedigree in order to make it analyzable The rearrangement of a pedigree requires multiple point changes within pedigree data It is not feasible Bio informaticians thus need some visual graphical environment for presentation and rearrangement of pedigrees

Scope of tool support for the DSL Provides visual graphical environment for presentation and rearrangement of pedigrees Provides the possibility to save the constructed and rearranged pedigrees to textual PEDFILEs

DSL creation technology

Overview of the approach Meta-model: Construction and development of objects, relations, constraints and actions for modelling a predefined class of problems. In the case of Pedigree Rearrangements problem the meta-model is defined as the set of the following: Objects: Person – represents single person in a pedigree. Holds the following data: name (unique within a pedigree), person's sex and biological data Pedigree – a set of persons and relations among them. Pedigree has unique id (Pedigree ID) Relations: Person has a father Person has a mother Pedigree consists of persons

Constraints Person can have maximum one father and one mother Person can be associated to exactly one pedigree Person can not be connected to persons in another pedigree Adding a new relation of type child-parents shouldn't create directed cycles in a pedigree In simple words, circular relationships can not exist between persons, ex: mother can not be a child....

Pedigree Rearrangements Model

Example – input PEDFILE Ped1 grandfather Ped1 grandmother Ped1 grandfather Ped1 grandmother Ped1 grandfather Ped1 father grandfather1 grandmother Ped1 mother grandfather2 grandmother Ped1 stranger grandfather3 grandmother Ped1 mother2 grandfather3 grandmother Ped1 child1 father mother Ped1 child2 stranger mother

Example - editor view of the input pedigree

Example – editor view of the output pedigree

Example – output PEDFILE Ped1 grandfather Ped1 grandmother Ped1 grandfather Ped1 grandmother Ped1 father grandfather1 grandmother Ped1 mother grandfather2 grandmother Ped1 child1 father mother Ped2 grandfather Ped2 grandmother Ped2 stranger grandfather3 grandmother Ped2 mother2 grandfather3 grandmother Ped2 child2 stranger mother

Model-to-text (M2T) transformation technique used The Model to Text (M2T) transformations focus on the generation of textual artifacts from models New PEDFILEs are generated using Xpand Xpand is a language specialized on code (text) generation based on EMF models Provides OCL-like expressions (semantics) with Java- like syntax

Language evolution – GUI adjustments Different shapes and/or colors for person items according to person sexes Persons dropped onto the pedigree “canvas” instead of being linked to it by arrows These require minor changes in GMF components Considered for the upcoming release on the 18 th of April

Language evolution – functionality extensions Pedigree layout is the crucial parameter in visual analysis of pedigree structure Different auto-layout algorithms should provide different views of a pedigree structure It takes a lot of time to build a pedigree from a given PEDFILE manually Automatic construction of a pedigree by only browsing a PEDFILE would be helpful These are hard to implement in existing DSL Toolkit and require extensions to the framework

Potential for analysis – Bayesian networks These statistical networks are used to analyze biological data stored in pedigrees They are provided as input to different statistical bioinformatics software (Superlink, Gene hunter, Allegro etc.) BNs are graphs with specific properties, constructed using pedigree structure and biological data BNs are much more complex to construct than pedigrees (more nodes, more links)

Potential for analysis – Bayesian networks, example pedigree

Potential for analysis – Bayesian networks, example network

Potential for analysis – Bayesian networks, transformation BNs are presented in structured textual files, just as PEDFILEs Define meta-model for BayesianNetwork Define model-to-model (M2M) transformation from Pedigree Model to Bayesian Network model Define model-to-text (M2T) transformation for Bayesian Network Run BN analysis software and find disease gene locations!

Conclusions Our tool provides support for graphical representation of biological instances Existing DSL creation tools do not provide full coverage for all DSL editor needs Data to be manipulated is very complex, therefore automation of transformations between different models becomes essential Software Engineering should enhance the ongoing research in biology, otherwise it is not feasible due to exponentially growing amount of biological data