12 research outputs found
Choosing the right microcontroller: A comparison of 8-bit Atmel, Microchip and Freescale MCUs
When choosing a microcontroller there are many options, so which platform should you choose? There is little independent information available to help engineers decide which platform might best suit their needs and most designers tend to stick with the brand with which they are familiar. This is a difficult question to answer without bias if the people
conducting the evaluations have had previous experience with MCU programming predominantly on one platform. This article draws on a case study. We built three âSmartâ Sprinkler Taps, small, self-contained irrigation controllers, differing only in the microcontroller unit (MCU) on the inside. We compare cost, development software quality and hardware performance from the perspective of a new user to each of the platforms
Practical Application Of Uml Activity Diagrams For The Generation Of Test Cases
Software testing and debugging represents around one third of total effort in development projects. Different factors which have influence on poor practices of testing have been identified through specific surveys. Amongst several, one of the most important is the lack of efficient methods to
exploit development models for generating test cases. This paper presents a new method for automatically generating a complete set of functional test cases from UML activity diagrams complementing specification of use cases. Test cases are prioritized according to software risk
information. Results from experiences with more than 70 software professionals/experts validate benefits of the method. Participants also confirm its interest and effectiveness for testing needs of industry
Automatic test case generation from UML state chart diagram: A survey
The need for developing high-quality systems and applications with the minimum faults and error in them has been increased recently.In addition, a question of time and expenses that should be as low as possible always is concerned.Thus, it needs to be updated with the testing techniques that are more structured and automated which are used during the analysis and design phase.The significant role of automated testing techniques is that it helps speeding up the delivery of services of the products to the market with little chances of loss, and increases the software value. If the purpose were to decrease the expenses and getting closer to technology, then testing automation would be a crucial choice.The aim of this survey is to improve the understanding of UML diagram based testing techniques.Test case generation from state chart has been have focused on.Also, classify the various research approaches to their methods. The issues of test coverage associated with these methods have been discussed also
Conformance Testing based on UML State Machines: Automated Test Case Generation, Execution and Evaluation
We describe a comprehensive approach for conformance testing of reactive systems. Based on a formal specification, namely UML state machines, we automatically generate test cases and use them to test the input-output conformance of a system under test. The test cases include not only the stimuli to trigger the system under test, they also include the test oracles to automatically evaluate the test execution. In contrast to Harel Statecharts, state machines behave asynchronously, which makes automatic test case generation a particular challenge. As a prerequisite we have completely formalized a substantial subset of UML state machines that includes complex structured data. The TEAGER tool suite implements our test approach and proves its applicability
A test case generation framework based on UML statechart diagram
Early software fault detection offers more flexibility to correct errors in the early
development stages. Unfortunately, existing studies in this domain are not sufficiently comprehensive in describing the major processes of the automated test case generation. Furthermore, the algorithms used for test case generation are not provided or well described. Current studies also hardly address loops and parallel paths issues, and achieved low coverage criteria. Therefore, this study proposes a test
case generation framework that generates minimized and prioritized test cases from
UML statechart diagram with higher coverage criteria. This study, conducted a review of the previous research to identify the issues and gaps related to test case generation, model-based testing, and coverage criteria. The proposed framework was designed from the gathered information based on the reviews and consists of eight components that represent a comprehensive test case generation processes. They are relation table, relation graph, consistency checking, test path minimization, test path prioritization, path pruning, test path generation, and test case generation. In addition, a prototype to implement the framework was developed. The evaluation of the framework was conducted in three phases: prototyping, comparison with previous studies, and expert review. The results reveal that the most suitable coverage criteria for UML statechart diagram are all-states coverage, all-transitions coverage, alltransition-pairs coverage, and all-loop-free-paths coverage. Furthermore, this study achieves higher coverage criteria in all coverage criteria, except for all-state coverage, when compared with the previous studies. The results of the expertsâ review show
that the framework is practical, easy to implement due to it is suitability to generate
the test cases. The proposed algorithms provide correct results, and the prototype is able to generate test case effectively. Generally, the proposed system is well accepted by experts owing to its usefulness, usability, and accuracy. This study contributes to both theory and practice by providing an early alternative test case generation framework that achieves high coverage and can effectively generate test cases from UML statechart diagrams. This research adds new knowledge to the software testing field, especially for testing processes in the model-based techniques, testing activity,
and testing tool support
Object Constraint Language Based Test Case Optimisation
Software testing, a pivotal phase in the Software Develop- ment Life Cycle (SDLC), ensures the correctness and perfor- mance of the corresponding software system. Model-based testing (MBT) is a method to validate whether the software system or specification satisfies the pre-defined requirements through design models. However, with modern systems ex- panding in complexity, testing has become a labour-intensive and unpredictable process within the SDLC. Therefore, many test case optimisation (TCO) techniques have been proposed to make the testing process more manageable. But these ap- proaches predominantly focus on code-based strategies, leav- ing systems expressed in Object Constraint Language (OCL) underserved. OCL is a part of the Unified Modeling Lan- guage (UML) standard and is a type of declarative language used to describe system specification by pre- and post- con- ditions. Initially, OCL has been proposed as a constraint language to add more details to the UML model, but along- side the development of OCL itself, there are more and more systems whose specifications are expressed in OCL.This thesis aims to systematically investigate the feasibil- ity of applying TCO techniques to the OCL-defined systems, with an emphasis on test case prioritisation (TCP) and test case minimisation (TCM) processes. A systematic literature review for the directly related topic, UML-based test case generation, is conducted in this thesis. Also, we adapted a set of test case optimisation algorithms and compared the performance between these algorithms under the context of OCL. Moreover, we modified one metric for the TCP evalu- ation process, which made the metric more suitable for the MBT and mutation testing environment. Furthermore, we introduce a full set of mutation operators and corresponding classifications to the OCL standard library, offering practical guidance for optimisation processes.The proposed TCO processes are validated and evalu- ated through four real-world systems expressed in OCL with different complexities. The experiment results demonstrate that for the TCM process, the size of the minimised test suite is reduced from 33.33% to 81.8% without losing any fault de- tection ability. For the TCP process, leveraging the modified evaluation metric, the improvements are up to 50%, indicat- ing that the prioritised test suite can detect system defects earlier when compared to the original one. Evaluating based on the considerations of effectiveness, efficiency and stability, we suggest the NSGA-II for the TCM process and the genetic algorithm for the TCP process. When combining TCP and TCM processes, the TCM process consistently increases the efficiency of the TCP process by reducing the search space for the prioritisation process
Entwicklung und Evaluierung einer Erweiterung der BPMN-Spezifikation fĂŒr einen modellbasierten und automatisierten Regressionstest verteilter BIS
ï»żThe constantly growing complexity of hard- and software systems combined with
increasing functional scope and steadily decreasing product lifecycles is leading to an
increment of model based technology usage in development and testing. Many
challenges come along with developing and testing such complex software systems.
Top priority of each company is to deliver the required software solution in the
agreed time and budget frame. But reality shows, that time and cost pressure is
massively affecting the quality of the delivered software. Therefore new testing
methods have to be introduced in an early stage of the development process. While
model based development procedures have found their way into embedded
software systems during the past view years, the model based testing (MBT) of
distributed business information systems (BIS) has come more and more in the focus
of research and industry. This dissertation provides an overview of the status quo of
the technology MBT within the domain of distributed BIS and summarizes the actual
research questions. Out of these research questions the requirements to such a test
approach arise, which are being answered within the implementation section of this
dissertation. As a modelling notation the Business Process Modelling Notation
(BPMN) is being used, differentiating this MBT approach from other approaches
within the domain of embedded systems, which are using UML. Based on this and
with the example of a debtor process (IT supported payment process) from the
business-to-business (B2B) it will be shown, how an MBT approach can contribute to
sustainably increase quality as well as test coverage of distributed BIS.
Therefore within the frame of the dissertation testing tools developed by Seppmed
GmbH and MID GmbH are being evaluated and analyzed on praxis capability. In
detail it is being investigated, how far the testing tools in combination with other
applications are fulfilling the expectations of the dissertation. For this purpose the
testing of the realizing methodic is necessary. A cost analysis as well as impacts of
MBT implementation in existing development processes will be provided in the last
part of this thesis.Die stetig wachsende KomplexitÀt von Hard- und Softwaresystemen sowie der steigende
Funktionsumfang bei stets kĂŒrzer werdenden Produktzyklen fĂŒhren zunehmend zum Einsatz
von modellbasierten Technologien in der Entwicklung und bei den Tests. Bei der
Entwicklung und beim Test solcher komplexer Softwaresysteme werden Unternehmen
heute mit neuen Herausforderungen konfrontiert. Oberste Maxime eines jeden Unternehmens
ist, dass die angeforderte Softwarelösung im vereinbarten Zeit- und Budgetrahmen
geliefert werden muss. Die Praxis zeigt allerdings, dass sich Zeit- und Kostendruck massiv
auf die QualitĂ€t der ausgelieferten Software auswirken. Neue Testmethoden mĂŒssen daher
in einem frĂŒhen Stadium des Softwareentwicklungsprozesses Einzug halten. Nachdem
modellbasierte Entwicklungsmethoden bereits in den letzten Jahren zunehmend in eingebetteten
Softwaresystemen Einzug in die Entwicklungsabteilungen gehalten haben, ist das
modellbasierte Testen (MBT) von verteilten betrieblichen Informationssystemen (BIS)
verstĂ€rkt in den Fokus von Forschung und Industrie gerĂŒckt. Diese Dissertation gibt einen
Ăberblick ĂŒber den Stand der Technik bezĂŒglich des MBT in der DomĂ€ne der BIS und
fasst aktuelle Forschungsfragen zusammen. Aus den Forschungsfragen lassen sich Anforderungen
an einen solchen Testansatz formulieren, die dann im technischen Realisierungsteil
dieser Dissertation beantwortet werden. Anders als in den bisherigen MBTAnsÀtzen
aus der DomÀne der eingebetteten Systeme wird als Modellierungsnotation nicht
auf UML, sondern auf Business Process Modeling Notation (BPMN) gesetzt. Basierend
darauf wird anhand eines Fallbeispiels mit einem betriebswirtschaftlichen Debitorenprozess
(IT-gestĂŒtzter Zahlungsabwicklungsprozess) aus dem Business-to-Business (B2B) gezeigt,
wie ein MBT-Ansatz einen Beitrag dazu leisten kann, sowohl die Testabdeckung als auch
die TestqualitÀt von verteilten BIS nachhaltig zu verbessern. Dazu werden im Rahmen dieser
Dissertation Testwerkzeuge der Firmen Seppmed GmbH und der MID GmbH evaluiert
und auf ihre Praxistauglichkeit untersucht. Dabei soll im Speziellen untersucht werden,
inwiefern diese Werkzeuge in Kombination mit Testwerkzeugen die Anforderungen dieser
Dissertation erfĂŒllen. FĂŒr die Modellierung der TestfĂ€lle in BPMN ist es notwendig, die
BPMN-Spezifikation um Testspezifika zu erweitern. Die so gewonnenen manuellen TestfÀlle
werden durch eine spezielle Adaptierung, welche im Rahmen dieser Dissertation entwickelt
wurde, in fertig automatisierte und ausfĂŒhrbereite Testskripte ĂŒberfĂŒhrt. So entsteht
eine Methode, welche es ermöglicht, GeschĂ€ftsprozesse, die verteilt ĂŒber mehrere verschiedene
Softwaresysteme abgewickelt werden, End-to-End zu testen. Da die Notwendigkeit
und die Motivation dieser Dissertation aus der Praxis entstanden, wird die entwickelte Methode
dementsprechend unter Praxisbedingungen erprobt und evaluiert. Dabei konnte
festgestellt werden, dass sowohl die Testabdeckung (Prozessabdeckung) als auch die TestqualitÀt
am Fallbeispiel erhöht werden konnten und gleichzeitig eine Testzeitersparnis von
ca. 50% erreicht wurde
Fail-Safe Testing of Safety-Critical Systems
This dissertation proposes an approach for testing of safety-critical systems. It is based on a behavioral and a fault model. The two models are analyzed for compatibility and necessary changes are identified to make them compatible. Then transformation rules are used to transform the fault model into the same model type as the behavioral model. Integration rules define how to combine them. This approach results in an integrated model which then can be used to generate tests using a variety of testing criteria. The dissertation illustrates this general framework using a CEFSM for the behavioral model and a Fault Tree for the fault model. We apply the technique to a variety of applications such as a Gas burner, an Aerospace Launch System, and a Railroad Crossing Control System. We also investigate the scalability of the approach and compare its efficiency with integrating a state chart and a fault tree. Construction and Analysis of Distributed Processes (CADP) has been used as a supporting tool for this approach to generate test cases from the integrated model and to analyze the integrated model for some properties such as deadlock and livelock