Jos Warmer, Independent

Size: px
Start display at page:

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

Transcription

1 Domain Specific Languages for Business Users Jos Warmer, Independent

2 Sheet 2 Background Experience Business DSLs Insurance Product Modeling (structure) Pattern matching expressions Insurance Mathematics Insurance Product Modeling Technologies used Eclipse EMF + Graphiti + CDO JetBrains MPS

3 Sheet 3 Business Versus Technical DSL Business DSL Technical DSL

4 Sheet 4 Business DSLs Bridges business IT gap Uses business terminology Formal enough tot automate No interpretation differences between business and IT Fast time tot market Business in the driving seat But... Business users are used to Word, Excel, natural language, pictures, etc. etc.... Typical tools for technical DSLs do not neccesarily fit E.g. Xtext or other textual parsing based DSL toolkits

5 Sheet 5 Notation Notation is crucial!! Business users are reluctant to use unnatural notation... but delighted to use the right notation! E.g. insurance formulae Combine typical language notation with forms, buttons, sliders, tables, etc. Distinction between language and app disappears

6 Sheet 6 We are not programmers 40: BON07 = IF INVBA < 0 THEN Premio * valba ELSE 0 50: VAR = IF CATV=P1.AND. INFWP[01]<= THEN L ELSE IF CATV=P1.AND. INFWP[01]> THEN B ELSE IF CATV=P2 THEN M ELSE IF CATV=P3 THEN C ELSE IF CATV=P4 THEN P 60: PREMIO = PREMIO + BON07 70: FLAG = IF NMES>999 THEN 157

7 Sheet 7 We are not programmers CASE WHEN INVBA < 0 BON07 = Premio * valba OTHERWISE BON07 = 0 CASE WHEN CATV=P1.AND. INFWP[01]<= VAR = L WHEN CATV=P1.AND. INFWP[01]> VAR = B WHEN CATV=P2 VAR = M WHEN CATV=P3 VAR = C WHEN CATV=P4 VAR = P PREMIO = PREMIO + BON07

8 We are not programmers Sheet 8

9 Sheet 9 Notation and Editing: Programmers versus Business users

10 Sheet 10 Structured or Free-form Programmers dislike structure. Prefer plain text and a parser to tell them what is wrong Copy-paste: Manually try to select semantically meaningfull pieces of text like e.g. a variable declaration, an if statement, a condition in an if, one or more method parameters, etc.

11 Sheet 11 Structured or Free-form Business People like structure. Structured editing can only create correct input Typing text and hoping you do it right makes little sense Copy-paste selects semantically meaningfull pieces automatically You would expect otherwise: IT people are formally trained compared to business people, so expectation is the other way around.

12 Sheet 12 Structured or Free-form SUM(i, INVBA - PREMIO, 10 + INFWP, (i/8) - prod(k, i + 1, PREMIO + 1, k + (i^2)))

13 Sheet 13 Plain Text versus anything else Programmers prefer text over everything Diagrams: remember UML bashing? Real programmers don t draw pictures Programmers like tables in HTML, XML, Wikis, but why have them in code? Even for tables, where text is clearly totally unsuitable!

14 Sheet 14 Plain Text versus anything else Business People like many notations Diagrams, Tables, Mathematical Formulas, Trees, Text, Dropdown lists, etc.... and combine them! Business people feel restricted if they have to use a notation that is not suitable for what they want to express.

15 Plain Text versus anything else Sheet 15

16 Sheet 16 Clean Sheets vs. Scaffolding Programmers like clean sheets Who needs guidance anyway? It s beneath a developer to need any help!

17 Sheet 17 Clean Sheets vs. Scaffolding Business People like scaffolding Clean sheet is confusing Prefer guidance on what can/should be done. What am I supposed to do with an empty page? Forms are nice, they tell me what to do and where to put what Why remember if the computer can tell you what to do? And where to do it!

18 Clean Sheets vs. Scaffolding Sheet 18

19 Sheet 19 Layout Programmers do their own layout Even getting developers to use the same formatter with the same configuration turns out to be really hard. I ve been told quite often to not even try that. Why is it so important that my IF statement looks different from the IF statement of my collegue programmer?

20 Sheet 20 Layout Business People prefer standardized layout Prefer layout of similar things to be identical Is always recognizable Don t want to waste time on doing manual layout But... it should be done right! Do developers really like to waste time? Why?

