COMPONENT-BASED DESIGN OF SOFTWARE FOR DISTRIBUTED EMBEDDED SYSTEMS

Size: px
Start display at page:

Download "COMPONENT-BASED DESIGN OF SOFTWARE FOR DISTRIBUTED EMBEDDED SYSTEMS"

Transcription

1 COMPONENT-BASED DESIGN OF SOFTWARE FOR DISTRIBUTED EMBEDDED SYSTEMS CHRISTO ANGELOV, KRZYSZTOF SIERSZECKI Mads Clausen Institute for Product Innovation, University of Southern Denmark, Grundtvigs Alle 150, 6400 Soenderborg, Denmark, {angelov, Abstract. The widespread use of embedded systems mandates the development of industrial software design methods, i.e. computer-aided design and engineering of embedded applications using formal models (frameworks) and standardized prefabricated components, much in the same way as in other mature areas of engineering such as mechanical engineering and electronics. These guidelines have been used to develop Component-based Design of Software for Embedded Systems (COMDES). The paper gives an overview of the COMDES framework, followed by a presentation of a generic component types, such as function blocks, activities and function units. The execution of function units is discussed in the context of a newly developed execution model, i.e. timed-multitasking, which has been extended to distributed embedded systems. Key Words. Distributed embedded systems, component-based design, reusable executable components, function blocks, reconfigurable state machines, timed multitasking 1. INTRODUCTION The widespread use of embedded systems poses a serious challenge to software developers in view of diverse, severe and conflicting requirements, e.g. reduced development and operating costs, reduced time to market, as well as specific issues that are particularly important for embedded systems: dependable operation through reliable and error-free software; predictable and guaranteed behaviour under hard real-time constraints; scalable and open architecture supporting software reuse and reconfiguration. The above requirements cannot be met by currently used technology, which is largely based on ad-hoc software design and manual coding techniques. In fact, the state of the art in that area can be characterized as manufacturing production of software, much in the same way as design and production for mechanical and electronic systems in their early stages of development. Recently, there have been some attempts to overcome the above problem through model-based design and computeraided generation of embedded software. However, this approach has a serious drawback: it does not provide adequate support for dynamic (in-site and on-line) reconfiguration since it requires the generation and compilation of new code, which has to be subsequently downloaded into the target system. Therefore, a new approach towards software development is needed, i.e. industrial production of software for embedded applications (following a similar transition from manufacturing to industrial production methods in other areas, e.g. mechanical engineering and electronics). This could be eventually accomplished through computer-aided configuration of embedded systems software using formal frameworks and standard executable components. The latter may be implemented as relocatable silicon libraries stored in non-volatile memory (ROM). The main problem that has to be addressed in this context is to develop a comprehensive, yet intuitive and open framework for embedded systems. This is a hot topic of research [5], [6], [10] [14] but the problem is far from being solved, which can be explained by the lack of previous research and the great variety of applications and design issues [4]. However, it can be argued that the only way to achieve such a goal is to use concepts and principles that are derived from the application domain of embedded systems, rather than imported from other application domains.

2 Embedded systems are predominantly control systems. Recent studies have shown that 98% of all microprocessors are used in embedded applications and most of them have a control or monitoring function [10]. This suggests the use of a systematic (techno-centric) approach for embedded software development, taking into account the true nature of embedded systems, which are real-time reactive systems that are closely coupled with the machines and processes controlled. Such an approach must be based on control engineering concepts rather than those of computer science and human experience, as exemplified by so called structured design methods. In particular, it is necessary to develop formal methods for embedded software analysis and design that would adequately specify systems structure and behaviour for a broad range of applications. The above observations have been instrumental in developing the COMDES framework (COMponentbased Design of Software for Distributed Embedded Systems), whose specification was originally presented in [2]. The paper represents the next cycle of development and refinement of the framework in which a number of issues have been addressed: a new definition of component types, development of design patterns for reusable and reconfigurable components and finally - elimination of I/O jitter by applying the principle of timed multitasking to COMDES subsystems. The paper is structured as follows: section 2 outlines major design issues and presents the COMDES framework and the associated software design method. Section 3 continues with a detailed discussion of generic software components defined in that framework: function blocks, activities and function units, and it also presents the execution of function units in a timed-multitasking environment. A summary of COMDES features is given in the concluding section of the paper. 2. OVERVIEW OF COMDES A system designed according to the COMDES framework consists of three main components: function units, function unit activities and function blocks. The distributed embedded system is conceived as a composition of software components (function units) that act as software agents for autonomous subsystems. Function units may be viewed as largescale software integrated circuits that can be softwired with one another in order to configure specific applications. Overall system configuration can be described by a function unit diagram, i.e. a signal flow graph specifying function units and their interactions (Fig. 1). pulses SensorSpeed Sensor keys ControllerVoltage Operator Station StationSetpoint SensorSpeed StationSetpoint Controller Fig. 1. Function unit diagram StationParameters StationParameters ControllerVoltage Actuator voltage Function units interact by exchanging signals, i.e. labelled messages (pressure, temperature, etc.) within various types of distributed transactions, such as producer-consumer and client-server interactions. Producer-consumer interaction is preferred for horizontal time-critical communication, which is one-to-many in the general case. It may have statemessage or event-message semantics. Client-server communication may be used for bi-directional vertical communication, which is not time-critical (e.g. communication between the operator station and lower-level devices). It may be eventually emulated via unidirectional event-message communication. Signals are exchanged by means of a communication mechanism featuring implicit content-oriented message addressing. This facilitates system reconfiguration and provides for transparent communication between function units, resulting in flexible and truly open distributed systems. Input signals Fig. 2. Function unit structure Output signals Function units encapsulate input/output signal drivers, and one or more threads of control - activities (Fig. 2). These generate applicationspecific reactions to timing and/or external events by invoking lower-level components - function blocks, which implement specific signal processing and control functions (e.g. Fig. 3). Activities interact with the outside world via signals provided by input and output signal drivers (by analogy with hardware integrated circuits). Activation event Pre-proc. FB PID Fig. 3. Function unit activity Post proc. FB

3 Complex activity behaviour can be formally specified in terms of hybrid state machines implemented by state machine function blocks (Fig. 4). Reactive behaviour is modelled with a Moore machine, where each state is associated with a specific reaction. Each reaction is accomplished with one or more output signals that are generated in response to the corresponding event. A signal is computed via a sequence of transformations that can be modelled with a function block diagram, i.e. an acyclic signal flow graph whose nodes implement basic application functions such as PID. The above model combines the reactive and transformational aspects of system behaviour in a natural manner, and at the same time they are treated in separation being delegated to different levels of hierarchy. This is a powerful model, which can be used to specify a broad variety of applications, such as discrete, continuous and hybrid control systems, signal processing systems, etc. and operation of other function units, provided that the original signal flow graph remains unchanged. This is a prerequisite for the implementation of flexible and reconfigurable systems, as well as faulttolerant systems. However, alternative configurations have to be provably correct in terms of timing and/or functional behaviour, which can be assessed using appropriate techniques and tools. The goal of COMDES is to eliminate (or at least minimize) manual coding and its adverse effects, using prefabricated components and computer-aided software development and analysis tools. This is accomplished using a radically different approach that can be summarized in one sentence: What you specify is what you verify, execute and test. The ultimate result is software that is error-free by design. Manual Pre-proc. FB Stopped & Manual Manual Control Stop Motor Manual Automatic NotStopped State Machine Stopped & Automatic Automatic Control Automatic Post proc. FB PID Fig. 4. behaviour modelled by means of a hybrid state machine In a distributed environment function unit activities implement the process execution phases of distributed transactions, which might be time-driven or event-driven. COMDES has been conceived as a timed asynchronous architecture, which uses dynamic scheduling techniques, assuming that transactions may be activated by timing and/or external events. Therefore, it can be potentially used to engineer time-driven as well as event-driven applications. However, time-driven operation is preferred for dependable hard real-time systems because it provides a framework for predictable task and communication scheduling within time-bounded transactions. This feature is highlighted by a new execution model, i.e. timed multitasking [8], which has been extended to distributed embedded systems and the COMDES framework. An outstanding feature of the model presented above is the non-conventional definition of component objects and their interactions. Function units might be viewed as large-scale software integrated circuits of standard internal structure. These can be used to configure specific applications wherein function units interact by exchanging signals via content-oriented message addressing, rather than remote invocation of object methods. Consequently, changes in function unit allocation and internal structure do not affect the internal structure Acceptance Testing Maintenance Problem Result Specifying Informal specification Timing analysis Formalizing Verification Formal specification Validation Integration Application Fig. 5. COMDES software development Configuration COMDES emphasizes application configuration, whereas application programming, compilation, linking or source code generation are eliminated from the design cycle (Fig. 5). 3. COMDES SOFTWARE COMPONENTS The COMDES framework has been used to systematically define and subsequently, develop design patterns for a number of reusable and reconfigurable components: function blocks, function unit activities and function units. The underlying design principle is to emulate integrated circuits (IC s) and IC assemblies via encapsulation, aggregation and association, as shown in the following discussion Function blocks Function Block (FB) is the main COMDES component. The FB can be seen as a class specifying a number of re-entrant and relocatable operations, as well as a general definition of the so called function block execution record (Fig. 6). The latter is a data structure containing all necessary information such as parametric and signal inputs, signal outputs, internal variables, which is instantiated for each object of a given FB class.

4 The standard function block operations are: start(), run(), and stop(). The first and the last routines assure correct initial and exit conditions, whereas run() operation executes the main FB algorithm. In addition to these operations, FBs may have an arbitrary number of other operations, as required for a specific class. Execution record Relocatable operations Fig. 6. Function block class Function Block -input pointers -internal variables +output buffers +start() +run() +stop() Function blocks are interconnected via softwiring using pointers to the corresponding data locations. Softwiring is conceived as an output-to-input(s) connection: output data is stored in the output buffer of the source FB instance record, and it is subsequently accessed by one or more destination function blocks through the corresponding input pointers. This allows for efficient one-to-many connections by eliminating the need to copy source data to multiple destination inputs. Two categories of function blocks are distinguished: stateless and state machine as depicted on the following diagram (Fig. 7). Stateless Function Block State Machine Basic Composite Driver Synchronous Asynchronous Fig. 7. Function block hierarchy Basic function blocks are essentially stateless building blocks. These implement specific process control functions, such as various types of process variable pre-processing, conventional and advanced control algorithms, e.g. PID. A composite function block (CFB) aggregates FB instances implementing complex signal transformations, such as closed loop control, various signal processing functions, etc., which may be configured for each particular application. However, it is also possible to encapsulate FB diagram patterns into reusable components (Fig. 8). Control Block A CFB is externally indistinguishable from basic FBs. It executes the encapsulated diagram by means of a standard routine the so called function block driver, which invokes encapsulated FB instances according to a static execution schedule, i.e. linear sequence of FB instances. The schedule is derived from the function block diagram by observing the flow of signals between constituent function blocks. The driver is a special class of function block, which is usually hardware dependent. It provides an interface to the system environment or the communication network. In the latter case the driver is called signal driver. Depending on signal direction, a driver can be classified as input or output signal driver (Fig. 9). Input signal Fig. 9. Signal drivers Internal variables Output signal It must be noted that signal drivers provide for transparent communication between function units, which is independent of their allocation on network nodes. This is accomplished through a communication protocol featuring signal-based communication and content-oriented message addressing, which is currently supported by the HARTEX kernel (see below). The state machine function block class is a reconfigurable and reusable component that can be used to implement complex behaviours typical for applications such as sequential control systems, as well as modal continuous control. It may invoke instances of other function blocks, while visiting a state. Function blocks may also be invoked in order to compute condition variables needed for the evaluation of guards. These features can be used to implement hybrid state machines. However, it is also possible for a state machine to invoke another instance of the state machine, or perhaps several instances, while visiting a state. This feature can be used to implement complex behaviours modelled by hierarchical and concurrent state machines. The main idea behind the implementation is to provide a universal and reusable component that can be reconfigured by changing the supporting data structure, i.e. a state transition table consisting of binary decision diagrams (BDDs) that represent the next-state mappings of various states. The state transition table is interpreted by the so called state machine driver, which invokes function blocks needed to compute condition variables and control signals. Pre-proc. FB PID Fig. 8. Composite function block Post proc. FB Two versions of that function block have been developed: synchronous (time-driven) and asynchronous (event-driven) state machine. However, theoretical considerations and practical

5 experience have shown that the synchronous state machine will be the likely choice for time-critical and safety-critical applications Activities A function block diagram can be used to model an activity (Fig. 3), i.e. a process that is executed in response to a timing event (in time-driven systems) or to external events (in event-driven systems). Activities may be viewed as composite function blocks encapsulating the corresponding sequences of function block instances. Complex activity behaviour can be modelled by means of a state machine function block as shown on Fig. 4. A function unit activity is actually executed as a realtime task (activity task) operating in a dynamic scheduling environment. It can be implemented using a standard design pattern involving the invocation of the function block driver, which is used to activate the corresponding sequence of function block instances Function units One or more activities are encapsulated into function units. These are the software equivalent of largescale integrated circuits that can be used to implement autonomous subsystems, such as sensor, controller, actuator, operator station, etc. (Fig. 1). Activities may interact via internal softwiring, i.e. by exchanging signals via pointers that are used to access data locations from within different activities/function blocks. This may require mutual exclusion, whereby locking primitives are invoked transparently by interacting activities under the socalled System Ceiling Priority Protocol [7]. Activities interact with the outside world via signals provided by input and output signal drivers that may be invoked from within an activity task or by the real-time kernel (see next section). Function units are associated (softwired) with one another, so as to configure specific applications that are externally similar to LSI assemblies. However, the interaction between function units is implemented with a dedicated softwiring protocol featuring signalbased communication and transparent contentoriented message addressing. The protocol provides for basically two types of communication: - Asynchronous producer-consumer interaction, e.g. time-bounded broadcast/multicast of state variable messages. It is used to exchange signals between dynamic subsystems, which is sometimes denoted as horizontal communication. - Synchronous interactions, such as event-variable communication and client-server interaction. These are largely used to effect vertical communication, e.g. the communication between an operator station and various field devices, which may not be timecritical. The above protocol can be viewed as a software bus supporting transparent and highly flexible communication between function units in an open systems environment. More information about that protocol can be found in the papers [1], [7] presenting HARTEX - a distributed real-time kernel, which has been conceived as an operational environment for component-based systems conforming to the COMDES model of computation Function units in a timed-multitasking environment Function unit signal drivers may be invoked from within activities, e.g. at the beginning and at the end of activity execution, in the context of phase-aligned distributed transactions [2]. Whereas that is a conceptually simple interaction model suitable for a broad class of applications, it has a major shortcoming, i.e. task execution/communication jitter, and consequently output jitter, which is detrimental for time-critical applications. Jitter might be eventually eliminated in a static scheduling environment but this solution results in closed systems that are difficult to reconfigure and maintain. Another extremely promising approach has been recently developed, i.e. timed multitasking, which combines the advantages of static and dynamic scheduling and makes it possible to eliminate task and transaction execution jitter in a dynamic scheduling environment [8]. This technique has been applied to COMDES function units and encapsulated activities (Fig. 10). trigger data Fig. 10. Timed execution of activity data Deadline In a timed multitasking environment the signal drivers will be invoked by the real-time kernel at precisely specified time instants: the input driver (1 on Fig. 11) will be executed atomically when the task (2) is released and the output driver (3) when the task deadline arrives (or when the task comes to an end if no deadline has been specified). Deadline task is released Period Fig. 11. execution in the timed-multitasking model.

6 In this way, the function unit provides a standard execution framework for encapsulated activities, as against the purely conceptual definition of this type of component in the original COMDES specification [2]. The activity task is executed in a dynamic scheduling environment and its execution may exhibit completion time jitter. However, this bears no consequence as long as the task comes to an end before its deadline. That technique can be used with task sequences (transactions) and distributed transactions. The above approach has been extended to distributed embedded systems and the COMDES framework and is now supported by the latest version of the HARTEX kernel [3]. 4. CONCLUSION The paper has presented COMDES - a software framework for component-based embedded systems. The main features of the framework and the associated design method can be summarized as follows: System structure is specified with an object model that facilitates the implementation of open yet dependable systems: the system is built from reusable software components that are error-free by design. Furthermore, components interact via softwiring protocols providing for safe and predictable behaviour in an open systems environment. System behaviour is specified in terms of concurrent processes (activities) encapsulated in various subsystems, as well process interactions within and across subsystems. Individual process behaviour can be specified in terms of hybrid state machines. This is a powerful model, which takes into account both the reactive and the transformational aspects of system behaviour. Hence, it is applicable to a broad variety of embedded systems, such as continuous and sequential controllers, hybrid control systems, etc. The presented framework has been used to systematically develop design patterns for reusable components such as basic and composite function blocks, drivers, reconfigurable state machines, activities and function units. The adopted system model has been further elaborated using the concept of timed multitasking. This will make it possible to engineer componentbased systems that combine high flexibility inherent to dynamically scheduled systems and predictable jitter-free operation that is usually typical for their statically scheduled counterparts. 6. REFERENCES 1. Christo Angelov, Ivan Ivanov and Alan Burns: HARTEX - a safe real-time kernel for distributed computer control systems; Software: Practice and Experience, vol. 32, N 3, pp , March Christo Angelov and Krzysztof Sierszecki: Component-based design of software for distributed embedded systems; Proc. of the 16 th International Conference on Software and Systems Engineering ICSSEA 2003, Vol. 3, Session C. Angelov, J. Berthing, K. Sierszecki and N. Marian: Function unit specification in a timed multitasking environment, submitted for presentation to ICSSEA Edward Lee: Embedded software an agenda for research; UCB ERL Memorandum M99/63, University of California at Berkeley, December Edward Lee: What s ahead for embedded software; IEEE Computer, 2000, N 9, pp , September European Research Consortium for Informatics and Mathematics: ERCIM News, N 52, Special Issue on Embedded Systems, January Jesper Berthing and Christo Angelov: Highperformance task management and interaction for safe real-time kernels; CSI Seminar on Safety- Critical Software, Soenderborg, June 12, Jie Liu and Edward A. Lee: Timed multitasking for real-time embedded software; IEEE Control Systems Magazine "Advances in Software Enabled Control", February 2003, pp Miro Samek: Practical Statecharts in C/C++ Quantum Programming for Embedded Systems; CMP Books, Software technologies, embedded systems and distributed systems in FP6; Opening presentation to the Workshop on Software Technologies, Embedded Systems and Distributed Systems in the 6 th Framework Programme for EU Research, Brussels, Belgium, May 2, AIRES: Automatic integration of reusable embedded software; MoBIES: Model-based integration of embedded software; PECOS: Pervasive component systems, EU Project IST ; StateWORKS: Software as engineering;

A Timed Multitasking Architecture for Distributed Embedded Systems

A Timed Multitasking Architecture for Distributed Embedded Systems A Timed Multitasking Architecture for Distributed Embedded Systems Christo Angelov Mads Clausen Institute for Product Innovation University of Southern Denmark Grundtvigs Alle 150, 6400 Soenderborg, Denmark

More information

Generative Programming for a Component-based Framework of Distributed Embedded Systems

Generative Programming for a Component-based Framework of Distributed Embedded Systems Generative Programming for a Component-based Framework of Distributed Embedded Systems Xu Ke, Krzysztof Sierszecki Mads Clausen Institute for Product Innovation, University of Southern Denmark Grundtvigs

More information

Hardware-in-the-Loop Simulation of Component-Based Embedded Systems Guo, Yu; Zhou, Feng; Marian, Nicolae; Angelov, Christo K.

Hardware-in-the-Loop Simulation of Component-Based Embedded Systems Guo, Yu; Zhou, Feng; Marian, Nicolae; Angelov, Christo K. Syddansk Universitet Hardware-in-the-Loop Simulation of Component-Based Embedded Systems Guo, Yu; Zhou, Feng; Marian, Nicolae; Angelov, Christo K. Published in: Proceedings of the 8th International Workshop

More information

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements.

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements. Contemporary Design We have been talking about design process Let s now take next steps into examining in some detail Increasing complexities of contemporary systems Demand the use of increasingly powerful

More information

Programming Languages for Real-Time Systems. LS 12, TU Dortmund

Programming Languages for Real-Time Systems. LS 12, TU Dortmund Programming Languages for Real-Time Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 20 June 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 41 References Slides are based on Prof. Wang Yi, Prof.

More information

IEC Implementation of Service Oriented Architecture: Case Study

IEC Implementation of Service Oriented Architecture: Case Study IEEE Conference on Robotics and Automation (ICRA 14), Hong Kong, May, 2014, submitted IEC 61499 Implementation of Service Oriented Architecture: Case Study Valeriy Vyatkin, Luleå University of Technology,

More information

Simulation of LET Models in Simulink and Ptolemy

Simulation of LET Models in Simulink and Ptolemy Simulation of LET Models in Simulink and Ptolemy P. Derler, A. Naderlinger, W. Pree, S. Resmerita, J. Templ Monterey Workshop 2008, Budapest, Sept. 24-26, 2008 C. Doppler Laboratory Embedded Software Systems

More information

CS4514 Real-Time Systems and Modeling

CS4514 Real-Time Systems and Modeling CS4514 Real-Time Systems and Modeling Fall 2015 José M. Garrido Department of Computer Science College of Computing and Software Engineering Kennesaw State University Real-Time Systems RTS are computer

More information

ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design. Submitted by, Roll Numbers:-49-70

ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design. Submitted by, Roll Numbers:-49-70 ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design Submitted by, Roll Numbers:-49-70 Functional Models The functional model specifies the results of a computation without specifying

More information

2. REAL-TIME CONTROL SYSTEM AND REAL-TIME NETWORKS

2. REAL-TIME CONTROL SYSTEM AND REAL-TIME NETWORKS 2. REAL-TIME CONTROL SYSTEM AND REAL-TIME NETWORKS 2.1 Real-Time and Control Computer based digital controllers typically have the ability to monitor a number of discrete and analog inputs, perform complex

More information

Michel Heydemann Alain Plaignaud Daniel Dure. EUROPEAN SILICON STRUCTURES Grande Rue SEVRES - FRANCE tel : (33-1)

Michel Heydemann Alain Plaignaud Daniel Dure. EUROPEAN SILICON STRUCTURES Grande Rue SEVRES - FRANCE tel : (33-1) THE ARCHITECTURE OF A HIGHLY INTEGRATED SIMULATION SYSTEM Michel Heydemann Alain Plaignaud Daniel Dure EUROPEAN SILICON STRUCTURES 72-78 Grande Rue - 92310 SEVRES - FRANCE tel : (33-1) 4626-4495 Abstract

More information

The Service Availability Forum Platform Interface

The Service Availability Forum Platform Interface The Service Availability Forum Platform Interface The Service Availability Forum develops standards to enable the delivery of continuously available carrier-grade systems with offthe-shelf hardware platforms

More information

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems Hassan Gomaa References: H. Gomaa, Chapters 1, 2, 3 - Real-Time Software Design for Embedded Systems, Cambridge University

More information

DESIGN AND SIMULATION OF HETEROGENEOUS CONTROL SYSTEMS USING PTOLEMY II

DESIGN AND SIMULATION OF HETEROGENEOUS CONTROL SYSTEMS USING PTOLEMY II DESIGN AND SIMULATION OF HETEROGENEOUS CONTROL SYSTEMS USING PTOLEMY II Johan Eker, Chamberlain Fong, Jörn W. Janneck, Jie Liu Department of Electrical Engineering and Computer Sciences University of California

More information

Integration of Simulink Models with Component-based Software Models

Integration of Simulink Models with Component-based Software Models Integration of Simulink Models with Component-based Software Models Nicolae MARIAN, Søren TOP Mads Clausen Institute for Product Innovation, University of Southern Denmark Alsion 2, DK-6400 Sønderborg

More information

Analysis and Design with the Universal Design Pattern

Analysis and Design with the Universal Design Pattern Analysis and Design with the Universal Design Pattern by Koni Buhrer Software Engineering Specialist Rational Software Developing large software systems is notoriously difficult and unpredictable. Software

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : , Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,

More information

AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz

AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz AOSA - Betriebssystemkomponenten und der Aspektmoderatoransatz Results obtained by researchers in the aspect-oriented programming are promoting the aim to export these ideas to whole software development

More information

Automatic Code Generation Technology Adoption Lessons Learned from Commercial Vehicle Case Studies

Automatic Code Generation Technology Adoption Lessons Learned from Commercial Vehicle Case Studies 08AE-22 Automatic Code Generation Technology Adoption Lessons Learned from Commercial Vehicle Case Studies Copyright 2007 The MathWorks, Inc Tom Erkkinen The MathWorks, Inc. Scott Breiner John Deere ABSTRACT

More information

DSP/BIOS Kernel Scalable, Real-Time Kernel TM. for TMS320 DSPs. Product Bulletin

DSP/BIOS Kernel Scalable, Real-Time Kernel TM. for TMS320 DSPs. Product Bulletin Product Bulletin TM DSP/BIOS Kernel Scalable, Real-Time Kernel TM for TMS320 DSPs Key Features: Fast, deterministic real-time kernel Scalable to very small footprint Tight integration with Code Composer

More information

Impact of Platform Abstractions on the Development Workflow

Impact of Platform Abstractions on the Development Workflow Impact of Platform Abstractions on the Development Workflow Johannes Pletzer, Wolfgang Pree Technical Report September 7, 2009 C. Doppler Laboratory Embedded Software Systems University of Salzburg Austria

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

REAL-TIME MULTITASKING KERNEL FOR IBM-BASED MICROCOMPUTERS

REAL-TIME MULTITASKING KERNEL FOR IBM-BASED MICROCOMPUTERS Malaysian Journal of Computer Science, Vol. 9 No. 1, June 1996, pp. 12-17 REAL-TIME MULTITASKING KERNEL FOR IBM-BASED MICROCOMPUTERS Mohammed Samaka School of Computer Science Universiti Sains Malaysia

More information

Component-Based Software Engineering TIP

Component-Based Software Engineering TIP Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.

More information

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold. T0/04-023 revision 2 Date: September 06, 2005 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular

More information

A PRIMITIVE EXECUTION MODEL FOR HETEROGENEOUS MODELING

A PRIMITIVE EXECUTION MODEL FOR HETEROGENEOUS MODELING A PRIMITIVE EXECUTION MODEL FOR HETEROGENEOUS MODELING Frédéric Boulanger Supélec Département Informatique, 3 rue Joliot-Curie, 91192 Gif-sur-Yvette cedex, France Email: Frederic.Boulanger@supelec.fr Guy

More information

FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS. Waqas Akram, Cirrus Logic Inc., Austin, Texas

FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS. Waqas Akram, Cirrus Logic Inc., Austin, Texas FILTER SYNTHESIS USING FINE-GRAIN DATA-FLOW GRAPHS Waqas Akram, Cirrus Logic Inc., Austin, Texas Abstract: This project is concerned with finding ways to synthesize hardware-efficient digital filters given

More information

Hierarchical FSMs with Multiple CMs

Hierarchical FSMs with Multiple CMs Hierarchical FSMs with Multiple CMs Manaloor Govindarajan Balasubramanian Manikantan Bharathwaj Muthuswamy (aka Bharath) Reference: Hierarchical FSMs with Multiple Concurrency Models. Alain Girault, Bilung

More information

A Modal Specification Approach for Assuring the Safety of On-Demand Medical Cyber-Physical Systems

A Modal Specification Approach for Assuring the Safety of On-Demand Medical Cyber-Physical Systems A Modal Specification Approach for Assuring the Safety of On-Demand Medical Cyber-Physical Systems Lu Feng PRECISE Center Department of Computer and Information Science University of Pennsylvania lufeng@cis.upenn.edu

More information

is easing the creation of new ontologies by promoting the reuse of existing ones and automating, as much as possible, the entire ontology

is easing the creation of new ontologies by promoting the reuse of existing ones and automating, as much as possible, the entire ontology Preface The idea of improving software quality through reuse is not new. After all, if software works and is needed, just reuse it. What is new and evolving is the idea of relative validation through testing

More information

ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES

ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES 49. Internationales Wissenschaftliches Kolloquium Technische Universität Ilmenau 27.-30. September 2004 Holger Rath / Horst Salzwedel ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES Abstract

More information

A Case Study for HRT-UML

A Case Study for HRT-UML A Case Study for HRT-UML Massimo D Alessandro, Silvia Mazzini, Francesco Donati Intecs HRT, Via L. Gereschi 32, I-56127 Pisa, Italy Silvia.Mazzini@pisa.intecs.it Abstract The Hard-Real-Time Unified Modelling

More information

Software Architecture. Lecture 4

Software Architecture. Lecture 4 Software Architecture Lecture 4 Last time We discussed tactics to achieve architecture qualities We briefly surveyed architectural styles 23-Jan-08 http://www.users.abo.fi/lpetre/sa08/ 2 Today We check

More information

Model-based Run-Time Software Adaptation for Distributed Hierarchical Service Coordination

Model-based Run-Time Software Adaptation for Distributed Hierarchical Service Coordination Model-based Run-Time Software Adaptation for Distributed Hierarchical Service Coordination Hassan Gomaa, Koji Hashimoto Department of Computer Science George Mason University Fairfax, VA, USA hgomaa@gmu.edu,

More information

Key Properties for Comparing Modeling Languages and Tools: Usability, Completeness and Scalability

Key Properties for Comparing Modeling Languages and Tools: Usability, Completeness and Scalability Key Properties for Comparing Modeling Languages and Tools: Usability, Completeness and Scalability Timothy C. Lethbridge Department of Electrical Engineering and Computer Science, University of Ottawa

More information

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems) Design&Methodologies Fö 1&2-1 Design&Methodologies Fö 1&2-2 Course Information Design and Methodology/ Embedded s Design (Modeling and Design of Embedded s) TDTS07/TDDI08 Web page: http://www.ida.liu.se/~tdts07

