Results 1 - 10
of
28
B.: Estimating footprints of model operations
- In: International Conference on Software Engineering (ICSE’11
, 2011
"... When performed on a model, a set of operations (e.g., queries or model transformations) rarely uses all the information present in the model. Unintended underuse of a model can indicate various problems: the model may contain more detail than necessary or the operations may be immature or erroneous. ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
(Show Context)
When performed on a model, a set of operations (e.g., queries or model transformations) rarely uses all the information present in the model. Unintended underuse of a model can indicate various problems: the model may contain more detail than necessary or the operations may be immature or erroneous. Analyzing the footprints of the operations – i.e., the part of a model actually used by an operation – is a simple technique to diagnose and analyze such problems. However, precisely calculating the footprint of an operation is expensive, because it requires analyzing the operation’s execution trace. In this paper, we present an automated technique to estimate the footprint of an operation without executing it. We evaluate our approach by applying it to 75 models and five operations. Our technique provides software engineers with an efficient, yet precise, evaluation of the usage of their models.
A Language Definition Method for Visual Specification Languages
, 2003
"... Today, the syntax of visual specification languages such as UML is typically defined using metamodeling techniques. However, this kind of syntax definition has drawbacks. In particular, graphic metamodels are not powerful enough, so they must be augmented by a constraint language. In this report, we ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
(Show Context)
Today, the syntax of visual specification languages such as UML is typically defined using metamodeling techniques. However, this kind of syntax definition has drawbacks. In particular, graphic metamodels are not powerful enough, so they must be augmented by a constraint language. In this report, we present a text-based technique for the syntax definition of a graphic specification language. We exploit the fact that in a graphic specification language, most syntactic features are independent of the layout of the graph. So we map the graphic elements to textual ones and define the context-free syntax of this textual language in EBNF. Using our mapping, this grammar also defines the syntax of the graphic language. Simple spatial and context-sensitive constraints are then added by attributing the context-free grammar. Finally, for handling complex structural and dynamic information in the syntax, we give a set of operational rules that work on the attributed EBNF. We explain our syntax definition technique by applying it to the modeling language ADORA which is being developed in our research group. We also briefly discuss the application of our technique to the syntax definition of UML.
Correctly defined concrete syntax for visual models
- Proceedings, MoDELS/UML 2006
, 2006
"... Abstract. The syntax of modeling languages is usually defined in two steps. The abstract syntax identifies modeling concepts whereas the concrete syntax clarifies how these modeling concepts are rendered by visual and/or textual elements. While the abstract syntax is often defined in form of a metam ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
(Show Context)
Abstract. The syntax of modeling languages is usually defined in two steps. The abstract syntax identifies modeling concepts whereas the concrete syntax clarifies how these modeling concepts are rendered by visual and/or textual elements. While the abstract syntax is often defined in form of a metamodel there is no such standard format yet for concrete syntax definitions; at least as long as the concrete syntax is not purely text-based and classical grammar-based approaches are not applicable. In a previous paper, we proposed to extend the metamodeling approach also to concrete syntax definitions. In this paper, we present an analysis technique for our concrete syntax definitions that detects inconsistencies between the abstract and the concrete syntax of a modeling language. We have implemented our approach on top of the automatic decision procedure Simplify. 1
Visualizing Product Line Domain Variability by Aspect-Oriented Modeling
"... Modeling variability is a core problem in software product line engineering. The relationship between variability and commonality in a software product line bears strong similarities to the relationship between crosscutting concerns and core concerns in aspectoriented modeling. So modeling variabili ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
(Show Context)
Modeling variability is a core problem in software product line engineering. The relationship between variability and commonality in a software product line bears strong similarities to the relationship between crosscutting concerns and core concerns in aspectoriented modeling. So modeling variability with aspect-oriented techniques is an obvious idea which has been exploited before to some extent. In this paper, we propose a new approach to modeling and visualizing variability by a combination of aspect-oriented variability modeling with table-based modeling of configuration possibilities and constraints. As a modeling language, we use a slightly extended version of the ADORA language. Our main contributions are a visual, integrated model comprising both the commonality and the variability of the product line and a novel mechanism for synthesizing products from this model based on the aspect weaving capabilities of ADORA. 1.
Simulation-based Validation and Defect Localization for Evolving, Semi-Formal Requirements Models
- Proceedings of the 12th AsiaPacific Software Engineering Conference (APSEC 2005
, 2005
"... When requirements models are developed in an iterative and evolutionary way, requirements validation becomes a major problem. In order to detect and fix problems early, the specification should be validated as early as possible, and should also be revalidated after each evolutionary step. In this pa ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
(Show Context)
When requirements models are developed in an iterative and evolutionary way, requirements validation becomes a major problem. In order to detect and fix problems early, the specification should be validated as early as possible, and should also be revalidated after each evolutionary step. In this paper, we show how the ideas of continuous integration and automatic regression testing in the field of coding can be adapted for simulation-based, automatic revalidation of requirements models after each incremental step. While the basic idea is fairly obvious, we are confronted with a major obstacle: requirements models under development are incomplete and semi-formal most of the time, while classic simulation approaches require complete, formal models. We present how we can simulate incomplete, semi-formal models by interactively recording missing behavior or functionality. However, regression simulations must run automatically and do not permit interactivity. We therefore have developed a technique where the simulation engine automatically resorts to the interactively recorded behavior in those cases where it does not get enough information from the model during a regression simulation run. Finally, we demonstrate how the information gained from model evolution and regression simulation can be exploited for locating defects in the model. 1
Evolution of Requirements Models By Simulation
- In Proceedings of the 7th International Workshop on Principles of Software Evolution (IWPSE’04
, 2004
"... Simulation is a common means for validating requirements models. Simulating formal models is state-of-the-art. However, requirements models usually are not formal for two reasons. Firstly, a formal model cannot be generated in one step. Requirements are vague in the beginning and are refined stepwis ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
(Show Context)
Simulation is a common means for validating requirements models. Simulating formal models is state-of-the-art. However, requirements models usually are not formal for two reasons. Firstly, a formal model cannot be generated in one step. Requirements are vague in the beginning and are refined stepwise towards a more formal representation. Secondly, requirements are changing, thus leading to a continuously evolving model. Hence, a requirements model will be complete and formal only at the end of the modeling process, if at all. If we want to use simulation as a means of continuous validation during the process of requirements evolution, the simulation technique employed must be capable of dealing with semi-formal, incomplete models. In this paper, we present an approach how we can handle partial models during simulation and use simulation to support evolution of these models. Our approach transfers the ideas of drivers, stubs, and regression from testing to the simulation of requirements models. It also uses the simulation results for evolving an incomplete model in a systematic way towards a more formal and complete one. 1.
Unified use case statecharts: Case studies
- Requirements Engineering Journal
, 2007
"... This paper presents the results of case studies evaluating a method of unifying use cases (UCs) to derive a unified statechart model of the behavior of the domain of a proposed computer-based system. An evaluation of the unification method, the obtained statechart model of the domain, the method’s a ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
(Show Context)
This paper presents the results of case studies evaluating a method of unifying use cases (UCs) to derive a unified statechart model of the behavior of the domain of a proposed computer-based system. An evaluation of the unification method, the obtained statechart model of the domain, the method’s and model’s feedback on the UCs themselves, and how the method is used in requirements engineering practice was carried out by examining 58 software requirements specifications produced by 189 upper-year undergraduate and graduate students. The results of these studies independently confirm some of the benefits of building a unified SC mentioned in the works of Glinz; Whittle and Schumann; and Harel, Kugler, and Pnueli. 1
A Requirements Modeling Language for the Component Behavior of Cyber Physical Robotics Systems
- In Modelling and Quality in Requirements Engineering
, 2012
"... Abstract. Software development for robotics applications is a sophisticated endeavor as robots are inherently complex. Explicit modeling of the architecture and behavior of robotics application yields many advantages to cope with this complexity by identifying and separating logically and physically ..."
Abstract
-
Cited by 4 (3 self)
- Add to MetaCart
Abstract. Software development for robotics applications is a sophisticated endeavor as robots are inherently complex. Explicit modeling of the architecture and behavior of robotics application yields many advantages to cope with this complexity by identifying and separating logically and physically independent components and by hierarchically structuring the system under development. On top of component and connector models we propose modeling the requirements on the behavior of robotics software components using I/O ω automata [1]. This approach facilitates early simulation of requirements model, allows to subject these to formal analysis and to generate the software from them. In this paper, we introduce an extension of the architecture description language MontiArc to model the requirements on components with I/O ω automata, which are defined in the spirit of Martin Glinz ’ Statecharts for requirements modeling [2]. We furthermore present a case study based on a robotics application generated for the Lego NXT robotic platform. “In der Robotik dachte man vor 30 Jahren, dass man heute alles perfekt beherrschen würde”, Martin Glinz [3] 1
Aspect-Oriented Modeling with Integrated Object Models
- Proc. Modellierung 2006
, 2006
"... Abstract: With the advent of aspect-oriented programming, the need for adequate techniques for handling aspect-oriented artifacts in the early phases of the software engineering process has emerged. In this paper, we present an aspect-oriented lan-guage extension for an integrated modeling language ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
(Show Context)
Abstract: With the advent of aspect-oriented programming, the need for adequate techniques for handling aspect-oriented artifacts in the early phases of the software engineering process has emerged. In this paper, we present an aspect-oriented lan-guage extension for an integrated modeling language based on object models. We present the way aspect constructs can be handled in requirements and architectural models, and identify the impact on existing modeling languages and models. 1
An Effective Layout Adaptation Technique for a Graphical Modeling Tool
- In Proceedings of the 25th International Conference on Software Engineering
, 2003
"... Editing graphic models always entails layout problems. Inserting and deleting items requires tedious manual work for shifting existing items and rearranging the diagram layout. Hence, techniques that automatically expand a diagram when space is required for insertion and contract it when free space ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
(Show Context)
Editing graphic models always entails layout problems. Inserting and deleting items requires tedious manual work for shifting existing items and rearranging the diagram layout. Hence, techniques that automatically expand a diagram when space is required for insertion and contract it when free space becomes avaliable are highly desirable. Existing layout generation algorithms are no good solution for that problem: they may completely rearrange a diagram after an editing operation, while users want to preserve the overall visual appearance of a diagram. We have developed a technique which automatically expands or contracts a diagram layout when items are inserted or removed while preserving its overall shape, i.e. the positions of the items relative to each other. Our technique has been implemented in a prototype tool. We are using it not just for simplifying editing, but primarily for implementing an aspect-oriented visualization concept. 1.