13,290 research outputs found
Adaptive development and maintenance of user-centric software systems
A software system cannot be developed without considering the various facets of its environment. Stakeholders â including the users that play a central role â have their needs, expectations, and perceptions of a system. Organisational and technical aspects of the environment are constantly changing. The ability to adapt a software system and its requirements to its environment throughout its
full lifecycle is of paramount importance in a constantly changing environment. The continuous involvement of users is as important as the constant evaluation of the system and the observation of evolving environments. We present a methodology for adaptive software systems development and
maintenance. We draw upon a diverse range of accepted methods including participatory design, software architecture, and evolutionary design. Our focus is on user-centred software systems
Recommended from our members
Market Structure and Energy Efficiency: The Case of New Commercial Buildings
This is a report on why commercial office buildings arenât more energy efficient. Several decades of energy efficiency programs have resulted in some gains, but overall increases in the energy efficiency of buildings have fallen far short of the 30 to 50 percent improvement that many efficiency advocates believe is possible. The purpose of this study is to consider the âwhyâ question by empirically examining the dynamics of new commercial building markets. To do so, the authors used multiple research techniques, including qualitative field observation and interview methods that allow for a more in-depth understanding of complicated market processes. Their research focused primarily on new office buildings and centered in four regional markets: Sacramento, San Francisco, Seattle, and Portland. The authors identify key dynamics of commercial office building markets, describe how change and innovation occurs in commercial development, discuss the implications for energy efficiency, and suggest next steps
Incremental compilation and deployment for OutSystems Platform
OutSystems Platform is used to develop, deploy, and maintain enterprise web an
mobile web applications. Applications are developed through a visual domain specific
language, in an integrated development environment, and compiled to a standard stack
of web technologies. In the platformâs core, there is a compiler and a deployment service
that transform the visual model into a running web application.
As applications grow, compilation and deployment times increase as well, impacting
the developerâs productivity. In the previous model, a full application was the only compilation and deployment unit. When the developer published an application, even
if he only changed a very small aspect of it, the application would be fully compiled and deployed.
Our goal is to reduce compilation and deployment times for the most common use
case, in which the developer performs small changes to an application before compiling
and deploying it. We modified the OutSystems Platform to support a new incremental
compilation and deployment model that reuses previous computations as much as possible in order to improve performance.
In our approach, the full application is broken down into smaller compilation and
deployment units, increasing what can be cached and reused. We also observed that
this finer model would benefit from a parallel execution model. Hereby, we created a task driven Scheduler that executes compilation and deployment tasks in parallel. Our benchmarks show a substantial improvement of the compilation and deployment process times for the aforementioned development scenario
Complementing Measurements and Real Options Concepts to Support Inter-iteration Decision-Making in Agile Projects
Agile software projects are characterized by iterative and incremental development, accommodation of changes and active customer participation. The process is driven by creating business value for the client, assuming that the client (i) is aware of it, and (ii) is capable to estimate the business value, associated with the separate features of the system to be implemented. This paper is focused on the complementary use of measurement techniques and concepts of real-option-analysis to assist clients in assessing and comparing alternative sets of requirements. Our overall objective is to provide systematic support to clients for the decision-making process on what to implement in each iteration. The design of our approach is justified by using empirical data, published earlier by other authors
Software Infrastructure for Natural Language Processing
We classify and review current approaches to software infrastructure for
research, development and delivery of NLP systems. The task is motivated by a
discussion of current trends in the field of NLP and Language Engineering. We
describe a system called GATE (a General Architecture for Text Engineering)
that provides a software infrastructure on top of which heterogeneous NLP
processing modules may be evaluated and refined individually, or may be
combined into larger application systems. GATE aims to support both researchers
and developers working on component technologies (e.g. parsing, tagging,
morphological analysis) and those working on developing end-user applications
(e.g. information extraction, text summarisation, document generation, machine
translation, and second language learning). GATE promotes reuse of component
technology, permits specialisation and collaboration in large-scale projects,
and allows for the comparison and evaluation of alternative technologies. The
first release of GATE is now available - see
http://www.dcs.shef.ac.uk/research/groups/nlp/gate/Comment: LaTeX, uses aclap.sty, 8 page
SenNet : a programming toolkit to develop wireless sensor network applications
One of the reasons that Wireless Sensor Network(WSN) applications are not widely available is the complexity in
their development. This is a consequence of the complex nature in low-level details, which a developer must manage. The vast majority of the present application developments are done using node-centric low-level languages, for example, C. In order to make the WSN technology more universal; application development complexity nature should be reduced, and development efficiency increased. This paper describes SenNet language, which is a new approach to WSN application development using a Domain-Specific Language (DSL). SenNet empowers application developers to focus on modelling the application logic using domain specific terms. The new approach gives the ability to write applications using multi-levels of abstraction (i.e. network, group, and node-level). Evaluation results show that SenNet decreases the cognitive effort required for learning WSN application development in addition to the
time required to write the application by using automated code generation from abstracted language commands
- âŚ