21 Layout Example Sheet 21

22 Sheet 22 Viewpoints Programmers use one view Use folding, but still see the folded element Want to see everything to be in control But Use outline view, hierarchy view, explorer view,... Won t see everything anyway when using e.g. aspect weaving or dependency injection I want to see everything that is there, cannot afford to miss anything

23 Sheet 23 Viewpoints Business People use diverse notations and views Different viewpoints, e.g. textual and visual Only show information needed for a task, hide irrelevant parts of the model People in some roles are not supposed (or allowed) to see certain things I only want to see what I need, no less, no more.

24 Viewpoints Sheet 24

25 Sheet 25 Menus, windows, toolbars... Programmers like to have many options Menus everywhere, including popup menus Toolbars with all options ever needed Not scared of unknown options... Tools that give me the power to do anything I need (and more...)

26 Sheet 26 Menus, windows, toolbars... Business People like to keep interface clean Only show menus, toolbars that are applicable Only show what I can actually do Any button, menu, etc. that I don t understand is distracting I only want to see what I need, no less, no more.

27 Sheet 27 Summing Up All these differences mean that the requirements for business oriented DSL s are very different from what we have learned about DSL s for developers (which is most DSL s we have today)

28 Sheet 28 Projectional Notation and Editing

29 Sheet 29 Parsing versus Projection Text Error Messages Text, Tables, Mathematical, Graphical Scanning & parsing Parse Tree Binding Abstract Syntax Graph Abstract Syntax Graph 29

30 Sheet 30 Examples Layout in PMW Manual, many hours per diagram With many hundreds of diagrams Mathematical Notation Sum, Product symbols Tables

31 Sheet 31 Projectional Advantages User Guidance Always looks the same, recognizable Important for working in teams Enables richer and more flexible notations Textual parsing does not work with tables, mathematical notation etc. Mixing different aspects Mix expressions with test cases and results of running the tests Show a referred element inline Mix different Languages Language composition made easier E.g. Java extensions in MPS Java

32 Sheet 32 Projectional Advantages Easy tot have multiple notations Just create multiple projections E.g. for views for different users in different roles Or partial views, leave thing out Trivial to change, improve, extend notation Notation is not stored Start using a notation and improve as it is being used and evaluated Agile!!! Language evolution easier Don t have to deal with notation. Otherwise unparsing has to be used and models will suddenly look different.

33 Sheet 33 Projectional Disadvantages Structured / projectional editors are cumbersome I did research at CWI and Vu 25 years ago and this was true Especially Expressions are hard We moved on since 25 years ago, try MPS. It feels just like typing and shows that this is not necessarily true But old beliefs die slowly...

34 Sheet 34 Projectional Disadvantages Need specialized tools Developers can use plain text editors, but in practice 99 % use specialized IDEs. And their editors use many things typical for projectional editors as well: templates for language constructs code completion auto-formatting But it is a non-issue because business users use specialized tools anyway, excel, word,...

35 Sheet 35 Additional Requirements for Business Users

36 Sheet 36 Multi User Programmers use SVN, Git, etc. Each programmer has its own private workspace Allows for parallel changes Merge if necessary Merge is a difficult concept for business users Pessimistic locking Optimistic locking Real-time updates from one user to another

37 Sheet 37 Versioning Programmers need versioning Only one version is in production at one machine Need to be able to access old versions of models as a whole Business users need versioning But many versions of a model may be in production at the same time E.g. Life insurance models Sometimes old models need to be updates to new models Model results in contract model version need to exists during lifetime of contract New model versions only used for new contracts Exception: legislation may require a change in older contracts / models

38 Sheet 38 Access Control Programmers use SVN, Git, etc. Read or write access to repository Business users need fine grained control Some parts of a model may be accessible by certain users Need optional visibility Role based views, notations and editing Formal approvals processes

39 Reviewing Sheet 39

40 Multi Lingual Sheet 40

41 Multi Lingual Sheet 41

42 Sheet 42 Direct Feedback Direct feedback Active models, directly testable, executable Examples with test cases and debugging

43 Sheet 43 The End (Almost)

44 Sheet 44 When use business DSL For SIMPLE or bulk data For complex structures, calculations, configurations, rules or analyses at the heart of a business domain

