Upgrade: Vol. VII, issue no. 1
Upgrade: Home Page
Upgrade: Editorial Information
Upgrade: Schedule
Upgrade: News
Upgrade: Latest Issue
Upgrade: Past Issues
Contact Upgrade
Upgrade: Search Page
Upgrade, The European Journal for the Informatics Professional
Interested in subscribing to our Newslist? Click here
Next issue (April 2006)
Monographic section dedicated to
"
Virtual Environments"

Upgrade, Vol. VII, issue no. 1: cover page by Antonio Crespo Foix, © ATI 2006

Vol. VII, issue no.1,

February 2006

Key Success Factors in Software Engineering

 Published on behalf of CEPIS by Novática (ATI, Spain)

Contents
Editions in other languages

Guest Editors:

Luis Fernández-Sanz, Juan-José Cuadrado-Gallego, and Maya Daneva

Contents
Editions of the monograph in other languages
  • Spanish, by Novática (full edition printed  -- already available--; summary, presentation and abstracts online **now available**)


Editorial Team of Upgrade


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

CEPIS (Council of European Professional Informatics Societies) promotes Upgrade
UPENET (UPGRADE European NETwork), promoted by CEPIS
Novática, journal and magazine of ATI (Spain), publishes Upgrade
EUCIP: European Certification of Informatics Professionals
 

Editorial Page

From The Editor's Desk
 
Worth To Be Mentioned
Monograph

Key Success Factors in Software Engineering
 UPENET
(
UPGRADE European NETwork)

Paper
from
the Spanish journal "Novática"


Editorial Page

From The Editors' Desk

Worth To Be Mentioned [PDF: 1 page, 344 KB]
Rafael Fernández Calvo
Abstract: The Editor in Chief of UPGRADE reports about the most important facts that have taken place since the publication of the previous issue.

Back to top of the page

Monograph: Key Success Factors in Software Engineering
Published on behalf of CEPIS by Novática (ATI, Spain)
Guest Editors: Luis Fernández-Sanz, Juan-José Cuadrado-Gallego, and Maya Daneva

Presentation
Software Engineering in Practice Today [HTML] [PDF: 2 pages, 329 KB]
Luis Fernández-Sanz, Juan-José Cuadrado-Gallego, and Maya Daneva - Guest Editors
Abstract: The guest editors comment on this monograph of  UPGRADE and Novática, and briefly introduce the papers it consists of.

Analysis of Software Engineering from An Engineering Perspective [PDF: 15 pages, 570 KB]
Alain Abran and Kenza Meridji
Abstract: Walter G. Vincenti, in his book "What engineers know and how they know it", has proposed a taxonomy of engineering knowledge. Software Engineering, as a discipline, is certainly not yet as mature as other engineering disciplines, and some authors have even challenged the notion that Software Engineering is indeed engineering. To investigate this issue, Vincenti’s categories of engineering knowledge are used to analyze the SWEBOK (Software Engineering Body of Knowledge) Guide from an engineering perspective. This paper presents an overview of the Vincent’si categories of engineering knowledge, followed by an analysis of the engineering design concept in Vincenti vs. the design concept in the SWEBOK Guide: this highlights in particular the fact that Vincenti’s engineering design concept  is not limited to the design phase knowledge area in the SWEBOK Guide, but that it pervades many of the SWEBOK knowledge areas. Finally, the SWEBOK Software Quality knowledge area is selected as a case study, and analyzed using Vincenti’s classification of engineering knowledge.

Researching The Social Side of Software Engineering [PDF: 5 pages, 345 KB]
Yvonne Dittrich
Abstract:
The social side of Software Engineering is still an under-researched area. Existing publications about qualitative social science methods and approaches are inadequate. This article gives an overview of the state-of-the-art in this developing field, identifies the central challenges and highlights ways to address them; how to make software development visible, how to combine the methods borrowed from Social Sciences with software process and method improvement, and how to handle the political side of this type of action research.

Using UMLTM 2.0 to Solve Systems Engineering Problems [PDF: 14 pages, 730 KB]
Ian Barnard
Abstract: Systems engineers are under ever-greater pressure to deliver increasingly complex systems. Systems engineers need better techniques for analyzing complex problems and for describing the complex systems that solve these problems. This paper discusses how UML 2.0 (Unified Modeling Language versión 2) can be used to address some of the issues faced by systems engineers. We explore techniques to specify system architectures, interfaces and behavior, using UML 2.0 examples.

