The following memorandum from the Chair of the PEO Software Engineering Task Force was forwarded to the Canadian Council of Professional Engineers and the other provincial engineering associations/order in early November. It represents PEO's position on the recommendation of the CCPE/AUCC Software Engineering Panel that software engineering programs at Canadian universities be accredited by a new, separate accreditation body comprising representatives of the Canadian Engineering Accreditation Board and the Computing Science Accreditation Council. The submission was endorsed by PEO's Executive Committee on November 7, 2000.
Memorandum
To: Peter DeVita, President PEO
From: George Comrie, Chairman OSWET
Date: October 31, 2000
Subject: RECOMMENDATIONS OF THE SOFTWARE ENGINEERING PANEL
As requested by PEO Council, the Professional Engineers Ontario Software Engineering Task Force (OSWET) reviewed the recommendations of the Software Engineering Panel and makes the following report.
The primary objective of the Software Engineering Panel (SWEP) was to find a solution that would prevent confusion in the use of the term “software engineering” within the undergraduate university community. A secondary objective was to improve the working relationships between the engineering and computer science disciplines. PEO fully agrees with these objectives and wishes to pursue a win-win solution for both engineering and computer science.
The proposed SWEP solution of establishing a separate board for accrediting undergraduate software engineering programs (Software Engineering Accreditation Board or SEAB) does not meet the primary objective and in fact makes the issue more confusing. The SWEP recommendations are based on some questionable assumptions, such as:
PEO’s mandate is to ensure that the public welfare and interest are served where engineering is concerned. Since the practice of software engineering has the potential of impacting the public interest, PEO is responsible for its regulation. This view is consistent with the IEEE definition of software engineering as: the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software: that is the application of engineering to software. Furthermore, the direction in the US is to place software engineering under the engineering umbrella as demonstrated by the expansion of the ABET scope to be “Accreditation Board for Engineering, Computing and Technology” (i.e. ABECT).
Software engineers, like engineers in other disciplines, need to have a broad awareness and understanding of core engineering in order to be able to recognise the boundaries of the other disciplines. Competence implies the awareness of the limits of one’s own competency. These core components, particularly in the basis sciences, provide engineers with this awareness of other disciplines. This knowledge is crucial for the licensing of software engineering practitioners, who via our Licensing structure could move into any other field of engineering as long as the code of ethics was followed. Only those applicants who can demonstrate that they satisfy these requirements should be licensed.
Improving the working relationships between the engineering and computer science disciplines is very important. The objective of reducing the confusion as to the meaning of software engineering amongst both academia and the public is strongly supported by PEO and the other associations/ordre. The CSAC-CCPE task force has contributed greatly in increasing our understanding of this very complex issue. However, other options identified by SWEP should be explored further before a final decision is made.
The PEO Software Engineering Taskforce (OSWET) concludes that the SWEP recommendation to establish the SEAB does not achieve the primary objective and in fact makes the issue more confusing. Moreover, we conclude that it will inhibit PEO in fulfilling its legislative mandate to protect the public interest through licensure.