SwE 455 Tutorial.

Slides:



Advertisements
Similar presentations
GenArch: Automatic Product Derivation in Multi-agent Systems Product Line Elder Cirilo.
Advertisements

Component Oriented Programming 1 Chapter 2 Theory of Components.
© 2008 by Borland Software Corp; made available under the EPL v1.0 | 17 March 2008 Introduction to the Graphical Modeling Framework Artem Tikhomirov, Borland.
Spring, Hibernate and Web Services 13 th September 2014.
Object-Oriented Analysis and Design
Introduction To System Analysis and Design
Interact: RETSINA’s Agent Editor Provides a GUI interface to agent’s task and reduction libraries Allows –quick development of new libraries –easy extensions.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
ACM/JETT Workshop - August 4-5, 2005 UML Modeling using MagicDraw UML for Java Programmers.
A Family of Languages for Architecture Description OOPSLA 2008 Markus Voelter
SCHOOL OF COMPUTING QUEEN’S UNIVERSITY 08/03/2013 Andrew Forward, Omar Badreddin, Timothy C. Lethbridge, and Julian Solano School of Electrical Engineering.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Selected Topics in Software Engineering - Distributed Software Development.
SWE 316: Software Design and Architecture Objectives Lecture # 18 Introduction to Components SWE 316: Software Design and Architecture To learn:  benefits.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Protocol Derivation Assistant Matthias Anlauff Kestrel Institute
SwE 455 Tutorial. What is Evolve? Evolve is a tool for defining components and connecting them together to form new components. Also provides a runtime.
Evolve What is a Component? A component is a unit of software that can be instantiated, and uses interfaces to describe which services it provides and.
Chapter – 8 Software Tools.
Execution ways of program References: www. en.wikipedia.org/wiki/Integrated_development_environment  You can execute or run a simple java program with.
1 RIC 2009 Symbolic Nuclear Analysis Package - SNAP version 1.0: Features and Applications Chester Gingrich RES/DSA/CDB 3/12/09.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Re Write POGO using openArchitectureWare Technology ● Pogo History ● OpenArchitectureWare technology ● Generated code ● Project status.
SOFA 2 Component Model Tomáš Bureš, Petr Hnětynka, František Plášil CHARLES UNIVERSITY PRAGUE Faculty of Mathematics and Physics Czech Republic.
Lesson 9: SOFTWARE ICT Fundamentals 2nd Semester SY
Linux Standard Base Основной современный стандарт Linux, стандарт ISO/IEC с 2005 года Определяет состав и поведение основных системных библиотек.
Dispatcher Phoenix Is…
Unit 2 Technology Systems
Visit for more Learning Resources
UML Diagrams By Daniel Damaris Novarianto S..
Done By: Ashlee Lizarraga Ricky Usher Jacinto Roches Eli Gomez
DELLSOFT Technologies Pvt. Ltd.
Modern Systems Analysis and Design Third Edition
CSCI-235 Micro-Computer Applications
Class Diagrams.
Data Virtualization Tutorial: XSLT and Streaming Transformations
Computer Aided Software Engineering (CASE)
Modern Systems Analysis and Design Third Edition
SysML v2 Usability Working Session
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
Introduction Enosis Learning.
Types of Programming Languages
Introduction Enosis Learning.
Modern Systems Analysis and Design Third Edition
Domain Specific Product Description Exchange
Reusability 11/29/2018© 2006 ITT Educational Services Inc.
Evolve What is a Component?
Module 01 ETICS Overview ETICS Online Tutorials
Modern Systems Analysis and Design Third Edition
JavaServer Faces: The Fundamentals
Analysis models and design models
UmbrellaDB v0.5 Project Report #3
Chapter 7 –Implementation Issues
MDT UML2Tools 0.8 Mini-deck
Execute your Processes
Java IDE Dwight Deugo Nesa Matic Portions of the notes for this lecture include excerpts from.
QVT Operational 1.0 Mini-deck
Object Oriented Design
System calls….. C-program->POSIX call
Chap 1. Getting Started Objectives
Graphical Modeling of INFOD applications
Ponder policy toolkit Jovana Balkoski, Rashid Mijumbi
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Software Architecture & Design
Presentation transcript:

SwE 455 Tutorial

What is Evolve? Evolve is a tool for defining components and connecting them together to form new components. Also provides a runtime engine to execute these configurations. Use it to create applications out of plain classes, using an interface-centric approach. Evolve is a convenient and powerful way to connect together classes to create a program. Also features innovative reuse and evolution facilities, allowing you to quickly customize an application for new requirements, without destroying the old version.

Key Features • JavaBeans can be treated as full components. • Components are defined using standard UML2 diagrams. • JavaBeans can be treated as full components. • Java code can be generated for new JavaBeans, and existing JavaBeans can be quickly imported. • Extensive facilities are provided for the reuse and evolution of components, giving the benefits of dependency injection, aspects and much more. • State machines are fully supported, along with their reuse and evolution. • A single model can hold and execute many variants of a system. • Full error checking guarantees all components will connect correctly at runtime. • Full support for renaming and restructuring parts of the model.

• Sections of a model can be exported and imported for collaborative development. • Component programs can be executed. Two runtime options are available: 1. The Backbone runtime engine can be used. This is <350kb, including a full parser. It is fully open-source and has very little performance overhead. 2. A simple Java program can be created directly from the model, removing any runtime overhead. In this mode, a library of 15kb is used, consisting mainly of interfaces.

The diagram below shows the internal makeup of Evolve.

1. A component model with full connectors. At the heart of Evolve is a hierarchical component model with full connectors Connectors act like wires between components. Making it simple and intuitive to express detailed structures that are difficult or impossible in other approaches such as dependency injection.

2. Resemblance and evolution Provide unique levels of support for component reuse. Resemblance is a form of component inheritance. Evolution allow the structure of an existing system to be remodeled without destroying the original definition. These facilities can be used to create variants of a system, or to switch in test components.

3. The Backbone interpreter Executes the programs created in Evolve. Backbone is a simple textual domain-specific language Allows plain-vanilla JavaBeans to act as full components Wired up according to the component model. The interpreter reads in the text files, and uses the instructions to instantiate and connect up the beans. JavaBeans have a representation in Backbone and also in Java code. Composite components formed by wiring together JavaBean instances Backbone is fully open source.

4 A. UML2 wiring editor A graphical editor for connecting up and evolving components. Industry standard UML2 component diagrams and state charts are used.

4B. JavaBean code generator Help you define and generate setter / getter code for JavaBeans. Makes it easy to import and wire together existing beans. Getter A getter method have its name start with "get", take 0 parameters, and returns a value.  Setter A setter method have its name start with "set", and takes 1 parameter.