Computer Aided softwareengineering tools represent one the main successes of softwareengineering in the past decades. They however need to be improved along several dimensions in order to face new challenges due to ...
详细信息
ISBN:
(纸本)9780769534466
Computer Aided softwareengineering tools represent one the main successes of softwareengineering in the past decades. They however need to be improved along several dimensions in order to face new challenges due to ever more complex applications, more heterogeneous technologies and more stakeholders involved. In this paper, we present an approach based on the concept of domain. We define a domain as an area in which a number of stakeholders is repeatedly performing similar activities. In a project, an arbitrary number of domains can be identified, being business, technical, or related to life cycle activities. In our metamodel-based approach, any domain can be easily modelled and the corresponding Computer Aided Domain Specific engineering environment (CADSE) can be generated. Using CADSE composition, complete and wide scope engineering environments can be built as a composition of an arbitrary number of domains. The paper presents the approach, the technology and draws a few lessons of the first years of use in a number of real projects.
Automatic pseudocode generation has become a growing demand for software engineers. However, most code snippets in production environments do not have corresponding pseudocode, because writing comments or textual desc...
详细信息
ISBN:
(纸本)9781728119700
Automatic pseudocode generation has become a growing demand for software engineers. However, most code snippets in production environments do not have corresponding pseudocode, because writing comments or textual descriptions of program source code typically consumes a lot of manpower. In this paper, we treat pseudocode generation task as a language translation task which means translating programming code into natural language description, and conduct a sophisticated neural machine translation model, attention seq2seq model, on this task. Experiments on a real-world dataset from an open source Python project reveal that seq2seq model could generate understandable pseudocode for practical usage.
It is widely recognized that software process improvement (SPI) engineers need to be trained by softwareengineering groups to perform quality SPI activities. However, such engineers are required to have a wide range ...
详细信息
ISBN:
(纸本)9781509055753
It is widely recognized that software process improvement (SPI) engineers need to be trained by softwareengineering groups to perform quality SPI activities. However, such engineers are required to have a wide range of skills, and therefore it is difficult to properly determine the scope and goal of training courses. To solve such problems, the group companies of Mitsubishi Electric Corporation have developed a training course for SPI engineers that can provide practical content in a short period by focusing on skills for solving the real problems that SPI engineers often encounter in the field. This paper describes the design and implementation of the course, and proves its effectiveness with a questionnaire survey answered after taking the course from which results show that 67.7% of the trainees find themselves much more skilled than before, and 89.8% believe this is due to taking the course.
Approaching the configuration of non-functional properties (NFPs) in traditional software systems is not an easy task, addressing the configuration of these properties in software product lines (SPLs) imposes even fur...
详细信息
ISBN:
(纸本)9780769542669
Approaching the configuration of non-functional properties (NFPs) in traditional software systems is not an easy task, addressing the configuration of these properties in software product lines (SPLs) imposes even further challenges. Therefore, we have devised the Feedback Approach, which extends the traditional SPL development techniques in order to improve the configuration of NFPs. In this work we present the general guidelines of our approach and also we show the feasibility of the idea by presenting a case study using the Linux Kernel.
Combinatorial robustness testing is an approach to generate separate test inputs for positive and negative test scenarios. The test model is enriched with semantic information to distinguish valid from invalid values ...
详细信息
ISBN:
(纸本)9781728146485
Combinatorial robustness testing is an approach to generate separate test inputs for positive and negative test scenarios. The test model is enriched with semantic information to distinguish valid from invalid values and value combinations. Unfortunately, it is easy to create over-constrained models and invalid values or invalid value combinations do not appear in the final test suite. In this paper, we extend previous work on manual repair and develop a technique to semi-automatically repair over-constrained models. The technique is evaluated with benchmark models and the results indicate a small computational overhead.
Model-Driven Development (MDD) is a promising approach to software development, mainly due to the pivotal role of models in its process, and the high potential it provides for automated model/ software generation. Sin...
详细信息
ISBN:
(纸本)9780769546094
Model-Driven Development (MDD) is a promising approach to software development, mainly due to the pivotal role of models in its process, and the high potential it provides for automated model/ software generation. Since software processes can themselves be considered as software, any technique or approach applied in the context of software development is also of potential use in the development of software development processes. Accordingly, the MDD approach can potentially be applied in the context of Situational Method engineering (SME) - a branch devoted to the study of developing bespoke software development processes and methods based on the specific characteristics of the development project at hand. The authors propose a Model-Driven Situational Method engineering (MDSME) framework by defining different levels of abstraction for process models, in compliance to the multilevel model abstraction and transformation approach prescribed by the Model-Driven Architecture (MDA). The framework can be used by method engineers to construct custom software development methodologies through an MDD approach that facilitates automation, enhances the accuracy of the development process produced, and improves the portability of process models.
Pull-based software development is a distributed development model that offers an opportunity to review a pull request before it gets merged into the main repository. A pull request addresses new features, bug fixing,...
详细信息
ISBN:
(纸本)9781728146485
Pull-based software development is a distributed development model that offers an opportunity to review a pull request before it gets merged into the main repository. A pull request addresses new features, bug fixing, and maintenance issues submitted by both integrators or contributors. It appears that many empirical studies are conducted to discover how pull request evaluation is done, and to our knowledge, limited research exists for assessing release readiness of pull requests. Studies also reported that the failure rate of pull-requests rapidly increases when there are many forks created. It is therefore, questions worth exploring are whether the code review really contributing to the code quality, and how to determine the release readiness of pull requests? In our previous work, test and defect coverage-based analytics model (TDCAM) has been proven to be suitable to determine the readiness of releases for software that is rapidly evolving, in which this is also a characteristic of pull-based software development. In this paper, the TDCAM has been extended to include pull request coverage indicators. The proposed model, namely as SoReady and the visualization analysis presented herein has enabled five developers in a commercial setting to make informed and evidence- based decisions regarding the test status of each pull request and overall reliability of an open source software through a prototype dashboard.
Eye-tracking studies are getting more prevalent in softwareengineering. Researchers often use different metrics when publishing their results in eye-tracking studies. Even when the same metrics are used, they are giv...
详细信息
ISBN:
(纸本)9781467396448
Eye-tracking studies are getting more prevalent in softwareengineering. Researchers often use different metrics when publishing their results in eye-tracking studies. Even when the same metrics are used, they are given different names, causing difficulties in comparing studies. To encourage replications and facilitate advancing the state of the art, it is important that the metrics used by researchers be clearly and consistently defined in the literature. There is therefore a need for a survey of eye-tracking metrics to support the (future) goal of standardizing eye-tracking metrics. This paper seeks to bring awareness to the use of different metrics along with practical suggestions on using them. It compares and contrasts various eye-tracking metrics used in softwareengineering. It also provides definitions for common metrics and discusses some metrics that the softwareengineering community might borrow from other fields.
This paper discusses detection of a set of states in Definitely modality in a distributed system, which means determining whether all paths from the initial state to the final state in the state space of the distribut...
ISBN:
(纸本)9780769534466
This paper discusses detection of a set of states in Definitely modality in a distributed system, which means determining whether all paths from the initial state to the final state in the state space of the distributed computation pass through a state in the set. It is associated with predicate detection in Definitely modality in distributed systems, which is useful in debugging and testing of distributed systems. Me study some properties of inevitable states and inevitable sets. In. this paper we introduce the concept Of independence of zones, which is closely related to detection of disjunctive normal form predicates, and helps us,for better understanding of local detection of disjunctive normal form predicates. And we give some results on independence of zones.
To be adopted by architects, modelling approaches must provide a means to leverage the software patterns and architectural styles that are relevant to development practice, instead of those proscribed by black-box CAS...
详细信息
ISBN:
(纸本)9780769546094
To be adopted by architects, modelling approaches must provide a means to leverage the software patterns and architectural styles that are relevant to development practice, instead of those proscribed by black-box CASE tools. Architecture-Centric Model-Driven software Development (AC-MDSD) is a modelling approach that provides architectural control of the generated application. However, AC-MDSD primarily focuses on generating infrastructure code. We apply AC-MDSD to web engineering and contribute a technique to define and generate system behaviour that goes beyond the create/read/update/delete infrastructure functionality. We use UML profiles augmented with OCL to specify the behaviour. We provide an example to illustrate the approach and outcomes.
暂无评论