Slowly Reaching towards Software Engineering Professionalism

AUTHOR

J. Barrie Thompson
School of Computing Engineering and Technology
University of Sunderland,
St Peter’s Way,
Sunderland, United Kingdom.

ABSTRACT

The call for papers highlights that the convergence of computing, media and technologies means that people have become more and more dependant on technology at work, at home, in travel, in learning and in communicating and that systems based on computing are powerful agents for change. Yet the production of such systems by the computing sector too frequently appears to be carried out in an immature and undisciplined way. It is also apparent that the world of Computing/Information Technology/Informatics has not even reached a level of maturity where there is an agreed terminology and understanding between one geographical/special interest group and another. For example, attendance at a major Information Systems conference will give a very different view of “Computing” (my preferred term) than would be obtained from attendance at a major Software Engineering conference. However, whatever terminology and paradigms are used there is a clear need for those who specify, design, implement, test, and maintain software systems to approach their work in a systematic and professional manner. These people are the Software Engineers that the sector will need to rely on more and more. Just as Mechanical Engineering shaped the 19th century and Electrical Engineering shaped the 20th century it will be Software Engineering (SE) that will shape the 21st century. However, SE is different to these older disciplines in that it must be viewed in a wider context. Already we have situations where, for example, software can be specified in the USA, developed in India, and then used globally on the Internet. It is thus of paramount importance that the SE discipline is viewed at a global level rather than at just at the continental or national level.

To support the SE discipline there needs to be both educational and professional infrastructures reflect a true “engineering ethos”. Also, as has been discussed by Ford and Gibbs (1996) SE education and training must be linked to:

  • Professional practice and professional development
  • Skills development
  • Certification and licensing
  • Codes of Ethics
  • Professional societies and accreditation

In addition, there also needs to be defined at least a base line body of knowledge, that has been internationally agreed, so that disparate flavours of SE are avoided. SE is a discipline that must operate within a global dimension and not be too constrained by national, continental or other similar boundaries.

Until recently it appeared that substantial progress was being made towards establishing SE as a profession. In particular:

  • The IEEE Computer Society and the Association for Computer Machinery had in 1993 created a Joint IEEE-CS and ACM Steering Committee for the Establishment of Software Engineering as a Profession. The committee’s task was primarily to “establish the appropriate set(s) of criteria and norms for professional practice of software engineering upon which industrial decisions, professional certification and education curricula can be based.” In 1998 a successor to the Joint Steering Committee was created. This IEEE-CS/ACM Software Engineering Coordinating Committee (SWECC) was then made responsible for coordinating, sponsoring and fostering all the various activities regarding SE within the IEEE-CS and ACM’s sphere of operation. These included areas such as: standards of practice and ethics, a body of knowledge, curriculum guidelines, and exam guidelines.
  • The Texas Board of Professional Engineers had in June 1998 enacted rules that recognised Software Engineering as a distinct engineering discipline (Speed, 1998). These rules went into effect on July 18th 1998 and applications for licenses were accepted from August 1st 1998. This legislation enables engineering licenses to be issued to Software Engineers so that they could, within the State of Texas, legally represent themselves to the general public as an engineer, offer consulting engineering services to private and public entities, and perform engineering design or construction on public works.
  • In 1999 and early 2000 a significant number of academic papers promoting areas related to SE professionalism started to appear in major computing journals [e.g. (Bourque et al, 1999), (Gotterbarn, 1999), (Lethbridge, 2000), and (Pour et al, 2000) indicating that there was indeed a groundswell of positive opinion in this area.

Then, in the summer of 2000 ACM decided to withdraw from the IEEE-CS/ACM Software Engineering Coordinating Committee (SWECC) (Bagert, 2000) and, with this, much of the progress that had been made was thrown into question.

ACM’s withdrawal, although regrettable, does perhaps indicate that there may have been some fundamental flaws in some of the projects that SWEEC had been supporting and the perceived relationship between them and the Texas licensing model. What is necessary now is to:

  1. Undertake a critical review of all the activities that have been undertaken under the auspices of SWECC in order to identify a common core that is applicable not only to situations within the North American continent but which is also acceptable to a world-wide community.
  2. Consider other current initiatives that are relevant to establishing a SE profession.
  3. Select what is appropriate and start to move on.

The final paper for ETHICOMP will attempt to commence this process by evaluating two of SWEEC’s projects which have made significant progress and are very relevant to a world-wide audience. The projects are:

  1. The SWEBOK project which is concerned with defining a Software Engineering Body of Knowledge
  2. The project on defining a Software Engineering Code of Ethics and Professional Practice.

The paper will then address work that has been carried out under the auspices of the International Federation of Information Processing (IFIP) related to the Harmonisation of Professional Standards in Information Technology, which appears very relevant to the SE discipline. The match between the proposals relating to the IFIP harmonisation project and the work already carried out by IEEE-CS and ACM will be highlighted and it will be shown that the IFIP proposals can be used as a framework for SE professionalism across the world.

REFERENCES

Bagert D.J., (2000), ACM Withdraws from SWEcc, in Forum for Advancing Software engineering Education (FASE), Volume 10, Number 07, July, available online at http://www.cs.ttu.edu/fase

Bourque, P. et al, (1999) The Guide to the Software Engineering Body of Knowledge, IEEE Software, Vol. 16, No. 6, pp35-44, November/December.

Ford, G. and Gibbs, N.E., (1996), A Mature Profession of Software Engineering, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, Technical Report CMU/SEI-96-TR-004.

Gotterbarn, D, (1999), How the New Software Engineering Code of Ethics Affects You, IEEE Software, Vol. 16, No. 6, pp58-64, November/December.

Lethbridge, T. C. (2000), What Knowledge Is Important to a Software Professional? IEEE Computer, Vol. 33, No. 5, pp 44-50, May.

Pour, G., Griss M. L. and Lunz, M. (2000), The Push to Make Software Engineering Respectable, IEEE Computer, Vol. 33, No. 5, pp 35-43. May.

Speed J.R. (1998), Software Engineering: An Examination of the Actions Taken by the Texas Board of Professional Engineers, October 12th , Available from Texas Board of Professional Engineers Web site at http://www.main.org/pebody/soft.htm