319 research outputs found
Goal-oriented Data Visualization with Software Project Control Centers
Many software development organizations still lack support for obtaining
intellectual control over their software development processes and for
determining the performance of their processes and the quality of the produced
products. Systematic support for detecting and reacting to critical project
states in order to achieve planned goals is usually missing. One means to
institutionalize measurement on the basis of explicit models is the development
and establishment of a so-called Software Project Control Center (SPCC) for
systematic quality assurance and management support. An SPCC is comparable to a
control room, which is a well known term in the mechanical production domain.
Its tasks include collecting, in- terpreting, and visualizing measurement data
in order to provide context-, purpose-, and role-oriented information for all
stakeholders (e.g., project managers, quality assurance manager, developers)
during the execution of a software development project. The article will
present an overview of SPCC concepts, a concrete instantiation that supports
goal-oriented data visualization (G-SPCC approach), and experiences from
practical applications.Comment: 11 pages. arXiv admin note: substantial text overlap with
arXiv:1401.190
Implementing Software Project Control Centers: An Architectural View
Setting up effective and efficient mechanisms for controlling software and
system development projects is still challenging in industrial practice. On the
one hand, necessary prerequisites such as established development processes,
understanding of cause-effect relationships on relevant indicators, and
sufficient sustainability of measurement programs are often missing. On the
other hand, there are more fundamental methodological deficits related to the
controlling process itself and to appropriate tool support. Additional
activities that would guarantee the usefulness, completeness, and precision of
the result- ing controlling data are widely missing. This article presents a
conceptual architecture for so-called Software Project Control Centers (SPCC)
that addresses these challenges. The architecture includes mechanisms for
getting sufficiently precise and complete data and supporting the information
needs of different stakeholders. In addition, an implementation of this
architecture, the so-called Specula Project Support Environment, is sketched,
and results from evaluating this implementation in industrial settings are
presented.Comment: 14 pages. The final publication is available at
http://link.springer.com/chapter/10.1007%2F978-3-540-89403-2_2
Process Evolution Supported by Rationale: An Empirical Investigation of Process Changes
Evolving a software process model without a retrospective and, in
consequence, without an understanding of the process evolution, can lead to
severe problems for the software development organization, e.g., inefficient
performance as a consequence of the arbitrary introduction of changes or
difficulty in demonstrating compliance to a given standard. Capturing
information on the rationale behind changes can provide a means for better
understanding process evolution. This article presents the results of an
exploratory study with the goal of understanding the nature of process changes
in a given context. It presents the most important issues that motivated
process engineers changing important aerospace software process standards
during an industrial project. The study is part of research work intended to
incrementally define a systematic mechanism for process evolution supported by
rationale information.Comment: 8 pages. The final publication is available at
http://link.springer.com/chapter/10.1007%2F11754305_3
Process Model Difference Analysis for Supporting Process Evolution
Software development processes are subject to variations in time and space,
variations that can originate from learning effects, differences in application
domains, or a number of other causes. Identifying and analyzing such
differences is crucial for a variety of process activities, like defining and
evolving process standards, or analyzing the compliance of process models to
existing standards, among others. In this paper, we show why appropriately
identifying, describing, and visualizing differences between process models in
order to support such activities is a highly challenging task. We present
scenarios that motivate the need for process model difference analysis, and
describe the conceptual and technical challenges arising from them. In
addition, we sketch an initial tool-based approach implementing difference
analysis, and contrast it with similar existing approaches. The results from
this paper constitute the requirements for our ongoing development effort,
whose objectives we also describe briefly.Comment: 12 pages. The final publication is available at
http://link.springer.com/chapter/10.1007%2F11908562_1
Maintaining a Large Process Model Aligned with a Process Standard: An Industrial Example
An essential characteristic of mature software and system development
organizations is the definition and use of explicit process models. For a
number of reasons, it can be valuable to produce new process models by
tailoring existing process standards (such as the V-Modell XT). Both process
models and standards evolve over time in order to integrate improvements or
adapt the process models to context changes. An important challenge for a
process engineering team is to keep tailored process models aligned over time
with the standards originally used to produce them. This article presents an
approach that supports the alignment of process standards evolving in parallel
to derived process models, using an actual industrial example to illustrate the
problems and potential solutions. We present and discuss the results of a
quantitative analysis done to determine whether a strongly tailored model can
still be aligned with its parent standard and to assess the potential cost of
such an alignment. We close the paper with conclusions and outlook.Comment: 12 pages. The final publication is available at
http://link.springer.com/chapter/10.1007%2F978-3-540-75381-0_
A Decision Model for Supporting Task Allocation Processes in Global Software Development
Today, software-intensive systems are increasingly being developed in a
globally distributed way. However, besides its benefit, global development also
bears a set of risks and problems. One critical factor for successful project
management of distributed software development is the allocation of tasks to
sites, as this is assumed to have a major influence on the benefits and risks.
We introduce a model that aims at improving management processes in globally
distributed projects by giving decision support for task allocation that
systematically regards multiple criteria. The criteria and causal relationships
were identified in a literature study and refined in a qualitative interview
study. The model uses existing approaches from distributed systems and
statistical modeling. The article gives an overview of the problem and related
work, introduces the empirical and theoretical foundations of the model, and
shows the use of the model in an example scenario.Comment: 15 pages. The final publication is available at
http://link.springer.com/chapter/10.1007%2F978-3-642-02152-7_2
Liouville property and non-negative Ollivier curvature on graphs
For graphs with non-negative Ollivier curvature, we prove the Liouville
property, i.e., every bounded harmonic function is constant. Moreover, we
improve Ollivier's results on concentration of the measure under positive
Ollivier curvature
A Survey on the State of the Practice in Distributed Software Development: Criteria for Task Allocation
The allocation of tasks can be seen as a success-critical management activity
in distributed development projects. However, such task allocation is still one
of the major challenges in global software development due to an insufficient
understanding of the criteria that influence task allocation decisions. This
article presents a qualitative study aimed at identifying and understanding
such criteria that are used in practice. Based on interviews with managers from
selected software development organizations, criteria currently applied in
industry are identified. One important result is, for instance, that the
sourcing strategy and the type of software to be developed have a significant
effect on the applied criteria. The article presents the goals, design, and
results of the study as well as an overview of related and future work.Comment: 9 pages, 1 figure. The final publication is available at
http://ieeexplore.ieee.org. Link:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=519691
Towards a Multi-criteria Development Distribution Model: An Analysis of Existing Task Distribution Approaches
Distributing development tasks in the context of global software development
bears both many risks and many opportunities. Nowadays, distributed development
is often driven by only a few factors or even just a single factor such as
workforce costs. Risks and other relevant factors such as workforce
capabilities, the innovation potential of different regions, or cultural
factors are often not recognized sufficiently. This could be improved by using
empirically-based multi-criteria distribution models. Currently, there is a
lack of such decision models for distributing software development work. This
article focuses on mechanisms for such decision support. First, requirements
for a distribution model are formulated based on needs identified from
practice. Then, distribution models from different domains are surveyed,
compared, and analyzed in terms of suitability. Finally, research questions and
directions for future work are given.Comment: 10 pages. The final publication is available at
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=463865
Observation-based Development of Software Process Baselines: An Experience Report
The creation and deployment of software development processes for new domains
(such as wireless Internet services) is a challenging task due to the lack of
knowledge about adequate engineering techniques and their effects. In addition,
time-to-market pressure prevents applying long-lasting maturation of processes.
Nevertheless, developing software of a predetermined quality in a predictable
fashion can only be achieved with systematic development processes and the use
of engineering principles. A descriptive approach promises to quickly create
initial valuable process models and quantitative baselines that can be seen as
starting points for continuous improvement activities.
This paper describes the creation of software development processes for the
development of wireless Internet services based on the observation of pilot
projects that were performed at distributed development sites. Different
techniques and tools such as descriptive process modeling, process
documentation generation, goal-oriented measurement, and capturing qualitative
experience were combined to gain process baselines. Results show that the
observation-based approach helped to quickly come up with stable
context-oriented development processes and get a better understanding of their
effects with respect to quantitative and qualitative means.Comment: 7 pages. arXiv admin note: substantial text overlap with
arXiv:1403.251
- …