How To Understand And Understand Common Lisp

Size: px
Start display at page:

Download "How To Understand And Understand Common Lisp"

Transcription

1 Language-Oriented Programming am Beispiel Lisp Arbeitskreis Objekttechnologie Norddeutschland HAW Hamburg, Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik und Capgemini sd&m Research 1 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

2 Agenda Introduction & Example A few words on Lisp DSLs for business information systems The big picture Agile development Conclusion 2 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

3 My Background Diplom-Informatiker, Universität Kaiserslautern: Lisp as first programming language Focus on artificial intelligence (AI): thesis on machine learning Ph.D. Computer Science, University of Wollongong, Australia: Thesis on transactions in distributed object-oriented systems 11 years with sd&m: Development of large-scale business information systems Developer, chief architect, project manager, department manager, head of sd&m Research Hochschule Darmstadt University of Applied Sciences Professor for software engineering and project management Focus on software architecture 3 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

4 Language-Oriented Programming Instead of simply writing your application in the base language, you build on top of the base language a language for writing programs like yours, then write your program in it. Paul Graham, Hackers & Painters, 2004 DSL = Domain-Specific Language 4 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

5 IDE: Allegro Common Lisp Express Edition Franz Inc. 5 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

6 6 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

7 7 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

8 Agenda Introduction & Example A few words on Lisp DSLs for business information systems The big picture Agile development Conclusion 8 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

9 Lisp = List Processing List: the basic Lisp data structure (1 2 3) ( This is a list of strings ) ((:key1. value1) (:key2. value2)) (:key1 value1 :key2 value2) (((3) 2 (4)) 1 (() 5 (6))) Lisp Programs are data: (factorial 5) ( ) (if condition (then-operation) (else-operation)) (defun identity (x) x) (defclass Customer (name address)) Association list Property list Binary Tree Function call: prefix notation Control structures Lisp Programs are represented by their syntax trees convenient transformation of Lisp programs via macro processor :key1 value1 :key2 value2 9 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences Function definition Class definition 1 5 6

10 Configuration data Program code Interactive console (REPL) IDE: Allegro Common Lisp Express Edition 10 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Franz Sciences. Inc. 2009

11 Agenda Introduction & Example A few words on Lisp DSLs for business information systems A query language A rules language A workflow language The big picture Agile development Conclusion 11 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

12 Excursus: The Quasar reference architecture for business information systems Services (Use Cases) class Quasar Architecture «Abstract T Compo... Workflow Management «Abstract T Compo... Client Management «Abstract T Compo... Batch Management pkg Application Components Entity Managers (DAOs, Controllers) A-Component 3 UseCase 3.1 UseCase 3.2 «A Component» Workflow «A Component» Dialog «A Component» Batch A-Controller 3.1 A-Controller 3.2 A-Controller 3.3 Workflows A-Entity 3.1 A-Entity 3.2 A-Entity 3.3 Dialogs «Abstract T Compo... Application Kernel Facade Entities «A Component» Application Component «Abstract T Compo... Authorization Application data types «Abstract T Compo... Transaction «Abstract T Compo... Persistence Queries 12 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

13 Example: A simple DSL for application data types 13 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

14 Example: A simple DSL for entity types 14 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

15 Criteria for a good DSL A DSL consists of: Syntax needs an editor to program in Semantics needs a compiler and a runtime environment to execute Good Syntax is: Concise Easy and intuitively to understand Semantics should be: Expressive / powerful Efficient implementation Example DSLs: Query language Rules language Workflow language 15 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

16 Agenda Introduction & Example A few words on Lisp DSLs for business information systems A query language A rules language A workflow language The big picture Agile development Conclusion 16 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

17 A general object database query language Local variable Persistent class Auxiliary variable not needed in result set Conjunctive clauses Any form of Lisp expression allowed. Here: object navigation 17 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

18 Agenda Introduction & Example A few words on Lisp DSLs for business information systems A query language A rules language A workflow language The big picture Agile development Conclusion 18 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

19 Excursus on semantic web technology: RDF(S) Resource Description Framework (Schema) Statement Subject Predicate Object has-income Huber Huber rdf:type Person Person rdf:type rdfs:class has-income rdf:type rdf:property has-income rdfs:domain Person has-income rdfs:range xs:integer 19 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

20 XML syntax for RDF(S): no appropriate langauge for representating knowledge Meaning: Course CIT2112 is taught by teachers , , and Source: Antoniou, van Harmelen: A Semantic Web Primer 20 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

