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

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

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

Transcription

1 Concepts for the model-driven generation of graphical editors in Eclipse by using the Graphiti framework Fabio Filippelli 1, Steffen Kollosche 1, Michael Bauer 1, Markus Gerhart 1, Marko Boger 1, Karsten Thoms 2 and Jos Warmer 3 1 University of Applied Sciences Konstanz (HTWG Konstanz), Department of Computer Science, Brauneggerstrasse 55, Konstanz, Germany 2 itemis AG, Am Brambusch 15-24, Lünen, Germany, 3 Independent, Chalonhof 153, 3762CT Soest, Netherlands Abstract. Domain-Specific modeling is increasingly adopted in the software development industry. While textual domain specific languages (DSLs) already have a wide impact, graphical DSLs still need to live up to their full potential. In this paper we describe an approach that reduces the time to create a graphical DSL to hours instead of months. The paper describes a generative approach to the creation of graphical editors for the Eclipse platform. A set of carefully designed textual DSLs together with an EMF meta-model are the input for the generator. The output is an Eclipse plugin for a graphical editor for the intended graphical language. The entire project is made available as open source under the name Spray. This paper focuses on the description of the textual DSLs used to describe graphical modeling languages. Keywords: Domain-Specific-Language (DSL), Model-Driven-Development (MDD), Code Generation, EMF, Xtext, Xtend, Graphiti, Spray, Eclipse IDE, Graphical Editors, Eclipse Plugin 1 Introduction Eclipse has become the focus point of tooling for model driven approaches. Projects like EMF[10], CDO[8] and Xtext[4] have become very popular in the modeling community. But most of the current success in Eclipse modeling has been centered around textual modeling environments. While Eclipse can play out its textual nature very nicely for this approach, it has long been a difficult environment to build graphical modeling tools. The fundamental APIs provided by the Eclipse ecosystem, GEF[11] and Draw2D[9], are quite low level and provide no connection to the semantic level of a model. EMF has often been used for the semantic part, but offers no specific support for graphical modeling. A project that attempted to bridge the gap between GEF and EMF is GMF[12].

2 2 Concepts for the model-driven generation of visual editors in Eclipse It suggests a model driven approach to the development of graphical modeling tools on the basis of GEF and EMF. But the models to describe the editor proved to be so complex that projects evolved to generate these models from yet higher level models. The generated code was very complex and extremely difficult to extend. The development environment was brittle and cumbersome. In this paper we present a new generative approach to graphical modeling tools in Eclipse. Instead of using GEF and Draw2D directly, we make use of a relatively new Java framework called Graphiti[13]. Graphiti provides a clean and powerful API to build graphical editors in Eclipse. It uses GEF and Draw2D but hides them completely. However, while it is perfectly possible to develop a graphical modeling tool using Graphiti, we found that the API is very adapt to generate against it from a higher level of abstraction. We have developed a set of textual modeling languages to use as input for a generator. The output is Java code for the Graphiti API as well as all other text files needed for the Eclipse plugin mechanism. The result is a graphical modeling tool in Eclipse. The paper first describes our general approach for the model driven creation of the modeling editors and the general architecture of our framework in chapter 2. In chapter 3 we explain the definition of our own graphical elements with the corresponding DSL, followed by chapter 4 which shows our approach for the flexible styling of these. In chapter 5 we review related work in the field, mostly other tools and techniques for the generation of modeling tools. Finally we summarize the limitations and the results of our research and draw conclusions. 2 A Model-Driven approach for Graphical Editors The Spray project consists of several DSLs, a generator and a runtime environment. The development environment is Eclipse with a set of plugins. All needed downloads can be found on the home page of the project, together with installation instructions. For the generator we use a Java-like language that was specifically developed for the purpose of generating code text, called Xtend[4]. The runtime consists of Graphiti and a few extensions that we want to integrate into Graphiti over time. The focus of this paper is on the textual DSLs needed to develop a graphical editor, not on the generated code or the runtime libraries. The DSLs are developed using Xtext. Spray[1] currently provides three different DSLs - Spray Core, Shape, and Style as shown in Fig. 1. The central DSL is the Spray Core language. For simple graphical editors, this DSL alone is sufficient. It defines the mapping of metamodel elements to shapes, styles and behavior. For shapes that go beyond the default rectangle shape, the Shape DSL is used. The Shape DSL allows to construct complex shapes from primitive figures like rectangles and ellipses, configures their placing, resizing policy and nesting. The style of shapes, like color and font, can be defined inline in the Shape language. But in order to reuse and centralize the definition of styles, the Style DSL allows to define Style Classes. The role of the Styles DSL is similar to how CSS relates to HTML. Styles can be referenced from all other DSLs. Every time any of these models

3 Concepts for the model-driven generation of visual editors in Eclipse 3 Fig. 1. A Model-Driven approach for Graphical Editors is saved, the Model-Driven Generation is executed and generates all necessary code and configurations - Java, XML and Properties - for the Eclipse Plugin. The Graphical Editor within Eclipse is than ready to use as plugin in Eclipse. These three languages are now described in detail. The Spray Core language. The most fundamental properties of a graphical editor are defined in the Spray Core language. This is a simple text file with the ending.spray. The Spray project wizard creates such a file initially with some example code. Due to the file ending the Xtext environment provides syntax highlighting, code completion and other conveniences, which makes all presented languages very easy to learn and fast to develop. At the top of the Spray model the diagram keyword initializes the declaration of the diagram type, followed by an identifier for an EMF EClass. This class forms the root class for all following classes. The diagram type is used in the generated code as the name of the Graphiti diagram. Afterwards the classes (EClass) and references (EReference) from the EMF metamodel are mapped to the appearance and behavior on the diagram. The mapping starts with the keyword class followed by the fully qualified EClass or EReference name. This is mapped to a shape, which can be done in one of two ways. For simple cases an internal language to the Spray Core DSL allows to define a shape consisting of rectangles, text and lines. For more elaborate shapes

