190 likes | 489 Views
EVP. Eclipse Visualization Plug-in By Samer Sabra Supervisor: Dr. Ormandjieva. Outline. READ Project : EVP in Context READ Project : Methodology EVP : Requirements EVP : Design EVP : Implementation EVP : Demo Tutorial Questions References. READ Project: EVP in Context.
E N D
EVP Eclipse Visualization Plug-in By Samer Sabra Supervisor: Dr. Ormandjieva
Outline • READ Project : EVP in Context • READ Project : Methodology • EVP : Requirements • EVP : Design • EVP : Implementation • EVP : Demo • Tutorial • Questions • References
READ Project: EVP in Context • Requirements Engineering Assistance Diagnostic Project • READ Project's aim • Automatically generate a graphical representation of a requirements text in the form of a UML model and its XML representation • Accomplished by applying Natural Language Processing (NLP) techniques within the context of a Requirements Engineering process • Static and dynamic models are generated from the requirements text and stored as XML files. • The purpose of the EVP is to read these XML files and perform the visualization in the form of class and use case diagrams respectively.
READ Project : Methodology • Based on the work of Shadi Moradi Seresht • Four steps from ROM to static and dynamic models • 1. First-Cut Structural View • Extract a list of candidate classes, attributes, and relationships from the ROM presentation. • Flexible rules are used to extract this information. • 2. Expert-Comparable Contextual (ECC) Model • Comprehensive model that is domain specific • 3. Improved Structural View • A more comprehensive domain view based on the first-cut structural view and ECC model. • 4. Behavioral View • Dynamic view of the system extracted from the ROM presentation.
EVP : Requirements • Essential Functionality • Visualizing static model as UML class diagram • Visualizing dynamic model as UML use case diagram • Extended Functionality • Generating and visualizing First-Cut Structural View from ROM presentation • Generating and visualizing Improved Structural View from ROM presentation and ECC Model • Generating and visualizing Behavioral View from ROM presentation
EVP : Requirements • Non-Functional Requirements • Developing a commercial quality tool • Implications • Using existing frameworks • Using an existing code base • Acceptance Criteria • The EVP project will be accepted on the basis of meeting the criteria of its essential functionality. • Once the criteria of the essential functionality are met, if time permits, the EVP project will also include some or all of the criteria of the extended functionality.
EVP : Design • EVP leverages open source Eclipse frameworks and components • Eclipse Modeling Framework (EMF) • Modeling framework and code generation facility for building tools and other applications based on a structured data model • Graphical Editing Framework (GEF) • Allows developers to create a rich graphical editor from an existing application model • Graphical Modeling Framework (GMF) • Generative component and runtime infrastructure for developing graphical editors based on EMF and GEF. • UML2 component • Component of the Model Development Tools (MDT) project • Implementation of the UML 2.x OMG metamodel using the Eclipse Modeling Framework (EMF) • UML2 Tools project • Set of UML diagram editors developed using the Graphical Modeling Framework (GMF)
EVP : Design • Eclipse Plug-in Development Environment • Allows for Eclipse integration • Allows for natural transitions • from requirements to design • from design to implementation • from implementation to testing • Allows for integration with IBM Rational Software Development Platforms (SDP)
EVP : Design • File format: XML and XMI • ROM presentation as XML • First-Cut View as Eclipse generated XMI • ECC Model as Eclipse generated XMI • Improved View as Eclipse generated XMI • Behavioral View as Eclipse generated XMI
EVP : Implementation • Java Packages and Classes • com.concordia.read.evp package • EVPActivator class • Extends AbstractUIPlugin which is the abstract base class for all plug-ins that integrate with the Eclipse UI. • EVPLog class • Logging facilities for EVP • Part of the Ready For Rational Software (RFRS) validation program • EVPModels class • Parses XML files, applies rules, and generates models • com.concordia.read.evp.ui package • EVPContextMenu class • Integrates with Eclipse interface to provide context menu for the EVP commands
Tutorial • Eclipse Installation • Creating a generic plug-in • Understanding EVP • Deploying EVP • Resources
Resources • Eclipse: Building Commercial-Quality Plug-Ins (Second Edition) (0321228472) • EMF: Eclipse Modeling Framework, Second Edition (9780321331885) [Rough cut] • Getting Started With UML2 (http://www.eclipse.org/modeling/mdt/uml2/docs/articles/Getting_Started_with_UML2/article.html) • Newsgroups • eclipse.modeling.mdt.uml2tools • eclipse.modeling.mdt.uml2
References • Moradi Seresht, Sh., Ormandjieva, O., “Towards Automatic Diagnostic of Conceptual Problems in Requirements Engineering”. Accepted at the 2008 International Conference on Software Engineering Theory and Practice (SETP-08), 7-10 of July 2008, Orlando, FL, USA, (2008) • Moradi Seresht, Sh., Ormandjieva, O., Sabra, S., “Automatic Conceptual Analysis of User Requirements with the Requirements Engineering Assistance Diagnostic (READ) Tool”. Accepted at the 2008 Software Engineering Research, Management and Applications (SERA 2008), 20-22 of August 2008, Prague, Czech Republic, (2008)