quality - a priority in service engagements

21
January 31, 2006 (Bangalore) Quality Priority in Service Engagements Dr. Partha Pratim Das Interra Systems (India) Pvt. Ltd.

Upload: ppd1961

Post on 19-Jun-2015

384 views

Category:

Business


0 download

DESCRIPTION

I made this presenation on Quality - in reference to Software Service Engagements - at Interra Bangalore in 2006

TRANSCRIPT

  • 1. January 31, 2006 (Bangalore) Quality Priority in Service Engagements Dr. Partha Pratim Das Interra Systems (India) Pvt. Ltd.

2. Agenda

  • Recap
    • Organizational Objectives
    • Typical Work Cycle
  • Quality
    • What is Quality?
    • Why is Quality Significant?
    • Quality Perspectives
    • Interra Quality Plan
  • Q & A

3. Organizational Objectives

  • Increase Efficiency
  • Increase Effectiveness

4. Organizational Objectives

  • Increase Efficiency
    • Do things RIGHT
    • Lines of quality code produced per man-hour
    • Instances of quality support provided per man-week
  • Increase Effectiveness
    • Do RIGHT things
    • Lines of quality code produced per dollar
    • Cost for every instance of support

5. Typical Work Cycle

  • A typical cycle can be
    • Need
    • Requirements
    • Design
    • Code / Perform
    • QA
    • QC

6. What is Quality?

  • A degree or grade of excellence or worth
    • Dictionary Meaning
  • Meeting and exceeding expectations
  • Quality is NOT Grade. Because
    • Low Grade / High Quality
      • Few features
      • No obvious bugs
      • Good Documentation
    • Low Quality / High Grade
      • Many bugs
      • Poor Documentation
      • Many features

7. What is Quality?

  • The totality of characteristics of an entity that bear on its ability to satisfy stated or implied needs
    • PMBOK, 2000.

Somewhere down the line, we need to stop and think what the customer actually wants - and what more we can do which would make a difference to their perception. . Kousik Mukherjee, Dir. Of Engg,, Interractions Vol 4(3). 8. Why is Quality Significant?

  • To meet specs
  • To meet targets
  • To pass acceptance tests
  • To be efficient and effective

9. Why is Quality Significant?

  • Quality is the most important factor that
    • determines the value of the product or the engineering solution
    • helps engage with a customer at an emotional level
      • recommendations
      • repeat business
    • drives business growth
  • Quality is what distinguishes a good company from a great one.

10. Why is Quality Significant?

  • "Improvements in quality always and automatically result in
    • reductions in schedules and costs,
    • increases in productivity,
    • increases in market share, and consequently
    • increases in profits."
      • Out Of The Crisis, Dr. W. Edwards Deming, Cambridge: MIT Center for Advanced Engineering, 1986.

11. Quality Perspectives

  • Notions in Quality Management
    • Quality Planning
      • Identifying which quality standards are relevant to the project and determining how to satisfy them
    • Quality Assurance
      • Evaluating overall project performance on a regular basis to provide confidence that the project will satisfy the relevant quality standards
    • Quality Control
      • Monitoring specific project results to determine if they comply with relevant quality standards and identifying ways to eliminate causes of unsatisfactory performance

12. Quality Perspectives

  • Quality Intervention at Various Stages
    • Prevention at Origin
      • Requirements / Design
    • Containment by Appraisal / Review
      • Spec Review, Design Review, Code Review
    • Wake up after Internal Failures
      • Unit Testing, Developer Testing, Regressions
    • Fire Fight on External Failures
      • Testing by Customer, At the field after deployment

13. Quality Perspectives

  • The Cost Of Fixing Defects
    • An unpublished IBM rule of thumb for the relative costs:
      • during design, 0.5;
      • prior to coding, 1;
      • during coding, 1.5;
      • prior to test, 10;
      • during test, 60;
      • in field use, 100.

