Software Engineering Process I

Slides:



Advertisements
Similar presentations
Facilitated by Joanne Fraser RiverSystems
Advertisements

Lecture 2 Team Coordination 1 ICS 126 Team Coordination Team Formation and Organization Group Management Meeting Techniques Large software systems require.
Unit 252 Planning and monitoring work
Software Project Management Lecture # 11. Outline Quality Management ( chapter 26 - Pressman )  Software reviews  Formal Inspections & Technical Reviews.
Gateway Engineering Education Coalition1 Team Agreements or How to get teams moving in the right direction…
Formal Technical Reviews
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
Static Technique. Static Technique - Review  A way of testing software work products  Program code, requirement spec., design spec.  Test plan, test.
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
 Every stage from phase DESIGN in Software Development Process will have “design document” especially in analysis and design phases.  “Design document”
Gu & Maher University of Sydney, October 2004 DECO2005 Monitoring Team Process.
Projmgmt-1/17 DePaul University Project Management I - Work Breakdown Structure Instructor: David A. Lash.
Overview Lesson 10,11 - Software Quality Assurance
Innovation Leadership Training Day Three February 19, 2009 All materials © NetCentrics 2008 unless otherwise noted.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Teamwork C.Eng 491 Fall 2009.
SE 555 Software Requirements & Specification Requirements Validation.
Applied Software Project Management 1 Introduction Dr. Mengxia Zhu Computer Science Department Southern Illinois University Carbondale.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Chapter 16 Software Quality Assurance
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
COLLABORATION MODULE #3 Planning Good Meetings An online module developed by Pivot Learning Partners for the West Contra Costa Unified School District.
INFO 637Lecture #81 Software Engineering Process II Integration and System Testing INFO 637 Glenn Booker.
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Chapter 1: Introduction.
Callis ApS, Copyright © Reviewer Training Material Callis Reviewer version 1.1.
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
Galin, SQA from theory to implementation © Pearson Education Limited 2004 Review objectives Formal design reviews (FDRs) Participants Preparations The.
S oftware Q uality A ssurance Part One Reviews and Inspections.
Software Inspections. Defect Removal Efficiency The number of defects found prior to releasing a product divided by The number of defects found prior.
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Requirement-Related Risks Extracted from the book: Software Requirements By Karl E.Wiegers.
S Q A.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
INFO 637Lecture #21 Software Engineering Process II TSP Roles and Overview INFO 637 Glenn Booker.
Copyright © 2013 by Mark J. Sebern Code & Design Reviews Maybe it is time to revisit the concept of “done” Note that both design and code reviews (or inspections)
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
Lecturer: Gareth Jones Class 18: Teams.  Teams ◦ What are teams? ◦ Types of teams ◦ Conflict resolution ◦ Team strategies 27/10/2015Business Communication.
Software Testing and Maintenance 1 Code Review  Introduction  How to Conduct Code Review  Practical Tips  Tool Support  Summary.
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
Reviews and Inspections. Types of Evaluations Formal Design Reviews conducted by senior personnel or outside experts uncover potential problems Inspections.
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
BSBPMG404A Apply Quality Management Techniques Apply Quality Management Techniques Project Quality Processes C ertificate IV in Project Management
Copyright © by Mark J. Sebern Software Engineering Process I SE 2800.
Copyright © by Mark J. Sebern Software Engineering Process I SE Technical Practices.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
Slide 1 Project 1 Lab 8 T&N3311 PJ1 Information & Communications Technology HD in Telecommunications and Networking Content of this lesson  Final tutorial.
Software Engineering Lecture 8: Quality Assurance.
Lecture 8 TQM 311 lecturer: Noura Al-Afeef Medical Record Department 1.
Leadership Skills. Team Meetings Set the agenda by defining goals and desired outcomes Set the agenda by defining goals and desired outcomes Keep the.
More SQA Reviews and Inspections. Types of Evaluations  Verification Unit Test, Integration Test, Usability Test, etc  Formal Reviews  aka "formal.
Software Project Management Lecture # 12. Outline Quality Management ( chapter 26 - Pressman )  SQA  Who does it?  SQA Activities  Software reviews.
SQA COMPONENTS IN THE PROJECT LIFE CYCLE C HAPTER 8 Dr. Ahmad F. Shubita.
Team Contracts We can work together! Copyright © Texas Education Agency, All rights reserved. 1.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Review Techniques SEII-Lecture 16
CIS 375 Bruce R. Maxim UM-Dearborn
Software Documentation
The Check List Method and Reverse Brainstorming
Inspection and Review The main objective of an Inspection or a Review is to detect defects. (Not for Giving Alternative Solutions) This activity and procedure.
Applied Software Project Management
Dr. Rob Hasker SE 3800 Note 9 Reviews.
QA Reviews Lecture # 6.
Presentation transcript:

