167,899 research outputs found

    Towards Domain-Specific Modeling Methodology for Avionic Safety-Critical Systems

    Get PDF
    The use of domain-specific modeling languages and associated methodologies, provide support in application domain where the safe and reliable operations of the systems are of paramount importance to the users and organizations, and wherein the domains are well understood and documented. One such area of domain-specific modeling application is in the field of avionic systems. For software systems to be used onboard aircrafts they must be certified, and as such certification protocols have been established for developing these safety-critical systems. These established protocols are usually represented as textual documents and inherently are difficult to apply directly in software development environments. The work presented herein proposes a graphical modeling representation for an avionic software system certification specification and an accompanying model-driven methodology for implementing the certification specification. This work is based on the RTCA Software Consideration in Airborne Systems and Equipment specification and the Unified Modeling Language. The presented model-driven methodology, incorporates the use of formal specification techniques to satisfy many of the verification requirements of the RTCA specification. The benefit of this work is in the transformation of textual description to graphical models in support of precise software system development, and a rigorous model-driven software development methodology for avionic soft-ware system development

    An integration of uml use case diagram and activity diagram with Z language for formalization of library management system

    Get PDF
    Unified Modeling Language (UML) is the effective standard for modeling object-oriented software systems. However, the ambiguity of semantics and the absence of consistency among UML diagrams lead to lack of precisely defining the requirements of a system. On the other hand, formal methods are techniques and tools use the mathematical notations, and they involve the precise syntax and semantics of the unambiguous software requirements specification. It applied in early stages of Software Development Life Cycle (SDLC). Therefore, an integrated between UML specification and formal specification is required to reduce the requirements' ambiguity and error, and to improve the quality and security of software systems. This paper proposes an approach involves the combining UML use-case diagram and activity diagrams with Z language for formalization of Library Management System (LMS). The focus of this paper is on consistency between the UML diagrams to Z Schema, and then verified by using the Z / EVEs tool

    Formal specifications in component-based development

    Get PDF
    Software engineering has entered a new era, the Internet and its associated technologies require a different conceptual framework for building and understanding software solutions. Users ask to develop applications more rapidly, and software engineers need to ensamble systems from preexisting parts. Components and Components-Based Development( CBD), are the approaches that provide solutions to these arising needs. Components are the way to encapsulate existing functionality, acquire third-party solutions, and build new services to support emerging business processes. Component-based development provides a design paradigm that is well suited to the new requirements, were the traditional design and build has been replaced by select and integrate. Within this approach, the specification of components plays a crucial role. If we are working on the development of components in order to construct a library for general use, we need to start from a concrete and complete specification of what we are going to construct. If we are assembling our application from pre-existing components, we need a precise specification of the behaviour of the component in order to select it from the library.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Formal specifications in component-based development

    Get PDF
    Software engineering has entered a new era, the Internet and its associated technologies require a different conceptual framework for building and understanding software solutions. Users ask to develop applications more rapidly, and software engineers need to ensamble systems from preexisting parts. Components and Components-Based Development( CBD), are the approaches that provide solutions to these arising needs. Components are the way to encapsulate existing functionality, acquire third-party solutions, and build new services to support emerging business processes. Component-based development provides a design paradigm that is well suited to the new requirements, were the traditional design and build has been replaced by select and integrate. Within this approach, the specification of components plays a crucial role. If we are working on the development of components in order to construct a library for general use, we need to start from a concrete and complete specification of what we are going to construct. If we are assembling our application from pre-existing components, we need a precise specification of the behaviour of the component in order to select it from the library.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Automated Requirements Formalisation for Agile MDE

    Get PDF
    Model-driven engineering (MDE) of software systems from precise specifications has become established as an important approach for rigorous software development. However, the use of MDE requires specialised skills and tools, which has limited its adoption.In this paper we describe techniques for automating the derivation of software specifications from requirements statements, in order to reduce the effort required in creating MDE specifications, and hence to improve the usability and agility of MDE. Natural language processing (NLP) and Machine learning (ML) are used to recognise the required data and behaviour elements of systems from textual and graphical documents, and formal specification models of the systems are created. These specifications can then be used as the basis of manual software development, or as the starting point for automated software production using MDE

    Software meta-language engineering and CBS

    Get PDF
    The SLE conference series is devoted to the engineering principles of software languages: their design, their implementation, and their evolution. This paper is about the role of language specification in SLE. A precise specification of a software language needs to be written in a formal meta-language, and it needs to co-evolve with the specified language. Moreover, different software languages often have features in common, which should provide opportunities for reuse of parts of language specifications. Support for co-evolution and reuse in a meta-language requires careful engineering of its design.The author has been involved in the development of several meta-languages for semantic specification, including action semantics and modular variants of structural operational semantics (MSOS, I-MSOS). This led to the PLanCompS project, and to the design of its meta-language, CBS, for component-based semantics. CBS comes together with an extensible library of reusable components called ‘funcons’, corresponding to fundamental programming constructs. The main aim of CBS is to optimise co-evolution and reuse of specifications during language development, and to make specification of language semantics almost as straightforward as context-free syntax specification.The paper discusses the engineering of a selection of previous meta-languages, assessing how well they support co-evolution and reuse. It then gives an introduction to CBS, and illustrates significant features. It also considers whether other current meta-languages might also be used to define an extensible library of funcons for use in component-based semantics

    Sequence-Based Specification of Embedded Systems

    Get PDF
    Software has become integral to the control mechanism of modern devices. From transportation and medicine to entertainment and recreation, embedded systems integrate fundamentally with time and the physical world to impact our lives; therefore, product dependability and safety are of paramount importance. Model-based design has evolved as an effective way to prototype systems and to analyze system function through simulation. This process mitigates the problems and risks associated with embedding software into consumer and industrial products. However, the most difficult tasks remain: Getting the requirements right and reducing them to precise specifications for development, and providing compelling evidence that the product is fit for its intended use. Sequence-based specification of discrete systems, using well-chosen abstractions, has proven very effective in exposing deficiencies in requirements, and then producing precise specifications for good requirements. The process ensures completeness, consistency, and correctness by tracing each specification decision precisely to the requirements. Likewise, Markov chain based testing has proven effective in providing evidence that systems are fit for field use. Model-based designs integrate discrete and continuous behavior; models have both hybrid and switching properties. In this research, we extend sequence-based specification to explicitly include time, continuous functions, nondeterminism, and internal events for embedded real-time systems. The enumeration is transformed into an enumeration hybrid automaton that acts as the foundation for an executable model-based design and an algebraic hybrid I/O automaton with valuable theoretical properties. Enumeration is a step-wise problem solving technique that complements model-based design by converting ordinary requirements into precise specifications. The goal is a complete, consistent, and traceably correct design with a basis for automated testing

    Designing precise and flexible graphical modelling languages for software development

    Get PDF
    Model-driven approaches to software development involve building computerized models of software and the environment in which it is intended to operate. This thesis offers a selection of the author’s work over the last three decades that addresses the design of precise and flexible graphical modelling languages for use in model-driven software development. The primary contributions of this work are: • Syntropy: the first published object-oriented analysis and design (OOAD) method to fully integrate formal and graphical modelling techniques. • The creation of the Object Constraint Language (OCL) and its integration into the Unified Modeling Language (UML) specification. • The identification of requirements and mechanisms for increasing the flexibility of the UML specification. • The design and implementation of tools for implementing graphical Domain Specific Languages (DSLs). The starting point was the author’s experience with formal specification techniques contrasted with the lack of precision of published object-oriented analysis and design methods. This led to a desire to fully integrate these two topics – formal specification and object-orientation - into a coherent discipline. The Syntropy approach, created in 1994 by this author and John Daniels, was the first published complete attempt to do this. Much of the author’s subsequent published work concerns the Unified Modeling Language (UML). UML represented a welcome unification of earlier OOAD approaches, but suffered badly from inflexibility and lack of precision. A significant part of the work included in this thesis addresses the drawbacks of the UML and proposes improvements to the precision of its definition, including through the invention of Object Constraint Language (OCL) and its incorporation into the UML specification, and the consideration of UML as source material for the definition of Domain Specific Languages (DSLs). Several of the author’s published works in this thesis concern mechanisms for the creation of DSLs, both within a UML framework and separately

    Formal specifications in component-based development

    Get PDF
    Software engineering has entered a new era, the Internet and its associated technologies require a different conceptual framework for building and understanding software solutions. Users ask to develop applications more rapidly, and software engineers need to ensamble systems from preexisting parts. Components and Components-Based Development( CBD), are the approaches that provide solutions to these arising needs. Components are the way to encapsulate existing functionality, acquire third-party solutions, and build new services to support emerging business processes. Component-based development provides a design paradigm that is well suited to the new requirements, were the traditional design and build has been replaced by select and integrate. Within this approach, the specification of components plays a crucial role. If we are working on the development of components in order to construct a library for general use, we need to start from a concrete and complete specification of what we are going to construct. If we are assembling our application from pre-existing components, we need a precise specification of the behaviour of the component in order to select it from the library.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI
    • …
    corecore