Applying Service-Oriented Software Measurement to Derive Quality Indicators of Open Source Components [PDF: 7 pages, 967 KB]
René Braungarten, Ayaz Farooq, Martin Kunz, Andreas Schmietendorf, and Reiner R. Dumke
Abstract: By addressing the industrial issue of streamlining by faster software development and, at the same time implying reduced cost and higher quality, component-based software development is currently very popular. Regrettably, in contrast with other component industries, software components which are supposed to increase quality are most often not certified while quality assurance is a  very demanding task. This is especially the case with  zero price components from the Open Source sector, these attract a great deal of industry’s attention but remain error prone.-. In this paper we present the idea of applying a light-weight and on-demand composition of software measurement services to derive quality indicators of especially Open Source components. Furthermore, our approach is then exemplarily applied using the OOMJ (Object-Oriented Measurement of Java Technologies) Web service to reveal quality indicators of Apache Tomcat 5.5.9 as Open Source component based on Chidamber & Kemerer (C & K) as well as Abreu’s MOOD  (Metrics for Object Oriented Design) metrics set.

ISBSG Software Project Repository & ISO 9126: An Opportunity for Quality Benchmarking [PDF: 7 pages, 446 KB]
Laila Cheikhi, Alain Abran, and Luigi Buglione
Abstract: The International Software Benchmarking Standards Group (ISBSG) provides the Software Engineering community with a repository of project data which, up to now, have been used mostly for benchmarking and for estimating project effort. The 2005 version of the ISBSG repository includes data on more than 3,000 projects from various countries, sized with different functional size measurement methods and including a number of quality-related variables. ISO/IEC 9126 (International Organization for Standardization/International Electrotechnical Commission)  is a series of ISO documents for the evaluation of the quality of software products: it proposes three quality models (internal quality, external quality and quality in use), together with the ISO taxonomy of quality characteristics and subcharacteristics. ISO 9126 also includes an inventory of over two hundred measures of the quality subcharacteristics. The goal of this paper is to identify whether or not the current ISBSG repository can be of use for benchmarking software product quality on the basis of ISO 9126.

Requirements Elicitation in Web Engineering [PDF: 6 pages, 414 KB]
Stephanos Mavromoustakos and Katerina Papanikolaou
Abstract: Poor and incomplete design causes web systems to fail to meet users’ expectations and business’ goals. A major cause of failure of these systems is the non-inclusion of key success factors. These factors are incorporated into a cross-relational structure comprised of three axons: socio-cultural characteristics, user requirements and application domain. The present work identifies key success factors in web engineering and proposes a requirements engineering approach for eliciting requirements. The purpose of this method is to provide a simple way for analysts to identify these hidden requirements which otherwise could be missed or given little attention.

The Human Factor in Software Engineering [PDF: 8 pages, 876 KB]
Luis Fernández-Sanz and María-José García-García
Abstract: Software Engineering (SE) is a well established and recognized discipline with a significant influence on the software development world and on Information Technology (IT) in general. Many papers have highlighted SE as the basis for a differentiated set of professional profiles in the field of computing, and have stressed the influence of Human Resources (HR) on software productivity, but neither the standards nor the many empirical studies so far produced have provided an in-depth and wide-ranging analysis of the various specialization roles involved in a project. In this paper we take the connection between productivity and staff profiles and training as a given, and present an overview of the facts and figures concerning the definition of roles and positions in software development.

Back to top of the page

The Guest Editors

