1,721,101 research outputs found
Effects of defects in UML models : an experimental investigation
The Unified Modeling Language (UML) is the de facto standard
for designing and architecting software systems. UML
offers a large number of diagram types that can be used with
varying degree of rigour. As a result UML models may contain
consistency defects. Previous research has shown that
industrial UML models that are used as basis for implementation
and maintenance contain large numbers of defects.
This study investigates to what extent implementers detect
defects and to what extent defects cause different interpretations
by different readers. We performed two controlled experiments
with a large group of students (111) and a group
of industrial practitioners (48). The experiment’s results
show that defects often remain undetected and cause misinterpretations.
We present a classification of defect types
based on a ranking of detection rate and risk for misinterpretation.
Additionally we observed effects of using domain
knowledge to compensate defects. The results are generalizable
to industrial UML users and can be used for improving
quality assurance techniques for UML-based development
An exploratory study on the industrial use of UML : improving control over design quality
Component-based software engineering for resource-constraint systems : what are the needs?
The effects of UML modeling on the quality of software
As the de facto industry standard for software modeling, the Unified Modeling Language (UML) is used widely across various IT domains. UML__s wide acceptance is partly because the language offers flexibility and freedom in modeling software systems: 1) UML provides an extensive set of modeling notations that can be used to model various concepts; 2) UML can be used both in a casual and formal manners. In the context of model-driven software development, the degree of freedom in which UML is used raises an important issue related to model quality. Different styles and rigors in using UML affect the quality of the resulting models. It is then logical to think that the level of quality of the UML model may affect the quality of the resulting software. This thesis reports on a series of empirical studies performed to address a pivotal question concerning the benefits of UML modeling in software development, particularly from a quality perspective. The results of these empirical studies show that the use of UML provides benefits in terms of increased quality and productivity in software development. The availability of UML models also allows early prediction of defects in software systems. Such prediction is potentially useful for identifying and fixing defects early during software development, and for prioritizing testing.STWUBL - phd migration 201
Separating computation and coordination in the design of parallel and distributed programs
The remainder of this thesis is organized as follows. Chapters 2 and 3 introduce the specification formalisms that are used in this thesis. In Chapter 2 we present the computation language. We show that it facilitates the description of specifications that are not partial to a particular mode of execution. Furthermore, we present a semantics and a logic for reasoning about correctness of programs. In Chapter 3 we present the coordination language. We define its semantics and show how it connects to the computation language. In Chapters 4 and 5 we develop a theory of refinement. This theory provides a number of proof techniques that enable us to incrementally refine the behavioural aspects of a program. These chapters form the most theoretical part of this thesis. It should be possible to get an understanding of the methods derived in these chapters without going through all these proofs. In Chapter 7 we illustrate the method of design by considering some case studies. Comparisons with related work and conclusions are described in Chapters 8 and 9.UBL - phd migration 201
ESCAPE: A Component-Based Policy Framework for Sense and React ApplicationsComponent-Based Software Engineering
Sense-and-react applications are characterised by the fact that actuators are able to react to data collected by sensors and change the monitored environment. With the introduction of nodes sporting actuators, Wireless Sensor Networks (WSNs) are being used for realising such applications. Sensor and actuator nodes are capable of interact locally. As a result, the logic that coordinates the activities of the different nodes towards a common goals has to be embedded in the network itself. In this scenario, the development of applications becomes more complex. In this paper, we present a component-based framework that facilitates the development of sense-and-react applications promoting reuse of code. While applications components are used to implement basic functionalities (sense and reaction) our framework allows the specification of application-domain requirements. Our framework is composed of a Publish/Subscribe Broker, a component-based service layer and a Policy Manager. The broker manages subscriptions information and the service layer provides mechanisms orthogonal to publish/subscribe core (e.g., diffusion protocols, data communication protocols, data encryption, etc.). The novelty of our approach is the introduction of the Policy Manager where policies are enforced. Policies are rules that govern the choices and behaviour of the system. They can be used for specifying which services have to be associated with the broker operations. Moreover, policies can embed rules for coordinating the activities of the different sensors and actuators for reaching the common goals of applications
- …
