111 research outputs found

    Scheduling Multi Clock Real Time Systems: From Requirements to Implementation

    Get PDF
    NewPort BeachInternational audienceThis paper presents an approach for modeling simulating and analyzing multi clocks real time systems during the different steps of a design. These steps range from the first requirements to a model allocated on a specific execution platform. The \uml \marte profile and the \ccsl language are used together to specify the causal and temporal characteristics of the software as well as the hardware parts of the system. The \tsq environment allows a simulation of such specification and the detection of potential errors and deadlocks. When the specification refinement is finished, to prove the specification correctness, the \ccsl specification is used to generate a synchronous model and some observers in Esterel. We illustrate the approach through a spark ignition control system

    Seamless composition and integration: a perspective on formal methods research

    Full text link
    Formal methods are now a central component of computer-science education and research. However, there will always be advances in mathematical logic -- a.k.a. `formal methods' among computer scientists -- leading to advances in reliable, safe and secure computing. There are many research directions that will promote the impact of formal methods on computer science in significant and novel ways. We outline two directions, each associated with its own research challenges, that are complementary to the current state-of-the-art: one of composability and one of integration, each considered in a specific context drawn from our own recent research and teaching experience. We try to clarify why the study and ultimate resolution of these two challenges hold the promise of important breakthroughs in the accessability of formal methods and, ultimately, their applicability.National Science Foundation (CCF-0820138

    On the Extensibility of Formal Methods Tools

    Get PDF
    Modern software systems often have long lifespans over which they must continually evolve to meet new, and sometimes unforeseen, requirements. One way to effectively deal with this is by developing the system as a series of extensions. As requirements change, the system evolves through the addition of new extensions and, potentially, the removal of existing extensions. In order for this kind of development process to thrive, it is necessary that the system have a high level of extensibility. Extensibility is the capability of a system to support the gradual addition of new, unplanned functionalities. This dissertation investigates extensibility of software systems and focuses on a particular class of software: formal methods tools. The approach is broad in scope. Extensibility of systems is addressed in terms of design, analysis and improvement, which are carried out in terms of source code and software architecture. For additional perspective, extensibility is also considered in the context of formal modelling. The work carried out in this dissertation led to the development of various extensions to the Overture tool supporting the Vienna Development Method, including a new proof obligation generator and integration with theorem provers. Additionally, the extensibility of Overture itself was also improved and it now better supports the development and integration of various kinds of extensions. Finally, extensibility techniques have been applied to formal modelling, leading to an extensible architectural style for formal models

    Working Notes from the 1992 AAAI Workshop on Automating Software Design. Theme: Domain Specific Software Design

    Get PDF
    The goal of this workshop is to identify different architectural approaches to building domain-specific software design systems and to explore issues unique to domain-specific (vs. general-purpose) software design. Some general issues that cut across the particular software design domain include: (1) knowledge representation, acquisition, and maintenance; (2) specialized software design techniques; and (3) user interaction and user interface

    Advancing Operating Systems via Aspect-Oriented Programming

    Get PDF
    Operating system kernels are among the most complex pieces of software in existence to- day. Maintaining the kernel code and developing new functionality is increasingly compli- cated, since the amount of required features has risen significantly, leading to side ef fects that can be introduced inadvertedly by changing a piece of code that belongs to a completely dif ferent context. Software developers try to modularize their code base into separate functional units. Some of the functionality or “concerns” required in a kernel, however, does not fit into the given modularization structure; this code may then be spread over the code base and its implementation tangled with code implementing dif ferent concerns. These so-called “crosscutting concerns” are especially dif ficult to handle since a change in a crosscutting concern implies that all relevant locations spread throughout the code base have to be modified. Aspect-Oriented Software Development (AOSD) is an approach to handle crosscutting concerns by factoring them out into separate modules. The “advice” code contained in these modules is woven into the original code base according to a pointcut description, a set of interaction points (joinpoints) with the code base. To be used in operating systems, AOSD requires tool support for the prevalent procedu- ral programming style as well as support for weaving aspects. Many interactions in kernel code are dynamic, so in order to implement non-static behavior and improve performance, a dynamic weaver that deploys and undeploys aspects at system runtime is required. This thesis presents an extension of the “C” programming language to support AOSD. Based on this, two dynamic weaving toolkits – TOSKANA and TOSKANA-VM – are presented to permit dynamic aspect weaving in the monolithic NetBSD kernel as well as in a virtual- machine and microkernel-based Linux kernel running on top of L4. Based on TOSKANA, applications for this dynamic aspect technology are discussed and evaluated. The thesis closes with a view on an aspect-oriented kernel structure that maintains coherency and handles crosscutting concerns using dynamic aspects while enhancing de- velopment methods through the use of domain-specific programming languages

    The implementation and adoption of a corporate performance management information system in the City of Cape Town Municipality : a case study using actor-network theory

    Get PDF
    Includes bibliographical references (leaves 156-162).This study examines the adoption of a Corporate Performance Management (CPM) Information System in the context of a local Municipality with South Africa. The role of ICT in supporting and facilitating CPM is also examined within this context. The historic progression of CPM Systems is reviewed from their origins rooted in early executive information systems to the rich functional business intelligence aligned platforms of today

    The denotational and static semantics of a domain-specific language for flow-network design

    Full text link
    Flow networks are inductively defined, assembled from small network modules to produce arbitrarily large ones, with interchangeable and expanding functionally-equivalent parts. We carry out this induction formally using a domain-specific language (DSL). Associated with our DSL is a typing system (or static semantics), a system of formal annotations that enforce desirable properties of flow networks as invariants across their interfaces. A prerequisite for a type theory is a formal semantics, i.e., a rigorous definition of the entities that qualify as feasible flows through the networks, possibly restricted to satisfy additional efficiency or safety requirements. We carry out this via a denotational semantics
    • …
    corecore