1. Building a
Quality-Ready
Environment
Prepared for
Company Apple
January 16, 2008
Prepared by
Larry Nicholson
(513) 754-1655
nicholsonl@seapine.com
2. Quality-Ready Assessment
Are You Quality-Ready?
How do you define a quality-ready software development organization? A quality-ready development organization
is focused on quality assurance, through the execution of a development strategy that creates a sustainable quality-advantage,
resulting in value for both the customer and the organization. The American Society of Quality (ASQ)
defines quality assurance as:
“The planned and systematic activities implemented in a quality system so that quality requirements
for a product or service will be fulfilled.”
The quality-ready development organization delivers on this definition by profitably designing, developing, testing,
and delivering quality software applications on time and within budget.
Software quality and reliability are lifelines to customer loyalty and your profitability. The need for more rigorous
quality discipline and competence, and collaboration between development and quality assurance (QA) teams
has never been greater. The Seapine Software Quality-Ready Assessment (QRA) is a high-level evaluation tool
designed to help you fine-tune both the efficiency and effectiveness of your development and QA organizations. We
appreciate the time you’ve taken to complete the quality-ready assessment; please call if you have questions about
the results or Seapine’s integrated ALM solutions.
Building a Quality-Ready Software Development Organization
The Seapine QRA recognizes four key practice levels:
The Novice Organization: (QRA score < 49)
Novice organizations treat quality as an afterthought. Concepts like quality assurance, quality control, and
continuous improvement are typically not on their agenda. The potential role of quality as it relates to customer
loyalty is not part of their customer experience strategy.
The Intermediate Organization: (QRA score 50 – 75)
Intermediate organizations could be associated with the phrase “I’d rather have it wrong than have it late. We can
probably fix it later.” Quality assurance, quality control, and continuous improvement are mentioned in meetings,
but current processes and technology do not allow this level of organization to bring their quality goals to life.
With spotty collaboration between development and QA, the organization hopes for the best.
The Advanced Organization: (QRA score 76 – 94)
Advanced organizations might state that “quality is job one.” However, development and QA teams work
independently and information is siloed, which means efficiency and effectiveness (and thus profitability) is not
maximized. Collaboration and enforceable and repeatable processes are limited, and the organization is often in a
reactive instead of proactive mode.
The Expert Organization: (QRA score 95 – 100)
Expert organizations are quality-ready throughout all development and QA processes. They have developed
processes and procedures, and leveraged technology in ways that allow them to continuously ship quality
applications on-time and within budget. They have enterprise-wide, top-down support for their quality initiatives
and realize their customer base considers quality to be mission critical.
3. Key Technology Competency Areas
A company that aspires to evolve into a quality-ready software development organization must focus on four key
technology competency areas: tracking, testing, automation, and change management.
Track
Quality software
development involves
people, processes,
and technology. Your
development and QA
teams may be in the same
building or located across
the city or around the
world. Tracking defects,
issues, feature requests,
change requests, and
tasks through real-time
notifications and
reporting capabilities is
essential to increasing
productivity and creating
collaborative processes
that lead to greater
software quality.
Test
Software applications are
becoming increasingly
more complex and
development schedules
more aggressive. This
impacts each phase
of the development
lifecycle that includes
processes that must be,
measured, improved,
and managed. Testing
leads to continuous
improvement and higher
quality. Establishing
quality goals, testing, and
reporting on progress are
essential to producing a
quality product on time,
time-after-time.
Automate
Time is the one resource
you cannot make more
of. You can add more
resources, but this
increases cost and adds
complexity to your
project. Automation is
one of the best ways to
use time and resources
efficiently. Test cases,
work item routing, state
changes, builds, and other
development-related tasks
are all candidates for
automation. Integrated
automation solutions
remove the need for
human intervention,
which can slow down
automation. Automate
everything possible.
Change
Change is inevitable in
software products, before
and after release. Your
ability to successfully
and efficiently manage
change directly impacts
quality. Software
products and the software
development process are
comprised of thousands
of assets that must be
versioned, shared, and
updated in a controlled
manner. Change
management tools and
practices are critical to
coordinating software
development, managing
multiple versions of
products, and providing
traceability required by
internal and external
regulations.
Track
Automate
Change
Test
4. Apple - QRA Results
Your Quality Journey Begins