Software’s Limitations
Re: Real Costs of Reliability, Barry B. Brown, P.Eng., The PEGG, November
2004.
The writer thinks I would agree that a “reliable software engineered” product
licence that replaced windows would retail for at least $4,999.99 to return a
similar profit to shareholders. He is wrong — I would not agree.
This is a diversion of the discussion. One can argue till the cows come about
Microsoft (proprietary, uninspectable) versus, say, GNU/Linux (essentially free,
open to inspection and pretty reliable), or custom reliable applications (unlimited
cost depending on many factors), or the need for cheap home and office software.
None of this is the issue.
The issue is whether or not software development is engineering. I would be
interested to know what “deterministic laws and mathematical models” Barry
Brown thinks effectively guarantee the software development process itself, or
the reliability of the product, as opposed to the application theory involved.
You can certify software, and the development and testing process, as meeting
certain standards as much as you like. But that does not make development an
engineering process.
Software specification is still a research topic and it is significant that
the premier U.S. engineering body (the IEEE) has taken the Certified Software
Development Professional route.
This is not to underestimate the important and expensive efforts on the part
of many companies to institute procedures for development and testing that attempt
to reduce the chances of problems with the software they develop.
However, even the FAA cannot guarantee the software that flies airplanes is
problem-free, and that is not because someone used the wrong calculation or model.
It is because there is no deterministic procedure for specifying software, let
alone guaranteeing the software developed meets its specifications.
Interestingly, the fly-by-wire software in some modern airplanes is reputed
to contain a “back-door” that allows ground controllers to take over
the controls in the event of a hijacking — to the point where one non-U.S.
airline apparently ripped out the manufacturer's equipment and software, and
installed its own version on the planes it bought.
Ultimately, the final test phase of software verification is carried out by
the user — a sad fact. Is that how we test bridges or airframes?
When we do, it is because existing engineering knowledge has been ignored,
and the results are devastating.
Unfortunately, the successful development of one significant software product
still does little to contribute to the integrity of a different software product.
Even tested and reliable modules may show unexpected problems in another environment,
or may not be correctly integrated in the new framework (though such module reuse
all helps); and new modules will almost certainly be required. Comprehensive
testing is necessary but, in the case of significant software, is not sufficient.
However, engineering bodies are probably the best means of regulating the
practice of software development, precisely because they understand, better than
most, the limitations of the software development process in engineering terms.
David Hill, P.Eng.
Professor Emeritus
Computer Science Department, University of Calgary
Work Together To Identify Best Practices
Re: What Real Software Engineers Know, Joseph M. Green, P.Eng., and Aura of
Reliability, David Hill, P.Eng., Readers' Forum, The PEGG, October 2004.
There is a lot of Mr. Green's letter that we can all commiserate with, regarding
software quality. I am, in fact, at the front of the queue regarding the need
for quality in the design and implementation of software.
But in the case Mr. Green refers to, the designs and implementations in question
were under the scrutiny of professional engineers. That is exactly my point.
Engineers are not computer scientists.
If you want better software, engage computer scientists who are software engineers.
Don't leave it to legislation or professional engineering societies that believe
they hold exclusive knowledge of robust construction of everything. They don't.
I am pleased to have catalyzed such focused and informed debate, and have
found much to agree with in the points made recently by Mr. Green, David Hill
and others.
There is wisdom in what David Hill writes. In fact there is only one thing
I disagree with: that the word “engineer” is a specific designation.
The phrase “software engineering” may be an oxymoron in some constituencies,
but with 90 per cent of the world's software engineering research done in computer
science departments, the name has a long history and we're not likely to change
it.
If that is the issue, then why don't professional engineers cry out against
genetic engineering, sanitation engineering, even railroad engineering?
Alberta legislation, which so many professional engineers use to lay claim
to such phrases, does not prohibit use of the word. It prohibits the use of the
word in a way that misleads the public.
It seems that, except in Alberta, Texas and some other constituencies in Canada,
no one in the software business thinks of “software engineering” and “software
engineers” as P.Eng. holders.
Therein lies the point. I do not advocate the misrepresentation of responsible,
reliable and robust construction of software under the slogan of any kind of
engineering.What I want to see is professional engineering groups stop wielding
the “protecting
the public” legislation, and engage the computer science community to figure
out what best practices are and how they can be supported.
That is, after all, what Professor Hill is advocating, after we dispense with
the name debate. So let's support his plea: concentrate on the nature and understanding
of the task being performed.
Dr. Randy Goebel
Professor and Chair
Computing Science
University of Alberta
National Approach Needed
Now with the imminence of APEGGA elections, it is an opportune time to raise
the issue of moving toward a national recognition of professional engineering
status.
Due to global demand of engineers, many of us are providing services outside
Alberta. As such, it would be beneficial to work toward a general Canadian designation
rather than continuing the current provincial, fragmented approach.
The trend of offering mutual international recognition for professional credentials
is well underway in European countries, so in view of supporting its members
within the international community, APEGGA's efforts to take initiative toward
Canadian engineering accreditation would be a timely step in the right direction.
Theo van Besouw, P.Eng.
Dubai, United Arab Emirates
APEGGA Should Look Into Salary Trends
I recently reviewed the 2004 salary survey. I commend APEGGA for the fabulous
job producing this extremely valuable publication. I view it as one of the largest
contributions that the Association provides its members.
In my review of the survey, some strange employment patterns stand out that
the Association and its members should be taking very seriously. The patterns
involve the employment of professional members in the manufacturing (durables)
and service (for profit) industry sectors.
1. There are minimal members reporting in the A-level.
Are there no jobs available for the new grads in this industry sector? If
so, why? Are the new grads going elsewhere for employment ( Ontario or U.S.)?
2. There are minimal members in the upper levels of corporations in these
industries.
Why are members not entering these positions of responsibility? Why are they
not commanding the salaries associated with these positions?
3. The salaries in the D and E level are dropping rapidly.
Is this the cause of my second point? Members are already in the low end of
the salary scale in this industry sector? Why are the salaries getting worse?
I ask APEGGA to form a task force to investigate what is going on in these
industry sectors. It appears that there will soon be no APEGGA representation
in them.
That would be a shame for both the public and all professional engineers in
Alberta. I am aware of numerous large manufacturing and service companies in
Alberta that provide products and services for the petroleum industry.
There are many APEGGA members buying these products regularly. This as a very
large industry for Alberta and should not be ignored.
Thomas W. Garay, P.Eng.
Houston, Tex.
Putting Out A Non-Existent Fire
Re: Precaution and Action, E. Litvin, P.Geol., Readers' Forum, The PEGG,
November 2004.
I am amazed at the idea of taking “precautious measures” on
climate change, even though it is not known whether the problem even exists.
You hear the bell and you run for the fire — without learning where the
fire is or if there is one.
The engineering profession is not about “acting precautiously” on
unknown risks. It is about assessing the risks and taking reasonable measures.
A “responsible” stance by a professional is to use our technical
knowledge to guard the public from vocal special interest groups.
It should be understood that changing the way we produce and consume energy
is a major technical, economical, political and societal issue. It should only
be undertaken if there is a viable alternative and it has become certain that
the way we burn fossil fuels now is damaging the climate.
In a technical debate, those who believe the theory are obviously losing.
The letters you have quoted provided many convincing scientific and technical
facts. On the side of environmentalists, it is mostly hot air (not related to
global warming) and fear-mongering.
As for the alternatives, after almost 100 years of research, solar power,
wind power, geothermal power, electromobiling etc. are still at or only a little
beyond the conception stage.
Over the past century of industrial revolution and exponential economic growth,
the temperature of the globe has reportedly risen by 1 F. And even this 1 F,
which by the way is less than the margin of error of your assessment, can be
attributed to a multitude of astronomical, geophysical and other factors outlined
in the letters you quote, and not necessarily related to fossil fuels.
The very fact that Kyoto is being pushed through so vigorously tells me that
there is a political, not an environmental, agenda attached to it. My thought
is that the energy industry gives us the power we need and provides jobs to millions
of people worldwide. What have environmentalists done for us lately to match
this?
Konstantin Ashkinadze, P.Eng.
Edmonton
The Power of Youth
Re: Wrong Wind Power Conclusion, Travis Hoose, Student Member, Readers'
Forum, The PEGG, November 2004.
The suggestion of converting intermittent
wind power into hydrogen to be stored for constant rate input to a fuel cell
truly represents “thinking outside
the box” by Mr. Hoose. His recognition that thermodynamics provides many
options for engineers to convert and store energy alerts professionals to reconsider
what were once not viable solutions.
It is a pleasure to observe student engineers demonstrating and articulating
sound thinking. As retirees we can sleep well knowing that such high calibre
individuals are coming onto the professional scene.
Life Member Don Kesteven, P.Eng.
Calgary
|