Software Engineering Process I Design and Code Reviews

Definition of Done (revisited) “Done” components Repository usage Design Reviews/inspections Testing techniques & strategies Integration/build Textbook, Table 4.1

Code Reviews Do you (or your team) review code now? If so, how do you do it? How effective are these reviews? Potential problems Difficulty in maintaining attention/focus Knowing what to look for

Types of Code Reviews Personal review Code author reviews his/her own work Peer review Review by another team member Inspection Review by whole team (or subset) What are the tradeoffs among these approaches?

Code Review Checklists What is a checklist? Pre-flight example Why? For code: Based on historical defects Used to guide review

Checklist Usage Sample: http://www.liberty.edu/media/1414/%5B6401%5Dcode_review_checklist.pdf

Review Timing Review code before committing to build? Ensures review is done Delay for peer/team reviewers? Later May tend to lower priority of review

What About Design Reviews? What is your experience with reviewing designs? Have you ever done a design review? What exactly do you review? What do you look for? What kinds of design defects have you found?

Reviewing Designs w/ Test-Driven Development? Design documentation with "design" tools Will developers use it & keep updated? Possible alternative Embed design specs into unit tests How does design review work in this case?

(Some would call this an Inspection Team) Review Team Roles (Some would call this an Inspection Team) Review leader Invites reviewers, possibly including customer Ensures materials published before review Ensures review session stays on track Producer Person(s) who created document Recorder Record notes from review so issues not lost Generally one of the reviewers a non-technical person probably won't be able to follow the discussion adequately Reviewers

Effective Reviews/Inspections Software Engineering: A Practitioner’s Approach, Pressman, 2005 Review the product, not the producer Constructive tone, not an inquisition Producer likely the one to find the most problems! Do not use review results for simple evaluation Set an agenda and maintain it Leader must ensure this Limit debate If there’s disagreement, record the issue and move on Further discussion can happen off-line Reviews are expensive!

Effective Reviews/Inspections Identify problems, don’t try to solve them Short discussion can be fine, but don’t let it bog down the review Very few good decisions are developed during meetings! Generating ideas is important and useful during a brain-storming session, but a review is not a brain-storming session Take written notes If rely on people’s memories, important decisions will be forgotten

Effective Reviews/Inspections Limit the number of participants < three: not enough heads to see problems Too many: meeting can get bogged down easily Too many cooks spoil the soup Formal reviews w/ customer: likely to have more people present, but don’t expect as many errors to be found! Use a checklist Helps keep review focused Allocate, schedule time for reviews They don’t happen if just “slide them in” to other work

Effective Reviews/Inspections Limit review sessions to 1-2 hours Longer: review loses effectiveness quickly Difficult to schedule long meetings Large documents: break into pieces, review separately Train for reviews Ensure engineers know how to conduct a review Key issue: review product, not producer Review early reviews Make sure your reviews are effective!

Review Reviews/inspections Code reviews & inspections Checklists Ensuring review is effective