856 research outputs found
Combining the Continuous Integration Practice and the Model-Driven Engineering Approach
The software development approach called model-driven engineering has become increasingly widespread. The continuous integration practice has also been gaining the importance. Some works have shown that both can improve the software development process. The problem is that the model-driven engineering is still a very active research topic lacking its maturity, what translates into difficulties in optimal incorporation of the continuous integration practice in the process. We present an experience report in which we show the problems we have detected in a real project and how we have solved them. Thus, we increase the productivity of development and the non-technical people are able to modify already deployed applications. Finally, we incorporate an evaluation that shows the benefits of the proposed union
The Neuroscience Information Framework: A Data and Knowledge Environment for Neuroscience
With support from the Institutes and Centers forming the NIH Blueprint for Neuroscience Research, we have designed and implemented a new initiative for integrating access to and use of Web-based neuroscience resources: the Neuroscience Information Framework. The Framework arises from the expressed need of the neuroscience community for neuroinformatic tools and resources to aid scientific inquiry, builds upon prior development of neuroinformatics by the Human Brain Project and others, and directly derives from the Society for Neuroscience’s Neuroscience Database Gateway. Partnered with the Society, its Neuroinformatics Committee, and volunteer consultant-collaborators, our multi-site consortium has developed: (1) a comprehensive, dynamic, inventory of Web-accessible neuroscience resources, (2) an extended and integrated terminology describing resources and contents, and (3) a framework accepting and aiding concept-based queries. Evolving instantiations of the Framework may be viewed at http://nif.nih.gov, http://neurogateway.org, and other sites as they come on line
Seamless Variability Management With the Virtual Platform
Customization is a general trend in software engineering, demanding systems
that support variable stakeholder requirements. Two opposing strategies are
commonly used to create variants: software clone & own and software
configuration with an integrated platform. Organizations often start with the
former, which is cheap, agile, and supports quick innovation, but does not
scale. The latter scales by establishing an integrated platform that shares
software assets between variants, but requires high up-front investments or
risky migration processes. So, could we have a method that allows an easy
transition or even combine the benefits of both strategies? We propose a method
and tool that supports a truly incremental development of variant-rich systems,
exploiting a spectrum between both opposing strategies. We design, formalize,
and prototype the variability-management framework virtual platform. It bridges
clone & own and platform-oriented development. Relying on
programming-language-independent conceptual structures representing software
assets, it offers operators for engineering and evolving a system, comprising:
traditional, asset-oriented operators and novel, feature-oriented operators for
incrementally adopting concepts of an integrated platform. The operators record
meta-data that is exploited by other operators to support the transition. Among
others, they eliminate expensive feature-location effort or the need to trace
clones. Our evaluation simulates the evolution of a real-world, clone-based
system, measuring its costs and benefits.Comment: 13 pages, 10 figures; accepted for publication at the 43rd
International Conference on Software Engineering (ICSE 2021), main technical
trac
Combining the Continuous Integration Practice and the Model-Driven Engineering Approach
The software development approach called model-driven engineering has become increasingly widespread. The continuous integration practice has also been gaining the importance. Some works have shown that both can improve the software development process. The problem is that the model-driven engineering is still a very active research topic lacking its maturity, what translates into difficulties in optimal incorporation of the continuous integration practice in the process. We present an experience report in which we show the problems we have detected in a real project and how we have solved them. Thus, we increase the productivity of development and the non-technical people are able to modify already deployed applications. Finally, we incorporate an evaluation that shows the benefits of the proposed union
Engineering Agile Big-Data Systems
To be effective, data-intensive systems require extensive ongoing customisation to reflect changing user requirements, organisational policies, and the structure and interpretation of the data they hold. Manual customisation is expensive, time-consuming, and error-prone. In large complex systems, the value of the data can be such that exhaustive testing is necessary before any new feature can be added to the existing design. In most cases, the precise details of requirements, policies and data will change during the lifetime of the system, forcing a choice between expensive modification and continued operation with an inefficient design.Engineering Agile Big-Data Systems outlines an approach to dealing with these problems in software and data engineering, describing a methodology for aligning these processes throughout product lifecycles. It discusses tools which can be used to achieve these goals, and, in a number of case studies, shows how the tools and methodology have been used to improve a variety of academic and business systems
Automated user documentation generation based on the Eclipse application model
An application's user documentation, also referred to as the user manual, is
one of the core elements required in application distribution. While there
exist many tools to aid an application's developer in creating and maintaining
documentation on and for the code itself, there are no tools that complement
code development with user documentation for modern graphical applications.
Approaches like literate programming are not applicable to this scenario, as
not a library, but a full application is to be documented to an end-user.
Documentation generation on applications up to now was only partially feasible
due to the gap between the code and its semantics. The new generation of
Eclipse rich client platform developed applications is based on an application
model, closing a broad semantic gap between code and visible interface. We use
this application model to provide a semantic description for the contained
elements. Combined with the internal relationships of the application model,
these semantic descriptions are aggregated to well-structured user
documentations that comply to the ISO/IEC 26514. This paper delivers a report
on the Ecrit research project, where the potentials and limitations of user
documentation generation based on the Eclipse application model were
investigated.Comment: 9 pages, 9 figure
- …