Many software organizations
lack discipline, credibility, and most importantly, predictability. As a
result, it is often difficult to determine when software products will be
released, the features these products will have, and overall quality.
Without knowing when products will be released, your organization may not
be able to plan customer training and product promotions, your resource
utilization across projects becomes difficult to manage, and customers may
be unable to plan for introduction of your software into their
organization.
This sequence of three
interactive workshops can help your organization delight your customers by
delivering what you promised, in the timeframe you promised it, and with
the level of quality your customers require.
This 3-part workshop is
based on the book Software Verification and Validation for Practitioners
and Managers, 2nd edition, by Steven R. Rakitin. the book will be
available for purchase onsite through the instructor.
Part
I - Management’s Role in Achieving Predictable Software Development
An interactive ˝ day
workshop for Senior Management
Date & Time: Tuesday,
April 15, 8:30AM - 12PM
Location: TBD
A predictable software
development process can significantly improve an organization’s ability to
deliver quality software on time, to meet customer expectations, and to
improve employee satisfaction. In order to become more predictable,
Management must play an active role in changing the culture. This half-day
workshop provides Managers and Executives with proven techniques they can
use to help their organizations become more predictable. These techniques
can help you make more effective use of scarce engineering resources,
reduce the number of costly bug-fix releases, balance issues of quality,
features, and schedule, as well as people, product, and process. As a
direct result, you will learn how to under-commit and over-deliver, and
thereby improve your bottom line.
Audience: Software
Development Managers, SQA Managers, Sr. Executives, VPs, CEOs
Outline: Topics
covered include:
-
Motivation
- What is a
Predictable Software Development Process?
- Why is it important
for my organization?
- How can I help my
organization become more Predictable?
-
Economics of Software
Development
- Software Defect Cost
Models
- Bug Fix Releases are
not Free
-
Balancing Quality,
Features, and Schedule
- Estimating and
Scheduling Best Practices
- Estimating Skills
- Scheduling Skills
- Management’s Role
with regard to Estimating and Scheduling
-
Balancing People,
Process, and Product
- Software Development
Best Practices
- Documenting your
Software Development Process
- Managing Customer
Expectations
- Dealing with People
Issues
- Management’s Role
with regard to Process
-
Summary and Action Plan
Part II - Building Realistic
Project Schedules from Software Requirements
An interactive full-day
workshop for Software Project Teams
Date & Time:
Wednesday, April 16, 8:30AM - 4:30PM
Location: TBD
The increasing demand for
complex software coupled with the inability of many organizations to write
clear, concise requirements often results in increased time to market,
increased rework, and lower quality products - all of which negatively
impacts your company’s bottom line. Further, software project teams are
often unable to accurately estimate and schedule the work they need to
perform. As a result, Management frequently imposes delivery dates for new
products. With the end date given, the project team is forced to “schedule
backwards”. Schedules developed in this manner are always unrealistic
since the project team must estimate task duration based on time available
rather than time required. Since most companies provide little or no
training in writing requirements, task estimating and project scheduling,
it’s not surprising that software projects are frequently delivered late,
with fewer features than were promised, and with too many bugs. Many
companies over-commit and under-deliver.
To address this problem
organizations need to learn how to: (1) write better requirements, (2)
more accurately estimate tasks based on those requirements, (3) develop
accurate, realistic schedules based on their estimates, and (4) deliver
what was promised on time.
This full day workshop
provides the skills your organization needs to learn how to under-commit
and over-deliver. The morning session is devoted to understanding the
importance of writing good requirements and specific skills need to
accomplish this.
Audience: Project
Managers, Product Managers, Program Managers, Software Development
Managers/Leads, SQA Managers/Leads, and Technical Writing Managers/Leads
Outline: The morning
session covers topics related to writing good requirements and includes:
-
Introduction
-
About Requirements…
-
Identifying and
Removing Ambiguity
-
Alternative Techniques
for Expressing Requirements
-
Managing Changes to
Requirements
-
Summary and Action
Plan
The afternoon session
covers topics related to accurate estimating and scheduling and includes:
Part
III - Software Verification & Validation:
An Overview for
Practitioners
An interactive full-day
workshop for project leads, QA, and development staff
Date & Time:
Thursday, April 17, 8:30AM - 4:30PM
Location: TBD
In today’s global economy,
the product development cycle has shrunk from years to months. Many new
products have software embedded within them. Companies are finding that
demand for products frequently exceeds their capacity to deliver. In
addition, complexity has been increasing exponentially. As a result, many
organizations trade off product quality to meet aggressive time to market
goals. While perfect software is not practical, delivering poor quality
software can have a negative impact on both customers and development
organizations. Using effective Software Verification & Validation
techniques, companies can improve Quality, which lowers long-term costs
and increases profits, and at the same time, help get products to market
on-time.
Audience: QA
Managers/Leads, QA staff, Development Managers/Leads, and Project Managers
Outline:
Topics covered include:
-
Introduction
- Definitions,
Standards, Business Case
- Software Development
Models
-
Software Verification
Activities
- Requirements
- Verification
Exercise
- Peer Reviews
- Unit and Integration
Testing
-
Software Validation
Activities
- Testing Principles
- Methods, Strategies,
Levels, Types of Tests
- Planning and
Executing
- Validation Exercise
- Final Topics:
Triage, Root Cause Analysis, Automated Testing Challenges
-
Summary
Lecturers Bio:
Steven R. Rakitin has over 30 years experience as a software engineer and
software quality manager in a broad range of industries. He has written
extensively on the subject of software quality and published a book
titled: Software Verification & Validation for Practitioners and Managers.
He helped write the first IEEE Software Engineering Standard (for Software
Quality Assurance Plans, IEEE-STD-730) and is currently on the IEEE
Standard 1012 (Software Verification & Validation) Working Group. He
received a BSEE from Northeastern University and an MSCS from Rensselaer
Polytechnic Institute. He has earned certifications from the American
Society for Quality (ASQ) as a Software Quality Engineer (CSQE) and
Quality Auditor (CQA). He is a member of the IEEE Computer Society, the
ASQ Software Division, and is on the Editorial Review Board for the ASQ
Journal Software Quality Professional. He presents papers and workshops at
conferences worldwide. As president of Software Quality Consulting Inc.,
he helps companies establish a more predictable software development
process. Contact him at steve@swqual.com