Skip to main content

Airlines and Software

This might be a little off topic, but after reading this article from USA Today, I thought the software industry should be inspired by the airline security system.



As far as I know, the reason why air flight is the safest way of traveling is much due to these aspects.

One, all the parts involved work toward ZERO fatalities.

Two, their effort is never "good enough".

Three, they have a very open mind, sharing all the information about problems and crashes (the system was born when planes were "constantly" crashing so the pilots were very interested in sharing their experiences !)

Four, unfortunately aircafts can't really pull over to change a flat tyre or stop to check their engine along the road !
Airplane manufacturers are therefore forced to build better, safer airplanes with improved safety and performance. Maintenance technicians are also forced to improve procedures to enhance reliability and safety and I think that regulators contribute with controlled procedures and checklists to avoid omissions or carelessness, and accident investigators generate a fair and exhaustive analysis of the accidents.

There are also other factors, but they are valid for any other transportation systems: pilots improve their skills, there are better weather forecasts, customers "forced" the industry to adopt new technologies, training methods and to improve human performance, etc.

I guess that software makers (including myself) should think about this !

Comments

Popular posts from this blog

Questiologie for complex requirements - Frédéric Falisse

I just watched this TedX video of Frédéric Falisse explaining his Questiolgie and found it very interesting. The video is in french but it has English captions. I think it could be greatly useful while gathering elaborate or difficult requirements. As far as I understand it, he proposes four tips for asking good questions 1. Change of mental posture  If the interviewed is already an actor , remove him from the action and ask for a feeling . Do not ask "why do you get stuck" but "what do you feel when you feel stuck ? If instead he starts with an emotion, ask about an action. 2. Double the verb Like in the phrase "What are you afraid of when you are afraid of losing control?" 3. Reconcile Use right and left hands  "When you fail a test ... Makes you lose control over future choices" 4. Project in the future i.e. What will happen if you fail the test? Here's his main site  https://www.questiologie.fr/ Have a great day!

Vague requirements

An old school tip on vague requirements. A lot of words and sentences that we write in our requirements documents are often too vague . And these kind of unclear requirements have a big chance to cause problems at the end of your work. Blurred Something like: the system must be scalable , the system must be user friendly , the system must be quick . A good way to at least improve these three requirements could be something like this: 1. The system must be scalable up to 1.000 concurrent users without upgrading our servers, 2. The system must be usable by an average 50 years old accountant that only knows Word and some Excel, 3. The system must have any functinality ready on the screen  in 1" when all concurrent users are using the system. So, by just exploring a bit more with the stakeholders, you can reduce ambiguity a lot. It's not too difficult and you can have a huge improvement in the end product or service.

A good book by Jim Arlow

Currently reading Jim Arlow's " Secrets of Analysis: Generative OOA with NLP, Literate Modeling and M++ ". I found it extremely interesting, first because it has a lot of extremely interesting hints and tips and emphasizes the importance of communication Second, it introduces a simple but useful meta-language, called M++, that allows to recover information from deleted, distorted and generalized communications. It is an extension of the work on language patterns by Bandler and Grinder. M++ could gives you a set of simple, powerful communication strategies that you can apply straight away in your job. M++ (and the original Meta Model) specifies how you can use language to clarify language. It deabstracts to uncover distorted, deleted and generalized information.