F-16 Modular Mission Computer Application Software

Size: px
Start display at page:

Download "F-16 Modular Mission Computer Application Software"

Transcription

1 F-16 Modular Mission Computer Application Software Achieving Cross-Platform Compatibility with Increased Productivity and Quality using the OMG s Model Driven Architecture Lauren E. Clark Chief Engineer F-16 Modular Mission Computer Software Bary D. Hogan Methodology Lead F-16 Modular Mission Computer Software Terry Ruthruff Staff Specialist Software Engineering Core Allan Kennedy President Kennedy Carter Limited 2001 Lockheed Martin Corporation

2 Agenda Basic Software Components Cross-Platform Compatibility: The Goal The executable MDA Approach: executable UML Modeling Platform Specific Mapping (Design Tagging) Automatic Code Generation Advantages of the executable MDA Approach

3 Basic Software Components Application Software Software Application Software: High-level software that that is is unique unique to to the the application(s) for for which which the the embedded computer (i.e. (i.e. subsystem) exists exists 80-90% of of the the total total software (in (in terms terms of of long-term development cost) cost) Application Software Interface Software Execution Platform Hardware Software Execution Platform: Low-level software, the the purpose of of which which is is to to allow allow the the Application Software to to run run on on the the hardware

4 Software Execution Platform Application Software Application Software Interface Software Execution Platform Device Drivers Software Architecture Board Support Package / BIT Hardware Operating System Software Execution Platform: Low-level software, the the purpose of of which which is is to to allow allow the the Application Software to to run run on on the the hardware

5 Board Support Package / Built-In Test Application Software Application Software Interface Software Execution Platform Device Drivers Software Architecture Board Support Package / BIT Hardware Operating System Board Board Support Package: Lowest-level boot boot software // firmware that that allows allows all all other other software (including the the Operating System) to to be be loaded loaded into into memory and and begin begin executing Unique Unique to to the the hardware; and and usually usually delivered with with the the hardware (located in in some some type type of of ROM) ROM) Built-In Test Test (BIT): (BIT): Low-level software that that detects detects and and reports reports hardware errors errors Unique Unique to to the the hardware; and and usually usually delivered with with the the hardware

6 Operating System Application Software Application Software Interface Software Architecture Software Execution Platform Device Drivers Operating System Board Support Package / BIT Operating System: Low-level software that, that, once once booted, booted, manages all all other other software (this (this management involving such such things things as as multitasking, memory sharing, I/O I/O interrupt handling, error error and and status status reporting, etc.) etc.) Unique Unique to to the the hardware (i.e. (i.e. it it must must at at least least be be ported ported to to each each new new hardware platform); and and sometimes delivered with with the the hardware Hardware

7 Device Drivers Application Software Application Software Interface Software Architecture Software Execution Platform Device Drivers Operating System Board Support Package / BIT Device Device Drivers: Low-level software that that manages the the input input from from and and output output to to the the various various external devices in in support of of the the Application Software Unique Unique to to the the hardware; but but usually usually not not delivered with with the the hardware Hardware

8 Software Architecture Application Software Application Software Interface Software Architecture Software Execution Platform Device Drivers Operating System Board Support Package / BIT Software Architecture: Low-level software providing the the framework within within which which the the Application Software executes Provides execution control, control, data data // message management, error error handling, and and various various support services to to the the Application Software Assumes a particular Application Software language Unique to to the the hardware; but, but, since since it it must must support support all all requirements levied levied by by the the Application Software, is is not not delivered with with the the hardware Hardware

9 Application Software Interface Application Software Application Software Interface Software Execution Platform Device Drivers Software Architecture Operating System Board Support Package / BIT Application Software Interface: The The boundary between the the Application Software and and the the Software Execution Platform The The specified methods by by which which the the Application Software can can make make requests and and use use the the services of of the the Software Execution Platform and and the the Software Execution Platform can can provide provide its its services to to the the Application Software This This interface is is specified by by the the Software Execution Platform Hardware

10 Cross-Platform Compatibility: The Usual Approach Maintain a constant Application Software Interface Application Software Portable Application Software Application Software Interface Software Architecture Hold Constant Application Software Interface Software Architecture Device Drivers Operating System Device Drivers Operating System Board Support Package / BIT Hardware Hardware Platform #1 Board Support Package / BIT Hardware Platform #2

11 Cross-Platform Compatibility Issues Application Software Application Software Interface Device Drivers Software Architecture Operating System Board Support Package / BIT Hardware Platform Can a constant Application Software Interface always be maintained? Consider What What if if the the language or or operating system system becomes obsolete? What What if if it it is is necessary to to port port even even a part part of of the the Application Software to to a legacy legacy platform not not having having the the resources to to support support the the newer newer Software Execution Platforms?

12 Cross-Platform Compatibility Issues Application Software Even if it were possible, would one always want to maintain a constant Application Software Interface? Application Software Interface Device Drivers Software Architecture Operating System Board Support Package / BIT Consider What What if if hardware or or Software Execution Platform changes could could provide provide more more Application Software capability, but but only only by by means means of of changing the the Application Software Interface? Hardware Platform

13 Cross-Platform Compatibility: The Goal Application Software Application Software Interface Device Drivers Software Architecture Operating System Board Support Package / BIT Hardware Platform The goal should be to provide cross-platform compatibility of Application Software despite any Implementation, or platform specific, changes: that is, changes to the Hardware Platform, the Software Execution Platform, or the Application Software Interface

14 executable MDA: Application Software Development Requirements Definition executable UML Modeling The executable MDA Approach Platform Specific Mapping (Design Tagging) Application Software Interface Definition Automatic Code Generation Integration & Test

15 executable UML Modeling: Domain Model Domain Model Model (Package Diagram): The The software application space space is is partitioned into into multiple platform independent models models (or (or domains) Mappings between the the domains (bridges) are are defined defined

16 executable UML Modeling: Class Diagrams Class Class Diagrams: Within Within each each platform independent domain domain model, model, conceptual entities entities are are modeled first: first: classes,attributes, and and associations are are abstracted Behavior, though though considered, is is not not modeled explicitly in in this this view view

17 executable UML Modeling: State Charts State State Charts: Behavior is is formalized during during state state modeling Class Class lifecycles are are modeled using using signal-driven state state machines Class Class operations are are defined defined

18 executable UML Modeling: ASL Action Action Specification Language: State State actions actions and and class class operations are are specified using using a precise precise Action Action Specification Language (ASL) (ASL) ASL ASL is is a higher higher order order and and much much simpler simpler language than than a typical typical high high order order language (e.g. (e.g. C++) C++) ASL ASL deals deals with with object object oriented concepts, not not implementation concepts ASL ASL conforms to to the the UML UML Precise Precise Action Action Semantics

19 executable UML Modeling: Simulation Simulation: Since Since a precise precise Action Action Specification Language is is used, used, models models are are executable and and therefore may may be be simulated Simulation features resemble those those of of a high high order order language debugger Models Models may may be be validated long long before before they they are are implemented

20 executable UML Modeling: Summary executable UML Modeling xuml models are a complete representation of the application space (not a top-level or preliminary design) Modeling is performed using a Unified Modeling Language (UML) representation Modeling makes use of a precise Action Specification Language (ASL) and is therefore executable (providing early validation of the models) Each xuml model is a Platform Independent Model (PIM), or completely implementation- independent (i.e. independent of the hardware platform, the software execution platform, and the application software interface)

21 Design Tagging: Specifying the PIM to PSM Mapping Design Tags Tags xuml Models Class Class Allocation Program Allocation Max Max Instance Count Count Event Event Rate Rate Event Event Queue Queue Throw Throw Away Away Initialization Source Source Type Type Subtype of of etc. etc. Defines Automatic Code Generator Software Execution Platform Specific Language Specific Source Code Files Application Software Interface Definition

22 Design Tagging: Specifying the PIM to PSM Mapping Design Tagging: Design Design tag tag values values represent implementation-specific design design decisions Design Design tagging tagging is is applied applied to, to, but but not not embedded in, in, the the xuml xuml models models (tags (tags and and tag tag values values may may be be included or or excluded) Code Code Generator assumes the the most most standard implementation, such such that that only only exceptions must must be be tagged tagged

23 Design Tagging: Summary Platform Specific Mapping (Design Tagging) Whereas xuml modeling is implementation- independent, Design Tagging is implemen- tation-dependent (i.e. specific to a particular Application Software Interface) Implementation-specific design decisions (only those needed to support code generation) are made during Design Tagging, and are represented with design tag values that are applied to the xuml models The most standard implementation is always assumed by the code generator, such that only exceptions must be tagged Design Tagging is overlaid on (not embedded in) the xuml models, such that it may be included or excluded

24 Automatic Code Generation: 3 Levels of Models Level 1 Model of Application Developed by by Program Level 2 Model of xuml Supplied by by Tool Vendor Level 3 Model of Implementation Developed by by Program Application Elements: (e.g. Aircraft, Missile, Target, etc.) xuml Elements: (e.g. Class, Attribute, Association, Tag, etc.) Implementation Elements: (e.g. Procedure, Array, Program, Event Queue, etc.)

25 Automatic Code Generation: Level 2 - Simulation Code Level 1 Model of Application When we say that xuml models are executable we mean that executable code can be automatically generated from them Developed by by Program Level 2 Model of xuml Supplied by by Tool Vendor Code Generation: Generation of Simulation Code for Development Platform (e.g. UNIX C Code) Application Elements: (e.g. Aircraft, Missile, Target, etc.) xuml Elements: (e.g. Class, Attribute, Association, Tag, etc.) Step 1: Populate instances of xuml Metamodel with Model of Application

26 Automatic Code Generation: Level 3 - Target Code Level 1 Model of Application Developed by by Program Level 2 Model of xuml Supplied by by Tool Vendor Level 3 Model of Implementation Developed by by Program Code Generation: Generation of Source Code for Target (Embedded) Platform (e.g. Ada/C++ Code) Application Elements: (e.g. Aircraft, Missile, Target, etc.) xuml Elements: (e.g. Class, Attribute, Association, Tag, etc.) Step 1: Populate instances of xuml Metamodel with Model of Application Implementation Elements: (e.g. Procedure, Array, Program, Event Queue, etc.) Step 2: Populate instances of Model of Implementation with populated xuml Metamodel instances

27 Automatic Code Generation: The Code Generator Level 1 Model of Application Developed by by Program Level 2 Model of xuml Supplied by by Tool Vendor Level 3 Model of Implementation Developed by by Program Generated Source Code for Target Platform Application Elements: (e.g. Aircraft, Missile, Target, etc.) xuml Elements: (e.g. Class, Attribute, Association, Tag etc.) Implementation Elements: (e.g. Procedure, Array, Program, Event Queue, etc.) The Code Generator The Code Generator includes all implementation-dependent details (those dependent upon the Application Software Interface specific to the Hardware, the Software Execution Platform, the Implementation Language)

28 Automatic Code Generation: Code Generator Development Configurable Code Code Generator: Code Code Generator is is developed using using the the same same executable MDA MDA strategy The The Tool Tool Vendor Vendor supplies a set set of of xuml xuml models models (known (known as as the the Configurable Code Code Generator) that that serve serve as as a generic generic translation framework

29 Automatic Code Generation: Code Generator Development Code Code Generator Development: The The Configurable Code Code Generator may may be be adapted to to the the meet meet the the requirements of of any any Platform Specific Implementation (i.e. (i.e. of of any any Application Software Interface) Code Code Generator and and Application Software developmentmay may be be performed concurrently ment

30 Automatic Code Generation: Summary Automatic Code Generation Automatic code generation is simply an extension of the code generation technique used for simulation of the executable UML models on the development platform, this extension being for the target (embedded) platform The code generator is developed within the same environment as the application software using the same executable MDA strategy Development cost: architects Nearly all implementation-specific design tasks (all but the design decisions represented by design tag values) are performed by the code generator, not the software developers

31 Portable Application Software Products executable UML Models The Portable Products (and therefore the Configured Products to be placed in an Enterprise-Level Software Reuse Library) Program Specific Mapping (Design Tag Values) Application Software Interface Automatic Code Generator Source Code

32 Advantages of the executable MDA Approach Increased Quality The majority of software developers are isolated from implementation details, allowing them to focus on a thorough analysis of the application space Maintenance of the application source code is eliminated, while maintenance of the xuml models is ensured Defect injection (and the resulting rework) is reduced by automating the software phase in which most defects are injected On a typical program, after Requirements Definition approximately 2/3 of the defects are injected during implementation (coding)

33 Advantages of the executable MDA Approach Increased Productivity Rework is reduced Early validation through simulation reduces rework Increase in executable UML modeling span time is more than offset by decrease in Integration & Test span time Higher quality implementation (due to automation) reduces rework Software development span time is reduced by automating the implementation phase Application Software development schedule is reduced by at least 20% The code generator, not each software developer, performs the majority of implementation-specific design tasks 40-60% of physical source code

34 Advantages of the executable MDA Approach Cross-Platform Compatibility One Application Software xuml Model database may be reused (as is) on any platform for which a code generator is developed xuml models are compatible with any hardware platform, any Software Execution Platform, and any Application Software Interface xuml models are compatible with any implementation language The Goal of Cross-Platform Compatibility of Application Software is is Attainable with the executable MDA Approach

35 Contact Information Lauren E. Clark Chief Engineer F-16 Modular Mission Computer Software Terry Ruthruff Staff Specialist Software Engineering Core Bary D. Hogan Methodology Lead F-16 Modular Mission Computer Software Allan Kennedy President Kennedy Carter Limited (817) (817) (817) kc.com (+44)

Model Driven System Development and UML

Model Driven System Development and UML Model Driven System Development and UML MDSD meeting at Aarhus University, December 13 th, 2002 by Finn Overgaard Hansen Engineering College of Aarhus foh@e.iha.dk Version: 12-12-2002 Agenda OMG s Model

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

Ian Wilkie,, Kennedy Carter www.kc.com

Ian Wilkie,, Kennedy Carter www.kc.com Applying MDA in an Avionics Systems Environment Ian Wilkie,, Kennedy Carter www.kc.com October 2005 Adopting MDA at BAE Systems Re-engineering engineering of existing component, and automatic Ada Code

More information

Developing in the MDA Object Management Group Page 1

Developing in the MDA Object Management Group Page 1 Developing in OMG s New -Driven Architecture Jon Siegel Director, Technology Transfer Object Management Group In this paper, we re going to describe the application development process supported by OMG

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

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

More information

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction Web Services - A Consultant s View From IT Stategy to IT Architecture Hans-Peter Hoidn, Timothy Jones, Jürg Baumann, Oliver Vogel February 12, 2003 Copyright IBM Corporation 2002 Agenda Introduction I.

More information

MDA Support for Military Medical Crisis Information Systems (MMCIS)

MDA Support for Military Medical Crisis Information Systems (MMCIS) MDA Support for Military Medical Crisis Information Systems (MMCIS) Ståle Walderhaug Marius Mikalsen Norwegian Joint Medical Service & SINTEF {stale.walderhaug marius.mikalsen} @sintef.no 1 The NATO Military

More information

Rapid Modular Software Integration (RMSI)

Rapid Modular Software Integration (RMSI) Rapid Modular Software Integration (RMSI) Adam Grimm adam.grimm@kihomac.com Overview RMSI Overview Future Airborne Compatibility Environment (FACE ) Analog Computer Rehost Integration of Modular Components

More information

Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer

Embedded/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 information

Foundations of Model-Driven Software Engineering

Foundations of Model-Driven Software Engineering Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster (jku@zurich.ibm.com) Contents Introduction to Models and Modeling Concepts of Model-Driven Software

More information

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

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

More information

A Software Development Platform for SOA

A Software Development Platform for SOA A Software Development Platform for SOA Peter Eeles Executive IT Architect Rational Brand Architect for UK, Ireland and South Africa peter.eeles@uk.ibm.com 2004 IBM Corporation Agenda IBM Software Group

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Revel8or: Model Driven Capacity Planning Tool Suite

Revel8or: 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 information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

Clarifying a vision on certification of MDA tools

Clarifying a vision on certification of MDA tools SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 23 29 P. Clarifying a vision on certification of MDA tools Antons Cernickins Riga Technical University,

More information

SEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation

SEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation Technical Brief April 2011 The National Consortium for Justice Information and Statistics Model-driven Development of NIEM Information Exchange Package Documentation By Andrew Owen and Scott Came Since

More information

System Development and Life-Cycle Management (SDLCM) Methodology. Approval CISSCO Program Director

System Development and Life-Cycle Management (SDLCM) Methodology. Approval CISSCO Program Director System Development and Life-Cycle Management (SDLCM) Methodology Subject Type Standard Approval CISSCO Program Director A. PURPOSE This standard specifies content and format requirements for a Physical

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when

More information

DEVS Unified Process for Web-Centric Development and Testing of System of Systems

DEVS Unified Process for Web-Centric Development and Testing of System of Systems CRITICAL ISSUES IN C4I 20-21 May 2008 George Mason University, Fairfax, VA DEVS Unified Process for Web-Centric Development and Testing of of s Saurabh Mittal, PhD Bernard P. Zeigler, PhD Arizona Center

More information

Lesson 9: Challenges in Embedded System Design: Optimizing the Design Metrics and Formalism of System Design

Lesson 9: Challenges in Embedded System Design: Optimizing the Design Metrics and Formalism of System Design Lesson 9: Challenges in Embedded System Design: Optimizing the Design Metrics and Formalism of System Design 1 Amount and type of hardware needed Optimizing the microprocessors, ASIPs and single purpose

More information

Bridge Development and Operations for faster delivery of applications

Bridge Development and Operations for faster delivery of applications Technical white paper Bridge Development and Operations for faster delivery of applications HP Continuous Delivery Automation software Table of contents Application lifecycle in the current business scenario

More information

Real Time Developer Studio. Emmanuel Gaudin emmanuel.gaudin@pragmadev.com

Real Time Developer Studio. Emmanuel Gaudin emmanuel.gaudin@pragmadev.com Real Time Developer Studio Emmanuel Gaudin emmanuel.gaudin@pragmadev.com PragmaDev French SME, Beneficiary since 2006. Dedicated to the development of a modelling tool for the development of Event driven

More information

The Xen of Virtualization

The Xen of Virtualization The Xen of Virtualization Assignment for CLC-MIRI Amin Khan Universitat Politècnica de Catalunya March 4, 2013 Amin Khan (UPC) Xen Hypervisor March 4, 2013 1 / 19 Outline 1 Introduction 2 Architecture

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

Mastering increasing product complexity with Collaborative Systems Engineering and PLM

Mastering increasing product complexity with Collaborative Systems Engineering and PLM Mastering increasing product complexity with Collaborative Systems Engineering and PLM Thierry Ambroisine Dassault Systèmes 10 rue Marcel Dassault, 78140 Vélizy Villacoublay, France thierry.ambroisine@3ds.com

More information

BUSINESS RULES AND GAP ANALYSIS

BUSINESS RULES AND GAP ANALYSIS Leading the Evolution WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Discovery and management of business rules avoids business disruptions WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Business Situation More

More information

Operating System Organization. Purpose of an OS

Operating System Organization. Purpose of an OS Slide 3-1 Operating System Organization Purpose of an OS Slide 3-2 es Coordinate Use of the Abstractions he Abstractions Create the Abstractions 1 OS Requirements Slide 3-3 Provide resource abstractions

More information

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group

More information

Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II)

Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which

More information

FMEA: An executable services oriented enterprise architecture for financial management

FMEA: An executable services oriented enterprise architecture for financial management A division of Data Access Technologies, Inc. FMEA: An executable services oriented enterprise architecture for financial management OMG's Maximizing BPM Investments with SOA Workshop Cory Casanave cory-c

More information

Documentation of DES Models for Manufacturing System Life Cycle Simulation

Documentation of DES Models for Manufacturing System Life Cycle Simulation Documentation of DES Models for Manufacturing System Life Cycle Simulation Jan Oscarsson Matías Urenda Moris Agenda: - Life Cycle Simulation - User requirements - Model documentation - Conclusions A simulation

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

The structured application of advanced logging techniques for SystemVerilog testbench debug and analysis. By Bindesh Patel and Amanda Hsiao.

The structured application of advanced logging techniques for SystemVerilog testbench debug and analysis. By Bindesh Patel and Amanda Hsiao. Logging makes sense for testbench debug The structured application of advanced logging techniques for SystemVerilog testbench debug and analysis. By Bindesh Patel and Amanda Hsiao. SystemVerilog provides

More information

OPERATING SYSTEMS (OPS)

OPERATING SYSTEMS (OPS) Computing Curricula - Computer Engineering Body of Knowledge 1 OPERATING SYSTEMS (OPS) OPS0. History and overview of operating systems [core] OPS1. Operating system function and design [core] OPS2. Operating

More information

Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture

Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture Business Business Services Services and Enterprise and Enterprise This Workshop Two parts Background: Business Value of Enterprise TOGAF s and the Business Services We will use the key steps, methods and

More information

Introduction to Simulink & Stateflow. Coorous Mohtadi

Introduction to Simulink & Stateflow. Coorous Mohtadi Introduction to Simulink & Stateflow Coorous Mohtadi 1 Key Message Simulink and Stateflow provide: A powerful environment for modelling real processes... and are fully integrated with the MATLAB environment.

More information

MDA Case Study: State of Wisconsin Unemployment Insurance Division

MDA Case Study: State of Wisconsin Unemployment Insurance Division MDA Case Study: State of Wisconsin Unemployment Insurance Division MDA Implementers Workshop 2003 ATC Enterprises, Inc. 7402 Borman Avenue St. Paul, MN 55076 651.554.1771 www.atcenterprises.com Objectives

More information

Designing a Home Alarm using the UML. And implementing it using C++ and VxWorks

Designing a Home Alarm using the UML. And implementing it using C++ and VxWorks Designing a Home Alarm using the UML And implementing it using C++ and VxWorks M.W.Richardson I-Logix UK Ltd. markr@ilogix.com This article describes how a simple home alarm can be designed using the UML

More information

A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies. Bridging BIOS to UEFI

A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies. Bridging BIOS to UEFI A White Paper By: Dr. Gaurav Banga SVP, Engineering & CTO, Phoenix Technologies Bridging BIOS to UEFI Copyright Copyright 2007 by Phoenix Technologies Ltd. All rights reserved. No part of this publication

More information

Legal Considerations for Web Services, Federated Systems and E-Commerce. Copyright 2002 Mathet Consulting, Inc.

Legal Considerations for Web Services, Federated Systems and E-Commerce. Copyright 2002 Mathet Consulting, Inc. Legal Considerations for Web Services, Federated Systems and E-Commerce Copyright 2002 Mathet Consulting, Inc. Current State of Affairs Business partners are increasingly seeking relief from failed expections

More information

THROUGHPUTER. PaaS for creating and executing concurrent cloud applications

THROUGHPUTER. PaaS for creating and executing concurrent cloud applications THROUGHPUTER PaaS for creating and executing concurrent cloud applications OVERVIEW 1) Fundamental transformation in computing: Concurrent apps on dynamically shared resources Micro-services: unpredictable

More information

New Methodologies in Smart Card Security Design. Y.GRESSUS Methodology and Secure ASIC development manager, Bull CP8

New Methodologies in Smart Card Security Design. Y.GRESSUS Methodology and Secure ASIC development manager, Bull CP8 New Methodologies in Smart Card Security Design Y.GRESSUS Methodology and Secure ASIC development manager, Bull CP8 Japan Security Conference Page 2 Trends Opportunities New methodologies Summary Concurrent

More information

Example of Standard API

Example of Standard API 16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface

More information

Introduction to Embedded Systems. Software Update Problem

Introduction to Embedded Systems. Software Update Problem Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis logistics minor Today s topics: more software development issues 1 CS 5780 Software Update Problem Lab machines work let us know if they don t

More information

Certification Authorities Software Team (CAST) Position Paper CAST-13

Certification Authorities Software Team (CAST) Position Paper CAST-13 Certification Authorities Software Team (CAST) Position Paper CAST-13 Automatic Code Generation Tools Development Assurance Completed June 2002 NOTE: This position paper has been coordinated among the

More information

Fachbereich Informatik und Elektrotechnik SunSPOT. Ubiquitous Computing. Ubiquitous Computing, Helmut Dispert

Fachbereich Informatik und Elektrotechnik SunSPOT. Ubiquitous Computing. Ubiquitous Computing, Helmut Dispert Ubiquitous Computing Ubiquitous Computing The Sensor Network System Sun SPOT: The Sun Small Programmable Object Technology Technology-Based Wireless Sensor Networks a Java Platform for Developing Applications

More information

The MCSE Methodology. overview. the mcse design process. if a picture is worth a thousand words, an executable model is worth a thousand pictures

The MCSE Methodology. overview. the mcse design process. if a picture is worth a thousand words, an executable model is worth a thousand pictures The MCSE Methodology overview if a picture is worth a thousand words, an executable model is worth a thousand pictures The MCSE methodology the mcse methodology (méthodologie de conception des Systèmes

More information

Nikolay Grozev. Supervisor: Juraj Feljan, Mälardalen University Consultant: Sylvia Ilieva, University of Sofia

Nikolay Grozev. Supervisor: Juraj Feljan, Mälardalen University Consultant: Sylvia Ilieva, University of Sofia University of Sofia, Faculty of Mathematics and Informatics Mälardalen University, School of Innovation, Design and Engineering Nikolay Grozev Supervisor: Juraj Feljan, Mälardalen University Consultant:

More information

System Design in the Software Era. ni.com

System Design in the Software Era. ni.com System Design in the Software Era ni.com 2 3 The Cost of a Software Defect Development Phase Cost Ratio Requirements 1 Design 3-6x Implementation 10x Development Testing 15-40x Acceptance Testing 30-70x

More information

IV. Software Lifecycles

IV. Software Lifecycles IV. Software Lifecycles Software processes and lifecycles Relative costs of lifecycle phases Examples of lifecycles and processes Process maturity scale Information system development lifecycle Lifecycle

More information

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS

SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS 7th International DAAAM Baltic Conference INDUSTRIAL ENGINEERING 22-24 April 2010, Tallinn, Estonia SERVICE ORIENTED AND MODEL-DRIVEN DEVELOPMENT METHODS OF INFORMATION SYSTEMS Lemmik, R.; Karjust, K.;

More information

Architectural Design

Architectural Design Software Engineering Architectural Design 1 Software architecture The design process for identifying the sub-systems making up a system and the framework for sub-system control and communication is architectural

More information

To introduce software process models To describe three generic process models and when they may be used

To introduce software process models To describe three generic process models and when they may be used Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture Introduction to CORBA 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture 1. Introduction CORBA is defined by the OMG The OMG: -Founded in 1989 by eight companies as a non-profit

More information

Technical Report CMU/SEI-88-TR-024 ESD-TR-88-025

Technical Report CMU/SEI-88-TR-024 ESD-TR-88-025 Technical Report CMU/SEI-88-TR-024 ESD-TR-88-025 System Specification Document: Shipboard Inertial Navigation System Simulator and External Computer B. Craig Meyers Nelson H. Weiderman October 1988 Technical

More information

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications Harris Z. Zebrowitz Lockheed Martin Advanced Technology Laboratories 1 Federal Street Camden, NJ 08102

More information

Date: December 2009 Version: 1.0. How Does Xen Work?

Date: December 2009 Version: 1.0. How Does Xen Work? Date: December 2009 Version: 1.0 How Does Xen Work? Table of Contents Executive Summary... 3 Xen Environment Components... 3 Xen Hypervisor... 3... 4 Domain U... 4 Domain Management and Control... 6 Xend...

More information

2. An Operating System, What For?

2. An Operating System, What For? 2. An Operating System, What For? 2. An Operating System, What For? Operating System Tasks Survey of Operating System Principles 14 / 352 2. An Operating System, What For? Batch Processing Punched Cards

More information

Course 4 27 October 2014. Adrian Iftene adiftene@info.uaic.ro

Course 4 27 October 2014. Adrian Iftene adiftene@info.uaic.ro Course 4 27 October 2014 Adrian Iftene adiftene@info.uaic.ro They will not be considered in the maximum values of the laboratory The presentation of the context and of these solutions in the course can

More information

PLM Center of Excellence PLM for Embedded Product Development - Challenges, Experiences and Solution. M a y 2 0 0 9

PLM Center of Excellence PLM for Embedded Product Development - Challenges, Experiences and Solution. M a y 2 0 0 9 PLM Center of Excellence PLM for Embedded Product Development - Challenges, Experiences and Solution M a y 2 0 0 9 Table of Contents Abstract 3 Introduction 4 Embedded product development life cycle 4

More information

The OMG BPM Standards

The OMG BPM Standards The OMG BPM Standards Derek Miers CEO, BPM Focus +44 (20) 8742 8500 UK Office +44 (7703) 178 500 UK Cell +1 (714) 600 9010 US Cell miers@bpmfocus.org A BPM Definition Business Process Management is primarily

More information

Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011

Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011 Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011 Executive Summary Large enterprise Hyper-V deployments with a large number

More information

T h e R e s e a r c h B u l l e t i n o f J o r d a n A C M, I S S N : , V o l u m e I I ( I I I ) P a g e 74

T h e R e s e a r c h B u l l e t i n o f J o r d a n A C M, I S S N : , V o l u m e I I ( I I I ) P a g e 74 T h e R e s e a r c h B u l l e t i n o f J o r d a n A C M, I S S N : 2 0 7 8-7 9 5 2, V o l u m e I I ( I I I ) P a g e 74 Suggested Framework for Agile MDA and Agile Methodologies Dr. Asim El-Sheikh

More information

Isaku Yamahata isaku.yamahata@intel.com CloudOpen Japan May 22, 2014

Isaku Yamahata isaku.yamahata@intel.com CloudOpen Japan May 22, 2014 OpenStack approach to SDN by way of NFV Advanced Network Service Framework Isaku Yamahata isaku.yamahata@intel.com CloudOpen Japan May 22, 2014 Legal Disclaimers Copyright 2014 Intel Corporation. All rights

More information

Software Specification and Testing

Software Specification and Testing Software Specification and Testing Using UML and OCL Jonathan Milley Faculty of Engineering and Applied Science MUN St. John s, Newfoundland Email: jmilley@engr.mun.ca Dr. Dennis K. Peters Faculty of Engineering

More information

Amit Sheth & Ajith Ranabahu, 2010. Presented by Mohammad Hossein Danesh

Amit 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 information

From Business World to Software World: Deriving Class Diagrams from Business Process Models

From Business World to Software World: Deriving Class Diagrams from Business Process Models From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254

More information

Chapter 2 Operating System Overview

Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 2 Operating System Overview Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Operating System Objectives/Functions

More information

Software Development in the Large!

Software Development in the Large! Software Development in the Large! Peter Eeles Executive IT Architect, IBM peter.eeles@uk.ibm.com IBM Rational Software Development Conference 2007 2007 IBM Corporation Agenda IBM Rational Software Development

More information

Aligning IT investment and Business

Aligning IT investment and Business IBM Software Group Aligning IT investment and Business The role of requirements management, portfolio management and enterprise architecture Productivity, Governance, Innovation Dr Tariq Aslam 2009 IBM

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

7 Operating Systems. Source: Foundations of Computer Science Cengage Learning. After studying this chapter, the student should be able to:

7 Operating Systems. Source: Foundations of Computer Science Cengage Learning. After studying this chapter, the student should be able to: 7 Operating Systems 7.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: 7.2 Understand the role of the operating system.

More information

The Microsoft Windows Hypervisor High Level Architecture

The Microsoft Windows Hypervisor High Level Architecture The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its

More information

UEFI on Dell BizClient Platforms

UEFI on Dell BizClient Platforms UEFI on Dell BizClient Platforms Authors: Anand Joshi Kurt Gillespie This document is for informational purposes only and may contain typographical errors and technical inaccuracies. The content is provided

More information

TDDC88 Lab 2 Unified Modeling Language (UML)

TDDC88 Lab 2 Unified Modeling Language (UML) TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used

More information

Introducing the Dezyne Modelling Language

Introducing the Dezyne Modelling Language Introducing the Dezyne Modelling Language Bits & Chips Smart Systems, 20 November 2014 Paul Hoogendijk. paul.hoogendijk@verum.com Software Controlled Systems Software Controlled Systems Event driven Concurrent,

More information

U.S. Navy Automated Software Testing

U.S. Navy Automated Software Testing U.S. Navy Automated Software Testing Application of Standards to the Automated Test and Re-Test (ATRT) Effort Object Management Group (OMG) Technical Meeting June 2007 Approved for public release; distribution

More information

This paper was presented at the 1995 CAUSE annual conference. It is part of the proceedings of that conference, "Realizing the Potential of

This paper was presented at the 1995 CAUSE annual conference. It is part of the proceedings of that conference, Realizing the Potential of This paper was presented at the 1995 CAUSE annual conference. It is part of the proceedings of that conference, "Realizing the Potential of Information Resources: Information, Technology, and Services--

More information

Muslah Systems Agile Development Process

Muslah Systems Agile Development Process Muslah Systems, Inc. Agile Development Process 1 Muslah Systems Agile Development Process Iterative Development Cycles Doug Lahti December 7, 2009 October 5, 2010 In consideration of controllable systems

More information

Business-Driven Software Engineering Lecture 3 Foundations of Processes

Business-Driven Software Engineering Lecture 3 Foundations of Processes Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary

More information

Business Process Modeling and Standardization

Business Process Modeling and Standardization Business Modeling and Standardization Antoine Lonjon Chief Architect MEGA Content Introduction Business : One Word, Multiple Arenas of Application Criteria for a Business Modeling Standard State of the

More information

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor Applying Use Cases to Microcontroller Code Development Chris Gilbert Cypress Semiconductor Agenda Why Use Cases Microcontroller Project Development Use Cases Defined Use Cases Composition General Example

More information

Computer System Structure

Computer System Structure Computer System Structure Reading: Silberschatz chapter 3 Additional Reading: Stallings chapter 2 EEL 602 1 Outline OS Services User Interfaces System Call OS Design OS Implementation System Structure

More information

JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications

JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications SOFTWARE ENGINEERING TRACK JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS Module 1 - Office Applications This subject enables users to acquire the necessary knowledge and skills to use Office

More information

Managing a Fibre Channel Storage Area Network

Managing a Fibre Channel Storage Area Network Managing a Fibre Channel Storage Area Network Storage Network Management Working Group for Fibre Channel (SNMWG-FC) November 20, 1998 Editor: Steven Wilson Abstract This white paper describes the typical

More information

Using the TASKING Software Platform for AURIX

Using the TASKING Software Platform for AURIX Using the TASKING Software Platform for AURIX MA160-869 (v1.0rb3) June 19, 2015 Copyright 2015 Altium BV. All rights reserved. You are permitted to print this document provided that (1) the use of such

More information

Visual Programming of Logic, Motion, and Robotics

Visual Programming of Logic, Motion, and Robotics ADVANCED Motion Controls October 2014 Visual Programming of Logic, Motion, and Robotics Sándor Barta Overview The art of programming consists of mentally translating a workflow into a sequential programming

More information

CLASS SPECIFICATION Systems Support Analyst II

CLASS SPECIFICATION Systems Support Analyst II San Diego Unified Port District Class Code: B211-UE03 CLASS SPECIFICATION Systems Support Analyst II FLSA Status: EEOC Job Category: Classified: Union Representation: Exempt Professionals No Unrepresented

More information

Software Processes. Topics covered

Software Processes. Topics covered Software Processes cmsc435-1 Topics covered Systems vs. software engineering Software process models Process iteration Process activities Computer-aided software engineering cmsc435-2 What is a system?

More information

Virtualization for Cloud Computing

Virtualization for Cloud Computing Virtualization for Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF CLOUD COMPUTING On demand provision of computational resources

More information

CDC UNIFIED PROCESS JOB AID

CDC UNIFIED PROCESS JOB AID CDC UNIFIED PROCESS JOB AID Independent Verification & Validation Activities Document Purpose This Job Aid is a brief document listing the items to be noted, checked, remembered, and delivered when completing

More information

Acknowledgement. Software Engineering. CS 3141: Team Software Project Introduction

Acknowledgement. Software Engineering. CS 3141: Team Software Project Introduction CS 3141: Team Software Project Introduction Ali Ebnenasir Department of Computer Science Michigan Technological University Acknowledgement Betty H.C. Cheng Software Engineering Systematic approach for

More information

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT Mar 31, 2014 Japan Aerospace Exploration Agency This is an English translation of JERG-2-610. Whenever there is anything ambiguous in this document, the original

More information

From UML to HDL: a Model Driven Architectural Approach to Hardware-Software Co-Design

From UML to HDL: a Model Driven Architectural Approach to Hardware-Software Co-Design From UML to HDL: a Model Driven Architectural Approach to Hardware-Software Co-Design Frank P. Coyle and Mitchell A. Thornton Computer Science and Engineering Dept Southern Methodist University Dallas

More information

Establishing Great Software Development Process(es) for Your Organization. By Dale Mayes DMayes@HomePortEngineering.com

Establishing Great Software Development Process(es) for Your Organization. By Dale Mayes DMayes@HomePortEngineering.com Establishing Great Software Development Process(es) for Your Organization By Dale Mayes DMayes@HomePortEngineering.com Class: ETP-410 Embedded Systems Conference San Francisco 2005 Abstract: There are

More information

Design a medical application for Android platform using model-driven development approach

Design a medical application for Android platform using model-driven development approach Design a medical application for Android platform using model-driven development approach J. Yepes, L. Cobaleda 2, J. Villa D, J. Aedo ARTICA, Microelectronic and Control Research Group 2 ARTICA, Software

More information

Information Management Metamodel

Information Management Metamodel ISO/IEC JTC1/SC32/WG2 N1527 Information Management Metamodel Pete Rivett, CTO Adaptive OMG Architecture Board pete.rivett@adaptive.com 2011-05-11 1 The Information Management Conundrum We all have Data

More information