More information

Embedded Software Engineering

Embedded Software Engineering Embedded Software Engineering 3 Unit Course, Spring 2002 EECS Department, UC Berkeley Christoph Kirsch www.eecs.berkeley.edu/~fresco/giotto/course-2002 It s significant $4 billion development effort >

More information

VALLIAMMAI ENGINEERING COLLEGE

VALLIAMMAI ENGINEERING COLLEGE VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF ELECTRONICS AND INSTRUMENTATION ENGINEERING QUESTION BANK VI SEMESTER EE6602 EMBEDDED SYSTEMS Regulation 2013 Academic Year

More information

Estimation of worst case latency of periodic tasks in a real time distributed environment

Estimation of worst case latency of periodic tasks in a real time distributed environment Estimation of worst case latency of periodic tasks in a real time distributed environment 1 RAMESH BABU NIMMATOORI, 2 Dr. VINAY BABU A, 3 SRILATHA C * 1 Research Scholar, Department of CSE, JNTUH, Hyderabad,

More information

Multimedia Systems 2011/2012

Multimedia Systems 2011/2012 Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware

More information

Ch 1: The Architecture Business Cycle

Ch 1: The Architecture Business Cycle Ch 1: The Architecture Business Cycle For decades, software designers have been taught to build systems based exclusively on the technical requirements. Software architecture encompasses the structures

