evolution of sw quality principles
TRANSCRIPT
“The only difference between mob and Army is the organization” – Calvin Coolidge
“Software development is about evolving – off product offering, growing team & ever evolving technology – requiring structured approach for economically profitable outcome” - unknown
Basic concepts remains
Agile, Scrum, CMMI, ISO 9001 or any other software quality methodology trace their origin to common quality concepts which originated in early 1900
The basic concepts of any “development of new product” is same – does not matter if you are designing automobile, ecommerce platform, telecommunication NFV software or VHDL IP
Industries where Quality matters
• Telecommunication (TL9000)
• Automobile (TS16949)
• Aerospace (AS9000)
• Medical equipment (ISO 13485)
Of these Automobile, Aerospace and Medical equipment/devices are regulated by law
Long History… “process”(circa early 1900)
• Fredrick Taylor – Proponent of Scientific Management
– Manufacturing as mass production from craft production (Fordism)
– Concept of process
– Theory of management – analysis and synthesis of workflows
“Codification of what was considered individual craft” – first step in Science/Engineering is able to break down an activity into repeatable steps.
Long History… “measure”
• Walter A Shewart – Statistical Control
– Shewart Chart or ‘Control Charts’
– Outcome of research done in Bell Lab to improve telecommunication network & production process
– Move away from total inspections to sampling
Science/Engineering is about measurement – “if you cannot measure you cannot improve” .
Long History – “continuous improvement
• W Edwards Deming – Shewart Cycle (Plan-Do-Check/Study-Act)
– Statistical Process Control – sampling technique
– Contributor to American War Standard
– Recognized in Japan for his contribution to culture of quality.
– that by adopting appropriate principles of management, organizations can increase quality and simultaneously reduce costs (by reducing waste, rework, staff attrition and litigation while increasing customer loyalty). The key is to practice continual improvement and think of manufacturing as a system, not as bits and piece
– Kaizen (continuous improvement)
Science/Engineering is about continuous improvement.
Long History “root cause” (cira 1940…)
• Joseph M Juran
– Pareto Principle: 20% responsible for 80%
– Cross functional management
– Emphasis on people
– Worked in AT&T
In Science/Engineering – source of improvement is from small set of issues
Core Principles of Quality Customer centric
Leadership
Involvement of people
Process approach
System approach
Continuous improvement
Fact based decision making
Mutually beneficial supplier relationship
Above principle captures the science behind quality practices.
Total Quality Management (cira-1970-80)
• US initiative faced with Japanese challenge.
• Europe also followed
• Each country had its own standards
• Finally Superseded by ISO 9000 standard
“ A term first used to describe a management approach to quality improvement.
Since then, TQM has taken on many meanings. Simply put, it is a management approach to long-term success through customer satisfaction. TQM is based on all members of an organization participating in improving processes, products, services and the culture in which they work. The methods for implementing this approach are found in the teachings of such quality leaders as Philip B. Crosby, W. Edwards Deming, Armand V. Feigenbaum, Kaoru Ishikawa and Joseph M. Juran.“
ISO 9000 standard
• Defines what should be in an organizations’ Quality Management System
• Does not define quality of the end product/service – rather what should be present in the quality management system to enable the organization to produce quality products/service.
• Followed from TQM • Maintained by ISO. • Organization are certified by Nationally
Accredited certifying agency.
Era of SW Engg. (1980s’) • Humphrey Watts – “Father of SW Quality”
• Realized that contemporary HW/manufacturing concepts will not solve “Knowledge Work” issues
• However – SW could be managed as process
– Statistical control into SW engineering
– Started the best practices which was ground work for CMM – CMMI
http://www.sei.cmu.edu/watts/
CMMI premise…
• Quality of product or system is highly influenced by the process used to develop and maintain it.
• Technology, People & Process triad
• Widely adopted by Software industry
CMMI
• Capability Maturity Model – Improve organizational capabilities, not just process
improvement.
• Model, not process – Compares your current processes with best in class
practice in the frame work/constellation. – Model based on experiences of industry, academic,
government.
• Aim to satisfy stakeholder – Cost, schedule, quality, productivity and customer
satisfaction
• Defines Appraisal process (not certification)
CMMI for Development
• Practices for
– Project management
– Development (product realization)
– System Engineering
– Support
– Process
• 200+ individual practice for CMMI level-3
Era of SW(Information)
• Software became main driver for product differentation because of easy availability of every cheaper hardware.
• Rise of internet - web based solutions – major disruptor of how software is architected and consumed.
• The CMMI and waterfall which ruled was not scaling up – leading to Agile…
Agile methods
• Traced to paper “Managing The development of Large Software System” – Dr Winston Royce – 1970
• Agile is “not waterfall”
• Came after about a decade of water-fall (&CMMI – though CMMI does not prescribe any SDLC)
• Expressed in a agile manifesto written by 17 software practitioners. http://agilemanifesto.org/
Element of Agile/Scrum
SCRUM
Empirical Process Control
Lean Methodology
People & Organization
Adaptive System