14. Quality Perspectives

  • The Cost Of Fixing Defects
    • Remove as many defects as early in development as possible.
    • Remove as many defects as is reasonably possible before the delivery.

Bugs squashed early rarely threaten a project's deadline and budget.Scientific American, September 1994. 15. Quality Perspectives

  • Product / Solution / Software Quality
    • Usability.
      • Is the product easy to learn and use? Does it require training and technical support before any productivity increases occur?
        • Example, ZenTime learning loops
    • Efficiency.
      • Does it utilize the resources (memory, execution time, license etc) conservatively?
        • Example, Performance increase in NDM, CDA & TDL Utility
    • Reliability.
      • Does the software perform the job it's supposed to without crashing or causing errors, even in stressful environmental conditions?
        • Example, TDLChecker (limitation on the number of TDL files), TDLGen (limitation on hierarchical path)
    • Integrity.
      • Does the product prevent unauthorized or improper access to its programs and its data?
    • Adaptability.
      • Can the software be used, without modification, in applications or environments other than those for which it was specifically designed?
        • Example, EDAObjects on several platforms.

16. Quality Perspectives

  • Process Quality
    • Maintainability.
      • Can the software be easily modified to change or add capabilities, improve performance, or correct defects?
        • Example, Plug-and-Play Architecture of Unified Prime and CC-DFTM
    • Flexibility.
      • Can the product be modified for users or environments other than those for which it was specifically designed?
        • Example, Handoff QC SoC Integration, Library Verification, Test Handoff.
    • Portability.
      • Does the software easily operate in an environment different from that for which it was specifically designed?
        • Example,
    • Reusability.
      • To what extent can the components of the software be used to build new products?
        • Example, DTIF Design Test Input Format. Called by Perl Callback. MVV.
    • Understandability.
      • Is the source code, especially at the detailed-statement level, easy to read? Is the software easy to understand at both the system- organizational and detailed-statement levels?
        • Example, For every release one should have SoW, SRS, WBS, SDD, STP, Release Notes and Metricate Sheet.

17. Quality Perspectives

  • Quality is about perception
    • In most scenarios, degree of excellence is not measurable objectively
      • Particularly true in services or solutions based businesses like ours
        • Sundars perception on DFT-TK
        • Claudins perception on RTL-TK
        • Daniels perception on DV-TK
        • Vaidees perception on AutoRTL
        • Sabys perception on PD
        • Amits perception on Package Analysis
    • Quality could be redefined to be the customers perception of the degree of excellence
  • Quality is the Entire Company's Business
  • Quality Must Be Built into a Product / Solution

18. Quality Perspectives

  • How to develop quality perception?
    • Not just by the quality of the end product or solution that you deliver
    • Quality becomes important at every stage of the project
      • Quality of Communication
      • Intermediate deliverables
      • Processes that are followed
      • Conducts in the meetings
    • Patience, perseverance and planning
    • Damage done when quality is missing at any level

19. Items inInterra Quality Initiative

  • Programming Guidelines
    • Naming Conventions, preferred practices
    • Safe Idioms / Unsafe Idioms
  • Debugging Methodology
    • Built-in Tracer / Profiler
    • Assertions
    • Maintain a Problems Database
  • Code Review Process
    • Self / Peer Review (Code Complete)
    • Review by Manager / PL
  • Test plan & Testing Methodology *
    • Unit / Directed Tests
    • Random Tests
    • Performance Tests
  • Quality Audit Plan
  • Issues Tracking Process
    • GNATS / WEBS / Client-specific
  • Version Control Process
    • CVS / ClearCase / Client-specific
  • Performance Metrics *
  • Release Process *
    • PNB Project Note Book
  • Documentation Plan
    • User Guide
    • Code Documentation
    • README, Checklist
  • Confidentiality Guidelines
    • Sensitivity to Interras IP / Clients IP
  • Build Guidelines *
  • Portability Guidelines *
  • Environment Standards *

20. Q & A

    • How could I have prevented this bug?
    • How could I have automatically detected this bug?

21. Thank You