Design-Driven Software Development: A Programming Language-Inspired Approach Charles Consel University of Bordeaux / Inria
|
|
- Alexander Davis
- 7 years ago
- Views:
Transcription
1 Design-Driven Software Development: A Programming Language-Inspired Approach Charles Consel University of Bordeaux / Inria Joint work with members of the Phoenix Research Group
2 Orchestrating Networked Entities Cooker Alert TV Turnoff Notify RemoteTurnOff Alert
3 Domain-Specific Languages Spec. Generator Program Specification Declaration DSL program Preprocessor DSL compiler Domain-specific Concepts, notations, semantics Interpreter or compiler Benefits Software development: conciseness, abstraction Software verification: critical properties Software execution: performance, robustness Areas: OS, networking, multimedia, etc. è Still, little impact on mainstream PL
4 Gap between DSL and GPL The Silo Effect Syntax Semantics APIs Non-standard concepts, learning curve, narrow scope Programming-intensive task Development environment Another major development project è Getting the best of both worlds
5 Combining The DSL and GPL Approaches Designing raising the level of abstraction complementing GPLs Paradigm retaining DSL benefits not general purpose Design Paradigm Language defining paradigm-specific syntax and semantics an actual language Compilation generating customized GPL programming frameworks beyond contemplative approach and general-purpose programming support Verification leveraging specificities of paradigm Compiler based on well-defined semantics Programming conforming to the programming framework driven by the design Support leveraging the programming framework and host support blending in Program GPL Programming framework GPL
6 The DiaSuite Approach Designing Declarations Paradigm Sense-Compute-Control Language DiaSpec Compilation Java programming framework w.r.t. a design Verification Design time, compile time, run time Programming Java type system Support Eclipse, APIs, etc. Design SCC Compiler Program Java Programming framework Java
7 The SCC Paradigm orders Control controller context data context actions entities sources External Environment Compute raw data Sense
8 The SCC Paradigm: Wide Range of Application Areas orders controller actions entities context data sources context raw data
9 DiaSpec: A Paradigm-Specific Design Language actions entities Cooker Alert Taxonomy of entities device Cooker extends Actuator { action On; action Off; controller Turnoff Notify context RemoteTurnOff Alert entities sources device ElectricMeter extends Sensor { source currentelectricconsumption as Float;
10 DiaSpec: A Paradigm-Specific Design Language actions entities Cooker Alert Component declarations controller Turnoff Notify controller Notify { when provided Alert; do any AskQuestion on TvPrompter; context RemoteTurnOff Alert context Alert as Integer { when provided ticksecond from Clock; get currentelectricconsumption from ElectricMeter; maybe publish; entities sources
11 DiaSpec: A Paradigm-Specific Design Language actions entities Cooker Alert Component declarations controller Turnoff Notify controller TurnOff { when provided RemoteTurnOff; do any Off on Cooker; context RemoteTurnOff Alert context RemoteTurnOff as Boolean { when provided answer from TvPrompter; get currentelectricconsumption from ElectricMeter; maybe publish; entities sources
12 Generated Programming Framework context Alert as Integer { when provided ticksecond from Clock; get currentelectricconsumption from ElectricMeter; maybe publish; public class Alert extends AbstractAlert { Compiling declarations into Abstract public AlertValuePublishable onticksecondfromclock( TickSecondFromClock ticksecondfromclock, DiscoverForTickSecondFromClock discover) { // TODO Auto-generated method stub return null; Abstract methods Leveraging Type system IDE
13 Generated Programming Framework context Alert as Integer { when provided ticksecond from Clock; get currentelectricconsumption from ElectricMeter; maybe publish; Compiling declarations into Boilerplate code Customized code Restricted code public class Alert extends AbstractAlert public AlertValuePublishable onticksecondfromclock(ticksecondfromclock ticksecondfromclock, DiscoverForTickSecondFromClock discover) { if (++iteration == ITERATION_STEP) { iteration = 0; ElectricMeterProxyForTickSecondFromClock meter = discover.electricmeters().whereuser(configuration.cooker_name).anyone(); if (meter.getcurrentelectricconsumption() > 0) elapsedtime += ITERATION_STEP; else elapsedtime = 0; if (elapsedtime >= Configuration.TIME_ALLOWED) { elapsedtime = iteration = 0; return new AlertValuePublishable(elapsedTime, true); else return new AlertValuePublishable(0, false);
14 Design-driven development methodology: TSE 12 Covering The Development Lifecycle Avionics: PECS 13 Declaring QoS: FASE 11 Declaring Error Handling: OOSPLA 10 Simulation: Mobiquitous 09, SPE 12, IE 12 Generative programming approach: GPCE 09 Software Designer" Interaction Contracts: ICSE 11 DiaSuite: SCP 12 SIP: IPTComm 08 ICC 10
15 DiaSuite in Action Digital Space Access Control Controlling room access in a building Simulation of a digital building agents moving around Hybrid simulation (access permission module) Door Lock Access Controller Authenticated Access userdetected Identifer access Access Database
16
17 DiaSuiteBox: Technology Transfer (ongoing) Open-ended application catalog and platform Application portability across entities (H/S) Dedicated development environment Automatically verifying submitted applications
18 DiaSuite in Action Avionics Autopilot Real-size application Designed with domain experts Safety-critical Functional and non-functional requirements Realistic simulation: FlightGear Autopilot also developed for Drones
19 Aileron SetValue entities (action) Aileron Controller controller Target Aileron Target Roll context Target Heading HeadingTo CurrentWP roll Inertial Unit heading Inertial Unit rollmode targetheading Autopilot GUI position Inertial Unit currentwp Route Manager entities (source)
20 Aileron SetValue Autopilot Deactivate Aileron Controller Aileron Controller Target Aileron Error Handling Target Roll Dependability Strategy Target Heading HeadingTo CurrentWP Monitoring... roll Inertial Unit ElectricalSystem Excep0on heading Inertial Unit rollmode targetheading Autopilot GUI position Inertial Excep0on Unit ElectricalSystem currentwp Route Manager
21 emulation Aileron SetValue entities (action) Aileron Controller controller Target Aileron Hybrid simulation Target Roll Target Heading HeadingTo CurrentWP context roll Inertial Unit emulation heading Inertial Unit rollmode targetheading Autopilot GUI real position Inertial Unit emulation currentwp Route Manager real entities (source)
22 emulation Aileron SetValue Autopilot Deactivate Aileron Controller Aileron Controller Target Aileron Target Roll Hybrid simulation Fault Injection Dependability Strategy Target Heading HeadingTo CurrentWP Monitoring... roll heading rollmode targetheading position currentwp Inertial Unit Inertial Unit Autopilot GUI Inertial Unit Route Manager emulation real emulation real October April
23
24 Expanding the Research on The Design-Driven Approach Semantics of DiaSpec Programming frameworks across languages User evaluation of design-driven software development Scalability Design-driven certification Design-driven evolution Design-driven testing
25 Human-Centric Software Development ICSE 13 (NIER) Cognitive Approach User Model User Interaction Design Paradigm Functional Compiler Non Functional Cognitive requirements Deployments Experimental study Program GPL Programming framework GPL
Language Design Cross-fertilizing with other areas. Charles Consel Phoenix Research Group Inria / University of Bordeaux phoenix.inria.fr!
Language Cross-fertilizing with other areas Charles Consel Phoenix Research Group Inria / University of Bordeaux phoenix.inria.fr! Programming Language Mentoring Workshop (PLMW 2012) January 2012 Language
More informationThe Way to SOA Concept, Architectural Components and Organization
The Way to SOA Concept, Architectural Components and Organization Eric Scholz Director Product Management Software AG Seite 1 Goals of business and IT Business Goals Increase business agility Support new
More informationIkasan 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 informationConvergent services in the service oriented architecture Natalya Yashenkova
Convergent services in the service oriented architecture Natalya Yashenkova The article describes how service oriented architecture and the standard OSS solutions can close the gap between the process
More informationKURA M2M/IoT Gateway. reducing the distance between embedded and enterprise technologies. Tiziano Modotti, October 28 th, 2014
KURA M2M/IoT Gateway reducing the distance between embedded and enterprise technologies Tiziano Modotti, October 28 th, 2014 IoT Architecture @ M2M/IoT Integration Platform on Cloud Business Applications
More informationA Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation
PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris
More informationCREDENTIALS & CERTIFICATIONS 2015
THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2015 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 3 Software Design
More informationYouTrack 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 informationTest-Driven Approach for Safety-Critical Software Development
Test-Driven Approach for Safety-Critical Software Development Onur Özçelik 1,2*, D. Turgay Altilar2 1 Scientific 2 and Technological Research Council of Turkey, 41470 Kocaeli, Turkey. Department of Computer
More informationtoday 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 informationCREDENTIALS & CERTIFICATIONS 2016
THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2016 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 5 Software Design
More informationSpecification and Analysis of Contracts Lecture 1 Introduction
Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.
More informationIBM Cloud Security Draft for Discussion September 12, 2011. 2011 IBM Corporation
IBM Cloud Security Draft for Discussion September 12, 2011 IBM Point of View: Cloud can be made secure for business As with most new technology paradigms, security concerns surrounding cloud computing
More informationFlexible Engineering Process Automation Process: Continuous Integration & Test
Flexible Engineering Process Automation Process: Continuous Integration & Test Alexander Schatten Andreas Pieber Michael Handler Stefan Biffl Christian Doppler Laboratory SE-Flex-AS Institute of Software
More informationA Versatile and Scalable Testing Solution
A Versatile and Scalable Testing Solution to Meet the Challenges of Testing WebRTC Services By: Chao Zhao Software Engineer at Valid8.com 1 The Nature of WebRTC How WebRTC integrates into IMS Four Stages
More informationSybase Unwired Platform 2.0
white paper Sybase Unwired Platform 2.0 Development Paradigm www.sybase.com TABLE OF CONTENTS 1 Sybase Unwired Platform 1 Mobile Application Development 2 Mobile Business Object (MBO) Development 4 Mobile
More informationWhat is a programming language?
Overview Introduction Motivation Why study programming languages? Some key concepts What is a programming language? Artificial language" Computers" Programs" Syntax" Semantics" What is a programming language?...there
More informationCity of Dublin Education & Training Board. Programme Module for. Mobile Technologies. leading to. Level 6 FETAC. Mobile Technologies 6N0734
City of Dublin Education & Training Board Programme Module for Mobile Technologies leading to Level 6 FETAC Version 3 1 Introduction This programme module may be delivered as a standalone module leading
More informationAmit Sheth & Ajith Ranabahu, 2010. Presented by Mohammad Hossein Danesh
Amit Sheth & Ajith Ranabahu, 2010 Presented by Mohammad Hossein Danesh 1 Agenda Introduction to Cloud Computing Research Motivation Semantic Modeling Can Help Use of DSLs Solution Conclusion 2 3 Motivation
More informationDifference 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 informationtoday 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 informationThe Design Maintenance System (DMS ) A Tool for Automating Software Quality Enhancement
The Design Maintenance System (DMS ) A Tool for Automating Software Quality Enhancement Ira D. Baxter, Ph.D. Semantic Designs, Inc. www.semdesigns.com Keywords software quality, design capture, knowledge
More informationMind The Gap! Setting Up A Code Structure Building Bridges
Mind The Gap! Setting Up A Code Structure Building Bridges Representation Of Architectural Concepts In Code Structures Why do we need architecture? Complex business problems too many details to keep overview
More informationSoftware maintenance. Software Maintenance. Fundamental problems. Maintenance activities. Lehman/Belady model of evolution. Topics
Software maintenance Software Maintenance Key problems/issues Historical models and data Program Defined in IEEE Standard 1219 as: The modification of a software product after delivery to correct faults,
More informationBIG DATA IN THE CLOUD : CHALLENGES AND OPPORTUNITIES MARY- JANE SULE & PROF. MAOZHEN LI BRUNEL UNIVERSITY, LONDON
BIG DATA IN THE CLOUD : CHALLENGES AND OPPORTUNITIES MARY- JANE SULE & PROF. MAOZHEN LI BRUNEL UNIVERSITY, LONDON Overview * Introduction * Multiple faces of Big Data * Challenges of Big Data * Cloud Computing
More informationAn Oracle White Paper June, 2013. Enterprise Manager 12c Cloud Control Application Performance Management
An Oracle White Paper June, 2013 Enterprise Manager 12c Cloud Control Executive Overview... 2 Introduction... 2 Business Application Performance Monitoring... 3 Business Application... 4 User Experience
More informationA Case Study in DSL Development
A Case Study in DSL Development An Experiment with Python and Scala Klaus Havelund Michel Ingham David Wagner Jet Propulsion Laboratory, California Institute of Technology klaus.havelund, michel.d.ingham,
More informationPrinciples 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 informationSelf Testing and Product Qualification Processes
GlobalPlatform Self Testing and Product Qualification Processes Version 1.2.1 Public Release May 2013 Document Reference: GPC_PRO_042 Recipients of this document are invited to submit, with their comments,
More informationHP ALM Masters 2014 Connected, collaborative mobile application development for the enterprise HP Anywhere
HP ALM Masters 2014 Connected, collaborative mobile application development for the enterprise HP Anywhere A radically different kind of user Mainframe Client/Server Web Devices System-centric User-centric
More informationChap 1. Software Quality Management
Chap 1. Software Quality Management Part 1.1 Quality Assurance and Standards Part 1.2 Software Review and Inspection Part 1.3 Software Measurement and Metrics 1 Part 1.1 Quality Assurance and Standards
More informationCS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lecturer: Adrian O Riordan Office: Room G.71 WGB Email: a.oriordan cs.ucc.ie Course Webpage: http://www.cs.ucc.ie/~adrian/cs4507.html CS4507 Overview 5 Credit course
More informationDrupal Survey. Software Requirements Specification 1.0 29/10/2009. Chris Pryor Principal Project Manager
Software Requirements Specification 1.0 29/10/2009 Chris Pryor Principal Project Manager Software Requirements Specification Survey Module Revision History Date Description Author Comments 5/11/2009 Version
More informationDesigning an Enterprise Application Framework for Service-Oriented Architecture 1
Designing an Enterprise Application Framework for Service-Oriented Architecture 1 Shyam Kumar Doddavula, Sandeep Karamongikar Abstract This article is an attempt to present an approach for transforming
More informationTitle: Appium Automation for Mac OS X. Created By: Prithivirajan M. Abstract. Introduction
Title: Appium Automation for Mac OS X Created By: Prithivirajan M Abstract This document aims at providing the necessary information required for setting up mobile testing environment in Mac OS X for testing
More informationModeling 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 informationApp Development with Talkamatic Dialogue Manager
App Development with Talkamatic Dialogue Manager Dialogue Systems II September 7, 2015 Alex Berman alex@talkamatic.se Staffan Larsson Outline! Introduction to TDM! Technical architecture! App development
More informationResource Management and Containment for Active Services
Resource Management and Containment for Active Services M. Ranganathan, Doug Montgomery, Kevin Mills Advanced Networking Technologies Division National Inst. Of Standards and Technology Gaithersburg, MD
More informationSOA @ ebay : How is it a hit
SOA @ ebay : How is it a hit Sastry Malladi Distinguished Architect. ebay, Inc. Agenda The context : SOA @ebay Brief recap of SOA concepts and benefits Challenges encountered in large scale SOA deployments
More informationControlling the Smart Home from the VSDL Home Gateway: opportunities and lack of standards
TELECOM ITALIA GROUP Controlling the Smart Home from the VSDL Home Gateway: opportunities and lack of standards claudio.venezia@telecomitalia.it W3Ctrack @www2016 Smart objects and Smart Home: application
More informationDomain specific language on automata: Design and Implementation problems. Loïc Fosse
Domain specific language on automata: Design and Implementation problems Loïc Fosse Technical Report n o 0305, revision 0.20, 2nd November 2003 Even if Domain Specific Languages (DSL) are not well-known,
More informationJava technology trends offer renewed promise for portable embedded applications
Java technology trends offer renewed promise for portable embedded applications By Dave Wood Because of the promise of increased productivity and reduced error incidence, achieving program portability
More informationAutomated testing and continuous integration
Technical white paper Automated testing and continuous integration Build and test your software at the same time Table of contents Introduction 2 Who should read this document? 2 Build managers 2 Developers
More informationBusiness Process Analysis & Management. Corporate Synergy
Business Process Analysis & Management Corporate Synergy The simple and effective way to implement, execute and monitor business workflow applications From Design to Execution With the increasing need
More informationBuilding Web Applications, Servlets, JSP and JDBC
Building Web Applications, Servlets, JSP and JDBC Overview Java 2 Enterprise Edition (JEE) is a powerful platform for building web applications. The JEE platform offers all the advantages of developing
More informationDistribution transparency. Degree of transparency. Openness of distributed systems
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science steen@cs.vu.nl Chapter 01: Version: August 27, 2012 1 / 28 Distributed System: Definition A distributed
More informationBuilding Home Monitoring Applications: From Design to Implementation into The Amigo Middleware
Building Home Monitoring Applications: From Design to Implementation into The Amigo Middleware W. Jouve 1, N. Ibrahim 2, L. Réveillère 1, F. Le Mouël 2, C. Consel 1 1 INRIA / LaBRI Phoenix Group 2 INRIA
More informationLanguage Technology for Internet-Telephony Service Creation
Language Technology for Internet-Telephony Service Creation Laurent Burgy Charles Consel Fabien Latry Julia Lawall Nicolas Palix Laurent Réveillère Department of Telecommunications LaBRI - INRIA, France
More informationA Step-by-Step Guide to Defining Your Cloud Services Catalog
A Step-by-Step Guide to Defining Your Cloud Services Catalog Table of Contents Introduction Chapter 1 Defining the Services Catalog Chapter 2 Building a Services Catalog Chapter 3 Choosing the Right Solution
More informationSoftware Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Component-Based Software Engineering Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain that CBSE is concerned with developing standardised components
More informationTATJA: A Test Automation Tool for Java Applets
TATJA: A Test Automation Tool for Java Applets Matthew Xuereb 19, Sanctuary Street, San Ġwann mxue0001@um.edu.mt Abstract Although there are some very good tools to test Web Applications, such tools neglect
More informationEmbedded 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 informationChapter 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 informationFederation Computing: A pragmatic approach for the Future Internet
Federation Computing: A pragmatic approach for the Future Internet Christos Tranoris and Spyros Denazis Electrical and Computing Engineering dept. Univeristy of Patras Patras, Greece tranoris@ece.upatras.gr,
More informationEnterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing
Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing Presented by : Ajay Budhraja, Chief, Enterprise Services ME (Engg), MS (Mgmt), PMP, CICM, CSM,
More informationSchool of Computer Science
School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
More informationHow To Write Software
Overview of Software Engineering Principles 1 Software Engineering in a Nutshell Development of software systems whose size/ complexity warrants a team or teams of engineers multi-person construction of
More informationARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40
SOFTWARE DEVELOPMENT, 15.1200.40 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION TECHNOLOGY 1.1 Describe methods and considerations for prioritizing and scheduling software development
More informationDesign with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1
Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse
More informationODROID Multithreading in Android
Multithreading in Android 1 Index Android Overview Android Stack Android Development Tools Main Building Blocks(Activity Life Cycle) Threading in Android Multithreading via AsyncTask Class Multithreading
More informationJava Technology in the Design and Implementation of Web Applications
Java Technology in the Design and Implementation of Web Applications Kavindra Kumar Singh School of Computer and Systems Sciences Jaipur National University Jaipur Abstract: This paper reviews the development
More informationSoftware Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.
Software Testing Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Testing can only reveal the presence of errors and not the
More informationSTORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009
STORM Simulation TOol for Real-time Multiprocessor scheduling Designer Guide V3.3.1 September 2009 Richard Urunuela, Anne-Marie Déplanche, Yvon Trinquet This work is part of the project PHERMA supported
More informationIntroduction to Java
Introduction to Java The HelloWorld program Primitive data types Assignment and arithmetic operations User input Conditional statements Looping Arrays CSA0011 Matthew Xuereb 2008 1 Java Overview A high
More informationThe C Programming Language course syllabus associate level
TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming
More information.NET and J2EE Intro to Software Engineering
.NET and J2EE Intro to Software Engineering David Talby This Lecture.NET Platform The Framework CLR and C# J2EE Platform And Web Services Introduction to Software Engineering The Software Crisis Methodologies
More informationCS346: Database Programming. http://warwick.ac.uk/cs346
CS346: Database Programming http://warwick.ac.uk/cs346 1 Database programming Issue: inclusionofdatabasestatementsinaprogram combination host language (general-purpose programming language, e.g. Java)
More informationA 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 informationFormal Verification for Software-Defined Networking
Formal Verification for Software-Defined Networking Myung-Ki Shin ETRI mkshin@etri.re.kr SDN RG Meeting@IETF 87 Berlin, Germany 1 Compiler-based SDN NBAPIs Apps (High-level Programming + Compiler + Debugger)
More informationdatabase abstraction layer database abstraction layers in PHP Lukas Smith BackendMedia smith@backendmedia.com
Lukas Smith database abstraction layers in PHP BackendMedia 1 Overview Introduction Motivation PDO extension PEAR::MDB2 Client API SQL syntax SQL concepts Result sets Error handling High level features
More informationRevel8or: Model Driven Capacity Planning Tool Suite
Revel8or: Model Driven Capacity Planning Tool Suite Liming Zhu 1,2, Yan Liu 1,2, Ngoc Bao Bui 1,2,Ian Gorton 3 1 Empirical Software Engineering Program, National ICT Australia Ltd. 2 School of Computer
More informationDeveloping Google Android Mobile Clients for Web Services: a Case Study
tesi di laurea Developing Google Android Mobile Clients for Web Services: a Case Study Anno Accademico 2007/2008 relatore Ch.mo prof. Stefano Russo correlatore Ing. Marcello Cinque candidato Vito Daniele
More informationTECHNICAL SPECIFICATION: FEDERATED CERTIFIED SERVICE BROKERAGE OF EU PUBLIC ADMINISTRATION CLOUD
REALIZATION OF A RESEARCH AND DEVELOPMENT PROJECT (PRE-COMMERCIAL PROCUREMENT) ON CLOUD FOR EUROPE TECHNICAL SPECIFICATION: FEDERATED CERTIFIED SERVICE BROKERAGE OF EU PUBLIC ADMINISTRATION CLOUD ANNEX
More informationThe programming language C. sws1 1
The programming language C sws1 1 The programming language C invented by Dennis Ritchie in early 1970s who used it to write the first Hello World program C was used to write UNIX Standardised as K&C (Kernighan
More informationProgramming with Android: SDK install and initial setup. Dipartimento di Informatica: Scienza e Ingegneria Università di Bologna
Programming with Android: SDK install and initial setup Luca Bedogni Marco Di Felice Dipartimento di Informatica: Scienza e Ingegneria Università di Bologna SDK and initial setup: Outline Ø Today: How
More informationChapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system.
Chapter 1 Introduction to ios Development Objectives: Touch on the history of ios and the devices that support this operating system. Understand the different types of Apple Developer accounts. Introduce
More informationDesigning and Developing Microsoft SharePoint Server 2010 Applications Course Outline
Designing and Developing Microsoft SharePoint Server 2010 Applications Course Outline Course Overview: This five-day instructor-led course is intended for SharePoint Development professionals who are responsible
More informationSybase Unwired Platform 2.1.x
white paper Sybase Unwired Platform 2.1.x Development Paradigm www.sybase.com Table of Contents 1 Sybase Unwired Platform 2 Mobile Application Development 3 Mobile Business Object (MBO) Development 5 Mobile
More informationPulsar Realtime Analytics At Scale. Tony Ng April 14, 2015
Pulsar Realtime Analytics At Scale Tony Ng April 14, 2015 Big Data Trends Bigger data volumes More data sources DBs, logs, behavioral & business event streams, sensors Faster analysis Next day to hours
More informationTowards 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 informationAnno Accademico 2009/2010
tesi di laurea specialistica Analisi sperimentale di strumenti per la fault injection su sistemi Anno Accademico 2009/2010 relatore Ch.mo prof. Domenico Cotroneo Correlatori Ing. Roberto Natella Ing. Ricardo
More informationFormal Specification and Verification of Avionics Software
Formal Specification and Verification of Avionics Software June 7th, 2006 Outline 1 Introduction Software in the avionics domain Certification requirements Object-oriented technologies 2 Specification
More informationGetting started with API testing
Technical white paper Getting started with API testing Test all layers of your composite applications, not just the GUI Table of contents Executive summary... 3 Introduction... 3 Who should read this document?...
More information10 Gbps Line Speed Programmable Hardware for Open Source Network Applications*
10 Gbps Line Speed Programmable Hardware for Open Source Network Applications* Livio Ricciulli livio@metanetworks.org (408) 399-2284 http://www.metanetworks.org *Supported by the Division of Design Manufacturing
More informationSoftware quality improvement via pattern matching
Software quality improvement via pattern matching Radu Kopetz and Pierre-Etienne Moreau INRIA & LORIA {Radu.Kopetz, Pierre-Etienne.Moreau@loria.fr Abstract. Nested if-then-else statements is the most common
More informationWhat is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process
1 2 3 What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process modeling, and for more generalized modeling purposes.
More informationWhat Is the Java TM 2 Platform, Enterprise Edition?
Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today
More informationINF5140: Specification and Verification of Parallel Systems
Motivation INF5140: Specification and Verification of Parallel Systems Lecture 1 Introduction: Formal Methods Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2009 Outline
More informationSOA GOVERNANCE MODEL
SOA GOVERNANCE MODEL Matjaz B. Juric University of Ljubljana, Slovenia matjaz.juric@fri.uni-lj.si Eva Zupancic University of Ljubljana, Slovenia Abstract: Service Oriented Architecture (SOA) has become
More informationMS-10232 - PRO: Designing Applications for Microsoft SharePoint 2010
MS-10232 - PRO: Designing Applications for Microsoft SharePoint 2010 Table of Contents Introduction Audience At Course Completion Prerequisites Microsoft Certified Professional Exams Student Materials
More informationA Vision for Operational Analytics as the Enabler for Business Focused Hybrid Cloud Operations
A Vision for Operational Analytics as the Enabler for Focused Hybrid Cloud Operations As infrastructure and applications have evolved from legacy to modern technologies with the evolution of Hybrid Cloud
More informationCombining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery
Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery Dimitrios Kourtesis, Iraklis Paraskakis SEERC South East European Research Centre, Greece Research centre of the University
More informationDynamic Bluetooth File Sharing With Cellular Devices. Project Goals
Dynamic Bluetooth File Sharing With Cellular Devices Steve Brar George Chen Michael Hair Jon Wagoner Project Goals Establishing a Bluetooth connection Download application software to client Look up existing
More informationEmbedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer
Generate Results. Real Models. Real Code. Real Fast. Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer Andreas Henriksson, Ericsson andreas.henriksson@ericsson.com
More informationA very short history of networking
A New vision for network architecture David Clark M.I.T. Laboratory for Computer Science September, 2002 V3.0 Abstract This is a proposal for a long-term program in network research, consistent with the
More informationPROTOTYPE IMPLEMENTATION OF A DEMAND DRIVEN NETWORK MONITORING ARCHITECTURE
PROTOTYPE IMPLEMENTATION OF A DEMAND DRIVEN NETWORK MONITORING ARCHITECTURE Augusto Ciuffoletti, Yari Marchetti INFN-CNAF (Italy) Antonis Papadogiannakis, Michalis Polychronakis FORTH (Greece) Summary
More informationCertification of a Scade 6 compiler
Certification of a Scade 6 compiler F-X Fornari Esterel Technologies 1 Introduction Topic : What does mean developping a certified software? In particular, using embedded sofware development rules! What
More informationAvio BPM Solutions and Frameworks
Avio BPM Solutions and Frameworks Avio BPM Solutions and Frameworks Avio BPM Frameworks increase the value of OracleBPM (formerly AquaLogic BPM) investments by leveraging our unmatched experience in implementation
More informationIBM Watson Ecosystem. Getting Started Guide
IBM Watson Ecosystem Getting Started Guide Version 1.1 July 2014 1 Table of Contents: I. Prefix Overview II. Getting Started A. Prerequisite Learning III. Watson Experience Manager A. Assign User Roles
More informationSOA Best Practices (from monolithic to service-oriented)
SOA Best Practices (from monolithic to service-oriented) Clemens Utschig - Utschig Consulting Product Manager, Oracle SOA Suite & Integration clemens.utschig@oracle.com The following
More information