45 Sheet 45 Business Oriented Language Applications Business DSLs have huge potential Tools (especially MPS) are available now Tables Mathematical notation Graphical Textual MS-Word like Integrated testing Buttons, sliders, checkboxes, We are at the beginning of exploring all possibilities

Programming in Access VBA

Programming in Access VBA PART I Programming in Access VBA In this part, you will learn all about how Visual Basic for Applications (VBA) works for Access 2010. A number of new VBA features have been incorporated into the 2010

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

Source Code Translation

Source Code Translation Source Code Translation Everyone who writes computer software eventually faces the requirement of converting a large code base from one programming language to another. That requirement is sometimes driven

More information

Tutorial 5: Developing Java applications

Tutorial 5: Developing Java applications Tutorial 5: Developing Java applications p. 1 Tutorial 5: Developing Java applications Georgios Gousios gousiosg@aueb.gr Department of Management Science and Technology Athens University of Economics and

More information

ARCONICS CONTENT MANAGEMENT SYSTEM FOR UL

ARCONICS CONTENT MANAGEMENT SYSTEM FOR UL ARCONICS CONTENT MANAGEMENT SYSTEM FOR UL MENU OPTION CLASSIFICATION MANAGER Creating a new classification / menu 1. Click Classification manager 2. Click on the plus sign beside WWW to expand the folders

More information

Automatic software measurement data collection for students

Automatic software measurement data collection for students Automatic software measurement data collection for students 1. Automatic software measurement within a software engineering class Software is invisible and complex, so it is difficult to understand the

More information

RIMS Community Microsite Content Management System Training

RIMS Community Microsite Content Management System Training RIMS Community Microsite Content Management System Training Table of Contents Site setup o Hands on Training: Configure your Contact Us page Content Management System o Navigation Items/Pages Overview

More information

An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases

An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases Paul L. Bergstein, Priyanka Gariba, Vaibhavi Pisolkar, and Sheetal Subbanwad Dept. of Computer and Information Science,

More information

Running a Program on an AVD

Running a Program on an AVD Running a Program on an AVD Now that you have a project that builds an application, and an AVD with a system image compatible with the application s build target and API level requirements, you can run

More information

TIPS & TRICKS JOHN STEVENSON

TIPS & TRICKS JOHN STEVENSON TIPS & TRICKS Tips and Tricks Workspaces Windows and Views Projects Sharing Projects Source Control Editor Tips Debugging Debug Options Debugging Without a Project Graphs Using Eclipse Plug-ins Use Multiple

More information

Embedded Software Development with MPS

Embedded Software Development with MPS Embedded Software Development with MPS Markus Voelter independent/itemis The Limitations of C and Modeling Tools Embedded software is usually implemented in C. The language is relatively close to the hardware,

More information

Lab 0 (Setting up your Development Environment) Week 1

Lab 0 (Setting up your Development Environment) Week 1 ECE155: Engineering Design with Embedded Systems Winter 2013 Lab 0 (Setting up your Development Environment) Week 1 Prepared by Kirill Morozov version 1.2 1 Objectives In this lab, you ll familiarize yourself

More information

How to Build Successful DSL s. Jos Warmer Leendert Versluijs

How to Build Successful DSL s. Jos Warmer Leendert Versluijs How to Build Successful DSL s Jos Warmer Leendert Versluijs Jos Warmer Expert in Model Driven Development One of the authors of the UML standard Author of books Praktisch UML MDA Explained Object Constraint

More information

Hypercosm. Studio. www.hypercosm.com

Hypercosm. Studio. www.hypercosm.com Hypercosm Studio www.hypercosm.com Hypercosm Studio Guide 3 Revision: November 2005 Copyright 2005 Hypercosm LLC All rights reserved. Hypercosm, OMAR, Hypercosm 3D Player, and Hypercosm Studio are trademarks

More information

Getting Started: Creating a Simple App

Getting Started: Creating a Simple App Getting Started: Creating a Simple App What You will Learn: Setting up your development environment Creating a simple app Personalizing your app Running your app on an emulator The goal of this hour is

More information

MEAP Edition Manning Early Access Program Hello! ios Development version 14

MEAP Edition Manning Early Access Program Hello! ios Development version 14 MEAP Edition Manning Early Access Program Hello! ios Development version 14 Copyright 2013 Manning Publications For more information on this and other Manning titles go to www.manning.com brief contents

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

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