4 4 Concepts for the model-driven generation of visual editors in Eclipse the mapping can reference a shape defined in the Shape DSL. These can be referenced by their name as described later in this document. After the definition of shapes, the behaviors have to be defined. For this there are many types of behaviors like the creation behavior of the elements in the right containment attribute in the meta model and the inclusion in the tools palette. Also custom behaviors can be defined. For this, the necessary structure is generated, the code defining the behavior is written in Java manually. This paper does not go into details of this language as we regard it as volatile at this point in time. 3 Definition of Shapes The main Spray DSL allows the creation of simple shapes, but if more complex figures are desired there is a DSL for the creation of shapes. It is similar to SVG to some degree, but it has different design goals. Similar to SVG, the Shape DSL allows primitive shapes like rectangles, ellipses, polygons, polylines and lines to be combined to complex shapes. But while SVG is based on XML, this DSL is based on a context-free grammar, giving us more freedom in its design. The main goal is readability and fast learning for human users, not machine readability or fast transfer. We also had requirements SVG cannot fulfill, like the definition of resizing policies and the passing of parameters for text slots or the programmatic evaluation of properties. Shapes can make use of nesting. The curly brackets ({ and }) are used to signal nesting consistently throughout the DSL. All forms except from lines, polylines and text can be arbitrarily nested. The Shape DSL is consistently used for node elements as well as for connections. Its details are explained in the following section. Multiple and Nested Shapes. The definition of a shape begins with the keyword shape that is followed by a unique shape name (in Fig. 2 the Shape is called BPMN Event Mail). This name is reflected as name of the generated Java class. This class implements a marker interface ISprayShape and extends the DefaultSprayShape class. The interface provides two getshape() methods: one of them returns the ContainerShape and the other the PictogramElement. The ContainerShape is a container which is added to the diagram. It saves a PictogramElement and all its nested elements. It is also able to save more configuration as anchor definitions for the connection anchorage. The method which provides the PictogramElement always starts with an invisible rectangle as the root because the ContainerShape doesn t allow to save more than one child element on the first layer. So the first layer always corresponds to an invisible rectangle which is able to save multiple childs on it. The size of this invisible rectangle calculated from its contained shapes on the same layer. The example in Fig. 2 describes how to create an envelope for the mail event of BPMN[7] with the Shape DSL. The hole figure is inside a circle, an ellipse where width and height have the same value. Nested into this ellipse there is a rectangle, which forms the edge of the envelope. The position of the rectangle

5 Concepts for the model-driven generation of visual editors in Eclipse 5 Fig. 2. Creation of a Shape as mail event (BPMN) is expressed relative to the surrounding ellipse. Finally a polygon completes the envelope; also its coordinates are relative to its container, the rectangle. Anchorage on Shapes. Anchor points is another important aspect for designing shapes. At these anchor points connections can be attached to a shape. In the Shape DSL there are four ways for the definition of anchor points. There are two predefined anchor types which are called center and corners (see Fig. 3). The center definition is comparable with the Chopbox anchor in [16]. In this case the anchor attaches the connection end point to the center of the figure/shape, but the connection line and its adornments ends on the shapes edge. The second predefined anchor type - corners - creates anchors on all corner points of the figure as well as on the center of the four sides of the shape. An example is shown on the right side of Fig. 3. After the keyword anchor the predefined anchor types center or corners can be declared or a curly bracket is used to define specific positions for the anchor points. One or many anchor points can be set to coordinates (using x and y) or to relative position (using xoffset and yoffset). Fix point anchors are placed at the defined position within the drawn shape. The relative anchors are positioned in relation to the size of the shape with values between 0.0 (xoffset - left or yoffset - top) and 1.0 (xoffset - right or yoffset - bottom). The lower part of Fig. 3 shows the creation of anchors on the edges of the rhombus for the XOR-Gateway in BPMN. As shown in the figure the same anchor points can be defined as fixed or relative anchors. Connections and Placings. A connection always consists of a line, that connects two shapes with each other. Any connection has always a source and a target anchor, on which the attachment of the connection is done. But connections can have decorations, such as arrowheads or a shape. In the example of BPMN there is a conditional connection, shown in Fig. 5. This connection has two decorations, the arrowhead at the one end and the rhombus at the other.

6 6 Concepts for the model-driven generation of visual editors in Eclipse Fig. 3. Anchorage on Shapes Text such as the connection name or the cardinality can be positioned on the connection as well. Fig. 4. Placing on Connections In Shape DSL connections are defined using the keyword connection. It can be followed by a routing type. Two different routing types are defined so far, the free form routing and the manhatten routing. The manhatten routing is autolayouted in vertical and horizontal lines and uses rounded corners. The free form connection is initially just a straight line, that can be adjusted by the user by adding bend points while modeling.

7 Concepts for the model-driven generation of visual editors in Eclipse 7 Placings can be defined. A placing is a definition for a decoration on the connection. A placing is positioned on the connections with three required attributes the offset, the angle and the radius. The offset is the position on the line where the decoration element should be docked. It is a relative value between 0.0 and 1.0, the first denoting the start of the line, the later its end. Additionally the elements can be positioned using an angle (0-360 degrees) and a radius. For graphical adornments, these values are typically zero, but for the positioning of text off the line, this proves to be very useful. Angle and radius define a vector starting at the offset on the line that points to where the required element is drawn. The Fig. 4 shows such a vector. Fig. 5. Connection-Shapes and their Placings The example in Fig. 5 shows the definition of the conditional sequence connection of BPMN without text elements. There are two placings on the connection. The first is located at the end (offset=1.0) and is an arrowhead, drawn as a filled polygon. The other is a rhombus placed at the beginning (offset=0.0). 4 Definition of Styles The style DSL allows to define a set of representational attributes for shapes and makes such a style reusable via a name. Attributes like background color and line style can be set. It can be referenced and used for the whole Spray project or can be set on individual shapes or single shape elements such as ellipse, rectangle or polygon. If no style is referenced at all a default style for Spray is used. For each level of nesting the style is inherited from the next level above. Individual style attributes can be overridden on each nesting level. This gives very fine grained

8 8 Concepts for the model-driven generation of visual editors in Eclipse control on the look and feel for the designer of the shape and at the same time makes it easy to change or extend the general appearance of the diagram very quickly. Example for a Style style BlackAndWhiteStyle { description = "White background and black foreground." transparency = 0.95 background-color = white line-color = black line-style = solid line-width = 1 font-color = black font-name = "Tahoma" font-size = 10 font-italic = yes font-bold = no } A style definition is described in a file with the suffix.style. The description of a style begins with the keyword style and a unique style name (in the example BlackAndWhiteStyle). This style is generated to a Java class with the same unique style name. This class implements the interface ISprayStyle. This interface forces the generated class to implement the method getstyle() which returns an instantiation of the Graphiti style class. In this way all defined attributes of the style definition are set on the Graphiti Style class. For styles there are many attributes that could be set. Line attributes like the line color, line width (e.g. for borders) and line style can be set. The line style is a line appearance method and there are different predefined line style types as solid, dot, dash, dash-dot, dash-dot-dot. The font section allows to define attributes like the font-name, font-size, font-color and additionally the style of the font (bold and italic) can be defined as well. With the values yes and no the styles bold and italic can be activated or not. The underlining of font is not supported from Graphiti at this early stage, so this structure is not been reflected in the DSL as well, but would be an important enhancement for the future. In the case of colors there is an annotation to the Graphiti Style, because this doesn t allow to differentiate between an font-color and a line-color. In Graphiti there is just one color definition - the foreground-color. The foreground-color is everything drawn as the line border and the fonts. In Spray this case is been resolved in another way, by generating a second method for every style called getfont- Color() that may provide a different foreground-color as the line-color for the font. Summarizing the foreground-color from the getstyle()-method is mapped to the line-color and for the differentiation to the font-color a second method (getfontcolor()) is provided. The usage of colors is pretty simple, because there are just two different ways to do this. The first way is by using the predefined colors as white, black, gray, yellow and many more. The second way is to use the