More information

Separating Product Variance and Domain Concepts in the Specification of Software Product Lines

Separating Product Variance and Domain Concepts in the Specification of Software Product Lines Separating Product Variance and Domain Concepts in the Specification of Software Product Lines Pertti Kellomäki Software Systems Laboratory, Tampere University of Technology P.O. Box 553, FIN-33101 Tampere,

More information

Elevator Control System

Elevator Control System Control System Koichiro Ochimizu School of Information Science Japan Advanced Institute of Science and Technology Schedule(3/3) March 2 3:00 Unified Process and COMET 4:30 Case Study of Control System

More information

Java for Real-Time Programming

Java for Real-Time Programming Java for Real-Time Programming Jan Lindström (jplindst@cs.helsinki.fi) Helsinki 5th November 1998 University of Helsinki Department of Computer Science Seminar on Object Architectures, Fall 1998 1 1 Introduction

More information

European Component Oriented Architecture (ECOA ) Collaboration Programme: Architecture Specification Part 2: Definitions

European Component Oriented Architecture (ECOA ) Collaboration Programme: Architecture Specification Part 2: Definitions European Component Oriented Architecture (ECOA ) Collaboration Programme: Part 2: Definitions BAE Ref No: IAWG-ECOA-TR-012 Dassault Ref No: DGT 144487-D Issue: 4 Prepared by BAE Systems (Operations) Limited