Luis Fernández-Sanz received a degree in Informatics Engineering from the Universidad Politécnica de Madrid, Spain, in 1989 and a PhD in Computer Science from the Universidad del País Vasco, Spain, in 1997 (receiving a special mention for his doctoral thesis). Since 2000 he has been the head of the Computer Systems Dept. at the Universidad Europea de Madrid, Spain. Since 1992, he has been editor of the Software Engineering section of Novática, and co-editor and founder of REICIS (Spanish Journal of Software Quality, Engineering and Innovation, <http://www.ati.es/reicis>) both published by the Spanish CEPIS society ATI (Asociación de Técnicos de Informática). He has guest-edited several monographs for Novática and UPGRADE, and has authored or co-authored several books about Software Engineering and software measurement, as well as a number of papers in international journals and conferences. He leads the Software Quality Special Interest Group of ATI in which capacity he has acted as chair of the Spanish Conference on Software Quality and Innovation organized by ATI. <luis DOT fernandez At uem DOT es>

Juan-José Cuadrado-Gallego is Full Professor at the Computer Science Dept. of the Universidad de Alcalá, Spain. Previously he was teaching in different universities in Spain and other European countries. He earned his PhD in Computer Science Engineering in 2001. His research activity is centered in the Software Engineering area, especially in software measurement and he is authoring of more than fifty scientific publications in journals, conferences and books. He is co-editor and founder of REICIS (Spanish Journal of Software Quality, Engineering and Innovation, <http://www.ati.es/reicis>) published by the Spanish CEPIS society ATI (Asociación de Técnicos de Informática). Nowadays he belongs to the Information Engineering Research Unit at the Universidad de Alcalá, where he is the leader of the Software Engineering and Software Measurement research line, and also belongs to the Software Engineering Research Laboratory of the Université de Québec, Montreal, Canada. <jjcg AT uah DOT es>

Maya Daneva has been a Senior Research Scientist with the Information Systems Group, Department of Computer Science, University of Twente, The Netherlands, since November 2004. Prior to this, she collected 9 years of Enterprise Resource Planning implementation practice as an SAP process analyst at TELUS Mobility, the second largest wireless telecommunication company in Canada, where she was consulting on SAP reference architecture models, requirement engineering processes and requirements reuse metrics. Before 1996, Dr. Daneva was a Research Associate in the Institute for Information Systems, at the University of the Saarlandes, Saarbruecken, Germany, where she headed research projects with consulting companies on software process and product improvement and benchmarking. She has authored more than 50 papers published by IEEE Computer Society, ACM Press and Springer. She was nominated twice for best industry paper award at the International Conference on Requirements Engineering, 2003 and 2005. <m DOT daneva AT utwente DOT nl>

Back to top of the page

UPENET (UPGRADE European NETwork) [PDF: 8 pages, 1.1 MB]

From Novática (ATI, Spain)
Software Patents

Software Patents in Europe after European Parliament’s Rejection
Alberto Barrionuevo-García

This paper was first published, in Spanish, by Novática (issue no. 179, Jan.-Feb. 2006, pp. 67-72). Novática, a founding member of UPENET, is a bimonthly journal published, in Spanish, by the Spanish CEPIS society ATI (Asociación de Técnicos de Informática – Association of Computer Professionals).


Abstract: The success of software science and economics has been based on four legal pillars: copyright, trade secret, trademarks and, linked to copyright, end user licence agreements (EULAs). In the USA, since the early 80s, a controversial fifth legal regime, one which has never  proved its worth in terms of benefit to society and software innovation, has been gradually emerging from case law: the software patent. However, not until the dot-com boom did software patents play a significant role in software economics. In Europe, where legislation is different from the USA’s, patents in general are regulated by the EPC, or European Patent Convention, EPC (Munich, 1973). This convention explicitly states that computer programs are non-patentable. However, the European Patent Office (EPO) has been prone to making fanciful interpretations in favour of the mass patentability of software, and indeed this remains their practice today. The few lawsuits of any importance that go to trial in the European Union are mostly found in favour of a more restrictive interpretation of software patentability, closer to the European Parliament’s contrary standpoint vis-à-vis the recently rejected software patent directive. Despite Spain having one of the most restrictive laws in Europe with regard to software patentability, there is still a certain degree of legal controversy created by the EPO’s rather sleight-of-hand interpretation of the EPC.

Back to top of the page


Monograph: Key Success Factors in Software Engineering

Presentation
A Different Focus on Software Engineering [PDF: 2 pages, 329 KB]
Luis Fernández-Sanz, Juan-José Cuadrado-Gallego, and Maya Daneva - Guest Editors 

Software Engineering (SE) has been driving the evolution of software development since the late sixties. So much has already been said about this discipline that we tend to think that yet another collection of contributions about topics so frequently addressed in journals or conferences is unlikely to offer readers a different perspective on the major challenges facing this discipline. Although every software developer has at least once wanted to see him or herself as somebody who performs development as a sound and genuine engineering process, a great many factors play a role in the success of the actual implementation of software engineering philosophy in daily practice.
 
We need to pay attention to a large number of issues if we want to experience the much vaunted benefits of an SE approach: software as a truly engineered product, the general improvement of software quality and user satisfaction, fewer delays and budget overruns, etc. Clearly software engineering is the way to achieve these objectives, but not all the concomitant problems stem from traditional issues involving technical matters or methodologies.

In this joint monograph of UPGRADE and Novática we have decided to focus on those topics which do not form part of the traditional core of typical SE books but are perhaps fundamental to the real success of SE both now and in the future.

This issue includes an interesting set of papers covering various key areas related to topics such as the application of SE principles to software development and maintenance in areas like education for an engineering discipline based on the SWEBOK (Software Engineering Body of Knowledge) framework; the efficient use of methodologies and notation (UML, Unified Modeling Language); quality assurance in specific areas such as open source components or quality data availability and conformance to standards of important project repository data such as ISBSG (International Software Benchmarking Standards Group); the human factor in SE projects from the viewpoint of standards and methods; the social and qualitative side of SE; and, last but not least, how to achieve an effective application of SE principles to web engineering. We have selected these topics because we believe them to be potential hot spots that are already influencing the future of SE.

"Analysis of Software Engineering from An Engineering Perspective", by Alain Abran and Kenza Meridji (École de Technologie Supérieure – Université du Québec, Montréal, Canada), is a keen analysis of the implications of the concept of engineering (mainly as described in a famous book by Walter G. Vincenti) in the accepted SWEBOK framework, showing how the field of design knowledge is broader than that covered by SWEBOK but is on a par in terms of quality assurance. These results are the first in a series of research efforts dealing with the comparison of the above two reference documents.

"Researching The Social Side of Software Engineering" is a paper covering an emerging view of SE that has not attracted much attention in traditional SE events. The social side of software engineering is still an under-researched area and the challenge is to ensure that research follows appropriate qualitative social science methods and approaches. The author, Yvonne Dittrich (Software Development Group, IT University of Copenhagen), provides an overall view of the state-of-the-art in this developing field, identifying the central challenges and proposing ways to address them: e.g. how to make software development visible, how to combine methods borrowed from social sciences with software process and method improvement, and how to handle the political side of this kind of research.

"Using UMLTM 2.0 to Solve Systems Engineering Problems" by Ian Barnard (Telelogic) is based on a previous paper by the author and is focused on the benefits that version 2.0 of UML can offer to software development throughout all its phases. This approach obviously needs the support of tools, but it highlights the interesting relationship between models in UML 2.0 and the verification of artefacts and generation of test cases. In fact, it is actually guided through models (not a new idea) but the paper considers the problems for a truly practical application. The influence of the new version of UML on this process is also analysed. We included this contribution as a means of covering the role of UML and other methodological considerations in the present status of software engineering.

A group of researchers from the University of Magdeburg, Germany, under the leadership of Dr. Dumke, present a lightweight and on-demand composition of software measurement services to derive quality indicators specially customized for Open Source components. Free open source components have usually been viewed with suspicion by industry as being defect-prone. In fact it is not unusual for there to be no structured or well-defined way to check the quality of such code in daily practice, so its use seems to be based on emotional confidence. The paper "Applying Service-Oriented Software Measurement to Derive Quality Indicators of Open Source Components" (written by René Braungarten, Ayaz Farooq, Martin Kunz, Andreas Schmietendorf and the abovementioned Reiner R. Dumke) is based on sound measurement principles of Object Oriented metrics with an easy to use approach for tool support.

But quality control is not just limited to defect detection in project deliverables. Quality models such as ISO 9126 provide a complete framework in which software quality can be analysed. In may cases, software effort estimation tends to forget the major role played by quality as one of the three main factors for project management (time, effort, quality). The paper "ISBSG Software Project Repository & ISO 9126: An Opportunity for Quality Benchmarking", by Laila Cheikhi, Alain Abran, and Luigi Buglione (École de Technologie Supérieure – Université du Québec, Montréal, Canada), provides an interesting analysis of the well-known ISBSG project data repository to check whether the principal quality characteristics covered by ISO 9126 are actually present in this data collection. This type of study focusing on the validity and usefulness of collected data is vital if we are to avoid something that is all too frequent in SE: the lack of reliable information on which to base decisions.

Web applications underwent an almost exponential growth in the late nineties in terms of volume, number, and importance, and now the term web engineering is firmly established as a reality for software practitioners. However, the special nature of web applications call for the customization and adaptation of  analysis and elicitation processes. Stephanos Mavromoustakos and Katerina Papanikolaou (School of Computer Science and Engineering, Cyprus College) offer a new vision of needs analysis for web software projects as well as a number of important ideas to bear in mind when dealing with user requirements in this type of projects. In fact the paper "Requirements Elicitation in Web Engineering" is not so very far away from the social side of SE described by Dr. Dittrich in this issue.

Finally, "The Human Factor in Software Engineering", by Luis Fernández-Sanz and María-José García-García (Universidad Europea de Madrid, Spain), is aimed at presenting an overview on how job profiles and positions for software development are covered by standards, methodologies and international job classifications. The paper presents the importance of this topic in the context of the influence that human resources have on software development productivity and quality. By way of a conclusion, the paper highlights the need to continue working on the clarification and unification of professional and educational frameworks, curriculum proposals, code of ethics and professional behaviour, job profiles, certification, etc.

We hope these contributions can be considered as a representative selection of the emerging issues in the extremely broad field of software engineering. Obviously, despite their importance many areas have necessarily been omitted from this issue, but we believe that the quality of the authors and the interest of the content will be more than enough to satisfy the needs of our readers.

We will finish this presentation expressing our recognition to the authors by their valuable contribution, and to the editors of UPGRADE and Novática for the opportunity given of publishing this collective work.  

Back to top of the page

Last updated on March 31st, 2006 by the Editorial Team of Upgrade

Copyright © CEPIS 2006. All rights reserved unless otherwise stated.