Software Quality Management CS 773 – Class syllabus Mary Alix mealix@bu.edu SPRING 2016 Course Description: MET CS773 - Software Quality Management Theory and practice of quality assurance and testing for each step of the software development cycle. Verification vs. validation. Test case design techniques, test coverage criteria, and tools for static and dynamic analysis. Standards. Test-driven development. QA for maintenance and legacy applications. Courseware: Required reading and research, project artifacts, presentations are instructor-supplied on BlackBoard Learn Coursework: Individual work: all presentations both in-class and assignments posted on Blackboard are preceded by instructional goals; the student is responsible for being able to meet all of the instructional goals, as all quizzes and exams are designed to test those goals. Team work: a class project is a major part of the course, and all students are expected to participate fully on a team. Quizzes: weekly or bi-weekly quizzes may form a major part of the course evaluation; quizzes are designed to ensure that students have completed the assignments prior to class, and that they have understood the basic concepts presented so that they can make meaningful contributions to the class and team project which depend on knowledgeable contributors to complete the class work. Exams: a mid-term and/or final may be scheduled, depending on the class work and the progress made by the class as a whole. Policies: Academic Code of Conduct: Cheating and plagiarism will not be tolerated in any Metropolitan College course. They will result in no credit for the assignment or examination and may lead to disciplinary actions. Please review the Student Academic Conduct Code at http://www.bu.edu/met/metropolitan_college_people/student/resources/conduct/code.html Grading Criteria: Students accumulate points for all assigned work. Points are aggregated and at the end of the course, the student total is divided by the total possible for the course and the resulting % determines the letter grade according to the BU/Met College grading system. The student may request his/her total points from the instructor at any time to determine the current grade; the instructor will share a student’s point totals with the student at various times during the semester as a means of ensuring that the instructor has correctly accounted for all points earned by the student, and the student is aware of his/her current standing. Class meeting times, topics, & assignments: Topic 1 Introductions Class/Course rules SMART Goals; Requirements as SMART goals Assignment SMART goals – for quality characteristic Defining biz problems Specifying use cases Prelim project goals Interview questions 2 Team Work: Define class project Interview for scope & understanding Document use cases, goals Organize team responsibilities Use cases Biz vs System use cases Metrics for project success Interview questions for refinement: biz vs sys 3 Finalize project success metrics Add’l interview questions Finalize use cases Document add’l biz & sys reqs Implicit vs Explicit reqs Req prioritization Relationship bet reqs & testing Testing types Prelim testing scenarios 25-JAN 1-Feb 8-Feb 16-Feb 4 22-Feb 5 29-FEB 6 Add’l reqs specs, if necessary Req prioritization Functional areas Review testing scenarios Organize reqs mgmt. & testing among group How to do a paper mock-up POC Creating & writing test cases Test case documentation Prep paper mock-up of software Formalize reqs Paper POC presented / feedback Review & revision of project goals/metrics Test case discussion/additions/revisions Test documentation discussion Defect handling/attributes Defect classification Paper POC of defect handling Update paper POC of software based on feedback Organize test case documentation, responsibilities, assignments Updated paper POC of software POC: defect handling Formalize test cases to group/responsibilities Defect mgmt. responsibilities Research test case coverage & prepare metrics for each testing area Write 3-4 perceived defects for each test area Mid-term 7 Review/categorize defects Respond to instructor-submitted questions/issues Decide on fixes/deferrals Finalize project documentation Research “lessons learned” techniques Final paper POC for release 1 Finalize project documentation/updates Metrics measurements research Begin list of what went well/what didn’t for Lessons Learned 8 21-Mar Final paper POC to instructor Instructor does UAT testing Acceptance Complete evaluation of project metrics Lessons Learned: organize responsibilities Lessons Learned results posted Research SW maintenance Research regression testing; select cases for test sets Research testing automation: pro vs con Create short list of maintenance/deferred reqs 28-Mar Finalize maintenance issues to be included Organize responsibilities Create regression test set Present case for/against testing automation Make all decisions for maintenance phase Research test automation tools Defining enhancements vs maintenance Interview questions for Rel 2 Decide on testing tool Q&A regarding release 2 Rel 2 goals & metrics to be used Rel 2 use cases Decide on new Reqs for enhancements, if any Prioritize reqs & discuss potential test cases for new reqs Create all documentation Create first paper POC of rel 2 Paper POC of release 2 / feedback Formalize revisions to goals, metrics, reqs, regression & testing for rel2 Select testing scenarios for rel 2 Select and formalize new test cases for Rel 2 14-Mar 9 10 11 4-Apr 11-Apr Review new test cases for rel 2 Formalize test cases Make changes/revisions to defect handling based on lessons learned Write 2-3 defects for each area of testing/fix decisions 12 20-Apr BU Course evaluation Present POC for Release 2 Present documentation 13 25-Apr Finalize release 2 project metrics Final: Compare Class work documentation with stated course goals Prepare Final Paper POC for Release 2 Finalize all project documentation