21 Simplify URI syntax (add-triple!ins:franz!ins:has-disease!ins:heart-stroke) < < < 21 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

22 Provide means for declaring classes and instances (add-class!ins:person :comment "Natural Person" :see-also!ins:profession) (add-instance!ins:huber!ins:person) (ADD-TRIPLE!ins:Person!rdf:type!rdfs:class) (ADD-TRIPLE!ins:Person!rdfs:comment (LITERAL "Natural Person")) NIL (ADD-TRIPLE!ins:Person!rdfs:seeAlso!ins:Profession)) (ADD-TRIPLE!ins:Huber!rdf:type!ins:Person) 22 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

23 Provide means for declaring properties (add-property!ins:person!ins:has-desease!ins:disease) (add-triple!ins:franz!ins:has-disease!ins:heart-stroke) (ADD-TRIPLE!ins:has-desease!rdf:type!rdf:Property) (ADD-TRIPLE!ins:has-desease!rdfs:domain!ins:Person) (ADD-TRIPLE!ins:has-desease!rdfs:range!ins:Disease) (add-triple!ins:franz!ins:has-disease!ins:heart-stroke) 23 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

24 A rules language oriented on Prolog Facts Rules: Head <- goal 1 goal n Variables Unification of variables and terms Interactive Query 24 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

25 Agenda Introduction & Example A few words on Lisp DSLs for business information systems A query language A rules language A workflow language The big picture Agile development Conclusion 25 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

26 Customer Identification Rating A Workflow Language no Create Customer Account accept XOR accept Receive Customer Request Check whether Account exists XOR yes XOR Rate Customer XOR Rate-manually Manually rate customer XOR reject reject XOR reject Inform customer on rejection accept Policy preparation Contract signing Policy signed Finalize Policy Prepare policy Send polic to customer Receive signed policy XOR Policy not signed Binding period passed No Policy 26 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

27 Named workflow Synchronous invocation of service Manual activities can be accessed via worklist dialogs Voucher mechanism: waits until value has been set Worflows are services that can be invoked Asynchronous invocation of service 27 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

28 Waiting for external events Waiting for timing conditions 28 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

29 Agenda Introduction & Example A few words on Lisp DSLs for business information systems The big picture Agile development Conclusion 29 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

30 Domain-specific languages (DSL) or different general-purpose languages (GPL) may be derived from a base language (BL) Project-specific DLS e.g., GUI style guide BIS DSL Family E.g., Quasar BIS = Business Information Systems. Reference architecture includes dialogs, components, services, entity managers, entities, data types Object-oriented GPL e.g., CLOS + extensions Query DSL Configuration DSL e.g., Scribble, XML Test DSL e.g., LispUnit Functional GPL e.g., Scheme Business Process DSL Rules DSL e.g., Prolog Base Language (BL) e.g., Common Lisp S-Expressions Legend: Language Based on 30 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

31 Language design and application design are relevant for application development Level Content Example M3: Meta-Meta- Model Base-Language Common Lisp S-Expressions S-Expr ::= Atom (S-Expr*) Atom ::= Relevant for application development M2: Meta-Model M1: Model Languages (GPL, DSL) (Language-Design) Applications (Design & Implementation) Entity.lang.lisp Insurance.entity.lisp (defmacro define-entity (name attributes) ) (define-entity Customer (id name address) ) M0: Instance Objects (Runtime) Entity Customer (Customer :id 42 :name Smith ) 31 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

32 The language stack describes the configuration of language versions (GPL, DSL) based on each other Project-specific extension BIS Entity Language GP OO Language Base Language Insurance Entity Version x.y.z Quasar Entity Version x.y.z CLOS + extensions Version x.y.z Common Lisp S-Expressions Version x.y.z Language Configuration 32 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

33 Agenda Introduction & Example A few words on Lisp DSLs for business information systems The big picture Agile development Conclusion 33 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

34 Incremental language design allows scaling the language to the problem domain. Incremental application development allows stepwise increase of quality Production-ready Integratable Prototypical Ad-hoc Vertical scalabiliy via quality levels: Incremental application development. Conformance checks ensure quality levels Horizontal scalabiliy via languages (GPL, DSL): Incremental language design Query Language Business Process Language 34 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

