I receive comments now and again querying why I spend an hour or two, per week, writing these musings. Well; apart from the PR for our engineering training, they keep me on my toes and interestingly I learn even more on the various topics from your responses. At the end of this blog are details regarding the recording of our latest webconference session on “Industrial Wireless Disasters” But now for my musings:
Buy or Roll thy own Engineering Software Tools
A decision we get confronted with regularly is whether to buy engineering software off the shelf or to write it in-house - or at least cobble it together from existing programs. In today’s market it is even more difficult to decide – there are more programmers available and the cost of the software off the shelf is exorbitant. I have been faced with this dilemma so many times and often made the wrong decision. Obviously, if it is a Word processing package or an engineering CAD package; it is unlikely that these will be rewritten. The difficulty is more prevalent, however, when software packages exist, for example, an industrial automation package - written for a particular plant or application. The vendor would have us believe that it can simply be ‘plugged in’. We have all had the nightmare of being trapped into buying something which has turned out to be a miserable and frustrating mistake – when in hindsight we should actually have gone down the hard road of writing it ourselves.
In essence, with Engineering Software what you are really after is:
* Availability – it should run and work smoothly with all your other tools
* Efficiency – it is quick to operate (minimal overhead)
* Reliability – it doesn’t crash in a different hardware/software environment, but runs without a hiccup
* Functionality – it should offer the functions you require – no more – no less
* Sustainability – it is constantly updated as new problems and situations arise with your systems
* Economy – it is not fiendishly expensive imposing an horrendous $ burden on your project or product It is virtually impossible for an in-house developed engineering software product to deliver consistently on all of the above. Only a commercially produced package, with tens or indeed thousands of iterations and many, many installations, can come up with this.
Why is an Engineering Software tool so hard to develop in-house? A few quick points on this score:
* Commercial packages are developed over a long period of time using many different clients and programmers – you are unlikely to have this luxury with software designed in-house.
* You are exposing yourself to significant commercial risk. You may be handicapped by a tool that should have been purchased off-the-shelf. Furthermore, designing it in-house can distract you from your core mission. You may only need a small increase in productivity to justify paying for a commercial software tool.
* Others have been there and done it – the commercial package – you could save a great deal of time and angst and ultimately money.
* You will achieve increased functionality due to the wider usage that a commercial package is designed for.
* What about the future? A software package requires ongoing development. At least with off-the-shelf software there is some degree of future proofing due to their support and R & D staff. (This is somewhat questionable in today’s gloomy business world, but is generally true if you purchase your product from a reputable organization).
* In-house software developers can simply walk out of the door when they decide to move on
* Training new staff on how to use your newly designed package can be difficult in-house.
* Ongoing maintenance for changes to your hardware and software environments, when done in-house, requires your design team’s time and time off the software – both a distraction from your project/s.
* And paradoxically – Customization. This is often quoted as the main reason to write the software in-house. But you may find the elements you require are already written for some other client in an off-the-shelf package. So the standard mantra of; “Our application is too different, special or customized for a commercial off-the-shelf tool,” is not necessarily always true.
Obviously in buying something off-the-shelf where millions of items are sold (as with a computer), one should bear in mind this sage advice: If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside. Robert X. Cringely, InfoWorld magazine
My grateful thanks to one of those enduring electronic design engineers, Steve Ciarcia, who wrote hands-on electronics projects for Byte Magazine. This is based on an article by him and CMX-Systems on real time operating systems.
Adapted to engineering software based on my mixed experiences.
IDC webinar recording now available.
Listen any time. Major Disasters in Industrial Wireless - and How to Avoid Them. This complimentary 45 minute recording of a recent IDC webinar is a discussion of disasters – both real and potential - that can occur in industrial wireless. Senior instructor Deon Reynders touches on the growth of wireless control in industry, recent trends, security issues and consequent disasters. We conclude with a simple checklist of basic preventive measures. Bear in mind that we have used our Electromeet software to do the recording to avoid having a massively large 100Mbyte (compressed) file.
You can listen to the recording of our latest session by following these simple steps.
1. If you already have Electromeet installed on your computer, skip to step 2. If not, you will need to download and install the latest version of the Electromeet software from http://electromeet.com/download/Default.aspx . (10MB approx download, 20MB hard disk space)
2. Now cut and paste the entire recording link ( http://www.electromeet.com/ssdownload.aspx?filename=session_356e62ae-11a... ) into your browser address bar then download the recording file (ends in .emss) and Save to a known location on your hard disk. (10MB file size)
3. Launch Electromeet from the desktop icon. Open File >Open Saved Session >[browse to saved session location] from the Electromeet menu.
4. Click on the file of the downloaded session. The recording will play back. Use the play, stop, fast forward and fast rewind controls from the “Recordings” section (bottom left of screen) as you would on a DVD player.
Yours in engineering learning