5
Building a Quality-Ready Environment Prepared for Company Apple January 16, 2008 Prepared by Larry Nicholson (513) 754-1655 [email protected]

Quality-Ready Assessment sample report

Embed Size (px)

Citation preview

Page 1: Quality-Ready Assessment sample report

Building aQuality-Ready

Environment

Prepared for

Company Apple

January 16, 2008

Prepared by

Larry Nicholson(513) 754-1655

[email protected]

Page 2: Quality-Ready Assessment sample report

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 OrganizationThe 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.

Page 3: Quality-Ready Assessment sample report

Key Technology Competency AreasA 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

Page 4: Quality-Ready Assessment sample report

Apple - QRA ResultsYour Quality Journey Begins

Page 5: Quality-Ready Assessment sample report

RecommendationsTo Reach the Expert Practice Level Organizations that aspire to reach the expert practice level and create a sustainable quality-advantage should consider the following practice improvement opportunities:

Track• Deploy an issue management solution with integrated change management to reliably track development

artifacts, including source code, test cases, test results, and issues

• Create a fully enforceable and repeatable product development process

• Ensure complete traceability between development artifacts with linking and automatic change notifications

• Log every action, document every change, and record every approval for compliance and auditing purposes

• Continuously track and report on development and testing status to ensure release schedules are met and quality products are delivered on time

Test• Use a test case management solution to track test cases, assign tests, and track results

• Organize automated tests into regression test suites that can be performed without impacting resources

• Eliminate test-to-fix lag time by deploying a test case management solution that can be integrated with your issue management solution

• Utilize pair-wise testing or another best practice to reduce testing effort, when possible

Automate• Automate every test that can be automated, and run automated tests as part of your nightly build process

• Utilize an adaptive automated testing tool to ensure scripts do not require extensive modifications when an application changes

• Integrate your automated testing and issue management solutions to automatically push test failures into the issue management workflow

• Deploy an integrated ALM solutions suite that includes test case management, automated testing, issue management, and change management

Change• Use a software change and configuration management solution that requires users to link source file changes

with feature and change requests

• Enforce your change policies with a workflow-enabled change management solution

• Leverage change management tools and practices beyond the software development organization to streamline the change process and enforce change policies company-wide

• Utilize notifications and triggers to improve communications, automate change, and enforce policies

• Streamline development and testing collaboration by providing access to source files from your issue management solution and access to issues, tasks, and test cases from your change management solution

5412 Courseview Dr., Suite 200Mason, OH 45040

TEL 513-754-1655FAX 513-754-1660

www.seapine.com

©2008 Seapine Software, Inc. TestTrack Pro, TestTrack, Surround SCM, QA Wizard Pro, and the Seapine logo are trademarks of Seapine Software, Inc. All rights reserved worldwide. Information presented here is accurate as of the time of printing, but is subject to change or revision without notice.