35 Example for vertical scalability: Successively adding typing, documentation, error handling, pre- / post-conditions etc. Parameter typing Vertical scalabiliy via quality levels Conformance checks for typing, documentation etc. Full documentation Pre- and Postconditions Error specification Ad-hoc: Untyped Undocumented No error handling No implementation 35 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

36 Agenda Introduction & Example A few words on Lisp DSLs for business information systems The big picture Agile development Conclusion 36 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

37 Conclusion and discussion Language oriented programming (LOP) allows specifiying a solution to a problem on the appropriate level of abstraction Lisp is well suited for LOP Programming of a high level of abstraction is useful BUT BUT BUT Defining languages is hard Language versioning is a problem Lisp is not widely adopted in industry Every complex abstration is leaky (Spolsky) What is your opinion? 37 Prof. Dr. Bernhard Humm, Darmstadt University of Applied Sciences. 2009

LANGUAGE-ORIENTED PROGRAMMING VIA DSL STACKING

LANGUAGE-ORIENTED PROGRAMMING VIA DSL STACKING LANGUAGE-ORIENTED PROGRAMMING VIA DSL STACKING Bernhard G. Humm Darmstadt University of Applied Sciences, Department of Computer Science, Darmstadt, Germany Bernhard.Humm@h-da.de Ralf S. Engelschall Capgemini

More information

5. Advanced Object-Oriented Programming Language-Oriented Programming

5. Advanced Object-Oriented Programming Language-Oriented Programming 5. Advanced Object-Oriented Programming Language-Oriented Programming Prof. Dr. Bernhard Humm Faculty of Computer Science Hochschule Darmstadt University of Applied Sciences 1 Retrospective Functional

More information

Semantic Modeling with RDF. DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo

Semantic Modeling with RDF. DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo DBTech ExtWorkshop on Database Modeling and Semantic Modeling Lili Aunimo Expected Outcomes You will learn: Basic concepts related to ontologies Semantic model Semantic web Basic features of RDF and RDF

More information

OWL based XML Data Integration

OWL based XML Data Integration OWL based XML Data Integration Manjula Shenoy K Manipal University CSE MIT Manipal, India K.C.Shet, PhD. N.I.T.K. CSE, Suratkal Karnataka, India U. Dinesh Acharya, PhD. ManipalUniversity CSE MIT, Manipal,

More information

RDF Resource Description Framework

RDF Resource Description Framework RDF Resource Description Framework Fulvio Corno, Laura Farinetti Politecnico di Torino Dipartimento di Automatica e Informatica e-lite Research Group http://elite.polito.it Outline RDF Design objectives

More information

Cedalion A Language Oriented Programming Language (Extended Abstract)

Cedalion A Language Oriented Programming Language (Extended Abstract) Cedalion A Language Oriented Programming Language (Extended Abstract) David H. Lorenz Boaz Rosenan The Open University of Israel Abstract Implementations of language oriented programming (LOP) are typically

More information

7. Excursus: Business Information Systems Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH)

7. Excursus: Business Information Systems Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH) SOA Service Oriented Architecture 7. Excursus: Business Information Systems Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH) Today s topic 1. Introduction

More information

10. Service Oriented Architecture Reference Architectures and Patterns

10. Service Oriented Architecture Reference Architectures and Patterns 10. Service Oriented Architecture Reference Architectures and Patterns Winter Semester 2008 / 2009 Prof. Dr. Bernhard Humm Darmstadt University of Applied Sciences Department of Computer Science 1 Prof.

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

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming

More information

IBM WebSphere ILOG Rules for.net

IBM WebSphere ILOG Rules for.net Automate business decisions and accelerate time-to-market IBM WebSphere ILOG Rules for.net Business rule management for Microsoft.NET and SOA environments Highlights Complete BRMS for.net Integration with

More information

The Service Revolution software engineering without programming languages

The Service Revolution software engineering without programming languages The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)

More information

Challenges and Opportunities for formal specifications in Service Oriented Architectures

Challenges and Opportunities for formal specifications in Service Oriented Architectures ACSD ATPN Xi an China June 2008 Challenges and Opportunities for formal specifications in Service Oriented Architectures Gustavo Alonso Systems Group Department of Computer Science Swiss Federal Institute

More information

ECS 165A: Introduction to Database Systems

ECS 165A: Introduction to Database Systems ECS 165A: Introduction to Database Systems Todd J. Green based on material and slides by Michael Gertz and Bertram Ludäscher Winter 2011 Dept. of Computer Science UC Davis ECS-165A WQ 11 1 1. Introduction