9 Concepts for the model-driven generation of visual editors in Eclipse 9 RGB-structure. Here the strength of the red, green and the blue color can be defined personally with a value between 0 and 255, so the user is able to create nearly all colors. Next to the color attribute for lines and for the background there is an attribute for transparency. A value for the transparency of 1.00 means that the object is fully visible and 0.00 means the object is invisible. If no backgroundcolor intended the color can be set to transparent. In this case the filled attribute in the Graphiti Style is set to false and no background-color is passed. For the line-visibility the same approach as for the background-color is used. Styles can inherit from each other. The root of the styles inheritance hierarchy is the interface ISprayStyle followed by an default implementation called DefaultSprayStyle, which defines all default style attributes. But this approach can be used in the DSL as well. A style can inherit from another style and change just a few attributes. In the example below the style BlackAndYellowStyle inherits from the BlackAndWhiteStyle and just the background-color is changed to yellow. Example for Style Inheritance style BlackAndYellowStyle extends BlackAndWhiteStyle { description = "Yellow background and black foreground." background-color = yellow } Through this inheritance mechanism all attributes of the style DSL are optional. A style can also be programmed manually in Java. It just needs to implement the interface the ISprayStyle and the style is available for referencing in Spray or Shapes and for inheritance. Some nice enhancements as color gradients and element shadows will be added in the near future and will share the same properties. Integration of Styles onto Shapes/Connections. The appearance of shapes can be defined in an external style or can be changed internally in the shape definition. For this the style keyword is used and the style attributes are defined in round brackets. In this case one or more attributes of the possible style attributes can be overridden. This takes effect on the corresponding element, but not for the nested elements or other forms on the same layer. This is shown in the top part of Fig. 6. There the background-color is set to the blue color for the rectangle. Respectively this changes just the rectangle in the picture to gain the blue color. The second method makes it possible to inherit style classes for the whole shape. Here the style class is referenced by its name after the keyword style. The second part of the Fig. 6 uses the style class BlackAndYellowStyle for the whole shape. The complete shape will become a yellow background. If the same approach is used at the beginning of the rectangle, then the entire envelope would become yellow, but not the circle.

10 10 Concepts for the model-driven generation of visual editors in Eclipse As shown in the lower part of the Fig. 6 these two methods can be mixed. The attributes defined inline for a shape will always overwrite the attributes on the style class. In the example the whole shape becomes yellow apart from the rectangle, which overrides its color to blue. In our experience, this mixing is useful. Often the line-style attributes are used inline to change the line appearance (e.g. dotted instead of solid) where as color, background and text attributes are inherited. Fig. 6. Types of Style Integration within Shapes

11 Concepts for the model-driven generation of visual editors in Eclipse 11 5 State of the Art Projects that have identified a need for domain specific graphical modeling as part of an Eclipse based tool chain, today typically have the following choices. Either they drop the integration of the graphical modeling tool into Eclipse. Then a few commercial offerings including MetaEdit+[14] and Poseidon for DSL[2] allow the creation of domain specific modeling languages and an integration on the basis of the resulting model in serialized form, usually as XMI. Or they can drop the requirement to base their modeling language on their own metamodel and instead extend UML to mimic a DSL. UML 2.0 has a mechanism to extend the metamodel through stereotypes and profiles. Such extensions have to be built on the basis of the predefined UML metamodel elements. This makes it difficult to generate code from it. Also, most UML tools that offer good adaptation through profiles are not based on Eclipse, so this case combines with the previous. The tools most used for this approach are Enterprise Architect[17] and Magic Draw[15]. A third approach is to drop the use of a graphical modeling environment and instead use a textual language to express the DSL models. This approach seems to be very successful in practice. Most known tools are Xtext[4], Spoofax[6] and EMFtext[5]. Finally it is possible to build a modeling tool in Eclipse. This paper advocates this approach but it is our observation from experience that this can lead to high and hard to predict development costs. Building such tools directly on GEF and Draw2D provides very little infrastructure support and is accordingly very work intensive. The afore mentioned GMF improves this through a generative approach. However, the DSLs, the generator and the generated code of GMF have themselves high complexities. Extending GMF beyond the default generated behavior can become particularly painful. A very good alternative to build their own modeling tool in Eclipse is the mentioned framework Graphiti. But it is relatively young and we have no indication on how intensively it is used outside of SAP, who developed the framework. From our experience in this project we can strongly recommend it. The framework hides the complexity of GEF and Draw2D and provides a clearly structured API. However, while the API is well structured and powerful, it naturally lends itself to a generative approach. This is what our project proposes. Parallel to our development, a similar project called IMES[3] is being developed, which pursues a similar approach. The aim of the publicly funded project is to build graphical editors based on Graphiti for functional nets and other systems. The project also uses DSLs and MDD for the generative creation of the graphic editors. Currently the project is not open source and wasn t presented to the public, so it s difficult to compare our approach with the IMES project. 6 Limitations of the Approach The described project is by no means finished and still lacks a number of important features before its use could be recommended in the context of mission critical development. But this will improve over time. Examples of such features

12 12 Concepts for the model-driven generation of visual editors in Eclipse are improved support for text, the inclusion of shadows and gradients, support for context menu and the use of rapid buttons. More important is the question of the limitations of the approach. In terms of the graphical editor itself, the API offered by Graphiti as well as exploiting its capabilities through a model driven approach, we see no serous constraints. In this regard, Graphiti provided a lot of features we had expected. Nonetheless we analyzed a few limitations while developing the editor. For example, Graphiti currently does not support the underlining of text, a feature we would need i.e. for static members in a UML class diagram. Another limitation is the standard zooming function within Graphiti diagrams. The framework zooms by resizing all sizes of the elements, including the border-size. This leads to unproportional borders. Zooming currently only works well between 75 and 150 %. Finally the Graphiti API allows a few things that surprisingly have no effect on the diagram. This lead to the workaround that we use an invisible rectangle at the root level of every shape. The generative approach is somewhat limited to cases that are needed often enough to justify the development of a generator and the according input models. Corner cases could be covered with additional parameters in the input to the generator, however, the generated code is well prepared for manual extensions, so that this could turn out simpler. The DSLs presented by us are targeted towards graphical languages based on the notion of nodes and edges. In UML most diagram types fit into that category, however it includes a few exceptions. The sequence and the timing diagram show time as one dimension and differ in that sense. They cannot be described with the presented DSLs without considerable extensions. We see more limitations in the platform of Eclipse itself. Eclipse was developed as a text-centric software development tool, and this heritage remains visible to the day. An example for this is that Eclipse ends a transaction of a file change upon saving this file. However, models on a scale larger than just one diagram need a different semantic for changes. Model elements can be represented in several diagram views. Modeling users have come to expect a change in one such representation to be reflected in the others immediately, as this is the case in repository based modeling tools. However, this is hard to achieve in Eclipse. Other topics, like multi-user support in collaborative modeling environments, evolution of metamodels, or diffing and merging changes in versions of graphical models remain topics of research and are independent of Eclipse or a model driven approach. 7 Summary In this paper we have shown that developing graphical DSLs with the usage of the open source framework Spray can be very efficient. We presented concepts for the model driven development of graphical modeling tools in the context of Eclipse. The modeling tools can be configured to the needs of a specific domain, resulting in an Eclipse plugin that supports a graphical domain specific language. It is not necessary to be an IT expert to develop such modeling tools, because

