software Product Line engineering is an approach to management of diversity in software families. Although several SPLE approaches exist in the domains of industrial software applications, product lines of data-intens...
详细信息
ISBN:
(纸本)9781467396448
software Product Line engineering is an approach to management of diversity in software families. Although several SPLE approaches exist in the domains of industrial software applications, product lines of data-intensive software systems have gained less attention. We use an incremental, delta-oriented technique to handle variability by specifying changes to be made to a core data model to define the data schemas of the products. We present a new merge-prune operator based on the superimposition of models as well as the structural well-formedness rules specified formally in Alloy. Our method provides a modular way to handle variability in data intensive systems. It is scalable with respect to the number of variation points in the system in contrast to the traditional annotative approaches for variability modeling. We have investigated the applicability of our approach by using it in a real-world case study.
This paper proposes an extension of goal-oriented analysis method where an idea generation method is combined. Goal-oriented analysis methods are one of the promising approaches for requirements elicitation. However, ...
详细信息
ISBN:
(纸本)0769524656
This paper proposes an extension of goal-oriented analysis method where an idea generation method is combined. Goal-oriented analysis methods are one of the promising approaches for requirements elicitation. However, they have two major shortcomings;1) little support for goal elicitation and decomposition into sub-goals and 2) no explicit support for collaborative activities by stakeholders to elicit goals. In particular stakeholders as the knowledge source play an important role on eliciting requirements Of high quality and all of them should participate in requirements elicitation activities. In our technique, an idea generation method like Brainstorming is used to identify sub-goals. The team of stakeholders focuses on a goal and generates the ideas related to the goal. And then the team groups the generated ideas together into sub-goals. These steps are intertwined by an idea generation method and all of the stakeholders can participate in idea generation and grouping tasks.
Classification tree is one of the methods of generating test cases from specification. It partitions the input domain into a number of classifications. A classification tree is created to depict the relationship among...
详细信息
ISBN:
(纸本)0769509169
Classification tree is one of the methods of generating test cases from specification. It partitions the input domain into a number of classifications. A classification tree is created to depict the relationship among the classifications. Test cases are then derived from this tree. However classification trees have a number of shortcomings. The expressive power is limited by the tree structure. It also rely much on human decision in selecting test cases. This paper introduces an alternative approach to the generation of test cases. Ne define classifications and classes formally. Then, we analyze the relations among classes and classifications and express these relations in vectors (class vectors). Test cases are then derived from the Cartesian product of these partitions of vectors. The expressive power of vectors is better than tree structure and hence can be applied in some systems which test cases are complicated Furthermore, more information obtained in the specifications is utilized. Hence the amount of human decision is minimized.
This paper briefly presents a checking method of elicited software requirements using requirements ontology, and introduces two extensions of the method. The first is capability of checking attributes of functional re...
详细信息
ISBN:
(纸本)9780769549224
This paper briefly presents a checking method of elicited software requirements using requirements ontology, and introduces two extensions of the method. The first is capability of checking attributes of functional requirements (who, when, where, why, how), and the second is permission of requirements verifiers to specify new rules. The method is illustrated with examples, supported by a checking tool, and evaluated with experiments.
We share experience in supporting development and evolution of a large banking product using a homegrown model driven engineering (MDE) toolset. We discuss improvements that needed to be introduced in the MDE toolset ...
详细信息
ISBN:
(纸本)9781479921430
We share experience in supporting development and evolution of a large banking product using a homegrown model driven engineering (MDE) toolset. We discuss improvements that needed to be introduced in the MDE toolset to support collaborative development with teams distributed across different geographical locations. Though experience is shared in a specific context, we believe, MDE researchers, enthusiasts, practitioners and tool vendors will find the takeaways from this experience applicable even in a more general context of large scale software development.
The choice of data structure is an important decision in any software project. Application developers do not necessarily have a good understanding of how a particular system manages its data structures and hero this m...
详细信息
ISBN:
(纸本)0769509169
The choice of data structure is an important decision in any software project. Application developers do not necessarily have a good understanding of how a particular system manages its data structures and hero this might influence performance. In this paper we provide visualisations representing the behaviour of different data structures in an object oriented distributed database system. The data is obtained from cache monitoring software and the visualisations therefore represent the actual, as opposed to the theoretical, behaviour. The visualisations can be used as a supplement to the textual description of how a particular system manages its data structures so providing developers, educators and students with a clearer understanding of the implications of their choice of data structure.
Patterns are a means for capturing experience in solving general problems. They give general solutions to common and recurring problems. They exist at various phases of software development life cycle (SDLC) namely an...
详细信息
ISBN:
(纸本)0769509169
Patterns are a means for capturing experience in solving general problems. They give general solutions to common and recurring problems. They exist at various phases of software development life cycle (SDLC) namely analysis phase, design phase, coding phase and testing phase. Patterns in each phase are identified independently. It is possible for patterns of one phase to be related to patterns in other phases. The paper proposes pattern mapping to inter-relate patterns of various phases in SDLC to address this issue. It is advantageous to capture the related patterns of different phases as a single unit for software development. Reusable Integrated Components (ICs) of patterns are proposed to capture the related patterns. A software IC is a group of inter-related patterns, that gives solutions for a recurring problem at various phases of SDLC. A representation mechanism for IC is presented using Unified Representation of an Artifact (URA) model, that captures software development process. Also, the paper proposes a software development process that is based on reusable ICs of patterns. Representation of software project developed using ICs is also discussed.
softwareengineering capabilities are increasingly important to the success of economic and political blocs. This paper analyzes quantity and quality of softwareengineering research output originating from the US, Eu...
详细信息
ISBN:
(纸本)9781665455374
softwareengineering capabilities are increasingly important to the success of economic and political blocs. This paper analyzes quantity and quality of softwareengineering research output originating from the US, Europe, and China over time. The results indicate that the quantity of research is increasing across the board with Europe leading the field. Depending of the scope of the analysis, either the US or China come in second. Regarding research quality, Europe appears to be lagging the other blocs, with China having caught up to and even having overtaken the US over time.
Methods to promote software reuse to obtain a high level of software productivity are investigated. Product line engineering is an emerging softwareengineering discipline with the new approach that makes it efficient...
详细信息
ISBN:
(纸本)0769522459
Methods to promote software reuse to obtain a high level of software productivity are investigated. Product line engineering is an emerging softwareengineering discipline with the new approach that makes it efficient to reuse embedded software by scoping a domain of systems. There is a method to define common parts, variable parts, and variation points in a domain of systems from a viewpoint of features of system. In the phase of system design and development by using the feature tree stored in core asset, system developers control interactions among subsystems in different engineering disciplines and interactions among components built in software as a subsystem.
This study investigated mutation testing for graph database queries. Database queries serve a significant role in many application programs. SQL queries are the most common, but new types of databases and their query ...
详细信息
ISBN:
(纸本)9798350344172
This study investigated mutation testing for graph database queries. Database queries serve a significant role in many application programs. SQL queries are the most common, but new types of databases and their query languages have emerged and begun gaining popularity. This paper focuses on queries written in Cypher, a language for accessing graph databases. Several mutation operators are proposed, and a tool for generating mutant Cypher queries from a given query is presented.
暂无评论