2,550 research outputs found

    The Express Project: Automating the Software Development Process

    Get PDF
    The goal of the Express project is to provide an efficient software development environment for embedded systems. The approach is to create a new life-cycle paradigm, using rapid prototyping to validate system specifications. The rapid prototype will be made possible by using (1) very high level specification languages that automatically generate code and (2) a user-machine interface that helps both in the layout of the design and in the specification of the input devices and output screens for the embedded system. All user interactions with Express are integrated through Express\u27s knowledge-based Framework, which will support efficient, interdisciplinary communications. The Framework is designed to support evolutionary prototyping. The high-level view of the embedded system can be created and evolved concurrently with the low-level specifications of processing segments that are understood and known to be required. System engineers will define the high-level view (including allocation of requirements from layer to layer), and specialists will create low-level diagrams and specifications for processing threads in each of their (initially) independent areas. In small steps the two views will be merged into a single architecture diagram. One can zoom in on one subsystem and be presented with the fine structure of the subsystem down to the level of executable specifications. A second subsystem, which is reached through the knowledge-based Framework, is the Graphical Specification Subsystem (GSS) for Displays. It will make human-machine interface engineers more productive when designing operator displays for embedded systems. It will allow them to build a display graphically. They can select icons from a menu, position and size each instance of an icon graphically (by mouse action), and specify in a natural way the desired interaction with other portions of the embedded system. Gauges, graphs, and maps are examples of objects represented by icons. The GSS also will be used to specify simulated input devices to the system, such as mice, push buttons, and joysticks

    A conceptual model for megaprogramming

    Get PDF
    Megaprogramming is component-based software engineering and life-cycle management. Magaprogramming and its relationship to other research initiatives (common prototyping system/common prototyping language, domain specific software architectures, and software understanding) are analyzed. The desirable attributes of megaprogramming software components are identified and a software development model and resulting prototype megaprogramming system (library interconnection language extended by annotated Ada) are described

    Animation of Z Specifications By Translation to Prolog

    Get PDF
    Yazılım geliştirebilmenin formal metodları o yazılım tanımlamasının geçerliliğine bağlıdır. Böyle bir tanımlama genelde 'Z' gibi bir formal dilde ifade edilir. Ancak, geçerli olması için, 'Z' tanımlaması test edilmeli, bunu yapabilmek için de animasyon yapılabilecek ve icra edilebilecek bir forma transfer edilebilmelidir. 'Z' tanımlamalarının animasyonları için kullanılan dillerden birisi Prolog'dur. Bu makalede 'Z' şemalarını Prolog'a çeviren teknikler açıklanmaktadır.Aym zamanda bu tür bir çevirmenin eksikleri ve belirsizlikleri üzerinde durulacaktır.Formal methods of software development rely on the validation of the specification of the software. Such specification is normally expressed in a formal language such as Z. However, in order to be validated the Z specification must be tested, and to achieve this it has to be transformed into a form that can be executed or animated. Prolog was one of the languages used for animation of Z specifications. This paper explains the techniques used for translating Z schemas into Prolog predicates. It also examines some of this translation shortcomings and unreliable features

    Animation of Z Specifications By Translation to Prolog

    Get PDF
    Yazılım geliştirebilmenin formal metodları o yazılım tanımlamasının geçerliliğine bağlıdır. Böyle bir tanımlama genelde 'Z' gibi bir formal dilde ifade edilir. Ancak, geçerli olması için, 'Z' tanımlaması test edilmeli, bunu yapabilmek için de animasyon yapılabilecek ve icra edilebilecek bir forma transfer edilebilmelidir. 'Z' tanımlamalarının animasyonları için kullanılan dillerden birisi Prolog'dur. Bu makalede 'Z' şemalarını Prolog'a çeviren teknikler açıklanmaktadır.Aym zamanda bu tür bir çevirmenin eksikleri ve belirsizlikleri üzerinde durulacaktır.Formal methods of software development rely on the validation of the specification of the software. Such specification is normally expressed in a formal language such as Z. However, in order to be validated the Z specification must be tested, and to achieve this it has to be transformed into a form that can be executed or animated. Prolog was one of the languages used for animation of Z specifications. This paper explains the techniques used for translating Z schemas into Prolog predicates. It also examines some of this translation shortcomings and unreliable features

    Contribution to Software Development Method based on Generalized Requirement Approach

    Get PDF
    Requirements’ gathering is one of the first steps in the software development process. Gathering business requirements, when the final product requirements are dictated by a known client, can be a difficult process. Even if the client knows their own business best, often their idea about a new business product is obscure, and described by general terms that contribute very much to common misunderstandings among the participants. Business requirement verification when the requirements are gathered using text and graphics can be a slow, error-prone, and expensive process. Misunderstandings and omitted requirements cause the need for revisions and increase project costs and delays. This research work proposes a new approach to the business software development process and is focused on the client’s understanding of how the business software development process works as well as a demonstration of the business requirement practices during requirement negotiation process. While the current software development process validates the business requirement at the end of the development process, this method implementation enables business requirement validation during the requirement negotiation phase. The process of the business requirement negotiation is guided by a set of predefined questions. These questions are guidelines for specifying a sufficient level of requirement details for generating executable code that is able to demonstrate each requirement. Effective implementation of the proposed method requires employment of the GRA Framework. Besides providing guidelines for requirement specification, the Framework shall create executable and provide the test environment for a requirement demonstration. This dissertation implements an example framework that is built around a central repository. Stored within the repository is the data collected during the requirement negotiations process. Access to the repository is managed by a Web interface that enables a collaborative and paperless environment. The result is that the data is stored in one place and updates are reflected to the stakeholders immediately. The executable code is generated by the Generator, a module that provides general programming units that are able to create source code files, databases, SQL statements, classes and methods, navigation menus, and demo applications, all from the data stored in the data repository. The generated software can then be used for the business requirement demonstration. This method assumes that any further development process is built around the requirements repository, which can provide continuous tracking of implementation changes. Besides readily documenting, tracking, and validating the requirements, this method addresses multiple requirement management syndromes such as the insufficient requirements description details provision, the IKIWISI (“I’ll know it when I see it”) Syndrome, the Yes, But Syndrome (“That is not exactly what I mean”), and the Undiscovered Ruins Syndrome (“Now that I see it, I have another requirement to add”).

    On the engineering of crucial software

    Get PDF
    The various aspects of the conventional software development cycle are examined. This cycle was the basis of the augmented approach contained in the original grant proposal. This cycle was found inadequate for crucial software development, and the justification for this opinion is presented. Several possible enhancements to the conventional software cycle are discussed. Software fault tolerance, a possible enhancement of major importance, is discussed separately. Formal verification using mathematical proof is considered. Automatic programming is a radical alternative to the conventional cycle and is discussed. Recommendations for a comprehensive approach are presented, and various experiments which could be conducted in AIRLAB are described

    RICIS Software Engineering 90 Symposium: Aerospace Applications and Research Directions Proceedings Appendices

    Get PDF
    Papers presented at RICIS Software Engineering Symposium are compiled. The following subject areas are covered: flight critical software; management of real-time Ada; software reuse; megaprogramming software; Ada net; POSIX and Ada integration in the Space Station Freedom Program; and assessment of formal methods for trustworthy computer systems

    The proceedings of the first international symposium on Visual Formal Methods VFM'99, Eindhoven, August 23rd, 1989

    Get PDF
    corecore