Are there really idiots still using Microsoft software in important areas like Infrastructure? Years ago the US Department of Defense banned Microsoft from mission-critical projects. Have we learnt nothing?
12 posts • joined 30 Dec 2012
Microsoft won't even hear
I have tried to send the following message to the CEOs of Microsoft and Microsoft UK. It has fallen on deaf ears.
I am astonished and deeply disturbed by Microsoft's current development and maintenance policies.
Software Development is an Engineering Discipline. Yes, Creativity and Design are vital components, but Quality Assurance is every bit as vital. I believe that Microsoft must have enough employees who recognise this but regrettably they are not being heard, and the risks of dispensing with QA are terrifying.
The attractive prospect of rapid development has left Microsoft blind to the limitations of continuous delivery and DevOps. DevOps is very good at producing working prototypes and demonstrations, but it encourages development teams to evolve requirements as a project proceeds. Those requirements therefore tend to match what has been developed and often do not include matters such as design limits, data protection, maintainability, and robustness in the face of user error and malicious attack. If a replacement product is being developed, poor specification can lead to features of the original products being forgotten and omitted or diminished. The inclusion of Quality Assurance in a DevOps team is a sound policy, but the approval of a product or a change must rest with a Quality Assurance function independent of the Design function.
The consequences of inadequate Quality Assurance can be seen in practice. For example, many Windows 10 programs are inferior to their predecessors, new features are added while long-standing errors remain, programs fail without explanation or helpful error messages, updates are delivered that damage user settings and preferences, and insufficient validation of user input takes place. Community websites show huge numbers of dissatisfied users and a lack of support staff in Microsoft able to diagnose faults, let alone fix them. The advice, frequently offered, that a dissatisfied user should reinstall a product is not a solution -- it is an admission of defeat and product unreliability.
Quality Management requires careful and precise specifications and robust test and measurement of prospective products and changes against them. It is as important in a software product as in a tangible product such as an aircraft, a car, a building or a bridge. It cannot be delegated to users. The QA team must have the capability to say "not fit" or "not ready" to the Chief Executive Officer regardless of marketing demands
To diminish the Quality Assurance role in software development is dangerous to a development enterprise and to its user community. But there is enough evidence in Windows 10 of such a diminishing role to make me fear that Microsoft could be brought to ruin by unmanageable maintenance costs and lawsuits, and that the world's economy would be severely damaged as a result.
The remedy? Put a properly constituted QA function in place. Allow it to require and look for reliability requirements in the design specification, to test against them, and block the work and release of new versions until all errors in all current versions have been corrected. Microsoft will recover its tarnished reputation if it does this, but will be cursed as a modern-day unreliable rust-box if it doesn't.
In March this year (2018) I composed an email prophesying events such as this, and said that unless Microsoft established a Quality Assurance team with the power to veto a flawed release the company was heading towards ruin. I have not found a way to get that message into Microsoft before making my message public, but I could not send it directly to the Chief Executive Officer (bounced, not surprising) but even the support team just ignored it. No bounce, no reply. I don't think I can hold back any more.
No engineer worth his salt would countenance such a cavalier approach to product development and maintenance. Insiders are no substitute for formal QA answerable only to the CEO, and failing to act on known reports is unforgivable.
The 1809 update should be withdrawn immediately, and no new release issued without the organisational changes I suggested.
Re: *** Be careful *** Also new in 1809, changes to Disk Cleanup Tool,
Errata: It's the Computer Misuse Act 1990. (The 1998 Act was about Data Protection, and has been superseded).
But I note from the 1990 Act that although intent might be difficult to prove, reckless actions are also covered. I believe that releasing products without QA and with known deleterious errors is reckless.
Re: *** Be careful *** Also new in 1809, changes to Disk Cleanup Tool,
The mistake might have been idiocy, but releasing products with zero QA is malice.
Insiders are not accountable for errors that aren't noticed or reported, so they aren't QA.
Ignoring errors that are reported is deliberate negligence, and isn't QA either.
QA is a professional exercise, and needs trained in-house staff and a departmental head, answerable to the CEO and strong enough to block product releases, even in the face of marketing and financial pressures. Nothing less will do.
It seems to me that releasing software with known deleterious defects constitutes Computer Misuse and should be prosecuted under law. In the UK this is covered by the Computer Misuse Act 1998.
It seems finally to have happened -- Microsoft has lost control of its product.
It has discovered the ultimate folly of having no Quality Assurance. It didn't even pass its release to its inadequate outsourced QA (Windows Insiders) before sending it to its innocent users. It didn't even listen to Insiders warnings of a problem.
I am saddened to post such a comment again after some months of warnings.
It's not going to be enough to fix the latest bug. Only a complete halt to development while a qualified QA and team are installed, with the power to veto a release if necessary will rescue Microsoft and its users from complete disaster.
Could Windows 10 spell death for Microsoft?
Poor Quality Assurance has killed many a large corporation, and the way Windows 10 is going could ruin Microsoft. Distributing new features and leaving old bugs unfixed is a triumph of marketing over reliability that will haunt Microsoft for years as customers leave in droves and the support team struggles to maintain an unstable and confused code base.
Unfortunately, if Microsoft crashes it could damage the world economy too.
Re: I hope this is widely applicable.
I wish that were always possible! Unfortunately, most software contains trade secrets that the developers justifiably want to protect. The problem is that some developers of proprietary software make feeble efforts to maintain and fix their products.
There is a solution: Open Source software. It is repairable by any competent person and usually well documented. Competence is the issue here, but the developers usually record errors and fix them, and in many cases the reports of errors and fixes are available to anyone who needs them.
Hasty Updates = Bad Engineering = No QA
It's time Microsoft and others learn that Software Development needs Engineering Discipline and strong Quality Assurance. Windows 10 shows much evidence of bad engineering. Marketing and Sales need to have their wings clipped and QA needs to have a much stronger voice.
Re: ,So there's an online fix for not being able to get online?
I think the rolling update plan, with different branches for each class of user is an engineering fiasco that could bring Microsoft to its knees -- along with millions of users. Is there no Quality Assurance team in Microsoft confident enough to say "No, this product is not fit for release"?
No chief engineer worth his salt would countenance such a scheme. And anyone who doubts that developing software for productive use requires engineering disciplines should not be in the business.
It's such a shame. Just when Microsoft looked as if was going to get Windows right, they've blown it.
Software Design is an *Engineering* process.
Some years ago I worked for a relatively small firm that made hardware and software products that ran rings round its main competitor (IBM) in terms of reliability, usability and customer satisfaction - oh, and price too.
It was founded by hardware engineers who knew about Configuration Management (Change Control etc) and Quality Assurance. Software had the same standards and procedures as hardware. Since then, the only people I've met who see the merits of those things are Military Engineers. There was a periodical of the day called Software Engineering, and there are now many, but is not clear how many of them focus on Quality issues.
The complexity of modern software and the number of lines of code in it make it hard to believe that the same standards of Quality Assurance are followed. any more. The result is frequent changes to fix software errors (and often to fix the fixes) and a rate of change and lack of reliability that would not be tolerated in any other branch of Engineering. Quality Assurance managers do not have the power to say "this product is not yet fit for release" and, until they do, we are stuck with software that only half works.