Product Development Best Practices



Similar documents
Software Development Lifecycle. Steve Macbeth Group Program Manager Search Technology Center Microsoft Research Asia

What is a life cycle model?

Classical Software Life Cycle Models

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Improving Project Governance Using Agile and Metrics. Kevin Aguanno PMP, IPMA-B, MAPM, Cert.APM

Information Technology Policy

A Practical Guide to implementing Agile QA process on Scrum Projects

Agile with XP and Scrum

Business Analysis Essentials

Agile Model-Based Systems Engineering (ambse)

Software Quality and Agile Methods

Measuring ROI of Agile Transformation

IT Home 2015 DevOps 研 討 會

Introduction to Agile Software Development Process. Software Development Life Cycles

Project Management in Software: Origin of Agile

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki

44-76 mix 2. Exam Code:MB Exam Name: Managing Microsoft Dynamics Implementations Exam

Practical Agile Requirements Engineering

Scrum Methodology in Product Testing : A Practical Approach

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring For the 1 st Quiz

Leveraging RUP, OpenUP, and the PMBOK. Arthur English, GreenLine Systems

Continuous Integration Processes and SCM To Support Test Automation

Traditional requirements

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Business Analysis From Yes-M Systems LLC Length: Approx 7 weeks/55 hours Audience: Students with or without IT experience or knowledge Student

Aligning IT investment and Business

Software Process and Models

Appendix H Software Development Plan Template

DevOps for CA Plex Automated Testing

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)

System Development Life Cycle Guide

Nova Software Quality Assurance Process

Using Use Cases on Agile Projects

AGILE SOFTWARE TESTING

Information Technology Services Project Management Office Operations Guide

The Agile Movement An introduction to agile software development

Model-Driven Software Produces Truly Agile Solutions

Quantification and Traceability of Requirements

How Product Management Must Change To Enable the Agile Enterprise

Higher National Unit specification. General information. Software Development: Analysis and Design (SCQF level 7) Unit code: HA4C 34.

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info

SCT Event Driven Appendix (LDI Event Integrator)

AGILE - QUICK GUIDE AGILE - PRIMER

Comparison between Agile and Traditional software development methodologies

State of Oregon. State of Oregon 1

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK

Taking the first step to agile digital services

STS Federal Government Consulting Practice IV&V Offering

Software Development Life Cycle (SDLC)

Software Quality Assurance Plan

BAL2-1 Professional Skills for the Business Analyst

Agile Development for Application Security Managers

Software Testing Lifecycle

ICAgile Learning Roadmap Agile Testing Track

Discovery Projects Strategies for Defining the Opportunity. Tom Martin Senior Technology Consultant

Agile Requirements And Testing For Continuous Software Delivery

Agile Processes and Methodologies: A Conceptual Study

Quality Assurance: Early Work Items

Perimeter, Area and Volume What Do Units Tell You About What Is Being Measured? Overview

Codeless Test Automation for Web Apps

Agile Project Management and the Real World. Emily Lynema DLF Fall 2010 November 1, 2010

(BA122) Software Engineer s Workshop (SEW)

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

Chapter 1 System Development Environment

Agile Processes and Distributed Projects: Dream or Nightmare?

Principles of Software Engineering: Software Methodologies. COSI 120b, Spring 2005

Real Time Embedded Software Development Using Agile Technology An Experience Report

Agile Documentation In practice. Marion Bröer, parson AG

PROJECT SCOPE STATEMENT

Agile Software Development

Testing in Scrum Projects

Issues in Internet Design and Development

automated acceptance testing of mobile apps

Agile Software Development Methodologies and Its Quality Assurance

MOBILE APPLICATION TESTING ENGINEER

Software Process for QA

Continuous Sales & Operations Planning

Agile project portfolio manageme nt

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

ISTQB Worldwide Software Testing Practices Report

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development

Alan Dennis, Barbara Haley Wixom, and Roberta Roth John Wiley & Sons, Inc. Slides by Candace S. Garrod Red Rocks Community College 3-1

Tonight s Speaker. Life of a Tester at Microsoft Urvashi Tyagi Software Test Manager, Microsoft

Agile software development

Scrum: A disciplined approach to product quality and project success.

When User Experience Met Agile: A Case Study

Agile Requirements by Collaboration

ASSURING SOFTWARE QUALITY USING VISUAL STUDIO 2010

Agility in Project Management

PMAP. Project Management At Penn PMAP

PRINCE2:2009 Glossary of Terms (English)