More information

FROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS

FROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS FROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS Peter Puschner and Raimund Kirner Vienna University of Technology, A-1040 Vienna, Austria {peter, raimund}@vmars.tuwien.ac.at Abstract Keywords:

More information

An Object-Oriented HLA Simulation Study

An Object-Oriented HLA Simulation Study BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 15, No 5 Special Issue on Control in Transportation Systems Sofia 2015 Print ISSN: 1311-9702; Online ISSN: 1314-4081 DOI: 10.1515/cait-2015-0022

More information

Flight Systems are Cyber-Physical Systems

Flight Systems are Cyber-Physical Systems Flight Systems are Cyber-Physical Systems Dr. Christopher Landauer Software Systems Analysis Department The Aerospace Corporation Computer Science Division / Software Engineering Subdivision 08 November

More information

System level modelling with open source tools

System level modelling with open source tools System level modelling with open source tools Mikkel Koefoed Jakobsen (mkoe@imm.dtu.dk) Jan Madsen (jan@imm.dtu.dk) Seyed Hosein Attarzadeh Niaki (shan2@kth.se) Ingo Sander (ingo@kth.se) Jan Hansen (jan@real-ear.com)

More information

System-On-Chip Architecture Modeling Style Guide

System-On-Chip Architecture Modeling Style Guide Center for Embedded Computer Systems University of California, Irvine System-On-Chip Architecture Modeling Style Guide Junyu Peng Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-22

