evolution of sw quality principles

21
Software Quality: Historical Perspective All about software quality – SW Manager needs to know

Upload: ranjan-ghosh

Post on 21-Feb-2017

42 views

Category:

Software


1 download

TRANSCRIPT

Software Quality: Historical Perspective

All about software quality – SW Manager needs to know

“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

Agenda

• Historical evolution of quality concepts

• TQM

• ISO

• CMMI

• Agile practices

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)

History of CMM

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

Conclusion

• SW Quality has evolved.

• But the core principles remain same

• Only method of application evolved with changing demands put on software development process over the years.