Model-Driven Engineering (MDE) is a softwaredevelopment approach that considers the systematic use of models to develop software rather than using general purpose programming languages. The development of MDE based o...
详细信息
ISBN:
(纸本)9781538639566
Model-Driven Engineering (MDE) is a softwaredevelopment approach that considers the systematic use of models to develop software rather than using general purpose programming languages. The development of MDE based on Domain-Specific Languages (DSLs) covers two stages. The first, the creation of a set of artifacts such as DSLs, model transformation mechanisms, code generators. A second stage, where people do not necessarily with computer training using the artifacts created, develop applications simply because of the high level of abstraction allowed by technology. However, there are several obstacles that need to be overcome in order for this new approach to softwaredevelopment to be widely used. One of them, the lack of knowledge of tools and the development process with MDE. In order to minimize this problem, in the present work a categorization and description of the main environments and tools used in MDE are carried out. Using some of the tools analyzed also points out the process of creating a DSL.
Most design and evaluation of softwaretools is based on the intuition and experience of the designers. software tool designers consider themselves typical users of the teals that they build and tend to subjectively e...
详细信息
Most design and evaluation of softwaretools is based on the intuition and experience of the designers. software tool designers consider themselves typical users of the teals that they build and tend to subjectively evaluate their products rather than objectively evaluate them using established usability methods. This subjective approach is inadequate if the quality of softwaretools is to improve and the use of more systematic methods is advocated. This paper summarises a sequence of studies that show how user interface design choices for software development tools can be evaluated using established usability engineering techniques. The techniques used included guideline review, predictive modelling and experimental. studies with users.
the paper proposes a concept to unify the tools used by software developers. The goal of the paper is to describe a conceptual framework, based on client-server architecture, which aims to simplify the introduction to...
详细信息
ISBN:
(纸本)9781509040865
the paper proposes a concept to unify the tools used by software developers. The goal of the paper is to describe a conceptual framework, based on client-server architecture, which aims to simplify the introduction to new developmenttools for new users. The framework also tries to solve the issue with multiple tools serving the same purpose as well as making the process of switching between these tools easier. Following the principle of abstraction, the developers use a simplified client application instead of using the tools themselves. The environment is set in such a way that the developers can focus more on their regular tasks while the framework takes care of supporting tasks such as bug reporting, code checkout, committing and many more.
Formal methods are techniques that are firmly based in mathematics, they can be used to specify and verify computer systems. Formal techniques offer many advantages, including correctness and productivity over less fo...
详细信息
Formal methods are techniques that are firmly based in mathematics, they can be used to specify and verify computer systems. Formal techniques offer many advantages, including correctness and productivity over less formal ones. Wide acceptance of these methods is hindered by their relatively difficult notations and theories. This thesis takes the view that the availability of usable tools that support formal techniques plays an important role in promoting their use by a wider community of software engineers. As part of an effort to understand the usability aspects of these tools, this thesis addresses tools supporting the main two phases in the formal systems development life-cycle (development of formal specifications and implementation). The syntax-directed editing (SDE) approach to developing formal specifications was examined with an emphasis on the comparison of top-down and bottom-up methods. The comparison was approached by conducting a series of experiments. Firstly, by using information theoretic analysis it was possible to exclude the 'information' attribute as a distinguishing factor between the two SDEs. Secondly, by using the 'usability evaluation criteria' proposed by Shackel [Sha86] the two models were compared in a practical setting. A range of subjects (novices and experienced) were used throughout the study. Results highlighted the potential benefits of the bottom-up model of SDEs in terms of performance and attitude measures. Implementation of the bottom-up SDE used a novel algorithm that is part of the contribution of the thesis. The second part of the research used the 'cognitive dimensions' framework proposed by Green [Gre89] to analyse the usability of theorem provers. A questionnaire-based study was conducted that included a total of 27 developers and users of proof systems. Results of the analysis demonstrated the applicability of the dimensions to the theorem proving world, compared different systems, and produced a checklist for proof syst
the paper proposes a concept to unify the tools used by software developers. The goal of the paper is to describe a conceptual framework, based on client-server architecture, which aims to simplify the introduction to...
详细信息
ISBN:
(纸本)9781509040872
the paper proposes a concept to unify the tools used by software developers. The goal of the paper is to describe a conceptual framework, based on client-server architecture, which aims to simplify the introduction to new developmenttools for new users. The framework also tries to solve the issue with multiple tools serving the same purpose as well as making the process of switching between these tools easier. Following the principle of abstraction, the developers use a simplified client application instead of using the tools themselves. The environment is set in such a way that the developers can focus more on their regular tasks while the framework takes care of supporting tasks such as bug reporting, code checkout, committing and many more.
The article identifies and describes the major categories of softwaretools which are available for supporting new product development (NPD). The goals, advantages, and disadvantages of these tools, rather than comple...
详细信息
The article identifies and describes the major categories of softwaretools which are available for supporting new product development (NPD). The goals, advantages, and disadvantages of these tools, rather than complete evaluations of the merits of specific software packages, are provided. Companies offering new products are best served by considering value to customers, global competition, strategic positioning and environmental concerns. The individual item must be brainstormed, designed, named and launched with cooperation among business groups to maximize creative ability.
NASA Technical Reports Server (Ntrs) 20030065180: Collaborative softwaredevelopment in Support of Fast Adaptive Aerospace tools (Faast) by NASA Technical Reports Server (Ntrs); NASA Technical Reports Server (Ntrs); p...
详细信息
NASA Technical Reports Server (Ntrs) 20030065180: Collaborative softwaredevelopment in Support of Fast Adaptive Aerospace tools (Faast) by NASA Technical Reports Server (Ntrs); NASA Technical Reports Server (Ntrs); published by
NASA Technical Reports Server (Ntrs) 19940018043: development of the Fits tools Package for Multiple software Environments by NASA Technical Reports Server (Ntrs); NASA Technical Reports Server (Ntrs); published by
NASA Technical Reports Server (Ntrs) 19940018043: development of the Fits tools Package for Multiple software Environments by NASA Technical Reports Server (Ntrs); NASA Technical Reports Server (Ntrs); published by
Traceability is about documenting the relationships between layers of information, for instance, between system requirements and software design. Many software development tools manage design relationships, for instan...
详细信息
Traceability is about documenting the relationships between layers of information, for instance, between system requirements and software design. Many software development tools manage design relationships, for instance, between modeling elements (such as classes) and source code, or between tasks and source code files. Whatever development scale we engage in, we systematically apply information traceability. It\'s a vehicle for thinking about the way the software meets its requirements; it captures design rationale to help others understand and review; and it gives us far greater confidence in managing future changes.
Context: software companies seek to gain benefit from agile development approaches in order to meet evolving market needs without losing their innovative edge. Agile practices emphasize frequent releases with the help...
详细信息
Context: software companies seek to gain benefit from agile development approaches in order to meet evolving market needs without losing their innovative edge. Agile practices emphasize frequent releases with the help of an automated toolchain from code to delivery. Objective: We investigate, which tools are used in software delivery, what are the reasons omitting certain parts of the toolchain and what implications toolchains have on how rapidly software gets delivered to customers. Method: We present a multiple-case study of the toolchains currently in use in Finnish software-intensive organizations interested in improving their delivery frequency. We conducted qualitative semi-structured interviews in 18 case organizations from various software domains. The interviewees were key representatives of their organization, considering delivery activities. Results: Commodity tools, such as version control and continuous integration, were used in almost every organization. Modestly used tools, such as UI testing and performance testing, were more distinctly missing from some organizations. Uncommon tools, such as artifact repository and acceptance testing, were used only in a minority of the organizations. Tool usage is affected by the state of current work-flows, manual work and relevancy of tools. Organizations whose toolchains were more automated and contained fewer manual steps were able to deploy software more rapidly. Conclusions: There is variety in the need for tool support in different development steps as there are domain-specific differences in the goals of the case organizations. Still, a well-founded toolchain supports speedy delivery of new software. (C) 2016 Elsevier B.V. All rights reserved.
暂无评论