IMPORTANCE OF SOFTWARE TESTING IN SOFTWARE DEVELOPMENT LIFE CYCLE

Transcription:

Product Development Best Practices An Agile, User-centric Software Development Lifecycle Marc Nadeau, Senior Director, QA, Blackboard Thursday, July 12, 2007

Agenda Introduction to the Blackboard SDLC Blackboard Requirement Stages Phased Development Client Involvement Question and Answers 2

Introduction to Blackboard s SDLC Software Development Life Cycle (SDLC): Framework for understanding and building software Requirements Outline use cases Workflows Quality Assurance Group and rank use cases Determine test case coverage Framework Engineering Define conceptual model Documentation Determine audience and documentation needs 3

Common SDLC Models Waterfall: Linear and sequential. Iterative: The application is developed in small sections. Agile: Plan, build, evaluate, adapt, repeat. 4

Blackboard s Methodology Waterfall Predictive Iterative Adaptive Agile Application Pack Strategy Targeted releases Limited scope Increased frequency Two per year High quality Feature Teams Includes Requirements, Developers, Quality Assurance, Performance, and Documentation Increased communication and collaboration 5

Requirements Stages Product Roadmap Product Requirement Document (PRD) Business Priority Table (BPT) Functional Requirement Spec (FRS) Technical Design Document (TDD) 6

Roadmap Feature lists collected from numerous sources Roadmap Committee Client-facing departments Analysis of client needs Direct Client Feedback Focus groups Blackboard Days Blackboard Idea Exchange Client Enhancement Requests ListServ s Product Development Support Roadmap Committee Marketing Services Sales Executive Management 7

Product Requirements Document High-level description of release features All features listed and ranked External client-facing Internal infrastructure and framework No development until feature approved Business Priority Table Determine business needs per feature Detail List of Client-facing Requirements Prioritize Requirements per feature Must Have, Scheduled, Proximity Sign Off 8

Functional Requirements Specification Create Use Cases One or more use cases for each Business Priority Table item Create user stories Rough Scope Requirements, Engineering, Quality Assurance, Performance Re-evaluate feature list PRD and BPTs updated, if needed Collaborate with Clients Product Development Partnership (PDP) Continuously updated Sign Off 9

Functional Requirements Specification: Components Introduction Feature Priority List Explicitly Out of Scope Description of Feature Who will use, When, Why, Where will it appear Risks Use Case Outlines Workflow Diagram Behavior Overview Provide a description of functionality and how it is used in the problem domain Actors Functional Description Page Level Specifications Continuously updated 10

Functional Requirements Specification: Sample Visio Diagram 11

Technical Design Document Engineering documents technical design details Technical Design Document: Components Design Assumptions and Constraints Programming Interfaces, Operations, Classes Database Specifications Unit Tests Performance Considerations Data Models and UML API Impacts Continuously updated 12

Phased Development Full project team engaged Requirements, Engineering, Quality Assurance, Performance Rough Scope of Requirements Phased milestones Re-evaluate feature list based on scope Dedicated development environment (DevPod s) Three per team, one for each OS Requirements and Dependencies Project team reviews and contributes to FRS and TDD Sign Off Sign Off 13

Phased Development (continued) Requirements One phase ahead of development Detail functionality, workflows, page design for use cases Engineering Build unit tests, build functionality, API test harness, validate Quality Assurance Detail uses cases for phase functionality, audit requirements Test against development builds (DevPods) Manual and automated test cases Performance Build and run performance tests Phase Audits Requirements / Engineering / QA Show and Tell Move onto next phase 14

Verification Quality Entrance and Exit Criteria Cycles Run test cases and Performance tests Find, fix, and verify issues Go/No Go at each Cycle User testing of features Internal demo box Beta: User acceptance testing Early Availability General Availability Quality Early Availability Acceptance Beta Acceptance Cycle n Cycle 2 Cycle 1 15

Client Involvement Blackboard Idea Exchange TM (BIE) Focus Groups, Surveys: help decide what to build Product Development Partners (PDP): help build Product testing (Beta and Early Availability): help test Blackboard Days, Conferences, Client Visits Clients email us ClientPrograms@blackboard.com Clients: Support Report issues and enhancements BIE Focus Groups Client Involvement PDP Surveys Product Testing Client Visits Support Enhancement Tickets Blackboard Days Conferences 16

Thank you Questions Contact Information mnadeau@blackboard.com dmillen@blackboard.com 17