More information

SWARD: Semantic Web Abridged Relational Databases

SWARD: Semantic Web Abridged Relational Databases SWARD: Semantic Web Abridged Relational Databases Johan Petrini and Tore Risch Department of Information Technology Uppsala University Sweden {Johan.Petrini,Tore.Risch}@it.uu.se Abstract The semantic web

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

13 RDFS and SPARQL. Internet Technology. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication.

13 RDFS and SPARQL. Internet Technology. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication. MSc in Communication Sciences 2011-12 Program in Technologies for Human Communication Davide Eynard nternet Technology 13 RDFS and SPARQL 2 RDF - Summary Main characteristics of RDF: Abstract syntax based

More information

Grids, Logs, and the Resource Description Framework

Grids, Logs, and the Resource Description Framework Grids, Logs, and the Resource Description Framework Mark A. Holliday Department of Mathematics and Computer Science Western Carolina University Cullowhee, NC 28723, USA holliday@cs.wcu.edu Mark A. Baker,

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

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

Application Architectures

Application Architectures Software Engineering Application Architectures Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the organization of two fundamental models of business systems - batch

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

Lecture 1: Introduction

Lecture 1: Introduction Programming Languages Lecture 1: Introduction Benjamin J. Keller Department of Computer Science, Virginia Tech Programming Languages Lecture 1 Introduction 2 Lecture Outline Preview History of Programming

More information

mbeddr: an Extensible MPS-based Programming Language and IDE for Embedded Systems

mbeddr: an Extensible MPS-based Programming Language and IDE for Embedded Systems mbeddr: an Extensible MPS-based Programming Language and IDE for Embedded Systems Markus Voelter independent/itemis voelter@acm.org Daniel Ratiu Bernhard Schaetz Fortiss {ratiu schaetz}@fortiss.org Bernd

More information

Object Database on Top of the Semantic Web

Object Database on Top of the Semantic Web WSS03 Applications, Products and Services of Web-based Support Systems 97 Object Database on Top of the Semantic Web Jakub Güttner Graduate Student, Brno Univ. of Technology, Faculty of Information Technology,

More information

Business Logic Integration Platform. D.Sottara, PhD OMG Technical Meeting Spring 2013, Reston, VA

Business Logic Integration Platform. D.Sottara, PhD OMG Technical Meeting Spring 2013, Reston, VA Business Logic Integration Platform D.Sottara, PhD OMG Technical Meeting Spring 2013, Reston, VA Outline Part I The Consolidated Past : Drools 5.x Drools Expert Object-Oriented, Production Rule engine

More information

Research Topics 2009. MDD & PL 2009 Stefan Tilkov stefan.tilkov@innoq.com

Research Topics 2009. MDD & PL 2009 Stefan Tilkov stefan.tilkov@innoq.com Research Topics 2009 MDD & PL 2009 Stefan Tilkov stefan.tilkov@innoq.com About innoq Technology Consultancy Focus: Efficient software development & Service-oriented architecture Ratingen, Darmstadt, Munich,

More information

Ikasan ESB Reference Architecture Review

Ikasan ESB Reference Architecture Review Ikasan ESB Reference Architecture Review EXECUTIVE SUMMARY This paper reviews the Ikasan Enterprise Integration Platform within the construct of a typical ESB Reference Architecture model showing Ikasan

More information

Business Process Execution Language for Web Services

Business Process Execution Language for Web Services Business Process Execution Language for Web Services Second Edition An architect and developer's guide to orchestrating web services using BPEL4WS Matjaz B. Juric With Benny Mathew and Poornachandra Sarang

More information

Accessing Data with ADOBE FLEX 4.6

Accessing Data with ADOBE FLEX 4.6 Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data

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

Raising Abstractions for the Software Defined Business

Raising Abstractions for the Software Defined Business Smart Process is Smart Business Raising Abstractions for the Software Defined Business Presented to GoTo Chicago, May 12, 2015 Dave Duggal, Managing Director dave@enterpriseweb.com Bill Malyk, Chief System

More information

6.2 Reporting BIPublisher Improvements

6.2 Reporting BIPublisher Improvements 6.2 Reporting BIPublisher Improvements Paul Hamill Senior Director, OTM Development 2011 OTM SIG Philadelphia, PA August 16-18, 2011 Safe Harbor Statements The following is intended

