54 research outputs found

    Certifications of Critical Systems – The CECRIS Experience

    Get PDF
    In recent years, a considerable amount of effort has been devoted, both in industry and academia, to the development, validation and verification of critical systems, i.e. those systems whose malfunctions or failures reach a critical level both in terms of risks to human life as well as having a large economic impact.Certifications of Critical Systems – The CECRIS Experience documents the main insights on Cost Effective Verification and Validation processes that were gained during work in the European Research Project CECRIS (acronym for Certification of Critical Systems). The objective of the research was to tackle the challenges of certification by focusing on those aspects that turn out to be more difficult/important for current and future critical systems industry: the effective use of methodologies, processes and tools.The CECRIS project took a step forward in the growing field of development, verification and validation and certification of critical systems. It focused on the more difficult/important aspects of critical system development, verification and validation and certification process. Starting from both the scientific and industrial state of the art methodologies for system development and the impact of their usage on the verification and validation and certification of critical systems, the project aimed at developing strategies and techniques supported by automatic or semi-automatic tools and methods for these activities, setting guidelines to support engineers during the planning of the verification and validation phases

    Developing Labor Market Information System (LMIS) For Vocational Schools And Industries In Indonesia.

    Get PDF
    In Indonesia, Vocational Schools (SMK) is a type of secondary education that specifically prepares graduates to become skilled workers and ready to plunge into the wider industries, different from the High School graduates, SMK Graduates had skills that can be applied in Industries with specific requirement. SMK graduates needed the Industries as a place to work and to earn income for living, on the other hand, the industries also needed worker from SMK background to produce goods and services to gain revenue. Labor Market Information systems (LMIS) have a major role in providing information on more about the supply and the demand that connecting Graduates and industries. These research purposes are to find an Optimal and Ideal Labor Market Information System for Vocational Schools graduates linking to Industries. This dissertation using Research and Development (R&D) Methods from Borg & Gall. The data source will be collected from deep interview, document analysis, and participant observation. Output of this research is a website than can be access easily from mobile phones and PCs. The application will focus on the information system for SMK graduates in finding a job matches with the student areas of expertise. This application also linked between industry and SMK through a workflow Information system. With the complexity of this application, the government will have the ability to monitoring the supply and demand of job seeker and Industries

    Alire: a library repository manager for the open source Ada ecosystem

    Get PDF
    Open source movements are main players in today''s software landscape. Communities spring around programming languages, providing compilers, tooling and, chiefly, libraries built with these languages. Once a community reaches a certain critical mass, management of available libraries becomes a point of contention. Operating system providers and distributions often support but the most significant or mature libraries so, usually, language communities develop their own cross-platform software management tools. Examples abound with languages such as Python, OCaml, Rust, Haskell and others. The Ada community has been an exception to date, perhaps due to its smaller open source community. This work presents a working prototype tailored to the Ada compiler available to open source enthusiasts, GNAT. This tool is designedfrom two main principles: zero-cost infrastructure and a pure Ada work environment. Initially available for Linux-based systems, it relies on the semantic versioning paradigm for dependency resolution and uses Ada specification files to describe project releases and dependencies

    Data Persistence in Eiffel

    Get PDF
    This dissertation describes an extension to the Eiffel programming language that provides automatic object persistence (the ability of programs to store objects and later recreate those objects in a subsequent execution of a program). The mechanism is orthogonal to other aspects of the Eiffel language. The mechanism serves four main purposes: 1) it gives Eiffel programmers a needed service, filling a gap between serialization, which provides limited persistence functions and database-mapping, which is cumbersome to use; 2) it greatly reduces the coding burden incurred by the programmer when objects must persist, allowing the programmer to focus instead on the business model; 3) it provides a platform for testing the benefits of orthogonal persistence in Eiffel, and 4) it furnishes a model for orthogonal persistence in other object-oriented languages. During my research, I created a prototype implementation of the persistence mechanism using it effectively in several programs. Performance measurements showed acceptable performance with some increase in program memory usage. The prototype gives the programmer the ability to add automatic persistence to existing code with the addition of only a few lines of code. The size of this additional code remains constant regardless of the total number of lines of code in the project. Eiffel syntax remains unchanged and nonpersistent Eiffel code runs as is while incur- ring only a very small speed penalty

    Exploring Government Contractor Experiences Assessing and Reporting Software Development Status

    Get PDF
    Reports from academic, commercial, and government organizations have documented software-intensive system cost and schedule overruns for decades. These reports have identified lack of management insight into the software development process as one of many contributing factors. Multiple management mechanisms exist. However, these mechanisms do not support the assessment, and subsequent reporting, of software completion status. Additionally, the conceptual framework, based on industry standards, is limited in its relevance to this study due to an emphasis on what is needed while deferring implementation details. The purpose of this phenomenological study was to explore U.S. government contractors\u27 lived experiences of assessing and reporting software completion status with current measurement mechanisms. Twenty program or project managers responded to interview questions targeting positive and challenging experiences with current measurement mechanisms. Qualitative analysis of the experiential data was based on open and axial coding conducted on interview transcripts. Analysis indicated that costly resources are applied to metrics that do not provide the required level of management insight into completion status. These findings have positive social change implications for program managers, project managers, and researchers by documenting the need to develop relevant and cost-efficient status metrics to provide the critical insight required by management to reduce overruns

    A Coalgebraic Semantics for Imperative Programming Languages

    No full text
    In the theory of programming languages, one often takes two complementary perspectives. In operational semantics, one defines and reasons about the behaviour of programs; and in denotational semantics, one abstracts away implementation details, and reasons about programs as mathematical objects or denotations. The denotational semantics should be compositional, meaning that denotations of programs are determined by the denotations of their parts. It should also be adequate with respect to operational equivalence: programs with the same denotation should be behaviourally indistinguishable. One often has to prove adequacy and compositionality independently for different languages, and the proofs are often laborious and repetitive. These proofs were provided systematically in the context of process algebras by the mathematical operational semantics framework of Turi and Plotkin – which represented transition systems as coalgebras, and program syntax by free algebras; operational specifications were given by distributive laws of syntax over behaviour. By framing the semantics on this abstract level, one derives denotational and operational semantics which are guaranteed to be adequate and compositional for a wide variety of examples. However, despite speculation on the possibility, it is hard to apply the framework to programming languages, because one obtains undesirably fine-grained behavioural equivalences, and unconventional notions of operational semantics. Moreover, the behaviour of these languages is often formalised in a different way – such as computational effects, which may be thought of as an interface between programs and external factors such as non-determinism or a variable store; and comodels, or transition systems which implement these effects. This thesis adapts the mathematical operational semantics framework to provide semantics for various classes of programming languages. After identifying the need for such an adaptation, we show how program behaviour may be characterised by final coalgebras in suitably order- enriched Kleisli categories. We define both operational and denotational semantics, first for languages with syntactic effects, and then for languages with effects and/or comodels given by a Lawvere theory. To ensure adequacy and compositionality, we define concrete and abstract operational rule-formats for these languages, based on the idea of evaluation-in-context; we give syntactic and then categorical proofs that those properties are guaranteed by operational specifications in these rule-formats.Open Acces

    Security-Driven Software Evolution Using A Model Driven Approach

    Get PDF
    High security level must be guaranteed in applications in order to mitigate risks during the deployment of information systems in open network environments. However, a significant number of legacy systems remain in use which poses security risks to the enterprise’ assets due to the poor technologies used and lack of security concerns when they were in design. Software reengineering is a way out to improve their security levels in a systematic way. Model driven is an approach in which model as defined by its type directs the execution of the process. The aim of this research is to explore how model driven approach can facilitate the software reengineering driven by security demand. The research in this thesis involves the following three phases. Firstly, legacy system understanding is performed using reverse engineering techniques. Task of this phase is to reverse engineer legacy system into UML models, partition the legacy system into subsystems with the help of model slicing technique and detect existing security mechanisms to determine whether or not the provided security in the legacy system satisfies the user’s security objectives. Secondly, security requirements are elicited using risk analysis method. It is the process of analysing key aspects of the legacy systems in terms of security. A new risk assessment method, taking consideration of asset, threat and vulnerability, is proposed and used to elicit the security requirements which will generate the detailed security requirements in the specific format to direct the subsequent security enhancement. Finally, security enhancement for the system is performed using the proposed ontology based security pattern approach. It is the stage that security patterns derived from security expertise and fulfilling the elicited security requirements are selected and integrated in the legacy system models with the help of the proposed security ontology. The proposed approach is evaluated by the selected case study. Based on the analysis, conclusions are drawn and future research is discussed at the end of this thesis. The results show this thesis contributes an effective, reusable and suitable evolution approach for software security

    C to O-O Translation: Beyond the Easy Stuff

    Full text link
    Can we reuse some of the huge code-base developed in C to take advantage of modern programming language features such as type safety, object-orientation, and contracts? This paper presents a source-to-source translation of C code into Eiffel, a modern object-oriented programming language, and the supporting tool C2Eif. The translation is completely automatic and supports the entire C language (ANSI, as well as many GNU C Compiler extensions, through CIL) as used in practice, including its usage of native system libraries and inlined assembly code. Our experiments show that C2Eif can handle C applications and libraries of significant size (such as vim and libgsl), as well as challenging benchmarks such as the GCC torture tests. The produced Eiffel code is functionally equivalent to the original C code, and takes advantage of some of Eiffel's object-oriented features to produce safe and easy-to-debug translations

    Flexible Real-Time Linux a New Environment for Flexible Hard Real-Time Systems

    Full text link
    [ES] La presente tesis propone un nuevo entorno general para la construcción de sistemas flexibles de tiempo real estricto, esto es, sistemas que necesitan de garantías de tiempo real estricto y de un comportamiento flexible. El entorno propuesto es capaz de integrar tareas con varios niveles de criticidad y diferentes paradigmas de planificación en el mismo sistema. Como resultado, el entorno permite proporcionar garantías de tiempo real estricto a las tareas críticas y además conseguir una planificación adaptativa e inteligente de las tareas menos críticas. El entorno se define en términos de un modelo de tareas, una arquitectura software y un conjunto de servicios. El modelo de tareas propone construir una aplicación flexible de tiempo real estricto como un conjunto de tareas, donde cada tarea se estructura en una secuencia de componentes obligatorios y opcionales. La arquitectura software propone separar la ejecución de las tareas en dos niveles de planificación interrelacionados, de manera que un nivel planifica los componentes obligatorios mediante una política de planificación de tiempo real estricto mientras que el otro nivel planifica los componentes opcionales mediante una política de planificación basada en la utilidad. El conjunto de servicios incluye, por una parte, un sistema de comunicación entre los componentes de las tareas (tanto obligatorios como opcionales) y, por otra, una serie de mecanismos para la detección y tratamiento de excepciones temporales producidas en ejecución. Por otra parte, la presente tesis muestra que el entorno teórico propuesto puede ser implementado realmente. En concreto, se presenta el diseño e implementación de un sistema de ejecución (es decir, un núcleo de sistema operativo) capaz de soportar las características de dicho entorno. Este sistema, denominado Flexible Real-Time Linux (FRTL), ha sido desarrollado a partir de un núcleo mínimo existente denominado Real-Time Linux (RT-Linux). Finalmente, esta tesis presenta una caracterización temporal completa del sistema FRTL y medidas reales de su sobrecarga. La caracterización temporal ha permitido el desarrollo de un test de garantía completo de todo el sistema (incluyendo la aplicación y el núcleo de FRTL), que puede ser utilizado para verificar las restricciones temporales de cualquier aplicación implementada sobre FRTL. Por su parte, las medidas de la sobrecarga de FRTL muestran que este núcleo ha sido diseñado e implementado de manera eficiente. En conjunto, se demuestra que el núcleo FRTL es a la vez predecible y eficiente, dos características que informan de su utilidad en la implementación real de aplicaciones flexibles de tiempo real estricto.[CA] Aquesta tesi proposa un nou entorn general per a la construcció de sistemes flexibles de temps real estricte, això és, sistemes que requereixen garanties de temps real estricte i un comportament flexible. L'entorn proposat és capaç d'integrar tasques amb diferentsnivells de criticitat i diferents paradigmes de planificació al mateix sistema. Com a resultat, l'entorn permet proporcionar garanties detemps real estricte a les tasques crítiques i a més aconseguir una planificació adaptativa i intel¿ligent de les tasques menys crítiques. L'entorn es defineix en termes d'un model de tasques, una arquitectura software i un conjunt de serveis. El model de tasques proposa la construcció d'una aplicació flexible de temps real estricte com a un conjunt de tasques on cadascuna és estructurada com una seqüència de components obligatòries i opcionals. L'arquitectura software proposa la separació de l'execució de les tasques en dos nivells de planificació interrelacionats, de manera que un nivel planifica les components obligatòries mitjançant una política de planificació de temps real estricte mentre que l'altre nivell planifica les components opcionals mitjançant una política de planificació basada en la utilitat. El conjunt de serveis inclou, per una part, un sistema de comunicació entre les components de les tasques (tant obligatòries com opcionals) i, per una altra, una sèrie de mecanismes per a la detecció i tractament d'excepcions temporals produïdes en execució. Per altra banda, la present tesi mostra que el proposat entorn teòric pot ésser implementat realment. En concret, es presenta el diseny i la implementació d'un sistema d'execució (es a dir, un nucli de sistema operatiu) capaç de suportar les característiques d'aquest entorn. Aquest sistema, anomenat Flexible Real-Time Linux (FRTL), ha sigut desenvolupat a partir d'un nucli mínim existent anomenat Real-Time Linux (RT-Linux). Finalment, aquesta tesi presenta una caracterització temporal completa del sistema FRTL i mesures reals de la seua sobrecàrrega. La caracterització temporal ha permés el desenvolupament d'un test de garantia complet de tot el sistema (incloent l'aplicació i el nucli FRTL), que pot ésser utilitzat per a verificar les restriccions temporals de qualsevol aplicació implementada sobre FRTL. Per la seua part, les mesures de la sobrecàrrega de FRTL mostren que aquest nucli ha sigut disenyat i implementat de manera eficient. En conjunt, es demostra que el nucli FRTL és al mateix temps predible i eficient, dos característiques que informen de la seua utilitat a la implementació real d'aplicacions flexibles de temps real estricte.Terrasa Barrena, AM. (2001). Flexible Real-Time Linux a New Environment for Flexible Hard Real-Time Systems [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/1806
    • …
    corecore