POOSL IDE Installation Manual

POOSL IDE Installation Manual Embedded Systems Innovation by TNO POOSL IDE Installation Manual Tool version 3.4.1 16-7-2015 1 POOSL IDE Installation Manual 1 Installation... 4 1.1 Minimal system requirements... 4 1.2 Installing Eclipse...

More information

Understand for FORTRAN

Understand for FORTRAN Understand Your Software... Understand for FORTRAN User Guide and Reference Manual Version 1.4 Scientific Toolworks, Inc. Scientific Toolworks, Inc. 1579 Broad Brook Road South Royalton, VT 05068 Copyright

More information

Eclipse Help

Eclipse Help Software configuration management We ll start with the nitty gritty and then get more abstract. Configuration and build Perdita Stevens School of Informatics University of Edinburgh 1. Version control

More information

The new Moodle landing page Introducing the course filter Moodle Help Materials

The new Moodle landing page Introducing the course filter Moodle Help Materials THE UNIVERSITY OF GREENWICH The new Moodle landing page Introducing the course filter Moodle Help Materials Compiled by the Web Services Team webservices@gre.ac.uk Last updated: 06/09/2012 Filtering courses

More information

COCOVILA Compiler-Compiler for Visual Languages

COCOVILA Compiler-Compiler for Visual Languages LDTA 2005 Preliminary Version COCOVILA Compiler-Compiler for Visual Languages Pavel Grigorenko, Ando Saabas and Enn Tyugu 1 Institute of Cybernetics, Tallinn University of Technology Akadeemia tee 21 12618

More information

Software Development Kit

Software Development Kit Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

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

tools that make every developer a quality expert

tools that make every developer a quality expert tools that make every developer a quality expert Google: www.google.com Copyright 2006-2010, Google,Inc.. All rights are reserved. Google is a registered trademark of Google, Inc. and CodePro AnalytiX

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

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

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems 1 2 Model-Based Development of -Critical Systems Miguel A. de Miguel 5/6,, 2006 modeling Stakes 3 Context 4 To increase the industrial competitiveness in the domain of software systems To face the growing

More information

Getting Started with SurveyGizmo Stage 1: Creating Your First Survey