More information

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages ICOM 4036 Programming Languages Preliminaries Dr. Amirhossein Chinaei Dept. of Electrical & Computer Engineering UPRM Spring 2010 Language Evaluation Criteria Readability: the ease with which programs

More information

An Automated Workflow System Geared Towards Consumer Goods and Services Companies

An Automated Workflow System Geared Towards Consumer Goods and Services Companies Proceedings of the 2014 International Conference on Industrial Engineering and Operations Management Bali, Indonesia, January 7 9, 2014 An Automated Workflow System Geared Towards Consumer Goods and Services

More information

Semantic Web Languages: RDF vs. SOAP Serialisation

Semantic Web Languages: RDF vs. SOAP Serialisation : University of Dortmund Computer Science VIII stefan.haustein@udo.edu : Why look at something else? Is RDF(S) not sufficient? What is SOAP? Why is SOAP important? Is SOAP Serialisation really an alternative

More information

IBM Operational Decision Management v8

IBM Operational Decision Management v8 What s new in WebSphere Operational Decision Management? Matt Roberts Decision Management Specialist July 12 th, 2012 IBM Operational Decision Management v8 Manage business policies at scale Operationalize

More information

Importance of Data Abstraction, Data Virtualization, and Data Services Page 1

Importance of Data Abstraction, Data Virtualization, and Data Services Page 1 Importance of Data Abstraction, Data Virtualization, and Data Services David S. Linthicum The management of data is core to successful IT. However, few enterprises have a strategy for the use of data assets,

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

Managing enterprise applications as dynamic resources in corporate semantic webs an application scenario for semantic web services.

Managing enterprise applications as dynamic resources in corporate semantic webs an application scenario for semantic web services. Managing enterprise applications as dynamic resources in corporate semantic webs an application scenario for semantic web services. Fabien Gandon, Moussa Lo, Olivier Corby, Rose Dieng-Kuntz ACACIA in short

More information

Raghu R Kodali Consulting Product Manager, & Evangelist Oracle Fusion Middleware Oracle USA Author Beginning EJB 3 Application Development (Apress)

Raghu R Kodali Consulting Product Manager, & Evangelist Oracle Fusion Middleware Oracle USA Author Beginning EJB 3 Application Development (Apress) Integrating BPEL, Workflow & Business Rules Raghu R Kodali Consulting Product Manager, & Evangelist Oracle Fusion Middleware Oracle USA Author Beginning EJB 3 Application Development (Apress) Agenda Why

More information

Service Oriented Architecture. 9. Integration Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH)

Service Oriented Architecture. 9. Integration Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH) SOA Service Oriented Architecture 9. Integration Darmstadt University of Applied Sciences, Department of Computer Science Dr. Markus Voß (Accso GmbH) Today s topic 1. Introduction 2. Business Architecture

More information

Visual Basic. murach's TRAINING & REFERENCE

Visual Basic. murach's TRAINING & REFERENCE TRAINING & REFERENCE murach's Visual Basic 2008 Anne Boehm lbm Mike Murach & Associates, Inc. H 1-800-221-5528 (559) 440-9071 Fax: (559) 440-0963 murachbooks@murach.com www.murach.com Contents Introduction

More information

An Approach for the Systematic Development of Domain-Specific Languages

An Approach for the Systematic Development of Domain-Specific Languages An Approach for the Systematic Development of Domain-Specific Languages Mark Strembeck 1, Uwe Zdun 2 1 Institute of Information Systems, New Media Lab Vienna University of Economics and BA, Austria mark.strembeck@wu-wien.ac.at

More information

8. Business Intelligence Reference Architectures and Patterns

8. Business Intelligence Reference Architectures and Patterns 8. Business Intelligence Reference Architectures and Patterns Winter Semester 2008 / 2009 Prof. Dr. Bernhard Humm Darmstadt University of Applied Sciences Department of Computer Science 1 Prof. Dr. Bernhard

More information

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations

Jairson Vitorino. PhD Thesis, CIn-UFPE February 2009. Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations CHROME: A Model-Driven Component- Based Rule Engine Jairson Vitorino PhD Thesis, CIn-UFPE February 2009 Supervisor: Prof. Jacques Robin Ontologies Reasoning Components Agents Simulations Contents 1. Context

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

Business Rule Standards -- Interoperability and Portability

Business Rule Standards -- Interoperability and Portability Rule Standards -- Interoperability and Portability April 2005 Mark H. Linehan Senior Technical Staff Member IBM Software Group Emerging Technology mlinehan@us.ibm.com Donald F. Ferguson IBM Fellow Software