More information

Topics in Object-Oriented Design Patterns

Topics in Object-Oriented Design Patterns Software design Topics in Object-Oriented Design Patterns Material mainly from the book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides; slides originally by Spiros Mancoridis;

More information

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS 1. Explain iterative waterfall and spiral model for software life cycle and various activities

More information

Computer Hardware Requirements for Real-Time Applications

Computer Hardware Requirements for Real-Time Applications Lecture (4) Computer Hardware Requirements for Real-Time Applications Prof. Kasim M. Al-Aubidy Computer Engineering Department Philadelphia University Real-Time Systems, Prof. Kasim Al-Aubidy 1 Lecture

More information

Policy-Based Context-Management for Mobile Solutions

Policy-Based Context-Management for Mobile Solutions Policy-Based Context-Management for Mobile Solutions Caroline Funk 1,Björn Schiemann 2 1 Ludwig-Maximilians-Universität München Oettingenstraße 67, 80538 München caroline.funk@nm.ifi.lmu.de 2 Siemens AG,

More information

A Top-Down Visual Approach to GUI development

A Top-Down Visual Approach to GUI development A Top-Down Visual Approach to GUI development ROSANNA CASSINO, GENNY TORTORA, MAURIZIO TUCCI, GIULIANA VITIELLO Dipartimento di Matematica e Informatica Università di Salerno Via Ponte don Melillo 84084

