I failed to deliver a column last edition of eMonitor so I am catching up with a second column! I need to acknowledge with thanks the contribution of Bill Maklin, who runs a Software Engineering & Architecture Joint Technical Program in South Australia, for initiating the thoughts expressed here.
Talk about engineering in the community and many if not most will conjure visions of buildings, roads, bridges, hospitals, dams, railways and so on, generally physical infrastructure. Unfortunately too few regard engineering as the discipline which creates this infrastructure and provides for its ongoing operation and maintenance. Engineering also creates IT infrastructure and its utilisation. When we talk of software engineering for instance, people are confused because they don't recognise non physical manifestations as engineering. Rather than change this perception a change in terminology is evolving, software architecture in particular. Architecture is indeed a noble profession however it is not engineering. The skill of engineering required in software projects cannot be substituted by architecture. Engineering takes a holistic approach to implementing software projects, architecture being a component.
How can we change the perception of engineering to its rightful status as a professional discipline which must be followed in implementing for instance IT and in particular software projects, managing risk and change? Why is it that we seem unable to muster an organising committee for the Australasian (formally Australian) Software Engineering Conference 2012 (ASWEC 2012), a conference series which has hitherto been running for over 20 years? We cannot continue to rely on just a few individuals, for whom we are extremely grateful, to participate on organising and program committees. Engineering is an inherently practical discipline so where are all the industry participants to work on the committees (largely drawn from academia) and who can network with academics and others at conferences such as ASWEC? Please post your feedback and ideas.
On Software Architecture or Engineering?
It is not quite appropriate to promote Software Engineering without first having successfully promote "Systems Engineering" as a discipline. Software (like Hardware) is only a lower level component that is implemented in the Engineering of a System, and this is the level where the main architecting, design, risk reduction and decision making takes place.
An analogy: In Civil Engineering the architecture design happens at the level of conception of a complete highway system that delivers a service to the community. At lower levels the actual implementation can include hand-rails on a bridge, or a loop-detector in the road. Those lower level components are also Engineered at a lower level of complexity and risk, and it would not be correct to try and promote them too hign as added value Engineering in the complete scheme. The same for Software - we can spend a lot of effort to try and promote its Engineering, Architecting etc, but we will not get anywhere until we have been successful in correctly establishing Systems Engineering as the higher level Engineering discipline. We have been trying for over 40 years and did not get anywhere because we are working at too low a level.
Engineering of a new concept is primarily about Risk Reduction before implementation decisions - in Systems Engineering by the time we get to allocating functionality to Software, the risk has already been reduced to Zero!
We have to know how to sell the right message to move EA away from solely Civil, Mechanical and Electrical Engineering. Note that ASWEC is only 20 years old. Before that there were others who tried for 30 before - the organization was the ASEA (the Australian Software Engineering Association). Before that we had the ADA Society etc.
A possible solution would be to move away from Academia and invite Industry, i.e., those who are actually doing it.
G. Herve Rochecouste
FIEAust., CPEng.
Posted by: Gilles Herve Rochecouste | 09/05/2011 at 10:16 PM
I quite agree with Gilles Herve Rochecouste regarding greater involvement of industry, it's not without some trying!! I was certainly not disregarding in my column the need for Systems Engineering, which I would regard as an important initial element of a disciplined engineering approach to delivering solutions. My concern is the displacement of Engineering by Architecture hence potentially neglecting a comprehensive engineering (including systems) approach to software engineering.
Peter Hitchiner
Posted by: Peter Hitchiner | 09/07/2011 at 12:07 AM
Hi Peter,
Interesting article. To provide a partial answer to your question about the ASWEC organising committee (or more of a theory): there are too few software engineering researchers coming through the ranks. Government and university research programs prefer inter-disciplinary research, which pushes academics in CS and SE to the CS side, where people can integrate into bioinformatics for example. How many 20-something (or even 30-something!) software engineering academics with permanent positions do you know in Australia? I know very few.
This leaves few people to do things such as organise academic conferences -- especially those people at the level where they would have the time: lecturer-senior lecturer, rather than professors who already spend half of their week in university admin meetings!
Cheers,
Tim
Posted by: Tim | 10/16/2011 at 07:52 PM
Good explanation has been given on differentiating about Software Architecture or Engineering. Thanks for this clarification.
Posted by: software architect education and job requuirements | 01/05/2012 at 03:36 PM