|
Chief Editor: Rafael Fernández
Calvo, <rfcalvo AT ati DOT
es>
Associate Editors: François Louis Nicolet, <nicolet AT acm DOT org>; Roberto Carniel, <rcarniel AT dgt DOT uniud DOT it>; Zakaria Maamar, <Zakaria DOT Maamar AT zu DOT ac DOT ae>; Soraya Kouadri Mostéfaoui, <soraya DOT kouadrimostefaoui AT unifr DOT ch> (E-mail addresses written with anti-spamming disguise) Acrobat Reader is required to display PDF files |
|
| Monograph STP, Software Process Technology |
Mosaic Paper News & Events |
UPENET (UPGRADE European NETwork) Papers from the Spanish journal "Novática" and the Cyprus journal "Pliroforiki" |
Presentation
Software Process Technology: Improving Software Project Management and Product Quality
[HTML]
[PDF: 3 pages, 165 KB]
(includes a list of Useful
References for those interested in knowing more about matters
related
to Software Process Technology.)
Francisco Ruiz-González and Gerardo Canfora -
Guest Editors
Abstract: The guest editors present the monograph and briefly introduce the papers that make part of it.
Applying The Basic Principles of Model Engineering to The Field of Process Engineering [PDF:
7 pages, 216 KB]
Jean Bézivin and Erwan Breton
Abstract:
A new information system landscape is emerging that will probably be
more model-centered than object-oriented, characterized by many models
of low granularity and high abstraction. These models may describe
various aspects of a system such as software product properties, static
and dynamic business organization, non-functional requirements,
middleware platforms, software processes, and many more. Each model
represents some particular point of view of a given system, existing or
in construction, and this model conforms to a precise metamodel or DSL
(Domain Specific Language). In this paper we present some advantages of
using the unification framework of model engineering to deal with the
various facets of process engineering. As the view of the software
life-cycle is progressively shifting from a simple definition and
composition of objects to a sequence of model transformations, the need
to characterize this by a precise process is becoming urgent.
Description of software artifacts, processes and transformations may
all be uniformly captured by different forms of models. This approach
provides a regular framework where business and software production
process models are going to play an increasingly important role. In
this paper we illustrate some possibilities of model-based process
engineering.
Supporting the Software Process in A Process-centered Software Engineering Environment [PDF: 7 pages, 199
KB]
Hans-Ulrich Kobialka
Abstract: In
software projects there exist tools, working schemes, and
collaboration. Turning such an environment into a Process-centred
Software Engineering Environment (PSEE), involves: 1) Augmenting the
process with an additional flow of information and a dedicated user
interface. 2) Supporting wanted process steps. 3)
Disabling unwanted process steps. The reason for this is that it is not
practical to claim that all activities in software projects have to be
completely defined and supported by a PSEE. Instead, process support
has to be introduced incrementally. This paper illustrates how this can
be achieved.
Francisco Ruiz-González has a PhD in Computer Science from the Universidad de Castilla-La Mancha (UCLM), Spain, and an MSc in Chemistry-Physics from the Universidad Complutense de Madrid,
Spain. He is a full time Associate Professor of the Dept. of Computer
Science at UCLM in Ciudad Real, Spain. He was the Dean of the Faculty
of Computer Science between 1993 and 2000. Previously, he was the
Director of Computer Services at the aforementioned university
(1985-1989) and he has also worked in private companies as an
analyst-programmer and project manager. He is a member of the Alarcos
Research Group, <http://alarcos.inf-cr.uclm.es/english/>. His
current research interests include software process technology and
modelling, software maintenance, and methodologies for software
projects planning and management. He has also worked in the fields of
GIS (Geographical Information Systems), educational software systems
and deductive databases. He has written eight books and fourteen
chapters on the abovementioned topics and he has published 90 papers in
Spanish and international journals and conferences. He has sat on nine
programme committees and seven organizing committees and he belongs to
several scientific and professional associations: ACM, IEEE-CS, ATI,
AEC, AENOR, ISO JTC1/SC7, EASST, AENUI and ACTA. <Francisco DOT
RuizG AT uclm DOT es>
One
of the main lines of work on the enhancement of software product
quality is the study and improvement of the processes by which software
is developed and maintained. This statement is based on the assumption
that there is a direct correlation between a quality process and
product quality. The area of study in the field of software engineering
addressing this problem is known as “Software Process Technology”
(SPT), or simply “Software Process” (SP).
Research into SPT as a separate discipline began in the 80s (International
Software Process Workshop, European Workshop on Software Process
Technology, Journal of Software Process Technology: Improvement and
Practice,...), but it is only in the last 5 or 6 years that it
has acquired a certain maturity in terms of its real use in software
engineering projects. The first important contribution of SPT was to
confirm that the development and maintenance of software are complex
processes which require a collective and creative effort. Thus the
quality of a software product is heavily dependent on the people, the
organisation and the procedures involved in creating, delivering and
maintaining it.
2 The Contents of This Monograph
This monograph issue opens with the article “Software Process: Characteristics, Technology and Environments”
which the authors of this presentation have written as an introduction
to the topic. It deals with three essential aspects: software process
specific characteristics; the justification of SPT as a way of
providing integrated support to both production and management
processes; and Software Engineering Environments (SEEs). In the last
point, we stress the different dimensions of software tool
integration within an SEE and the proposed process orientation for SEEs
(Process-centered Software Engineering Environment, PSEE).
“Key Issues and New Challenges in Software Process Technology” was written by Jean-Claude Derniame and Flavio Oquendo
(both have played major roles in the EWSPT - European Workshop on
Software Process Technology - series of conferences). It is an analysis
of the evolution and results of this field over its twenty years of
existence and the key unresolved challenges SPT has today: the support
of typical agile processes, open source software, and worldwide
software development (globalization). The first part is an introduction
to SPT – which complements this introductory article - including a
generic process framework and the relationship between SPT and process
maturity.
As a demonstration of the industrial maturity that SPT is reaching, “A Taxonomy of Software Engineering Environment Services: The Upcoming ISO/IEC Standard 15940”, by Dan H. Lee and Juan Garbajosa-Sopeña,
presents us the future ISO standard of which they are co-editors. The
authors classify, enumerate and define all the possible services that a
SEE can provide to give automatic support to the various processes of
software life cycle.
The close relationship between business models used by the software
industry and processes that are carried out during software development
and maintenance makes the reflections, analyses and explanations put
forward by Alfonso Fugetta in “Open Source and Free Software: A New Model for The Software Development Process?” highly interesting, useful and illuminating.
The next two articles refer to SP modelling. In “Applying The Basic Principles of Model Engineering to The Field of Process Engineering”, Jean Bezivin and Erwan Breton
introduce model-driven system engineering, presenting the MDA
(Model-Driven Architecture) proposed by OMG (Object Management Group)
whose aim is to separate platform-independent aspects from the
platform-dependent aspects in the design of software system
architecture. As proof of the strength of this new "model-driven"
development paradigm, the authors show how it can be applied to
processes using a non-MDA based COTS (Commercial Off-The-Shelf)
software, MS-Project, demonstrating that this approach enables us to
design and build more general solutions.
In “Software Process Modelling Languages Based on UML”, Pere Botella i López, Xavier Franch-Gutiérrez and Josep M. Ribó-Balust
introduce the reader to Process Modelling Languages (PMLs). In
particular they analyse the possibilities of UML (Unified Modelling
Language) to model the structural and behavioural aspects of
processes, and present two PMLs, namely SPEM and PROMENADE, that take
advantage of this notation to model software processes.
Focusing on another interest point, the next two articles are devoted to technological aspects of SEEs. In “Supporting the Software Process in A Process-centered Software Engineering Environment”, Hans-Ulrich Kobialka
carries out a systematic study of the process support requirements a
PSEE should satisfy, and proposes a list of ingredients (groups of
services) to this end. The author presents the mechanisms available in
LMP ALADYN for process automation (triggers, task patterns,
constraints, etc.) and impact control (permissions).
The article “Managing Distributed Projects in GENESIS” was written by Lerina Aversano, Andrea De Lucia, Matteo Gaeta, Pierluigi Ritrovato, and Maria-Luisa Villani.
They propose an approach and an environment to support the management
of distributed software projects allowing the definition and enactment
of software process models in a decentralized and autonomous multi-site
manner.
In “Software Process Measurement”, Félix García-Rubio, Francisco Ruiz-González, and Mario Piattini-Velthuis,
argue the importance of measuring SPs to be able to carry out
evaluation and improvement. The authors identify the measurable
entities of a SP and, as a use case, they present a set of metrics that
can be used to estimate the maintainability of a process model.
It is usual for a process to pass through various adaptations due to
the different operational contexts in which the process is performed.
These adaptations involve the creation of distinct versions from the
same generic process which are known as specialized processes. In “Process Diversity and how Practicioners Can Manage It”, Danilo Caivano and Corrado Aaron Visaggio
present a framework based on process patterns to manage and to maintain
all these different process models. The application of this framework
to software system maintenance is also included as a case study.
We hope this collection of articles (thanks must go the authors for
their valuable contributions) provides an introduction to and an
overview of Software Process Technology. We believe that, by means of
automation and the integration of various engineering and managerial
processes, this field can be a major help to software engineers in
years to come.
Translation by Steve Turpin
These
references, additional to the ones included in the papers this
monography consists of, enlarge the field of Software Process
Technology for readers interested in knowing more about this matter.
| Last updated on October 16th, 2004 | the Editorial Team of Upgrade |