More information

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold. T0/06-6 revision 2 Date: May 22, 2006 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular documentation

More information

Module 4. Programmable Logic Control Systems. Version 2 EE IIT, Kharagpur 1

Module 4. Programmable Logic Control Systems. Version 2 EE IIT, Kharagpur 1 Module 4 Programmable Logic Control Systems Version 2 EE IIT, Kharagpur 1 Lesson 19 The Software Environment and Programming of PLCs Version 2 EE IIT, Kharagpur 2 Instructional Objectives After learning

More information

In this Lecture you will Learn: System Design. System Architecture. System Architecture

In this Lecture you will Learn: System Design. System Architecture. System Architecture In this Lecture you will Learn: System Design Chapter 13 The major concerns of system design The main aspects of system architecture, in particular what is meant by subdividing a system into layers and

More information

Distributed Systems Programming (F21DS1) Formal Verification

Distributed Systems Programming (F21DS1) Formal Verification Distributed Systems Programming (F21DS1) Formal Verification Andrew Ireland Department of Computer Science School of Mathematical and Computer Sciences Heriot-Watt University Edinburgh Overview Focus on

More information

An Information Model for High-Integrity Real Time Systems

An Information Model for High-Integrity Real Time Systems An Information Model for High-Integrity Real Time Systems Alek Radjenovic, Richard Paige, Philippa Conmy, Malcolm Wallace, and John McDermid High-Integrity Systems Group, Department of Computer Science,