13 Concepts for the model-driven generation of visual editors in Eclipse 13 the DSLs are quite easy to learn, read and write. The meta model and the DSLs can be tailored to the specific needs, thus the models can be very concise. In this paper we showed some elements of the BPMN, but the same approach could be used for various domain specific modeling languages. The generative approach reduces the needed effort to develop a graphical modeling tool for Eclipse considerably compared to coding it manually in Java against the Graphiti API. For the underlying Graphiti framework, every domain object needs to be described by a set of so called features. For each domain object the generator creates an Add-, a Create-, a Layout- and an UpdateFeature (a lot more planned), which altogether consist of about 400 lines of code per domain object. These can be generated from Spray from about 20 lines of code. The factor in terms of code between the Spray DSLs (20 lines) and the generated Graphiti Code (400 lines) is approximately 20. For several implemented examples we consistently observe this factor. A small DSL developed in Spray with 20 domain objects was described in about 400 lines of code. This generates about 80 Java Classes with altogether 8000 lines of code. Thus we argue that our approach reduce the project cost for developing a graphical DSL in Eclipse from weeks and months (manually written) to hours and days (generative approach). This should make the development of graphical modeling tools in Eclipse much more attractive than in the past. References 1. Boger, M., Thoms, K., Warmer, J.: Spray - A quick way of creating Graphiti, http: //code.google.com/a/eclipselabs.org/p/spray 2. Gentleware AG, Poseidon for DSLs, media/pdfs/tutorials/poseidon_for_dsls_documentation.pdf 3. Graf, A.: A DSL for Graphiti Editors (IMES), Research Project, quanxinquanyi.de/2011/08/18/a-dsl-for-graphiti-editors/ 4. itemis AG: Xtext 2.0, 5. Johannes, J., Amann, U.: Concern-based (de)composition of Model-Driven Software Development Processes. In Proc. of ACM/IEEE 13th International Conference on Model Driven Engineering Languages and Systems (MoDELS 10), volume 6395 of LNCS. Springer, Kalleberg, K. T., Visser, E.: Spoofax - An Interactive Development Environment for Program Transformation with Stratego/XT. In T. Sloane and A. Johnstone, editors, Seventh Workshop on Language Descriptions, Tools, and Applications (LDTA 2007), ENTCS, pages 47 50, Braga, Portugal, March Elsevier. 7. Object Management Group: Business Process Model and Notation, Specification V2.0, January 2011, 8. The Eclipse Foundation: CDO Model Repository, 9. The Eclipse Foundation: Draw2d, The Eclipse Foundation: Eclipse Modeling Framework Project (EMF), The Eclipse Foundation: GEF (Graphical Editing Framework), eclipse.org/gef/ 12. The Eclipse Foundation: Graphical Modeling Project (GMP), eclipse.org/modeling/gmp/

14 14 Concepts for the model-driven generation of visual editors in Eclipse 13. The Eclipse Foundation: Graphiti: A Graphical Tooling Infrastructure, MetaCase: MetaEdit+, No Magic Inc.: MagicDraw, Rubel, D., Wren, J., Clayberg, E.: The Eclipse Graphical Editing Framework (GEF), Eclipse Series, pp , 17. Sparx Systems: Enterprise Architect, Addison- Wesley Professional (2011)

Jos Warmer, Independent jos.warmer@openmodeling.nl www.openmodeling.nl

Jos Warmer, Independent jos.warmer@openmodeling.nl www.openmodeling.nl Domain Specific Languages for Business Users Jos Warmer, Independent jos.warmer@openmodeling.nl www.openmodeling.nl Sheet 2 Background Experience Business DSLs Insurance Product Modeling (structure) Pattern

More information

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

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins 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

More information

UML PROFILING AND DSL

UML PROFILING AND DSL UML PROFILING AND DSL version 17.0.1 user guide No Magic, Inc. 2011 All material contained herein is considered proprietary information owned by No Magic, Inc. and is not to be shared, copied, or reproduced

More information

Modeling Turnpike: a Model-Driven Framework for Domain-Specific Software Development *

Modeling Turnpike: a Model-Driven Framework for Domain-Specific Software Development * for Domain-Specific Software Development * Hiroshi Wada Advisor: Junichi Suzuki Department of Computer Science University of Massachusetts, Boston hiroshi_wada@otij.org and jxs@cs.umb.edu Abstract. This

More information

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

Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics: Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations

More information

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

VICCI. The Eclipse Modeling Framework (EMF) A Practical Introduction and Technology Overview. Dipl.-Inf. Christoph Seidl VICCI Visual and Interactive Cyber-Physical Systems Control and Integration The Eclipse Modeling Framework (EMF) A Practical Introduction and Technology Overview Dipl.-Inf. Christoph Seidl Overview of

More information

Model-Driven Development - From Frontend to Code

Model-Driven Development - From Frontend to Code Model-Driven Development - From Frontend to Code Sven Efftinge sven@efftinge.de www.efftinge.de Bernd Kolb bernd@kolbware.de www.kolbware.de Markus Völter voelter@acm.org www.voelter.de -1- Model Driven

More information

Model Simulation in Rational Software Architect: Business Process Simulation

Model Simulation in Rational Software Architect: Business Process Simulation Model Simulation in Rational Software Architect: Business Process Simulation Mattias Mohlin Senior Software Architect IBM The BPMN (Business Process Model and Notation) is the industry standard notation

More information

Fireworks CS4 Tutorial Part 1: Intro

Fireworks CS4 Tutorial Part 1: Intro Fireworks CS4 Tutorial Part 1: Intro This Adobe Fireworks CS4 Tutorial will help you familiarize yourself with this image editing software and help you create a layout for a website. Fireworks CS4 is the

More information

Winery A Modeling Tool for TOSCA-based Cloud Applications

