EuroSPI98 
How to Reap the Business Benefit from SPI 
European Software Process Improvement
SPI and Configuration Management
Category Index
Rated Newspaper Supported by EU Project 

Enhancing software configuration management for a process control system

ESSI PIE 23891

Mr (M.SC) Antti Välimäki
Valmet Automation Inc, Tampere, Finland
 
 

Introduction

This is the final report of ESSI project 23891- Enhancing software configuration management for a process control system, Confmanag. The objectives of this PIE are to improve software configuration management practices and to introduce measurements as part of our software development process in order to achieve faster delivery of products and improve customer response times, as well as support parallel development, geographically distributed teams and multiplatform environment.

This report describes our experiences about ClearCase and MultiSite tool applications in our baseline project and how these tools have been utilized in achieving our objectives. Furthermore, this report contains our objective related measurement results and the conclusions we have come to about the effects of tools on our working methods and organization.

Many software product developing European companies share similar software configuration management problems and the results of this experiment are useful for these companies. The European Commission through the ESSI/PIE program has supported this project.
 

Background Information

 

Objectives

Project objectives are to improve software configuration management methods in software development process and make measurements. The specific objectives are to provide good support One more objective is to measure our maturity level by applying the ISO-SPICE [1] which is being developed within the ISO-framework.
 

Starting Scenario

Valmet Automation Inc. develops and supplies control and management systems for pulp and paper, chemical and petrochemical industries, as well as power and desulphurization plants. Valmet is the world's leading supplier of distributed control systems for the pulp and paper industry. The distributed control system Damatic XDi is a complex and software intensive product in a demanding market, where high reliability and quality level are the key competitive factors.
 

Our quality and improvement level

Valmet Automation Inc. received ISO-9000 certification in the year 1992. Ever since we have continued improving the quality of our products.

The next step was to audit our software development process against ISO-SPICE (Software Process Improvement and Capability dEtermination). The audit was held in January 1997 and as a result baseline project’s configuration management [2,3,4] received the capability rating of 3. However, the new requirements will cause our rating to drop, since the current SCCS-based version management do not support the new requirements which are parallel development, geographically decentralised development and multiplatform environment.
 

Our software development environment and the main problems

The main software development process has been described in our quality system. It in itself consists of several processes, e.g. product development process, project management process and project development support process. Product development process consists of subprocesses: requirement specification, functional specification, design, implementation, module testing, integration testing and system testing. The configuration management is a subprocess of the product development support process and it has links to many subprocesses of the product development.

Rapid prototyping has been applied in development projects. Some pilot projects have been carried out with object-oriented methodology based on OMT (Object Modelling Technique by Rumbaugh et. al.). Our development environment includes:

Our major development languages are The baseline project consisted of porting of the software of Damatic XIS -information system to Windows NT -platform and the development of additional features of XIS. The project was driven by economic needs to keep our competitiveness high.

Our strengths in technical issues were thorough knowledge of UNIX and the functionality of SCCS-based version management in UNIX-platforms. Our weaknesses were the unfamiliarity with new environments and tools.

Our strengths in business were the high quality and usability of UNIX-based XIS-product, and our weakness was the absence of Windows NT –based products, since our customers were interested in Windows NT –based XIS-products – especially when user interfaces were concerned.

One of our strengths in organisation was that our personnel consist mostly of developers with university degrees in software or electrical engineering. Also our experience and knowledge are of high level.
 

Plans And Expected Outcome

 

Working Plan

This working plan includes three major activity groups:

1. Starting activities

2. Applying and measurement activities

3. Management and dissemination.

The first phase consisted of starting activities that include ClearCase training courses, the making of instruction documentation and the support for ClearCase users. It started in May 1997 and ended in June 1997. The planned deliverables were the measurement plan and configuration management instructions for the baseline project.

The second phase consisted of applying ClearCase and making measurement activities for software configuration methods. It started in July 1997 and ended in June 1998. The planned deliverables were measurement documents and new versions of configuration management instructions for the baseline project.