More information

Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland)

Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland) UML STATECHARTS AND PETRI NETS MODEL COMPARIS FOR SYSTEM LEVEL MODELLING Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland) The system level modelling can be carried out with using some miscellaneous

More information

Overview of Microcontroller and Embedded Systems

Overview of Microcontroller and Embedded Systems UNIT-III Overview of Microcontroller and Embedded Systems Embedded Hardware and Various Building Blocks: The basic hardware components of an embedded system shown in a block diagram in below figure. These

More information

A framework for automatic generation of audio processing applications on a dual-core system

A framework for automatic generation of audio processing applications on a dual-core system A framework for automatic generation of audio processing applications on a dual-core system Etienne Cornu, Tina Soltani and Julie Johnson etienne_cornu@amis.com, tina_soltani@amis.com, julie_johnson@amis.com

More information

Compositional Schedulability Analysis of Hierarchical Real-Time Systems

Compositional Schedulability Analysis of Hierarchical Real-Time Systems Compositional Schedulability Analysis of Hierarchical Real-Time Systems Arvind Easwaran, Insup Lee, Insik Shin, and Oleg Sokolsky Department of Computer and Information Science University of Pennsylvania,

More information

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis UNIT I INTRODUCTION OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis Design Implementation Testing Maintenance

More information

Chapter 2 IEC in a Nutshell

Chapter 2 IEC in a Nutshell Chapter 2 IEC 61499 in a Nutshell This chapter gives a brief introduction of IEC 61499 that is tailored to fit the scope of this book and should be considered a summary of the basic concepts. In the first

More information

TITUS A Graphical Design Methodology for Embedded Automotive Software

TITUS A Graphical Design Methodology for Embedded Automotive Software TITUS A Graphical Design Methodology for Embedded Automotive Software Ulrich Freund, Alexander Burst, ETAS GmbH Stuttgart Abstract Vehicle body electronic software has reached a level of complexity and

More information

Concurrent Models of Computation

Concurrent Models of Computation Concurrent Models of Computation Edward A. Lee Robert S. Pepper Distinguished Professor, UC Berkeley EECS 219D Concurrent Models of Computation Fall 2011 Copyright 2009-2011, Edward A. Lee, All rights

More information

A Comparison of the Booch Method and Shlaer-Mellor OOA/RD

A Comparison of the Booch Method and Shlaer-Mellor OOA/RD A Comparison of the Booch Method and Shlaer-Mellor OOA/RD Stephen J. Mellor Project Technology, Inc. 7400 N. Oracle Rd., Suite 365 Tucson Arizona 85704 520 544-2881 http://www.projtech.com 2 May 1993 The

More information

EC EMBEDDED AND REAL TIME SYSTEMS

