01 introductory session

  • View
    41

  • Download
    0

Embed Size (px)

Text of 01 introductory session

  • 1. Software Quality Management and Testing: Introductory Session G Ramesh Gopalaswamy_Ramesh@Yahoo.Com

2. Introductions Course Objectives Course Logistics What you should expect Getting to business Session 1 2 Todays Agenda 3. To Familiarize you with the principles of Testing and Quality Management Make you appreciate the aspects of managing a Testing project Get you a view of Release Management of Software Products Discuss some simple, common-sense practices NOT To Make you Software Testing experts Put too intimate focus on technology Session 1 3 Course Objectives 4. Attitude Every activity you do that is important for a project should be respected Basics Quality is More than just cool coding Communication This is the make-or-break for high quality, especially in Testing & Release Management Documentation Remember, a lot of times you will be working with people with whom you have very limited face-to-face contact! Ethics Cant be over-emphasized (but often under-emphasized!) Flexibility Name of the game in quality! Session 1 4 The Focus is on ABCDEF 5. Two Weekends (this weekend and the weekend of April 19) Totally 20 hours, with approximately 12 hours this visit and 8 hours next visit Session 1 5 Course Logistics #1: Timing * Conditions Apply! 6. Project(s) (Group) 30% One Midterm Tests (Individual) 20% Final Exam (Open Everything, especially Open Mind) 50% Session 1 6 Course Logistics: #2: Evaluation 7. Primary Books: Software Testing Principles and Practices, Srinivasan Desikan & Gopalaswamy Ramesh, Pearson Education, 2006 (ST) Software Maintenance -- Effective Practices for Geographically Distributed Teams, Gopalaswamy Ramesh & Ramesh Bhattiprolu, Tata McGraw Hill, 2006 (SM) Secondary Book: Managing Global Software Projects, Gopalaswamy Ramesh, Tata McGraw Hill, 2002-2006 PPTs IEEE Standards Other reference material that may be given during the course Session 1 7 Course Logistics #3: Material 8. Participate fully in the class! Budget about 3-3.5 hours per hour of my class Track the effort and let us know! Enjoy the course, dont take it as drudgery! Session 1 8 What you should expect 9. No one-way communication, do participate! There are no wrong answers while participating! Dont expect prescriptions or panaceas Use your common sense, it may be right most of the time! Session 1 9 Rules of the Game 10. Session 1 10 11. Introduce you to the concept of Quality (Recap from Global Software Project Management course) Distinguish between QA and QC Explore the term Quality Management, striking a balance between QA and QC Understand the role of the various SDLC Models in Quality Management Know the role of Release Management in the context of Quality Session 1 11 Objectives of Session 1 12. ST: Chapter 1, 2 MGSP: Chapter 3, 7 SM: Chapter 1,2 Session 1 12 References For This Session 13. Session 1 13 The Phil Kotler Equation That Drives Project Management (And Quality) 14. Session 1 14 Thus, Project (Quality) Management is 15. Session 1 15 Four Main Cornerstones in Project (Quality) Management 16. Session 1 16 Definition of Quality Transform as many implied requirements to statedrequirements AND meet them in a repeatable, consistent manner Transform as many implied requirements to statedrequirements AND meet them in a repeatable, consistent manner Customer: Does it meet my real needs? Producer: Does it meet specs? The difference between customer and producer perception is the existence of implied requirements 17. Consistency / Predictability Variability / Inconsistency Quality of Conformance Grade Quality or Quality of Design Session 1 17 Quality Terminology Quality is Quality of Conformance Quality is predictability and consistency Quality is the opposite of variability 18. Introduce you to the concept of Quality (Recap from Global Software Project Management course) Distinguish between QA and QC Explore the term Quality Management, striking a balance between QA and QC Understand the role of the various SDLC Models in Quality Management Know the role of Release Management in the context of Quality Session 1 18 Objectives of Session 1 19. Session 1 19 Quality Assurance Quality Control Methods of enhancingMethods of enhancing consistency and predictabilityconsistency and predictability 20. Session 1 20 Make fixes Build Test OK? NO YES Fig 7.2. Quality Control 21. Quality Assurance Process Oriented Prevention Oriented Proactive Everybodys Responsibility Quality Control Pertains to Product Detection Oriented Reactive Tester/Reviewers Responsibility Session 1 21 Quality Assurance Vs Quality Control 22. Introduce you to the concept of Quality (Recap from Global Software Project Management course) Distinguish between QA and QC Explore the term Quality Management, striking a balance between QA and QC Understand the role of the various SDLC Models in Quality Management Know the role of Release Management in the context of Quality Session 1 22 Objectives of Session 1 23. Requirements gathering Design Development Testing Deployment and maintenance Session 1 23 Phases of software development (not necessarily sequential!) 24. Session 1 24 Quality during various phases EffectivenessofTestingphase LOW HIGH Quality of other phases LOW HIGH Not sustainable! High Rework Costs Ideal State! Risky! 25. Double edged sword! Excessive Process orientation Lack of Testing makes defects reach the customers Not a healthy state! Lack of standards foster defect breeding Lack of Testing makes defects reach the customers May be resource intensive but gives better payback Institutionalizes Quality Makes Quality visible to customers Last minute rushes Higher People dependency Testers as heroes and adversaries Double edged sword! Excessive Process orientation Lack of Testing makes defects reach the customers Not a healthy state! Lack of standards foster defect breeding Lack of Testing makes defects reach the customers May be resource intensive but gives better payback Institutionalizes Quality Makes Quality visible to customers Last minute rushes Higher People dependency Testers as heroes and adversaries Low High LowHigh Defect prevention focus Defectdetectionfocus Session 1 25 Defect Prevention and Detection 26. Achieve a balance between (Defect Prevention) Quality Assurance and (Defect Detection) Quality Control View QA and QC as supplementary and not adversary job functions Distribute QA / QC functions throughout for early detection Session 1 26 Quality Management: Balancing Quality Assurance and Control 27. Session 1 27 Fig 7.3. Cost of Quality Components (a) Without QC/QA (b) With QC/QA Cost of Development (and defect injection) Cost of Defect (down time, goodwill loss etc) Cost of Fixing (Appraisal, Re-work etc) Cost of Development (and defect injection) Cost of Defect (down time, goodwill loss etc) Cost of Fixing (Appraisal, Re-work etc) QA QC Cost Reduced Reduced Reduced New Net Savings 28. Introduce you to the concept of Quality (Recap from Global Software Project Management course) Distinguish between QA and QC Explore the term Quality Management, striking a balance between QA and QC Understand the role of the various SDLC Models in Quality Management Know the role of Release Management in the context of Quality Session 1 28 Objectives of Session 1 29. Session 1 29 Waterfall Model 30. Requirement-3 Requirement-2 Requirement-4 Requirement-1 Requirement-5 Session 1 30 Spiral Model 31. Session 1 31 Different Types of Tests 32. Session 1 32 V Model 33. System complete IT Complete Component Complete Components (1,2..) complete Unit test Complete Design Complete System complete IT Complete Component Complete Components (1,2..) complete Unit test Complete Design Complete Acceptance Testing System Testing Integration Testing Component Testing Unit Testing Acceptance Testing System Testing Integration Testing Component Testing Unit Testing Entry Criteria Exit Criteria Session 1 33 Modified V Model 34. Use Table 2.3 in page 42 Session 1 34 Comparison of Various SDLCs 35. Session 1 35 Extreme and Agile Methodologies 36. Introduce you to the concept of Quality (Recap from Global Software Project Management course) Distinguish between QA and QC Explore the term Quality Management, striking a balance between QA and QC Understand the role of the various SDLC Models in Quality Management Know the role of Release Management in the context of Quality Session 1 36 Objectives of Session 1 37. Session 1 37 V1 V2 V3 1.1 1.2 2.1 2.2 Time for which BOTH V1 and V2 Are to be maintained V1 Obsolete V2 Obsolete TIME How Software Evolves: Versions and Releases 38. Session 1 38 Simple OLTP Data Centric Application Platform Web ApplicationsData Warehouse &Hi-End OLTP Client/Server OLTP V 5.0 V 6.0 V 7.0 Internet Business Platform V 8.0 Oracle8i Oracle 9i Early Relational Client/Server Relational Enterprise Relational Object Relational Internet Database 39. Session 1 39 Major Release Time 1st Patch Bundle 2nd Patch Bundle Next Major Release 1st Patch Bundle 2nd Patch Bundle Time Last Patch Bundle Next Major Release 1st Patch Bundle Time Last Patch Bundle Patch Bundles & Major Releases Timeline How Software Evolves: Versions and Releases 40. Every Major Version Should Meet A New Technology / Functional Objective Every Minor Release Incrementally Fixes Defects or Adds Minor Enhancements to Existing Functionality Doing the Right Things Vs. Doing Things Right Session 1 40 Versions and Releases In The Context Of Quality 41. Session 1 41 Release Management Making Sure The Right Features Reach The Right Customers At The Right Time Working The Right Way Consistently and Predictably 42. Quality Quality Assurance, Quality Control Quality Management SDLC Release Management