Management and dissemination happened during both phases. The planned deliverables were periodic progress reports, mid-term report, final report, consolidated cost statement, other dissemination documents and Spice assessment report.
 

Expected Outcomes

Work Performed

 

Organisation

PIE-project was handled as a project of its own in Valmet’s system development. It had its own PIE project manager and method support persons as its members. Baseline project operated in system development as well and it has its own project manager. The members of baseline project included both Valmet’s and subcontractors’ engineers. PIE project manager arranged e.g. project meetings and other occasions which were participated by both method support persons and, above all, the members of the baseline project. Thus it was ensured that the members of the baseline project were sufficiently supported in introduction of new methods and tools.
 

Technical Environment

The focus of our PIE was on the evaluation of new methods, procedures, measurements and tools for software confguration management.

Tools used in the project were ClearCase and Multisite for UNIX and Windows NT. Windows NT, HP-UX and Digital UNIX were used as operating systems and Disk Access as NFS software. Before this PIE only HP-UX and Digital UNIX, and of course the SCCS-based homemade version control system, were already familiar to baseline project members.

Fig. ATV.1 : The technology used in experiment

Training

A training course of one day was held in the beginning of PIE-project in June 1997 for our ClearCase administrator. ClearCase users (i.e. the members of the baseline project) went through two days’ training. In addition to this, one of the members of the method support group, who was the actual ClearCase and Windows NT support person, gave the members of the baseline project support during the PIE-project when needed. This person had familiarised himself thoroughly with ClearCase before the beginning of PIE-project.The basics of ClearCase were easily learned in this training, but of course this was not sufficient, so the support person made method instructions during the summer and held a training course based on these instructions for the members of the baseline project in autumn 1997. The method instructions described how to utilise ClearCase in the baseline project.
 

Phases of the Experiment


This working plan includes three major activity groups:

1. Starting activities

2. Applying and measurement activities

3. Management and dissemination.

The first phase was realised almost according to the plan and we made the deliverables which were the measurement plan and instruction documents. The installation of ClearCase and MultiSite succeeded well both in Valmet and in its subcontractor.

The second phase consists of applying ClearCase and making measurement activities for software configuration methods.

ClearCase was used contemporaneously with both stages. Because the decisions about configuration management methods, compiler, the structure of makefile and scripts etc. were already made in the early stages of the project, software designing had a good start. The transfer of source code files to ClearCase database went also quite well, since we transferred only the latest version to ClearCase and left the older versions in the SCCS based version controlling system. Most of the problems were naturally caused by new tools the features of which were not yet all that familiar. In spring 1998 ClearCase 3.0 was introduced in Valmet Automation Inc., which remarkably improved the usability of Windows NT. ClearCase 3.2 was introduced in August 1998, which gave a solution to our performance problem by introducing snapshot view –feature. We were now able to compile locally without using the server.