Winery A Modeling Tool for TOSCA-based Cloud Applications Institute of Architecture of Application Systems Winery A Modeling Tool for TOSCA-based Cloud Applications Oliver Kopp 1,2, Tobias Binz 2, Uwe Breitenbücher 2, and Frank Leymann 2 1 IPVS, 2 IAAS, University

More information

Eclipse BPMN Modeler Introducing Intalio Designer

Eclipse BPMN Modeler Introducing Intalio Designer Eclipse BPMN Modeler Introducing Intalio Designer Arnaud Blandin Ismael Ghalimi Hugues Malphettes Intalio Inc, EMEA Manager Intalio Inc, CEO Intalio Inc, Lead Developer 6 rue du conseil general 1205 Geneva

More information

Using GMF and M2M for Model- Driven Development

Using GMF and M2M for Model- Driven Development Using GMF and M2M for Model- Driven Development Tatiana Fesenko, Borland Software Radomil Dvorak, Borland Software Bernd Kolb Markus Voelter GMF Overview The Eclipse Graphical Modeling Framework (GMF)

More information

Integrate your tools to help integrate your stakeholders

Integrate your tools to help integrate your stakeholders Integrate your tools to help integrate your stakeholders Stephan Herrmann EclipseCon Europe 2013 Stephan Herrmann: Integrate your Tools... - EclipseCon Europe 2013 3 Why, exactly, develop DSLs? Remember

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Model Driven Interoperability through Semantic Annotations using SoaML and ODM Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:

More information

Converting the DICOM Presentation State to AIM Version 3.0

Converting the DICOM Presentation State to AIM Version 3.0 Converting the DICOM Presentation State to AIM Version 3.0 Development Team(s) Development Technical Documentation Program Management Pattanasak Mongkolwat Pattanasak Mongkolwat Peter Yan Vladimir Kleper

More information

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

Implementing reusable software components for SNOMED CT diagram and expression concept representations 1028 e-health For Continuity of Care C. Lovis et al. (Eds.) 2014 European Federation for Medical Informatics and IOS Press. This article is published online with Open Access by IOS Press and distributed

More information

Designing portal site structure and page layout using IBM Rational Application Developer V7 Part of a series on portal and portlet development

Designing portal site structure and page layout using IBM Rational Application Developer V7 Part of a series on portal and portlet development Designing portal site structure and page layout using IBM Rational Application Developer V7 Part of a series on portal and portlet development By Kenji Uchida Software Engineer IBM Corporation Level: Intermediate

More information

Modeling the User Interface of Web Applications with UML

Modeling the User Interface of Web Applications with UML Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de

More information

This is a preview of the book "QCAD - An Introduction to Computer-Aided Design (CAD)" QCAD. An Introduction to ComputerAided Design (CAD)

This is a preview of the book QCAD - An Introduction to Computer-Aided Design (CAD) QCAD. An Introduction to ComputerAided Design (CAD) QCAD An Introduction to ComputerAided Design (CAD) Andrew Mustun Table of Contents Introduction Part I: First Steps with QCAD Introducing the QCAD Application 8 15 16 The First Start 16 The Application

More information

Textual Modeling Languages

