7 research outputs found

    Component based modelling for animated educational queuing networks

    Get PDF
    This paper presents two well known design patterns that are appropriate for designing Interactive Simulation components for educational purposes. These are the Delegation Event Model, used for linking between components, and the MVC (Model-View-Controller) pattern, used for connecting the components to their visualizations and graphical user interfaces (GUIs).Combining both architectures, we have constructed Discrete Event Simulation (DES) components for modelling queuing networks in the Flash environment.The resulting components not only help teachers with little programming skill to construct simulation models, but also allow learners to conduct various experiments through interactive Graphical User Interfaces (GUIs) and obtain feedbacks of model behaviour through a range of engaging visualizations

    Support for Hardware Devices in Component Models for Embedded Systems

    Get PDF
    Abstract -With the decreasing costs of electronic parts for embedded systems, complexity of their software has drastically increased. A possible solution for handling this high complexity is component-based development, a branch of software engineering that builds complex software systems out of encapsulated units of software named software components. Component-based approach has proven beneficial in enterprise systems and desktop domains. However, embedded system domain introduces some domain-specific problems (e.g. satisfying safetycriticality, real-time requirements and interaction with environment). Therefore, if we want to use the componentbased approach in embedded systems we must address these problems. In this paper we present an overview of how interaction with environment impacts the use of componentbased approach for embedded systems. We present different ways in which component models can enable us to manage hardware devices and provide examples from existing component models. We also present our research plan that addresses the need to improve how component models enable managing hardware devices. Component-based software enginveering; hardware components; hardware devices; non-functional properties; analysi

    Component-based software development for embedded systems : an overview of current research trends

    No full text

    Component-based software development for embedded systems : an overview of current research trends

    Full text link

    Safety analysis of software product lines using state-based modeling and compositional model checking

    Get PDF
    Software product lines are widely used due to their advantageous reuse of shared features while still allowing optional and alternative features in the individual products. In high-integrity product lines such as pacemakers, flight control systems, and medical imaging systems, ensuring that common and variable safety requirements hold as each new product is built or existing products are evolved is key to the safe operations of those systems. However, this goal is currently hampered by the complexity of identifying the interactions among common and variable features that may undermine system safety. This is largely due to (1) the fact that the available safety analysis techniques lack sufficient support for analyzing the combined effects of different features, and (2) existing techniques for identifying feature interactions do not adequately accommodate the presence of common features and results in repeated checking across different products. The work described here addresses the first problem by systematically exploring the relationships between behavioral variations and potential hazardous states through scenario guided executions of the state model over the variations. It contributes to a solution to the second problem by generating formal obligations at the interfaces between features, so that sequentially composed features can be verified in a way that allows reuse for subsequent products. The main contributions of this work are an approach to perform safety analysis on the variations in a product line using state-based modeling, a tool-supported technique that guides and manages the generation of model-checkable properties from product-line requirements, and a formal framework for model checking product-line features that removes restrictions on how the features can be sequentially composed. The techniques and their implementations are demonstrated in the context of a medical-device product line

    Explanation of the Model Checker Verification Results

    Get PDF
    Immer wenn neue Anforderungen an ein System gestellt werden, mĂŒssen die Korrektheit und Konsistenz der Systemspezifikation ĂŒberprĂŒft werden, was in der Praxis in der Regel manuell erfolgt. Eine mögliche Option, um die Nachteile dieser manuellen Analyse zu ĂŒberwinden, ist das sogenannte Contract-Based Design. Dieser Entwurfsansatz kann den Verifikationsprozess zur ÜberprĂŒfung, ob die Anforderungen auf oberster Ebene konsistent verfeinert wurden, automatisieren. Die Verifikation kann somit iterativ durchgefĂŒhrt werden, um die Korrektheit und Konsistenz des Systems angesichts jeglicher Änderung der Spezifikationen sicherzustellen. Allerdings ist es aufgrund der mangelnden Benutzerfreundlichkeit und der Schwierigkeiten bei der Interpretation von Verifizierungsergebnissen immer noch eine Herausforderung, formale AnsĂ€tze in der Industrie einzusetzen. Stellt beispielsweise der Model Checker bei der Verifikation eine Inkonsistenz fest, generiert er ein Gegenbeispiel (Counterexample) und weist gleichzeitig darauf hin, dass die gegebenen Eingabespezifikationen inkonsistent sind. Hier besteht die gewaltige Herausforderung darin, das generierte Gegenbeispiel zu verstehen, das oft sehr lang, kryptisch und komplex ist. DarĂŒber hinaus liegt es in der Verantwortung der Ingenieurin bzw. des Ingenieurs, die inkonsistente Spezifikation in einer potenziell großen Menge von Spezifikationen zu identifizieren. Diese Arbeit schlĂ€gt einen Ansatz zur ErklĂ€rung von Gegenbeispielen (Counterexample Explanation Approach) vor, der die Verwendung von formalen Methoden vereinfacht und fördert, indem benutzerfreundliche ErklĂ€rungen der Verifikationsergebnisse der Ingenieurin bzw. dem Ingenieur prĂ€sentiert werden. Der Ansatz zur ErklĂ€rung von Gegenbeispielen wird mittels zweier Methoden evaluiert: (1) Evaluation anhand verschiedener Anwendungsbeispiele und (2) eine Benutzerstudie in Form eines One-Group Pretest-Posttest Experiments.Whenever new requirements are introduced for a system, the correctness and consistency of the system specification must be verified, which is often done manually in industrial settings. One viable option to traverse disadvantages of this manual analysis is to employ the contract-based design, which can automate the verification process to determine whether the refinements of top-level requirements are consistent. Thus, verification can be performed iteratively to ensure the system’s correctness and consistency in the face of any change in specifications. Having said that, it is still challenging to deploy formal approaches in industries due to their lack of usability and their difficulties in interpreting verification results. For instance, if the model checker identifies inconsistency during the verification, it generates a counterexample while also indicating that the given input specifications are inconsistent. Here, the formidable challenge is to comprehend the generated counterexample, which is often lengthy, cryptic, and complex. Furthermore, it is the engineer’s responsibility to identify the inconsistent specification among a potentially huge set of specifications. This PhD thesis proposes a counterexample explanation approach for formal methods that simplifies and encourages their use by presenting user-friendly explanations of the verification results. The proposed counterexample explanation approach identifies and explains relevant information from the verification result in what seems like a natural language statement. The counterexample explanation approach extracts relevant information by identifying inconsistent specifications from among the set of specifications, as well as erroneous states and variables from the counterexample. The counterexample explanation approach is evaluated using two methods: (1) evaluation with different application examples, and (2) a user-study known as one-group pretest and posttest experiment

    Component-Based Tools for Educational Simulations

    Get PDF
    e-Learning is an effective medium for delivering knowledge and skills. In spite of improvements in electronic delivery technologies, e-Learning is still a long way away from offering anything close to efficient and effective learning environments. To improve e-Learning experiences, much literature supports simulation based e-Learning. This thesis begins identifying various types of simulation models and their features that induce experiential learning. We focus on designing and constructing an easy-to-use Discrete Event Simulation (DES) tool for building engaging and informative interactive DES models that allow learners to control the models’ parameters and visualizations through runtime interactions. DES has long been used to support analysis and design of complex systems but its potential to enhance learning has not yet been fully utilized. We first present an application framework and its resulting classes for better structuring DES models. However, importing relevant classes, establishing relationships between their objects and representing lifecycles of various types of active objects in a language that does not support concurrency demand a significant cognitive workload. To improve this situation, we utilize two design patterns to ease model structuring and logic representation (both in time and space) through a drag and drop component approach. The patterns are the Delegation Event Model, used for linking between components and delegating tasks of executing and updating active objects’ lifecycles, and the MVC (Model-View-Controller) pattern, used for connecting the components to their graphical instrumentations and GUIs. Components implementing both design patterns support the process-oriented approach, can easily be tailored to store model states and visualizations, and can be extended to design higher level models through hierarchical simulation development. Evaluating this approach with both teachers and learners using ActionScript as an implementation language in the Flash environment shows that the resulting components not only help model designers with few programming skills to construct DES models, but they also allow learners to conduct various experiments through interactive GUIs and observe the impact of changes to model behaviour through a range of engaging visualizations. Such interactions can motivate learners and make their learning an enjoyable experience
    corecore