192,146 research outputs found

    Unit Testing of Energy Consumption of Software Libraries

    Get PDF
    International audienceThe development of energy-efficient software has become a key requirement for a large number of devices, from smartphones to data centers. However, measuring accurately this consumption is a major challenge that state-of-the-art approaches have tried to tackle with a limited success. While monitoring applications' consumption offers a clear insight on where the energy is being spent, it does not help in understanding how the energy is consumed. In this paper, we therefore introduce Jalen Unit, a software framework that infers the energy consumption model of software libraries from execution traces. This model can then be used to diagnose application code for detecting energy bugs, understanding energy distribution, establishing energy profiles and classifications, and comparing software libraries against their energy consumption

    APPLICATION OF REMOTE AND MONITORING BASED JAVA REMOTE METHOD INVOCATION

    Get PDF
    This research aims to develop application software of Remote and Monitoring based on Java Remote Method Invocation (RMI). This application software can be used as remote control and monitoring on a connected computer network that is not limited to the operating system used. This study uses an object-oriented software development and combined with the waterfall software model process which through 4 stages. The first stage, analysis requirement, observation of the application of existing remote system, and the study of literature. Second stage, the design of the system include use case diagrams that illustrate the actors activities of the application and sequence diagrams describe the sequence of execution of applications. Third stages, coding, coding implementation of the design sequence diagrams and test units or more often called white-box testing. Fourth stages, integrated testing includes the black-box testing, alpha testing that will be used to determine the performance of the application, and beta testing to users of the Focus Group Discussion Digital Networks and Multimedia Puskom UNY. Based on the testing results of software applications Remote and Monitoring based on Java Remote Method Invocation (RMI) indicates that: 1) Application of Remote and Monitoring based Java Remote Method Invocation has been successfully designed, manufactured, and implemented. 2) The performance of the application of of Remote and Monitoring based Java Remote Method Invocation has a good performance all the systems tested can run and work in accordance with the desired specifications. 3) Feasibility of applications Remote and Monitoring based on Java Remote Method Invocation in terms of usability is very feasible with percentage 82,14 %. Keywords: applications, and remote monitoring, remote system, remote control, Java, Remote Method Invocatio

    A CMMI-based approach for medical software project life cycle study

    Get PDF
    In terms of medical techniques, Taiwan has gained international recognition in recent years. However, the medical information system industry in Taiwan is still at a developing stage compared with the software industries in other nations. In addition, systematic development processes are indispensable elements of software development. They can help developers increase their productivity and efficiency and also avoid unnecessary risks arising during the development process. Thus, this paper presents an application of Light-Weight Capability Maturity Model Integration (LW-CMMI) to Chang Gung Medical Research Project (CMRP) in the Nuclear medicine field. This application was intended to integrate user requirements, system design and testing of software development processes into three layers (Domain, Concept and Instance) model. Then, expressing in structural System Modeling Language (SysML) diagrams and converts part of the manual effort necessary for project management maintenance into computational effort, for example: (semi-) automatic delivery of traceability management. In this application, it supports establishing artifacts of “requirement specification document”, “project execution plan document”, “system design document” and “system test document”, and can deliver a prototype of lightweight project management tool on the Nuclear Medicine software project. The results of this application can be a reference for other medical institutions in developing medical information systems and support of project management to achieve the aim of patient safety. ELECTRONIC SUPPLEMENTARY MATERIAL: The online version of this article (doi:10.1186/2193-1801-2-266) contains supplementary material, which is available to authorized users

    SAGE: Profiling and Optimization in Formal Methods

    Get PDF
    The quality and the correctness of software are often the greatest concern in electronic systems. Formal methods techniques and tools provide a guarantee that a design of software system is free of specific flaws. This paper discusses an open source mathematical software system SAGE, which combines and extends program analysis, testing, verification, model checking, and automated theorem proving techniques. Then we concentrate on profiling and optimization techniques in analysis and design phase of software systems in SAGE. In today's programming world optimization plays a vital role. It is an on-going, non-functional requirement that affects all stages in the development of a system, from analysis and design through development and implementation. Profiling refers to analysis of the relative execution time spent in different parts of the program. Finally, we describe various optimization techniques

    Prioritization of Re-executable Test Cases of Activity Diagram in Regression Testing Using Model Based Environment

    Get PDF
    As we all know, software testing is of vital importance in software development life cycle (SDLC) to validate the new versions of the software and detection of faults. Regression Testing, however concentrates on generating test cases on changed part of the software to detect faults more earlier than any other testing practices. In case of model based testing approach, testing is performed using top-down method (black box method) and design models of the software, for example, UML diagrams. UML diagrams gives us requirement level representation of the software in graphical format which is now a days a standard used in software engineering. In our proposed approach, we have derived a new technique which has never been used before to prioritize the test cases in model based environment. In this technique, we have used activity diagram as an input to the system. Activity diagram is used basically because it gives us the complete flow of each and every activity involved in the system and represents its complete working. Activity diagram is further changed as the requirement changes, each time, when the changes happen, they are recorded and test cases are generated for the changed diagram, test cases are also generated for the original diagram. Test cases for both the diagrams are compared and classified as re-usable and re-executable test cases. Re-usable test cases are those that remain unchanged during requirement changes and re-executable test cases belong to the changed part of the diagram. Then re-executable test cases are prioritized using one heuristic algorithm based on ACT(Activity Connector) table. Now, the question is why to prioritize only the re-executable test cases. Because, any how we have to execute re-usable test cases, as they remain same for both the versions of the diagram and are already tested when original diagram was made. But, re-executable test cases are never been tested and may detect faults in the modified design quickly and by prioritizing them we can also reduce the execution time of the test cases which will give us effective testing performance and will evolve a better new version of the software. All the existing prioritization techniques are either code based or are using various tool supports. Code based techniques are too complex and tedious because for a small change in code, we need to test whole application repeatedly. And in case of tool support, we have multiple assumptions and constraints to be followed. This proposed technique will surely give better results and as the type of technique has never been used before will also prove very effective. DOI: 10.17762/ijritcc2321-8169.15077

    Variable-Based Analysis for Traceability in Models Transformation

    Get PDF
    Model-driven development (MDD) is a software engineering approach consisting of models and their transformations. MDD gives the basic principles to visualize a software system as a set of models that are repeatedly refined until reaching a model with enough details to implement. Model-driven architecture (MDA) is the MDD view of Object Management Group. MDA main goal is to separate the system functional specification from the implementation specification on an given platform. Traceability, as a desired feature of transformations, has a major role within the paradigm since it allows the possibility to evaluate the impact at advanced stages of changes in requirement specification that were elicited early, and keeping consistency between models that guide the development, among other benefits. This paper proposes a mechanism to get traceability information from a transformation definition written in QVT language using a trace inference strategy defined ad hoc. This process is fully automated and does not depend on the execution of the transformation.Sociedad Argentina de Informática e Investigación Operativ

    Effective customer requirements management using an information supply based model

    Get PDF
    Managing customer requirements is a crucial process in any project, especially when these requirements usually keep changing throughout a project life cycle. Despite the high importance of customer requirement management in any project, there is no avail

    Systematic Testing of Embedded Automotive Software - The Classification-Tree Method for Embedded Systems (CTM/ES)

    Get PDF
    The software embedded in automotive control systems increasingly determines the functionality and properties of present-day motor vehicles. The development and test process of the systems and the software embedded becomes the limiting factor. While these challenges, on the development side, are met by employing model-based specification, design, and implementation techniques [KCF+04], satisfactory solutions on the testing side are slow in arriving. With regard to the systematic selection (test design) and the description of test scenarios especially, there is a lot of room for improvement. Thus, a main goal is to effectively minimize these deficits by creating an efficient procedure for the selection and description of test scenarios for embedded automotive software and its integration in the model-based development process. The realization of this idea involves the combination of a classical software testing procedure with a technology, prevalent in the automotive industry, which is used for the description of time-dependent stimuli signals. The result of this combination is the classification-tree method for embedded systems, CTM/ES [Con04]. The classification-tree method for embedded systems complements model-based development by employing a novel approach to the systematic selection and description of the test scenarios for the software embedded in the control systems. CTM/ES allows for the graphic representation of time-variable test scenarios on different levels of abstraction: A problem-oriented, compact representation, adequate for a human tester and containing a high potential for reusability, is gradually being transformed into a solution-oriented technical representation which is suited for the test objects\u27 stimulation. The CTM/ES notation facilitates a consistent representation of test scenarios which may result from different test design techniques. The test design technique which this method is primarily based on, is a data-oriented partitioning of the input domain in equivalence classes. Secondary test design techniques are, for instance, the testing of specific values (or value courses) or requirement-based testing. A domain-specific application pragmatics in the form of agendas supports the methodical execution of individual test activities and the interaction of different test design techniques. The methodology description leads up to an effective test strategy for model-based testing, combining the classification-tree method for embedded systems with structural testing on the model level, and accommodating the different forms of representation of the test object during model-based development. Systems which have been developed in a model-based way can be tested systematically and efficiently by means of the CTM/ES and the tools based thereon, such as the classification-tree editor for embedded systems CTE/ES [CTE/ES], as well as the model-based test environment MTest [LBE+04, MTest]

    Functional Requirements-Based Automated Testing for Avionics

    Full text link
    We propose and demonstrate a method for the reduction of testing effort in safety-critical software development using DO-178 guidance. We achieve this through the application of Bounded Model Checking (BMC) to formal low-level requirements, in order to generate tests automatically that are good enough to replace existing labor-intensive test writing procedures while maintaining independence from implementation artefacts. Given that existing manual processes are often empirical and subjective, we begin by formally defining a metric, which extends recognized best practice from code coverage analysis strategies to generate tests that adequately cover the requirements. We then formulate the automated test generation procedure and apply its prototype in case studies with industrial partners. In review, the method developed here is demonstrated to significantly reduce the human effort for the qualification of software products under DO-178 guidance
    corecore