EC EMBEDDED AND REAL TIME SYSTEMS EC6703 - EMBEDDED AND REAL TIME SYSTEMS Unit I -I INTRODUCTION TO EMBEDDED COMPUTING Part-A (2 Marks) 1. What is an embedded system? An embedded system employs a combination of hardware & software (a computational

More information

Transforming UML Collaborating Statecharts for Verification and Simulation

Transforming UML Collaborating Statecharts for Verification and Simulation Transforming UML Collaborating Statecharts for Verification and Simulation Patrick O. Bobbie, Yiming Ji, and Lusheng Liang School of Computing and Software Engineering Southern Polytechnic State University

More information

Component-Based Software Engineering TIP

Component-Based Software Engineering TIP Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.

More information

Meltem Özturan

Meltem Özturan Meltem Özturan www.mis.boun.edu.tr/ozturan/samd 1 2 Modeling System Requirements Object Oriented Approach to Requirements OOA considers an IS as a set of objects that work together to carry out the function.

More information

Specifications and Modeling

Specifications and Modeling 12 Specifications and Modeling Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 17 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Hypothetical design

More information

Communication. Distributed Systems Santa Clara University 2016

Communication. Distributed Systems Santa Clara University 2016 Communication Distributed Systems Santa Clara University 2016 Protocol Stack Each layer has its own protocol Can make changes at one layer without changing layers above or below Use well defined interfaces

More information

EE249 Lab September 30 h, 2008 Hugo A. Andrade

EE249 Lab September 30 h, 2008 Hugo A. Andrade High-Level Development Tools Data Flow C Code Textual Math Modeling Statechart EE249 Lab September 30 h, 2008 Hugo A. Andrade Graphical System Design Platform Linux Macintosh Windows Real-Time FPGA Micro

More information

CoE CENTRE of EXCELLENCE ON DATA WAREHOUSING

CoE CENTRE of EXCELLENCE ON DATA WAREHOUSING in partnership with Overall handbook to set up a S-DWH CoE: Deliverable: 4.6 Version: 3.1 Date: 3 November 2017 CoE CENTRE of EXCELLENCE ON DATA WAREHOUSING Handbook to set up a S-DWH 1 version 2.1 / 4

More information

How useful is the UML profile SPT without Semantics? 1

How useful is the UML profile SPT without Semantics? 1 How useful is the UML profile SPT without Semantics? 1 Susanne Graf, Ileana Ober VERIMAG 2, avenue de Vignate - F-38610 Gières - France e-mail:{susanne.graf, Ileana.Ober}@imag.fr http://www-verimag.imag.fr/~{graf,iober}

More information

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009.

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009. CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar Louisiana State University August 27 th, 2009 1 Announcements TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu

More information

Software Engineering: Integration Requirements

Software Engineering: Integration Requirements Software Engineering: Integration Requirements AYAZ ISAZADEH Department of Computer Science Tabriz University Tabriz, IRAN Abstract: - This paper presents a discussion of software integration requirements,

More information

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009 CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu Announcements All of you should be now in the class mailing

More information

Network protocols and. network systems INTRODUCTION CHAPTER

Network protocols and. network systems INTRODUCTION CHAPTER CHAPTER Network protocols and 2 network systems INTRODUCTION The technical area of telecommunications and networking is a mature area of engineering that has experienced significant contributions for more

More information

Real-time capable software agents on IEC systems Developing a tool supported method

Real-time capable software agents on IEC systems Developing a tool supported method Real-time capable software agents on IEC 61131 systems Developing a tool supported method Ursula Frank*, Josef Papenfort*, Daniel Schütz** *Beckhoff Automation GmbH, Verl, Germany (e-mail: j.papenfort@beckhoff.com,

More information

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, 2003 Review 1 Overview 1.1 The definition, objectives and evolution of operating system An operating system exploits and manages

More information

Iterative Specification Refinement in Deriving Logic Controllers

Iterative Specification Refinement in Deriving Logic Controllers 17 th European Symposium on Computer Aided Process Engineering ESCAPE17 V. Plesu and P.S. Agachi (Editors) 2007 Elsevier B.V. All rights reserved. 1 Iterative Specification Refinement in Deriving Logic

More information

Multi-threaded, discrete event simulation of distributed computing systems

Multi-threaded, discrete event simulation of distributed computing systems Multi-threaded, discrete event simulation of distributed computing systems Iosif C. Legrand California Institute of Technology, Pasadena, CA, U.S.A Abstract The LHC experiments have envisaged computing

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

challenges in domain-specific modeling raphaël mannadiar august 27, 2009 challenges in domain-specific modeling raphaël mannadiar august 27, 2009 raphaël mannadiar challenges in domain-specific modeling 1/59 outline 1 introduction 2 approaches 3 debugging and simulation 4 differencing

More information

Role based Software Process Modelling

Role based Software Process Modelling Role based Software Process Modelling Fadila Atil, Djamel Meslati, Nora Bounour & Said Ghoul * LRI Laboratory, University of Badji Mokhtar, BP 12, Annaba, Ageria * Institute of Computer science, university

More information

Class Inheritance and OLE Integration (Formerly the Common Object Model)

Class Inheritance and OLE Integration (Formerly the Common Object Model) TM Class Inheritance and OLE Integration (Formerly the Common Object Model) Technical Overview Shawn Woods, Mike Vogl, and John Parodi August 1995 Digital Equipment Corporation Introduction This paper

More information

Self-Managed Systems: an Architectural Challenge

Self-Managed Systems: an Architectural Challenge Self-Managed Systems: an Architectural Challenge Kramer, Jeff and Magee, Jeff FOSE 07: 2007 Future of Software Engineering Summarized by Jason Porter Introduction A self-managed system is a system which

More information

RTC: Language Support for Real-Time Concurrency

RTC: Language Support for Real-Time Concurrency RTC: Language Support for Real-Time Concurrency Insup Lee, Susan Davidson, and Victor Wolfe 1 Introduction The RTC (Real-Time Concurrency) programming concepts and language constructs for expressing timing

More information

Advanced Grid Technologies, Services & Systems: Research Priorities and Objectives of WP

Advanced Grid Technologies, Services & Systems: Research Priorities and Objectives of WP Advanced Grid Technologies, Services & Systems: Research Priorities and Objectives of WP 2005-06 06 IST Call 5 Preparatory Workshop Brussels, 31 Jan 1 Feb 2005 Enabling application Max Lemke Deputy Head

More information

OMG Modeling Glossary B

OMG Modeling Glossary B OMG Modeling Glossary B This glossary defines the terms that are used to describe the Unified Modeling Language (UML) and the Meta Object Facility (MOF). In addition to UML and MOF specific terminology,

More information

Keywords: HDL, Hardware Language, Digital Design, Logic Design, RTL, Register Transfer, VHDL, Verilog, VLSI, Electronic CAD.

Keywords: HDL, Hardware Language, Digital Design, Logic Design, RTL, Register Transfer, VHDL, Verilog, VLSI, Electronic CAD. HARDWARE DESCRIPTION Mehran M. Massoumi, HDL Research & Development, Averant Inc., USA Keywords: HDL, Hardware Language, Digital Design, Logic Design, RTL, Register Transfer, VHDL, Verilog, VLSI, Electronic

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

CSCI 445 Amin Atrash. Control Architectures. Introduction to Robotics L. Itti, M. J. Mataric

CSCI 445 Amin Atrash. Control Architectures. Introduction to Robotics L. Itti, M. J. Mataric Introduction to Robotics CSCI 445 Amin Atrash Control Architectures The Story So Far Definitions and history Locomotion and manipulation Sensors and actuators Control => Essential building blocks Today

More information

Symbolic Execution and Proof of Properties

Symbolic Execution and Proof of Properties Chapter 7 Symbolic Execution and Proof of Properties Symbolic execution builds predicates that characterize the conditions under which execution paths can be taken and the effect of the execution on program

More information

Modeling and SW Synthesis for

Modeling and SW Synthesis for Modeling and SW Synthesis for Heterogeneous Embedded Systems in UML/MARTE Hector Posadas, Pablo Peñil, Alejandro Nicolás, Eugenio Villar University of Cantabria Spain Motivation Design productivity it

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information