Project management and dissemination occurred during both phases. Project management consisted of project meetings, reports etc. The first public dissemination was held in December 1997 in Tampere University of Technology in Finland (web page: http://www.cs.tut.fi/configurationmanagement.html). The second public dissemination was held in January 1998 in Eurex project at Stockholm, Sweden (web page: http://www.sisu.se/projects/eurex/WorkshopConfig.html). The third and official Mid Term dissemination were held in April 1998 in Venice, Italy (web page: http://galileo.iei.pi.cnr.it/AQUIS98/). The next dissemination action was the creation of the web page of our project (http://www .valmet.com/automation/essi/ confmana.html). The final dissemination will be held in EuroSPI’98 which will take place in Gothenburg, Sweden (web page: http://www.iscn.ie/conferences/iscn98).
 

Results and Analysis

After training courses and instruction making we started the use of ClearCase and Multisite in our baseline project.

At the same time we started taking measurements and comparing current SCCS-based version management with new ClearCase-based management. Measurements were taken from a group of 64 files from which were generated seven libraries. The measurements were made in an environment where UNIX-servers were used. Files were read from their drives through NFS using UNIX-Client when the files were either in SCCS-files or in ClearCase database.
 

Technical


GENERAL COMMENTS ABOUT USING CLEARCASE AND MULTISITE

ClearCase and Multisite are good but complicated tools. The software configuration method of one’s own is important to efficiently use these tools.

SUPPORT FOR PARALLEL DEVELOPMENT

Parallel development is much more complicated way to develop software than nonparallel development. Especially here you will need good software process method to manage these situations. There is also a possibility to mistakenly change wrong version of file if you choose the wrong parallel branch from ClearCase. The use of branches is the way how ClearCase supports parallel development.

Fig. ATV.2 : Version tree and Parallel development

Version tree is a hierarchical structure in which all the versions of file1.cpp are organized. The arrows show merge operations between different versions of file1.cpp.

Parallel development is a concurrent creation of versions on e.g. two branches in the version tree.
 



Fig. ATV.3 : More configuration management and ClearCase concepts.




In the ClearCase parallel development and file merging is supported well. ClearCase also tries to minimise the likelihood that developers would work on the wrong branch by built-in Wizards and View profiles. According to Rational, the process development tool ClearGuide will take it a step further and is able to enforce users to work only on the appropriate branch of the task they are working on.

We also made measurements between SCCS- and ClearCase-based method in parallel development when five different versions of the same files were changed in two different branches and these changed files were combined into one branch. According to this test ClearCase-based method took only one third of the time which was taken with SCCS-based method. To be more specific, it took ClearCase ten minutes to combine the changed files, while SCCS-based method needed thirty minutes for the task.

Fig. ATV.4 : Time comparison when making change

SUPPORT FOR GEOGRAPHICALLY DISTRIBUTED TEAMS

Remote development is supported well in Multisite, because Multisite will automatically transfer the changes one has made from one development site to another. Firewalls may cause some problems. One might also experience some errors in sending changed packets. There is a recovery procedure for these kinds of situation, but it is a little bit complex to use. If one wants to read the files which have been developed with Multisite, he needs licenses for both ClearCase and Multisite.

In our measurements we compared the use of Multisite to the use of an ordinary FTP-program (File Transfer Protocol) in transferring changes between two agencies and we came to the following conclusion: In cases when during product development there are three or less subcontractors developing their own part of a system in their own offices, the amount of time and work needed to install and administrate Multisite is comparable to that what is needed to transfer the changed files using an ordinary FTP-program. In all other cases product management becomes so complicated that it is a good investment to acquire Multisite in order to reduce the total amount of work. The latest version (3.2) of ClearCase includes a snapshot feature that is able to utilise the use of an FTP-program described above and reduces the need to acquire Multisite licences for each developer separately.

SUPPORT FOR MULTIPLATFORM ENVIRONMENTS

Multiplatform environment is supported well: one can use e.g. Visual C++ with Windows NT and Emacs with UNIX. Makefiles, however, might become a problem, because they cannot be totally similar in UNIX and Windows NT. There are also many ClearCase properties to ensure the easy use of ClearCase and other tools in a mixed UNIX and Windows NT environment in the same project. This is also one of the ClearCase’s strengths when compared to other SCM tools.

PERFORMANCE IN MULTIPLATFORM ENVIRONMENTS

During measurement we have come to conclusion that in UNIX environment compilation of small number of files is equally efficient in both SCCS- and ClearCase-based environments. When hundreds of files are compiled, a ClearCase-based environment requires considerably more efficient UNIX-server (especially because of memory requirements) than an SCCS-based environment.

In Windows NT environment the compilation of files in a local drive was twice as fast as it was in a ClearCase database located in a UNIX-server. Fortunately the latest version (3.2) of ClearCase has snapshot feature which can be used to transfer the files to a local drive to be compiled there instead of a server drive thus considerably improving ClearCase’s performance in Windows NT environment.

SUPPORT FOR FASTER CUSTOMER RESPONSES AND DELIVERY OF PRODUCTS

New releases of product can be released fast because of short release build time. The delivery of product releases depends on manufacturer’s policy on this process area, but ClearCase gives quite a good support for fast building of new product releases.

When comparing release build times we came to conclusion that ClearCase-based environment was about 30% faster than SCCS-based environment. In our SCCS-based environment old release was searched from an optical drive in which old release has been copied during delivery. In ClearCase based environment it was searched from a database. ClearCase-based solution has some other strengths like easy labelling of delivered release thus making old releases easier to find, and the possibility to easily combine these kinds of corrections with an old release as has been earlier described under item ‘SUPPORT FOR PARALLEL DEVELOPMENT’.
 

Business

ClearCase and Multisite are good but complicated tools and they require a lot of hardware resources. The licences are also quite expensive. Furthermore, a dedicated support person is needed to help beginners in using these tools and in exceptional cases.

Parallel development support will decrease the throughput time and improve responses for customers’ needs - especially with short release build time of the old releases. This is essentially realised in maintenance phase, when possible error corrections are needed for the customers as soon as possible.

Multisite has enabled a co-operation between geographically distributed project teams. It enables the flexible use of subcontractors from the sites with sufficient technical knowledge.

The final audit of the baseline project was held in May 1998 and as a result baseline project’s configuration management received a capability rating of 3- which is a good achievement and shows that the new requirements have been fulfilled.

Multiplatform environment support has enabled easier and faster offer of Windows NT –based products to our customers. This has been economically remarkable change, since customers’ interest in Windows NT –based products has been considerable.
 

Organisation


A dedicated ClearCase support person is needed to help beginners in using these tools and in exceptional cases. This support person can support many development projects if needed.

The possibility for parallel development has made the development work more complicated. Therefore one additional person is needed to control the configuration management issues inside the project. The next chart shows the number of support calls ClearCase support person received during the PIE-project:
 
 



Fig. ATV.5 : Support calls / month

The average amount of work used in support was ½ days / week while the maximum was 2 days / week and the minimum 0 days / week.

In autumn 1997 the greatest cause of increased workload was the introduction of new methods in PIE-project. However, the amount of work spent in support remained reasonable, because we were able to provide PIE-project with good product management instructions and training. In spring 1998 ClearCase was updated to version 3.0 and in August to version 3.2.

What circumstances concerning tools reduce the need for support?

+ if users know how to use the tool correctly

+ if tool recovers from incorrect usage

+ if the rest of the development environment e.g. Windows NT –environment, UNIX-servers and compilers function correctly

+ if other members of the group are able to help if need arises i.e. the general level of knowledge about ClearCase and operating systems is high enough

+ ClearCase support person takes care of the most difficult parts, if it takes too much of actual designer’s time to learn them

What circumstances concerning methods reduce the need for support?

+ correctness and exactness of documentation

+ some kind of version control management (e.g. SCCS) is already familiar

What circumstances increase the number of support calls?

+ if support person is competent and polite

+ if support person can find a solution to the problem
 
 
 

Culture

The new methods and tools always meet some resistance from people. Because of this, training courses and good support were needed to help people to learn these new methods when working with ClearCase and Windows NT. Users have, however, understood the importance of new product management requirements and been satisfied with ClearCase since it facilitates working especially in Windows NT environment. The introduction of Windows NT in addition to UNIX as a development environment has required a lot of work as such.
 

Skills

The members of the baseline project in this PIE gained valuable additional skills as they learnt to use ClearCase in their project.
 

Key Lessons

This section summarises the key lessons that we have learnt from the process improvement experiences.
 

Technological Point of View

From a technological point of view we have learnt the following issues:

Economic Point of View

From an economic point of view we have learnt the following issues:

Strengths and Weaknesses of the Experiment

The PIE provided us a chance to use and measure the using of ClearCase and Multisite in a real project. This kind of opportunity itself was valuable for us.

From the organisational perspective, the experiment was a success because ClearCase and Multisite seem to be suitable tools for our other development projects.

One of our strengths was that we started the experiment from proportions supported by Windows NT (e.g. user interface). We also had a good ClearCase support person who had profound knowledge about ClearCase and Windows NT and was thus able to give good support. To mention some other strengths, the members of the baseline project had high level of knowledge and experience and we had other development projects where ClearCase was used as well so we could diversify gained results and their analysis.

Our weakness was, as always in development projects, the lack of time which is the reason why new tools and methods can be tested and utilised step by step.

When looking back now, it seems that we have succeeded in our objectives in this experiment.
 
 

Conclusions and Future Actions


As a conclusion we can state that our process improvement experiment was useful. The baseline project consisted of porting certain parts of the software of Damatic XIS -information system to Windows NT -platform and the development of additional features of XIS. This work will continue and we are going to use ClearCase more in our other development projects.

We are also going to try to model our software configuration process by use case method [5] which seems to be a good method to describe rules and roles.
 

Glossary

C++ A programming language

Confmanag Enhancing software configuration management for a process control system

PI Process improvement

PIE Process improvement experiment

SCM Software Configuration Management
 

References

[1] ISO/IEC 15504. SPICE - Software Process Assessment - Part 5: Construction, Selection and Use of Assessment Instruments and Tools, Version 1.00, ISO/IEC Copyright Office, Geneva, Switzerland, 1995, 130 p.

[2] H. Ronald Berlack, Software Configuration Management, John Wiley and Sons, Inc., New York, New York, USA, 1992; ISBN 0-471-53049-2.

[3] Stephen B.Compton and Guy R.Conner, Configuration management for software, Van Nostrand Reinhold, ISBN 0-422-01746-4, 1994.

[4] Fletcher J. Buckley, Implementing Configuration Management: Hardware, Software and Firmware, IEEE Computer Society Press, 1992.

[5] Jacobson I., Christerson M., Johnsson P. and Övergaard G., Object Oriented Software Engineering, A Use Case Driven Approach. Addison-Wesley, 1992.
 
 

Appendix 1

Antti Välimäki’s CV

Mr Antti Välimäki was born in Jalasjärvi (Finland) in 1961. He graduated as Master of Science from the department of Electrical Engineering in Tampere University of Technology in 1986. Since then Antti Välimäki has continued his postgraduate studies studying software development in Tampere University of Technology

After graduation he has been an employee of Valmet in various positions as follows:

1986 - 1988 software designer in Valmet Process Automation Inc.

1988 - 1990 chief designer in Valmet Process Automation Inc.

1990 - 1994 group manager in Valmet Automation Inc.

During the years mentioned above, Antti Välimäki participated in the development of Damatic XDi Distributed Control System in several tasks including implementation, design, specification, project and configuration management.

Since 1994 he has been as a software development manager in Valmet Automation Inc. In this current position his main responsibility is to develop software development methods and quality system for the whole R&D department.
 

Appendix 2

Valmet Automation Inc. (VAI)

The first part of VAI is Control Systems which develops and supplies control and management systems for the pulp and paper industry, the chemical and petrochemical industries, the metallurgical industries, and power and desulphurization plants. Valmet is the world's leading supplier of distributed control systems for the pulp and paper industry.

The second part of VAI is Measurements which has designed and manufactured transmitters for the process industry since the early 1950's. The greatest developmental challenge has always been to keep measuring technology in line with the changing needs of process industry.

The third part of VAI is SAGE Systems which is the leading North American supplier of supervisory control and data acquisition (SCADA) systems for the remote monitoring and control of oil and gas pipelines.

The fourth part of VAI is Sensodec which offers you the most advanced technology, proven reliability and a wealth of experience in analyzing your paper making machinery condition, process stability and product quality.

If you want to know more, visit our web page which is www.valmet.com/automation.
 
 


Partners in EuroSPI

Editors
ISCN LTD, ISCN GesmbH, Schieszstattgasse 4/24, 8010 Graz, and Coordination Office, Florence House, 1 Florence Villas, Bray, Ireland, office@iscn.at, office@iscn.com, office@iscn.ie, Editing Done: 19.7.2002