Textual Modeling Languages Textual Modeling Languages Slides 4-31 and 38-40 of this lecture are reused from the Model Engineering course at TU Vienna with the kind permission of Prof. Gerti Kappel (head of the Business Informatics

More information

Choose a topic from the left to get help for CmapTools.

Choose a topic from the left to get help for CmapTools. Using CmapTools Create a Cmap Add a Concept Create a Proposition from One Concept Create a Proposition from Existing Concepts Save a Cmap Open a Cmap Create a Folder Drag in Resources Import Resources

More information

Lession: 2 Animation Tool: Synfig Card or Page based Icon and Event based Time based Pencil: Synfig Studio: Getting Started: Toolbox Canvas Panels

Lession: 2 Animation Tool: Synfig Card or Page based Icon and Event based Time based Pencil: Synfig Studio: Getting Started: Toolbox Canvas Panels Lession: 2 Animation Tool: Synfig In previous chapter we learn Multimedia and basic building block of multimedia. To create a multimedia presentation using these building blocks we need application programs

More information

Tutorials. If you have any questions, comments, or suggestions about these lessons, don't hesitate to contact us at support@kidasa.com.

Tutorials. If you have any questions, comments, or suggestions about these lessons, don't hesitate to contact us at support@kidasa.com. Tutorials The lesson schedules for these tutorials were installed when you installed Milestones Professional 2010. They can be accessed under File Open a File Lesson Chart. If you have any questions, comments,

More information

An eclipse-based Feature Models toolchain

An eclipse-based Feature Models toolchain An eclipse-based Feature Models toolchain Luca Gherardi, Davide Brugali Dept. of Information Technology and Mathematics Methods, University of Bergamo luca.gherardi@unibg.it, brugali@unibg.it Abstract.

More information

A QUICK OVERVIEW OF THE OMNeT++ IDE

A QUICK OVERVIEW OF THE OMNeT++ IDE Introduction A QUICK OVERVIEW OF THE OMNeT++ IDE The OMNeT++ 4.x Integrated Development Environment is based on the Eclipse platform, and extends it with new editors, views, wizards, and additional functionality.

More information

Modeling Guidelines Manual

Modeling Guidelines Manual Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe john.doe@johnydoe.com Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.

More information

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

Co-Creation of Models and Metamodels for Enterprise. Architecture Projects. Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez pa.gomez398@uniandes.edu.co Hector Florez ha.florez39@uniandes.edu.co ABSTRACT The linguistic conformance and the ontological

More information

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

UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts Banu Aysolmaz 1 and Onur Demirörs 2 1, 2 Informatics Institute, Middle East Technical University, Ankara,

More information

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1

SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1 SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability

More information

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

A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor Klaus Krogmann, Steffen Becker University of Karlsruhe (TH) {krogmann, sbecker}@ipd.uka.de Abstract: The actual benefits

More information

INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0

INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0 INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0 Email: {goliva,gerosa}@ime.usp.br / Twitter: @golivax Agenda 2 Introduction to Business Processes BPMN 1.2 Introduction Elements

More information

Diagram Definition Third OMG/Eclipse Symposium 25 March 2012

Diagram Definition Third OMG/Eclipse Symposium 25 March 2012 Diagram Definition Third OMG/Eclipse Symposium 25 March 2012 Maged Elaasar, melaasar@ca.ibm.com Senior Software Engineer IBM Rational Modelling Tools Outline The Need for Diagram Definition Existing Diagram

More information

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint

Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint Instructions for Creating a Poster for Arts and Humanities Research Day Using PowerPoint While it is, of course, possible to create a Research Day poster using a graphics editing programme such as Adobe

More information

Using UML Part Two Behavioral Modeling Diagrams

Using UML Part Two Behavioral Modeling Diagrams UML Tutorials Using UML Part Two Behavioral Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,

More information

Using UML Part One Structural Modeling Diagrams

Using UML Part One Structural Modeling Diagrams UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,

More information

Publisher 2010 Cheat Sheet

Publisher 2010 Cheat Sheet April 20, 2012 Publisher 2010 Cheat Sheet Toolbar customize click on arrow and then check the ones you want a shortcut for File Tab (has new, open save, print, and shows recent documents, and has choices

More information

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional.

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. Workspace tour Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. In this tutorial, you will become familiar with the terminology and workspace

More information

Contents. Downloading the Data Files... 2. Centering Page Elements... 6

Contents. Downloading the Data Files... 2. Centering Page Elements... 6 Creating a Web Page Using HTML Part 1: Creating the Basic Structure of the Web Site INFORMATION TECHNOLOGY SERVICES California State University, Los Angeles Version 2.0 Winter 2010 Contents Introduction...

More information

Process Modeling Notations and Workflow Patterns

Process Modeling Notations and Workflow Patterns Process Modeling Notations and Workflow Patterns Stephen A. White, IBM Corp., United States ABSTRACT The research work of Wil van der Aalst, Arthur ter Hofstede, Bartek Kiepuszewski, and Alistair Barros

More information

Visualization of 2D Domains

Visualization of 2D Domains Visualization of 2D Domains This part of the visualization package is intended to supply a simple graphical interface for 2- dimensional finite element data structures. Furthermore, it is used as the low

More information

AutoCAD Architecture 2012 UK Content Tools

AutoCAD Architecture 2012 UK Content Tools AutoCAD Architecture 2012 UK Content Tools Contents Contents... 1 Installation... 2 Loading the utilities... 2 Utilities Overview... 3 Menu and Toolbar... 3 Content Generation... 3 Content Publishing...

More information

The Business Process Model

The Business Process Model The Business Process Model by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page: 1 Table of Contents INTRODUCTION...3 BUSINESS PROCESS MODELING NOTATION (BPMN)...4 FLOW ELEMENTS...4

More information

This document covers version 1.0.1 of BPMN2 Modeler, published November 15, 2013.

This document covers version 1.0.1 of BPMN2 Modeler, published November 15, 2013. INTRODUCTION The Eclipse BPMN2 Modeler is an open-source, graphical tool for authoring and editing files that are compliant with the OMG BPMN 2.0 standard. It is assumed that the reader is familiar with

More information

OrgPublisher Formatting

OrgPublisher Formatting OrgPublisher Formatting Version: 1.0 April 20, 2011 OrgPublisher 10 Training Copyright 2002 2011 All Rights Reserved by Aquire OrgPublisher, OrgPublisher Premier, Unifi, Mobile OrgPublisher, and Pocket

More information

Introduction à EMF Eclipse Modeling Framework

Introduction à EMF Eclipse Modeling Framework Ingénierie Dirigée par les Modèles Introduction à Eclipse Modeling Framework Pierre Laforcade Master EIAH 2007 Sources du cours Tutoriaux et cours d' disponibles sur http://www.eclipse.org/modeling/emf/

More information

UML Tutorial for C++ - Windows Platform GDPro 5.0. This diagram is a model describing how groups of objects collaborate in some behavior over time.

UML Tutorial for C++ - Windows Platform GDPro 5.0. This diagram is a model describing how groups of objects collaborate in some behavior over time. Chapter 8: Sequence Diagram The Sequence Diagram What is a Sequence Diagram This diagram is a model describing how groups of objects collaborate in some behavior over time. The diagram captures the behavior

More information

PowerPoint 2007: Basics Learning Guide

PowerPoint 2007: Basics Learning Guide PowerPoint 2007: Basics Learning Guide What s a PowerPoint Slide? PowerPoint presentations are composed of slides, just like conventional presentations. Like a 35mm film-based slide, each PowerPoint slide

More information

6 th Annual EclipseCon Introduction to BIRT Report Development. John Ward

6 th Annual EclipseCon Introduction to BIRT Report Development. John Ward 6 th Annual EclipseCon Introduction to BIRT Report Development John Ward BIRT and Us Who am I? Who are you? Who am I? John Ward, BIRT user Independent BIRT Enthusiast Author: Practical Data Analysis and

More information

Roles in Software Development using Domain Specific Modelling Languages

Roles in Software Development using Domain Specific Modelling Languages Roles in Software Development using Domain Specific Modelling Languages Holger Krahn Bernhard Rumpe Steven Völkel Institute for Software Systems Engineering Technische Universität Braunschweig, Braunschweig,

More information

SYSML PLUGIN. version 17.0.1. user guide

SYSML PLUGIN. version 17.0.1. user guide SYSML PLUGIN version 17.0.1 user guide No Magic, Inc. 2011 All material contained herein is considered proprietary information owned by No Magic, Inc. and is not to be shared, copied, or reproduced by

More information

Canterbury Maps Quick Start - Drawing and Printing Tools

Canterbury Maps Quick Start - Drawing and Printing Tools Canterbury Maps Canterbury Maps Quick Start - Drawing and Printing Tools Quick Start Guide Standard GIS Viewer 2 Canterbury Maps Quick Start - Drawing and Printing Tools Introduction This document will

More information

Refactoring Browser for UML

Refactoring Browser for UML Refactoring Browser for UML Marko Boger, Thorsten Sturm Gentleware AG Vogt-Kölln-Str. 30 22527 Hamburg, Germany {Marko.Boger, Thorsten.Sturm} @gentleware.de Abstract Refactoring is a corner stone in XP

More information

Process Modeling using BPMN 2.0

Process Modeling using BPMN 2.0 Process Modeling using BPMN 2.0 This chapter provides a brief overview of Business Process Modeling Notation (BPMN) concepts with particular emphasis on the BPMN 2.0 additions. In addition, it describes

More information

Building a Flexible Software Factory Using Partial Domain Specific Models

Building a Flexible Software Factory Using Partial Domain Specific Models Building a Flexible Software Factory Using Partial Domain Specific Models Jos Warmer 1, Anneke Kleppe 2 3 1 Ordina SI&D, The Netherlands Jos.Warmer@ordina.nl 2 University Twente, Netherlands a.kleppe@utwente.nl

More information

Development of Tool Extensions with MOFLON

Development of Tool Extensions with MOFLON Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de

More information

Website Builder Documentation

Website Builder Documentation Website Builder Documentation Main Dashboard page In the main dashboard page you can see and manager all of your projects. Filter Bar In the filter bar at the top you can filter and search your projects

More information

Domain-Specific Modelling for Cross-Platform Product Families

Domain-Specific Modelling for Cross-Platform Product Families Domain-Specific Modelling for Cross-Platform Product Families Steven Kelly & Risto Pohjonen MetaCase Consulting, stevek@metacase.com, rise@metacase.com Abstract. Domain-specific modelling has proved its

More information

Beas Inventory location management. Version 23.10.2007

Beas Inventory location management. Version 23.10.2007 Beas Inventory location management Version 23.10.2007 1. INVENTORY LOCATION MANAGEMENT... 3 2. INTEGRATION... 4 2.1. INTEGRATION INTO SBO... 4 2.2. INTEGRATION INTO BE.AS... 4 3. ACTIVATION... 4 3.1. AUTOMATIC

More information

Development of a Feature Modeling Tool using Microsoft DSL Tools.

Development of a Feature Modeling Tool using Microsoft DSL Tools. Development of a Feature Modeling Tool using Microsoft DSL Tools. GIRO Technical Report 2009-1.ver 1.0 (05/01/2009) Rubén Fernández, Miguel A. Laguna, Jesús Requejo, Nuria Serrano. Department of Computer

More information

Practical Image Tips and Exercises for PowerPoint

Practical Image Tips and Exercises for PowerPoint Practical Image Tips and Exercises for PowerPoint Exercise 1: Remove Image Background Eliminating a background from an image can make a big difference in the impact of an image. 1. Insert the image From

More information

CIS 467/602-01: Data Visualization

CIS 467/602-01: Data Visualization CIS 467/602-01: Data Visualization HTML, CSS, SVG, (& JavaScript) Dr. David Koop Assignment 1 Posted on the course web site Due Friday, Feb. 13 Get started soon! Submission information will be posted Useful

More information

Quick Guide Business Process Modeling Notation (BPMN)

Quick Guide Business Process Modeling Notation (BPMN) Quick Guide Business Process Modeling Notation (BPMN) IDM Technical Team January 2007 Quick Guide: BPMN 2 of 14 The scope of this document is to provide a quick guide to the concepts and usage of the Business

More information

PowerPoint 2007 Basics Website: http://etc.usf.edu/te/

PowerPoint 2007 Basics Website: http://etc.usf.edu/te/ Website: http://etc.usf.edu/te/ PowerPoint is the presentation program included in the Microsoft Office suite. With PowerPoint, you can create engaging presentations that can be presented in person, online,

More information

Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development

Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development Ahmet Demir Technische Universität München Department of Informatics Munich, Germany AhmetDemir@gmx.de

More information

1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book.

1.. This UI allows the performance of the business process, for instance, on an ecommerce system buy a book. * ** Today s organization increasingly prompted to integrate their business processes and to automate the largest portion possible of them. A common term used to reflect the automation of these processes

More information

WebRatio 5: An Eclipse-based CASE tool for engineering Web applications

WebRatio 5: An Eclipse-based CASE tool for engineering Web applications WebRatio 5: An Eclipse-based CASE tool for engineering Web applications Roberto Acerbis 1, Aldo Bongio 1, Marco Brambilla 2, Stefano Butti 1 1 WebModels S.r.l. Piazzale Gerbetto, 6. I22100 Como, Italy

More information

Introduction to BPMN

Introduction to BPMN Stephen A. White, IBM Corporation Abstract This paper is intended to provide a high-level overview and introduction to the Business Process Modeling Notation (BPMN). The context and general uses for BPMN

More information

Web Design Basics. Cindy Royal, Ph.D. Associate Professor Texas State University

Web Design Basics. Cindy Royal, Ph.D. Associate Professor Texas State University Web Design Basics Cindy Royal, Ph.D. Associate Professor Texas State University HTML and CSS HTML stands for Hypertext Markup Language. It is the main language of the Web. While there are other languages

More information

Introduction to Microsoft Word 2008

Introduction to Microsoft Word 2008 1. Launch Microsoft Word icon in Applications > Microsoft Office 2008 (or on the Dock). 2. When the Project Gallery opens, view some of the available Word templates by clicking to expand the Groups, and

More information

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Int'l Conf. Software Eng. Research and Practice SERP'15 225 Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Fraunhofer Institute of Optronics, System Technologies and

More information

Web Development I & II*

Web Development I & II* Web Development I & II* Career Cluster Information Technology Course Code 10161 Prerequisite(s) Computer Applications Introduction to Information Technology (recommended) Computer Information Technology

More information

[1] http://en.wikipedia.org/wiki/first-mover_advantage [2] http://www.acunote.com

[1] http://en.wikipedia.org/wiki/first-mover_advantage [2] http://www.acunote.com -Gene Sher Software Development Processes: Those in engineering and science will sooner or later either be members of teams solving some large project, or be managing teams solving some large project.

More information

Requirements Management with Enterprise Architect

Requirements Management with Enterprise Architect An Introduction to Requirements Management with Enterprise Architect By Sparx Systems All material Sparx Systems 2010 version 1.3 www.sparxsystems.com Sparx Systems 2010 Page 1 Trademarks Object Management

More information

IE Class Web Design Curriculum

IE Class Web Design Curriculum Course Outline Web Technologies 130.279 IE Class Web Design Curriculum Unit 1: Foundations s The Foundation lessons will provide students with a general understanding of computers, how the internet works,

More information

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Page - Page 1 of 12 Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Description Responsive Mobile Web Development is more

More information

What s New V 11. Preferences: Parameters: Layout/ Modifications: Reverse mouse scroll wheel zoom direction

What s New V 11. Preferences: Parameters: Layout/ Modifications: Reverse mouse scroll wheel zoom direction What s New V 11 Preferences: Reverse mouse scroll wheel zoom direction Assign mouse scroll wheel Middle Button as Fine tune Pricing Method (Manufacturing/Design) Display- Display Long Name Parameters:

More information

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional.

Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. Creating a logo Welcome to CorelDRAW, a comprehensive vector-based drawing and graphic-design program for the graphics professional. In this tutorial, you will create a logo for an imaginary coffee shop.

More information

Using and creating Crosstabs in Crystal Reports Juri Urbainczyk 27.08.2007

Using and creating Crosstabs in Crystal Reports Juri Urbainczyk 27.08.2007 Using and creating Crosstabs in Crystal Reports Juri Urbainczyk 27.08.2007 Using an creating Crosstabs in Crystal Reports... 1 What s a crosstab?... 1 Usage... 2 Working with crosstabs... 2 Creation...

More information

Basics of Web Design: HTML5 & CSS Author: Terry Ann Felke-Morris, Ed.D.

Basics of Web Design: HTML5 & CSS Author: Terry Ann Felke-Morris, Ed.D. Chapter 1 Internet and Web Basics The Internet and the Web Web Standards and Accessibility Information on the Web Web Browsers and Web Servers Internet Protocols Uniform Resource Identifiers and Domain

More information

CONTENTM WEBSITE MANAGEMENT SYSTEM. Getting Started Guide

CONTENTM WEBSITE MANAGEMENT SYSTEM. Getting Started Guide CONTENTM WEBSITE MANAGEMENT SYSTEM Getting Started Guide Table of Contents CONTENTM WEBSITE MANAGEMENT SYSTEM... 1 GETTING TO KNOW YOUR SITE...5 PAGE STRUCTURE...5 Templates...5 Menus...5 Content Areas...5

More information

Sitecore InDesign Connector 1.1

Sitecore InDesign Connector 1.1 Sitecore Adaptive Print Studio Sitecore InDesign Connector 1.1 - User Manual, October 2, 2012 Sitecore InDesign Connector 1.1 User Manual Creating InDesign Documents with Sitecore CMS User Manual Page

More information

GUIDELINES FOR PREPARING POSTERS USING POWERPOINT PRESENTATION SOFTWARE

GUIDELINES FOR PREPARING POSTERS USING POWERPOINT PRESENTATION SOFTWARE Society for the Teaching of Psychology (APA Division 2) OFFICE OF TEACHING RESOURCES IN PSYCHOLOGY (OTRP) Department of Psychology, Georgia Southern University, P. O. Box 8041, Statesboro, GA 30460-8041

More information

CREATING EXCEL PIVOT TABLES AND PIVOT CHARTS FOR LIBRARY QUESTIONNAIRE RESULTS

CREATING EXCEL PIVOT TABLES AND PIVOT CHARTS FOR LIBRARY QUESTIONNAIRE RESULTS CREATING EXCEL PIVOT TABLES AND PIVOT CHARTS FOR LIBRARY QUESTIONNAIRE RESULTS An Excel Pivot Table is an interactive table that summarizes large amounts of data. It allows the user to view and manipulate

More information

Fast track to HTML & CSS 101 (Web Design)

Fast track to HTML & CSS 101 (Web Design) Fast track to HTML & CSS 101 (Web Design) Level: Introduction Duration: 5 Days Time: 9:30 AM - 4:30 PM Cost: 997.00 Overview Fast Track your HTML and CSS Skills HTML and CSS are the very fundamentals of

More information

IRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2

IRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2 Designing the SRT control software: Notes to the UML schemes Andrea Orlati 1 Simona Righini 2 1 - I.N.A.F. Istituto di Radioastronomia. 2 Dip. Astronomia - Università degli Studi di Bologna. Dicembre 2008

More information

How-to Guide: MIT DLC Drupal Cloud Theme

How-to Guide: MIT DLC Drupal Cloud Theme How-to Guide: MIT DLC Drupal Cloud Theme This guide will show you how to take your initial Drupal Cloud site... and turn it into something more like this, using the MIT DLC Drupal Cloud theme. See this

More information

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool White Paper Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool Writer: CFPS M.E. Dipl.-Ing. M. Öztürk, Update: 01 March 2011 Introduction The Purpose of this paper is to give

More information

Microsoft Office 2010

Microsoft Office 2010 Word Tutorial 4 Desktop Publishing and Mail Merge Microsoft Office 2010 Objectives Identify desktop publishing features Format text in columns Insert drop caps Insert symbols and special characters Create

More information

Webpage maker Manual. 2. General structure. 3. List of elements. 4. Inserting elements 4.1 Image 4.2 Text 4.3 Buttons 4.4 Information 4.

Webpage maker Manual. 2. General structure. 3. List of elements. 4. Inserting elements 4.1 Image 4.2 Text 4.3 Buttons 4.4 Information 4. Webpage maker Manual 1. What is Webpage Maker? 2. General structure 3. List of elements 4. Inserting elements 4.1 Image 4.2 Text 4.3 Buttons 4.4 Information 4.5 Contact 4.6 Description 5. Eliminating elements

More information

Working With Animation: Introduction to Flash

Working With Animation: Introduction to Flash Working With Animation: Introduction to Flash With Adobe Flash, you can create artwork and animations that add motion and visual interest to your Web pages. Flash movies can be interactive users can click

More information

Web Design with CSS and CSS3. Dr. Jan Stelovsky

Web Design with CSS and CSS3. Dr. Jan Stelovsky Web Design with CSS and CSS3 Dr. Jan Stelovsky CSS Cascading Style Sheets Separate the formatting from the structure Best practice external CSS in a separate file link to a styles from numerous pages Style

More information

Joomla Article Advanced Topics: Table Layouts

Joomla Article Advanced Topics: Table Layouts Joomla Article Advanced Topics: Table Layouts An HTML Table allows you to arrange data text, images, links, etc., into rows and columns of cells. If you are familiar with spreadsheets, you will understand

More information

Graphic Design Studio Guide

Graphic Design Studio Guide Graphic Design Studio Guide This guide is distributed with software that includes an end-user agreement, this guide, as well as the software described in it, is furnished under license and may be used

More information

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

Towards Integrating Modeling and Programming Languages: The Case of UML and Java Towards Integrating Modeling and Programming Languages: The Case of UML and Java Patrick Neubauer, Tanja Mayerhofer, and Gerti Kappel Business Informatics Group, Vienna University of Technology, Austria

More information

Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder

Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder Your Guide to the All New, Drag & Drop, Mobile-Responsive Email Builder The All New Drag & Drop Email Builder from Net-Results Contents I. Introduction II. Overview - The Canvas & Builder Tools III. The

More information

MDE Adoption in Industry: Challenges and Success Criteria

MDE Adoption in Industry: Challenges and Success Criteria MDE Adoption in Industry: Challenges and Success Criteria Parastoo Mohagheghi 1, Miguel A. Fernandez 2, Juan A. Martell 2, Mathias Fritzsche 3 and Wasif Gilani 3 1 SINTEF, P.O.Box 124-Blindern, N-0314

More information

ClarisWorks 5.0. Graphics

ClarisWorks 5.0. Graphics ClarisWorks 5.0 Graphics Level 1 Training Guide DRAFT Instructional Technology Page 1 Table of Contents Objectives... Page 3 Course Description and Organization... Page 4 Technology Requirements... Page

More information

SketchUp Instructions

SketchUp Instructions SketchUp Instructions Every architect needs to know how to use SketchUp! SketchUp is free from Google just Google it and download to your computer. You can do just about anything with it, but it is especially

More information

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems OMG MDA Overview by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page:1 Trademarks Object Management Group, OMG, CORBA, Model Driven Architecture, MDA, Unified Modeling Language, UML,

More information

Introduction 3. Getting Familiar With Presence Builder... 4. Creating and Editing Websites 6

Introduction 3. Getting Familiar With Presence Builder... 4. Creating and Editing Websites 6 Contents Introduction 3 Getting Familiar With Presence Builder... 4 Creating and Editing Websites 6 Importing Sites from SiteBuilder 4.5... 7 Editing Websites... 9 Structure: Pages and Navigation... 9

More information