Getting Started with SurveyGizmo Stage 1: Creating Your First Survey Getting Started with SurveyGizmo Stage 1: Creating Your First Survey 1. Open SurveyGizmo site (http://www.surveygizmo.com) Log in 2. Click on Create Survey (see screen shot below) 3. Create Your Survey

More information

Table of Contents. Copyright 2010-2015 Symphonic Source, Inc. All rights reserved. Salesforce is a registered trademark of salesforce.

Table of Contents. Copyright 2010-2015 Symphonic Source, Inc. All rights reserved. Salesforce is a registered trademark of salesforce. DupeCatcher is a real-time deduplication app designed specifically for Salesforce. It is a 100% APEX developed and deployed managed package, and is installed via the Salesforce AppExchange, eliminating

More information

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0 VISUAL GUIDE to RX Scripting for Roulette Xtreme - System Designer 2.0 UX Software - 2009 TABLE OF CONTENTS INTRODUCTION... ii What is this book about?... iii How to use this book... iii Time to start...

More information

New Generation of Software Development

New Generation of Software Development New Generation of Software Development Terry Hon University of British Columbia 201-2366 Main Mall Vancouver B.C. V6T 1Z4 tyehon@cs.ubc.ca ABSTRACT In this paper, I present a picture of what software development

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 6.2 Content Author's Reference and Cookbook Rev. 091019 Sitecore CMS 6.2 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

For more about patterns & practices: http://msdn.microsoft.com/practices/ My blog: http://ademiller.com/tech/

For more about patterns & practices: http://msdn.microsoft.com/practices/ My blog: http://ademiller.com/tech/ For more about patterns & practices: http://msdn.microsoft.com/practices/ My blog: http://ademiller.com/tech/ 1 2 Stop me. Ask questions. Tell me if you ve heard it all before or you want to hear about

More information

Microsoft Visual Studio Integration Guide

Microsoft Visual Studio Integration Guide Microsoft Visual Studio Integration Guide MKS provides a number of integrations for Integrated Development Environments (IDEs). IDE integrations allow you to access MKS Integrity s workflow and configuration

More information

Using Microsoft Azure for Students

Using Microsoft Azure for Students Using Microsoft Azure for Students Dive into Azure through Microsoft Imagine s free new offer and learn how to develop and deploy to the cloud, at no cost! To take advantage of Microsoft s cloud development

More information

EMC Documentum Composer

EMC Documentum Composer EMC Documentum Composer Version 6.5 User Guide P/N 300 007 217 A02 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748 9103 1 508 435 1000 www.emc.com Copyright 2008 EMC Corporation. All rights

More information

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014

Automate Your Deployment with Bamboo, Drush and Features DrupalCamp Scotland, 9 th 10 th May 2014 This presentation was originally given at DrupalCamp Scotland, 2014. http://camp.drupalscotland.org/ The University of Edinburgh 1 We are 2 of the developers working on the University s ongoing project

More information

Microsoft Office Access 2007 Training

Microsoft Office Access 2007 Training Mississippi College presents: Microsoft Office Access 2007 Training Course contents Overview: Fast, easy, simple Lesson 1: A new beginning Lesson 2: OK, back to work Lesson 3: Save your files in the format

More information

Macromedia Dreamweaver 8 Developer Certification Examination Specification

Macromedia Dreamweaver 8 Developer Certification Examination Specification Macromedia Dreamweaver 8 Developer Certification Examination Specification Introduction This is an exam specification for Macromedia Dreamweaver 8 Developer. The skills and knowledge certified by this

More information

RuleBender 1.1.415 Tutorial

RuleBender 1.1.415 Tutorial RuleBender 1.1.415 Tutorial Installing and Launching RuleBender Requirements OSX Getting Started Linux Getting Started Windows Getting Started Using the Editor The Main Window Creating and Opening Files

More information

Visual Studio.NET Database Projects

Visual Studio.NET Database Projects Visual Studio.NET Database Projects CHAPTER 8 IN THIS CHAPTER Creating a Database Project 294 Database References 296 Scripts 297 Queries 312 293 294 Visual Studio.NET Database Projects The database project

More information

How To Write An Html Message Without Writing It Yourself

How To Write An Html Message Without Writing It Yourself Whitepaper No HTML Coding Experience Necessary! Creating Professional Looking HTML Messages without Coding August 4, 2010 Copyright 2010 L-Soft international, Inc. Information in this document is subject

More information

Testing Rails. by Josh Steiner. thoughtbot

Testing Rails. by Josh Steiner. thoughtbot Testing Rails by Josh Steiner thoughtbot Testing Rails Josh Steiner April 10, 2015 Contents thoughtbot Books iii Contact us................................ iii Introduction 1 Why test?.................................

More information

For Introduction to Java Programming, 5E By Y. Daniel Liang

For Introduction to Java Programming, 5E By Y. Daniel Liang Supplement H: NetBeans Tutorial For Introduction to Java Programming, 5E By Y. Daniel Liang This supplement covers the following topics: Getting Started with NetBeans Creating a Project Creating, Mounting,

More information

Collaborative Software Engineering: A Survey

Collaborative Software Engineering: A Survey Collaborative Software Engineering: A Survey Agam Brahma November 21, 2006 Abstract This paper surveys recent work in the field of collaborative software engineering and relates it to concepts discussed

More information

Introducing Xcode Source Control

Introducing Xcode Source Control APPENDIX A Introducing Xcode Source Control What You ll Learn in This Appendix: u The source control features offered in Xcode u The language of source control systems u How to connect to remote Subversion

More information

Before you can use the Duke Ambient environment to start working on your projects or

Before you can use the Duke Ambient environment to start working on your projects or Using Ambient by Duke Curious 2004 preparing the environment Before you can use the Duke Ambient environment to start working on your projects or labs, you need to make sure that all configuration settings

More information

SAS in clinical trials A relook at project management,

SAS in clinical trials A relook at project management, SAS in clinical trials A relook at project management, tools and software engineering Sameera Nandigama - Statistical Programmer PhUSE 2014 AD07 2014 inventiv Health. All rights reserved. Introduction

More information

Java Generation from UML Models specified with Alf Annotations

Java Generation from UML Models specified with Alf Annotations Université de Franche-Comté Supervisers : Fabien Peureux, Isabelle Jacques Java Generation from UML Models specified with Alf Annotations Supervised project report Alexandre Vernotte Jean-Marie Gauthier

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

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

Linked Data Interface, Semantics and a T-Box Triple Store for Microsoft SharePoint

Linked Data Interface, Semantics and a T-Box Triple Store for Microsoft SharePoint Linked Data Interface, Semantics and a T-Box Triple Store for Microsoft SharePoint Christian Fillies 1 and Frauke Weichhardt 1 1 Semtation GmbH, Geschw.-Scholl-Str. 38, 14771 Potsdam, Germany {cfillies,

More information

Cobian9 Backup Program - Amanita

Cobian9 Backup Program - Amanita The problem with backup software Cobian9 Backup Program - Amanita Due to the quixotic nature of Windows computers, viruses and possibility of hardware failure many programs are available for backing up

More information

ATLAS.ti 5.2: A Qualitative Data Analysis Tool

ATLAS.ti 5.2: A Qualitative Data Analysis Tool Part I: Terminology of ATLAS.ti... 2 Part II: Design logic... 3 Part III: The Atlas.ti Workspace... 4 Toolbars... 5 Main Toolbar... 5 Primary Document Toolbar... 6 Part IV: Optimizing Textual Primary Documents...

More information

(Refer Slide Time: 2:03)

(Refer Slide Time: 2:03) Control Engineering Prof. Madan Gopal Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 11 Models of Industrial Control Devices and Systems (Contd.) Last time we were

More information

Working With Templates in Web Publisher. Contributed by Paul O Mahony Developer Program

Working With Templates in Web Publisher. Contributed by Paul O Mahony Developer Program Working With Templates in Web Publisher Contributed by Paul O Mahony Developer Program Overview... 3 Template Options... 3 Web Publisher Editor Templates... 3 Advanced Content Editor... 3 ewebeditpro +

More information

Localization Engineering: The Dream Job? By Bert Esselink

Localization Engineering: The Dream Job? By Bert Esselink Traducció i Tecnologies de la Informació i la Comunicació Localization Engineering: The Dream Job? By Bert Esselink Resum This article provides an introduction to the fundamental concepts of localisation

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

Content Management System User Guide

Content Management System User Guide Content Management System User Guide support@ 07 3102 3155 Logging in: Navigate to your website. Find Login or Admin on your site and enter your details. If there is no Login or Admin area visible select

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

Your Web Team is Busier Than Ever

Your Web Team is Busier Than Ever Jason Garoutte Your Web Team is Busier Than Ever New Websites New Devices More Changes Landing Pages Social Pages Marketing Ideas are Waiting for IT Resources A CMS Only Made More Work for IT Software

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

ZOINED RETAIL ANALYTICS. User Guide

ZOINED RETAIL ANALYTICS. User Guide ZOINED RETAIL ANALYTICS User Guide Contents Using the portal New user Profile Email reports Portal use Dashboard Drilling down into the data Filter options Analytics Managing analysis Saving the analysis

More information

Embarcadero Rapid SQL Developer 2.0 User Guide

Embarcadero Rapid SQL Developer 2.0 User Guide Embarcadero Rapid SQL Developer 2.0 User Guide Copyright 1994-2009 Embarcadero Technologies, Inc. Embarcadero Technologies, Inc. 100 California Street, 12th Floor San Francisco, CA 94111 U.S.A. All rights

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

Teamstudio USER GUIDE

Teamstudio USER GUIDE Teamstudio Software Engineering Tools for IBM Lotus Notes and Domino USER GUIDE Edition 30 Copyright Notice This User Guide documents the entire Teamstudio product suite, including: Teamstudio Analyzer

More information

Event processing in Java: what happens when you click?

Event processing in Java: what happens when you click? Event processing in Java: what happens when you click? Alan Dix In the HCI book chapter 8 (fig 8.5, p. 298), notification-based user interface programming is described. Java uses this paradigm and you

More information

CommentTemplate: A Lightweight Code Generator for Java built with Eclipse Modeling Technology

CommentTemplate: A Lightweight Code Generator for Java built with Eclipse Modeling Technology CommentTemplate: A Lightweight Code Generator for Java built with Eclipse Modeling Technology Jendrik Johannes, Mirko Seifert, Christian Wende, Florian Heidenreich, and Uwe Aßmann DevBoost GmbH D-10179,

More information

EMAIL MARKETING BEST PRACTICES. www.agillic.com contact@agillic.com

EMAIL MARKETING BEST PRACTICES. www.agillic.com contact@agillic.com EMAIL MARKETING BEST PRACTICES www.agillic.com contact@agillic.com SUBJECTS AND PREHEADERS Subject Preheader Tell it don t sell it Your subjects and preheaders can make all the difference to your email.

More information

Creating Online Surveys with Qualtrics Survey Tool

Creating Online Surveys with Qualtrics Survey Tool Creating Online Surveys with Qualtrics Survey Tool Copyright 2015, Faculty and Staff Training, West Chester University. A member of the Pennsylvania State System of Higher Education. No portion of this

More information

Programmers rejoice: QML makes business people understand. Qt Developer Days 2014 Hinrich Specht 2. September 2014 Folie 1

Programmers rejoice: QML makes business people understand. Qt Developer Days 2014 Hinrich Specht 2. September 2014 Folie 1 Programmers rejoice: QML makes business people understand Qt Developer Days 2014 Hinrich Specht 2. September 2014 Folie 1 About me My company What I do at work Where I live What is it all about? Agenda

More information

Using GitHub for Rally Apps (Mac Version)

Using GitHub for Rally Apps (Mac Version) Using GitHub for Rally Apps (Mac Version) SOURCE DOCUMENT (must have a rallydev.com email address to access and edit) Introduction Rally has a working relationship with GitHub to enable customer collaboration

More information

POOSL IDE User Manual

POOSL IDE User Manual Embedded Systems Innovation by TNO POOSL IDE User Manual Tool version 3.0.0 25-8-2014 1 POOSL IDE User Manual 1 Installation... 5 1.1 Minimal system requirements... 5 1.2 Installing Eclipse... 5 1.3 Installing

More information

0 Introduction to Data Analysis Using an Excel Spreadsheet

0 Introduction to Data Analysis Using an Excel Spreadsheet Experiment 0 Introduction to Data Analysis Using an Excel Spreadsheet I. Purpose The purpose of this introductory lab is to teach you a few basic things about how to use an EXCEL 2010 spreadsheet to do

More information

How To Build An Intranet In Sensesnet.Com

How To Build An Intranet In Sensesnet.Com Sense/Net 6 Evaluation Guide How to build a simple list-based Intranet? Contents 1 Basic principles... 4 1.1 Workspaces... 4 1.2 Lists... 4 1.3 Check-out/Check-in... 5 1.4 Version control... 5 1.5 Simple

More information

Rational Team Concert. Quick Start Tutorial

Rational Team Concert. Quick Start Tutorial Rational Team Concert Quick Start Tutorial 1 Contents 1. Introduction... 3 2. Terminology... 4 3. Project Area Preparation... 5 3.1 Defining Timelines and Iterations... 5 3.2 Creating Team Areas... 8 3.3

More information

Firewall Builder Architecture Overview

Firewall Builder Architecture Overview Firewall Builder Architecture Overview Vadim Zaliva Vadim Kurland Abstract This document gives brief, high level overview of existing Firewall Builder architecture.

More information

So you want to create an Email a Friend action

So you want to create an Email a Friend action So you want to create an Email a Friend action This help file will take you through all the steps on how to create a simple and effective email a friend action. It doesn t cover the advanced features;

More information

CDyWeb Content Management System (CCMS) V3.3. User Manual

CDyWeb Content Management System (CCMS) V3.3. User Manual CDyWeb Content Management System (CCMS) V3.3 User Manual Page 1 Table of Contents Table of Contents...2 1. Finding your way...3 2. Page editing...4 2.1 Changing order...4 2.2 Add a page...5 2.3 Edit Page...9

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

Software Configuration Management

Software Configuration Management Software Configuration Management 1 Software Configuration Management Four aspects Version control Automated build Change control Release Supported by tools Requires expertise and oversight More important

More information

Introduction to Source Control ---

Introduction to Source Control --- Introduction to Source Control --- Overview Whether your software project is large or small, it is highly recommended that you use source control as early as possible in the lifecycle of your project.

More information

Eclipse for Smalltalkers

Eclipse for Smalltalkers Eclipse for Smalltalkers What a difference a year makes! Eric Clayberg Sr. Vice President of Product Development Instantiations, Inc. July 14, 2003 clayberg@instantiations.com http://www.instantiations.com

More information

Editors Comparison (NetBeans IDE, Eclipse, IntelliJ IDEA)

Editors Comparison (NetBeans IDE, Eclipse, IntelliJ IDEA) České vysoké učení technické v Praze Fakulta elektrotechnická Návrh Uživatelského Rozhraní X36NUR Editors Comparison (NetBeans IDE, Eclipse, ) May 5, 2008 Goal and purpose of test Purpose of this test

More information

today 1,700 special programming languages used to communicate in over 700 application areas.

today 1,700 special programming languages used to communicate in over 700 application areas. today 1,700 special programming languages used to communicate in over 700 application areas. Computer Software Issues, an American Mathematical Association Prospectus, July 1965, quoted in P. J. Landin

More information

File Management With Windows Explorer

File Management With Windows Explorer File Management With Windows Explorer Preamble: After you have created and saved numerous files using various programs, file management, the process of organizing and keeping track of all your files, can

More information

Design. in NetBeans 6.0

Design. in NetBeans 6.0 UI Design in NetBeans 6.0 Wade Chandler Beans Binding and Swing pplication Framework support, and other new features you ve probably been dreaming about having in your IDE UI Design in NetBeans 6.0 opers

More information

Terminal Four (T4) Site Manager

Terminal Four (T4) Site Manager Terminal Four (T4) Site Manager Contents Terminal Four (T4) Site Manager... 1 Contents... 1 Login... 2 The Toolbar... 3 An example of a University of Exeter page... 5 Add a section... 6 Add content to

More information

Implementation and Integration of a Domain Specific Language with oaw and Xtext

Implementation and Integration of a Domain Specific Language with oaw and Xtext Implementation and Integration of a Domain Specific Language with oaw and Xtext by Volker Koster MT AG, Okt. 2007 www.mt-ag.com info@mt-ag.com Implementation and Integration of a Domain Specific Language

More information

Kentico CMS 5 Developer Training Syllabus

Kentico CMS 5 Developer Training Syllabus Kentico CMS 5 Developer Training Syllabus June 2010 Page 2 Contents About this Course... 4 Overview... 4 Audience Profile... 4 At Course Completion... 4 Course Outline... 5 Module 1: Overview of Kentico

More information

MATLAB @ Work. MATLAB Source Control Using Git

MATLAB @ Work. MATLAB Source Control Using Git MATLAB @ Work MATLAB Source Control Using Git Richard Johnson Using source control is a key practice for professional programmers. If you have ever broken a program with a lot of editing changes, you can

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 6.5 Content Author's Reference and Cookbook Rev. 110621 Sitecore CMS 6.5 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

WHITE PAPER. Peter Drucker. intentsoft.com 2014, Intentional Software Corporation

WHITE PAPER. Peter Drucker. intentsoft.com 2014, Intentional Software Corporation We know now that the source of wealth is something specifically human: knowledge. If we apply knowledge to tasks we already know how to do, we call it productivity. If we apply knowledge to tasks that

More information

Week 2 Practical Objects and Turtles

Week 2 Practical Objects and Turtles Week 2 Practical Objects and Turtles Aims and Objectives Your aim in this practical is: to practise the creation and use of objects in Java By the end of this practical you should be able to: create objects

More information

Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102

Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Interneer, Inc. Updated on 2/22/2012 Created by Erika Keresztyen Fahey 2 Workflow - A102 - Basic HelpDesk Ticketing System

More information

Image Credit: http://www.flickr.com/photos/warquel/3397541204/

Image Credit: http://www.flickr.com/photos/warquel/3397541204/ 1 2 3 4 Image Credit: http://www.flickr.com/photos/warquel/3397541204/ 5 Fully manual hit build in your IDE of choice and then manually copy files from the developers machine Easy and simple But never

More information

YouTrack MPS case study

YouTrack MPS case study YouTrack MPS case study A case study of JetBrains YouTrack use of MPS Valeria Adrianova, Maxim Mazin, Václav Pech What is YouTrack YouTrack is an innovative, web-based, keyboard-centric issue and project

More information

A Visual Language Based System for the Efficient Management of the Software Development Process.

A Visual Language Based System for the Efficient Management of the Software Development Process. A Visual Language Based System for the Efficient Management of the Software Development Process. G. COSTAGLIOLA, G. POLESE, G. TORTORA and P. D AMBROSIO * Dipartimento di Informatica ed Applicazioni, Università

More information

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages 15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning

More information