More information

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS

Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,

More information

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards) Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards) Michael P. Papazoglou (INFOLAB/CRISM, Tilburg University, The Netherlands)

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

NS DISCOVER 4.0 ADMINISTRATOR S GUIDE. July, 2015. Version 4.0

NS DISCOVER 4.0 ADMINISTRATOR S GUIDE. July, 2015. Version 4.0 NS DISCOVER 4.0 ADMINISTRATOR S GUIDE July, 2015 Version 4.0 TABLE OF CONTENTS 1 General Information... 4 1.1 Objective... 4 1.2 New 4.0 Features Improvements... 4 1.3 Migrating from 3.x to 4.x... 5 2

More information

Big Data, Fast Data, Complex Data. Jans Aasman Franz Inc

Big Data, Fast Data, Complex Data. Jans Aasman Franz Inc Big Data, Fast Data, Complex Data Jans Aasman Franz Inc Private, founded 1984 AI, Semantic Technology, professional services Now in Oakland Franz Inc Who We Are (1 (2 3) (4 5) (6 7) (8 9) (10 11) (12

More information

Enterprise Application Development Using UML, Java Technology and XML

Enterprise Application Development Using UML, Java Technology and XML Enterprise Application Development Using UML, Java Technology and XML Will Howery CTO Passage Software LLC 1 Introduction Effective management and modeling of enterprise applications Web and business-to-business

More information

Language-oriented Software Development and Rewriting Logic

Language-oriented Software Development and Rewriting Logic Language-oriented Software Development and Rewriting Logic Christiano Braga cbraga@ic.uff.br http://www.ic.uff.br/ cbraga Universidade Federal Fluminense (UFF) Language-oriented Software Development and

More information

Service-Oriented Architecture and Software Engineering

Service-Oriented Architecture and Software Engineering -Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based

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

BUSINESS RULES MANAGEMENT AND BPM

BUSINESS RULES MANAGEMENT AND BPM KINGSTON & CROYDON BRANCH BUSINESS RULES MANAGEMENT AND BPM WHO'S MANAGING YOUR RULES? Paul Vincent Rules Specialist and Product Management Fair Isaac October 12, 2005 Agenda Business Rules Approach a

More information

Dynamic website development using the Grails Platform. Joshua Davis Senior Architect Cognizant Technology Solutions joshua.davis@cognizant.

Dynamic website development using the Grails Platform. Joshua Davis Senior Architect Cognizant Technology Solutions joshua.davis@cognizant. Dynamic website development using the Grails Platform Joshua Davis Senior Architect Cognizant Technology Solutions joshua.davis@cognizant.com Topics Covered What is Groovy? What is Grails? What are the

More information

FIPA agent based network distributed control system

FIPA agent based network distributed control system FIPA agent based network distributed control system V.Gyurjyan, D. Abbott, G. Heyes, E. Jastrzembski, C. Timmer, E. Wolin TJNAF, Newport News, VA 23606, USA A control system with the capabilities to combine

More information

Oracle Service Bus Examples and Tutorials

Oracle Service Bus Examples and Tutorials March 2011 Contents 1 Oracle Service Bus Examples... 2 2 Introduction to the Oracle Service Bus Tutorials... 5 3 Getting Started with the Oracle Service Bus Tutorials... 12 4 Tutorial 1. Routing a Loan

More information

Service Oriented Architecture Based Integration. Mike Rosen CTO, AZORA Technologies, Inc. Mike.Rosen@Azoratech.com

Service Oriented Architecture Based Integration. Mike Rosen CTO, AZORA Technologies, Inc. Mike.Rosen@Azoratech.com Service Oriented Architecture Based Integration Mike Rosen CTO, AZORA Technologies, Inc. Mike.Rosen@Azoratech.com Mike Rosen ACCESS TO THE EXPERTS Consultant Chief Enterprise Architect for service and

More information

A Multi-layered Domain-specific Language for Stencil Computations

A Multi-layered Domain-specific Language for Stencil Computations A Multi-layered Domain-specific Language for Stencil Computations Christian Schmitt, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, University of Erlangen-Nuremberg Workshop ExaStencils 2014,

More information

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead JBoss jbpm Overview Koen Aers JBoss, a division of Red Hat jbpm GPD Lead Agenda What is JBoss jbpm? Multi Language Support Graphical Process Designer BPMN Reflections What is it? JBoss jbpm is a sophisticated

More information

1/20/2016 INTRODUCTION

1/20/2016 INTRODUCTION INTRODUCTION 1 Programming languages have common concepts that are seen in all languages This course will discuss and illustrate these common concepts: Syntax Names Types Semantics Memory Management We

More information

RDF Resource Description Framework

RDF Resource Description Framework RDF Resource Description Framework Rückblick HTML Auszeichnung, vorgegeben XML, XHTML, SGML Auszeichnung, eigene RDF, OWL Auszeichnung, inhaltliche Einordnung RDF-Model RDF-Konzept (Tripel) RDF-Graph RDF-Syntax

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

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence Service Oriented Architecture SOA and Web Services John O Brien President and Executive Architect Zukeran Technologies

More information

DIABLO VALLEY COLLEGE CATALOG 2014-2015

DIABLO VALLEY COLLEGE CATALOG 2014-2015 COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy

More information

DataStorm 2013 Workshop on Large-Scale Data Management

DataStorm 2013 Workshop on Large-Scale Data Management Domain Specific Languages for Large- Scale-Data Applications DataStorm 203 Workshop on Large-Scale Data Management 6/7/203 Alberto Rodrigues da Silva (on behalf of the Information Systems Group, INESC-ID)

More information

Difference Between Model-Driven and Traditional Iterative Software Development

Difference Between Model-Driven and Traditional Iterative Software Development Process Implications of Model-Driven Software Development Author: Jorn Bettin Version 1.0 September 2004 Copyright 2003, 2004 SoftMetaWare Ltd. SoftMetaWare is a trademark of SoftMetaWare Ltd. All other

More information

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles

A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles A Comparison of Service-oriented, Resource-oriented, and Object-oriented Architecture Styles Jørgen Thelin Chief Scientist Cape Clear Software Inc. Abstract The three common software architecture styles

More information

Developing Physical Solutions for InfoSphere Master Data Management Server Advanced Edition v11. MDM Workbench Development Tutorial

Developing Physical Solutions for InfoSphere Master Data Management Server Advanced Edition v11. MDM Workbench Development Tutorial Developing Physical Solutions for InfoSphere Master Data Management Server Advanced Edition v11 MDM Workbench Development Tutorial John Beaven/UK/IBM 2013 Page 1 Contents Overview Machine Requirements

More information

JOURNAL OF COMPUTER SCIENCE AND ENGINEERING

JOURNAL OF COMPUTER SCIENCE AND ENGINEERING Exploration on Service Matching Methodology Based On Description Logic using Similarity Performance Parameters K.Jayasri Final Year Student IFET College of engineering nishajayasri@gmail.com R.Rajmohan

More information

Managing User Accounts

Managing User Accounts Managing User Accounts This chapter includes the following sections: Active Directory, page 1 Configuring Local Users, page 3 Viewing User Sessions, page 5 Active Directory Active Directory is a technology

More information

Service-Oriented Architectures

Service-Oriented Architectures Architectures Computing & 2009-11-06 Architectures Computing & SERVICE-ORIENTED COMPUTING (SOC) A new computing paradigm revolving around the concept of software as a service Assumes that entire systems

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

Scope. Cognescent SBI Semantic Business Intelligence

Scope. Cognescent SBI Semantic Business Intelligence Cognescent SBI Semantic Business Intelligence Scope...1 Conceptual Diagram...2 Datasources...3 Core Concepts...3 Resources...3 Occurrence (SPO)...4 Links...4 Statements...4 Rules...4 Types...4 Mappings...5

More information

Business Process Management with @enterprise

Business Process Management with @enterprise Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase

More information

Service Oriented Architecture

Service Oriented Architecture Service Oriented Architecture Charlie Abela Department of Artificial Intelligence charlie.abela@um.edu.mt Last Lecture Web Ontology Language Problems? CSA 3210 Service Oriented Architecture 2 Lecture Outline

More information

Basic Lisp Operations

Basic Lisp Operations Basic Lisp Operations BLO-1 Function invocation It is an S-expression just another list! ( function arg1 arg2... argn) First list item is the function prefix notation The other list items are the arguments

More information

An approach for the systematic development of domain-specific languages

An approach for the systematic development of domain-specific languages SOFTWARE PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2009; 39:1253 1292 Published online 28 August 2009 in Wiley InterScience (www.interscience.wiley.com)..936 An approach for the systematic development

More information

Lecture 03 (04.11.2013) Quality of the Software Development Process

Lecture 03 (04.11.2013) Quality of the Software Development Process Systeme hoher Qualität und Sicherheit Universität Bremen, WS 2013/14 Lecture 03 (04.11.2013) Quality of the Software Development Process Christoph Lüth Christian Liguda Your Daily Menu Models of Software

More information

Towards a Software Domain Metric based on Semantic Web Techniques

Towards a Software Domain Metric based on Semantic Web Techniques Towards a Software Domain Metric based on Semantic Web Techniques F. Edgar Castillo-Barrera 1, Héctor G. Pérez-González 1, and S. Masoud Sadjadi 2 1 School of Engineering, Universidad Autónoma de San Luis

More information

DataDirect XQuery Technical Overview

DataDirect XQuery Technical Overview DataDirect XQuery Technical Overview Table of Contents 1. Feature Overview... 2 2. Relational Database Support... 3 3. Performance and Scalability for Relational Data... 3 4. XML Input and Output... 4

More information

Course Descriptions - Computer Science and Software Engineering

Course Descriptions - Computer Science and Software Engineering One of the nation's top undergraduate engineering, science, and mathematics colleges Course Descriptions - Computer Science and Software Engineering Professors Anderson, Boutell, Chenoweth, Chidanandan,

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

LINKED DATA EXPERIENCE AT MACMILLAN Building discovery services for scientific and scholarly content on top of a semantic data model

LINKED DATA EXPERIENCE AT MACMILLAN Building discovery services for scientific and scholarly content on top of a semantic data model LINKED DATA EXPERIENCE AT MACMILLAN Building discovery services for scientific and scholarly content on top of a semantic data model 22 October 2014 Tony Hammond Michele Pasin Background About Macmillan

More information

Introduction to Generative Software Development

Introduction to Generative Software Development Introduction to Generative Software Development Krzysztof Czarnecki University of Waterloo czarnecki@acm.org www.generative-programming.org Goals What is to be achieved? Basic understanding of Generative

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

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999 The ConTract Model Helmut Wächter, Andreas Reuter November 9, 1999 Overview In Ahmed K. Elmagarmid: Database Transaction Models for Advanced Applications First in Andreas Reuter: ConTracts: A Means for

More information

Logic and Reasoning in the Semantic Web (part I RDF/RDFS)

Logic and Reasoning in the Semantic Web (part I RDF/RDFS) Logic and Reasoning in the Semantic Web (part I RDF/RDFS) Fulvio Corno, Laura Farinetti Politecnico di Torino Dipartimento di Automatica e Informatica e-lite Research Group http://elite.polito.it Outline

More information

Microsoft s new database modeling tool: Part 1

Microsoft s new database modeling tool: Part 1 Microsoft s new database modeling tool: Part 1 Terry Halpin Microsoft Corporation Abstract: This is the first in a series of articles introducing the Visio-based database modeling component of Microsoft

More information

Standardontologie für Wissensmanagement

Standardontologie für Wissensmanagement Projektergebnis Standardontologie für Wissensmanagement im SW-Engineering Projektidentifikation: Ergebnis ID: Arbeitspaket(e): Autor(en): Koordinator: WAVES Wissensaustausch bei der verteilten Entwicklung

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

Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus

Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 4.0.3 Unit objectives

More information

A standards-based approach to application integration

A standards-based approach to application integration A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist Macnair@us.ibm.com Copyright IBM Corporation 2005. All rights

More information

Semester Review. CSC 301, Fall 2015

Semester Review. CSC 301, Fall 2015 Semester Review CSC 301, Fall 2015 Programming Language Classes There are many different programming language classes, but four classes or paradigms stand out:! Imperative Languages! assignment and iteration!

More information

Analysis of the Specifics for a Business Rules Engine Based Projects

Analysis of the Specifics for a Business Rules Engine Based Projects Analysis of the Specifics for a Business Rules Engine Based Projects By Dmitri Ilkaev and Dan Meenan Introduction In recent years business rules engines (BRE) have become a key component in almost every

More information

Language-Driven, Technology-Enhanced Instructional Systems Design

Language-Driven, Technology-Enhanced Instructional Systems Design Language-Driven, Technology-Enhanced Instructional s Design Iván Martínez-Ortiz, José-Luis Sierra, Baltasar Fernández-Manjón Fac. Informática. Universidad Complutense de Madrid C/ Prof. José García Santesmases

More information