Upload
alan-see-cmo-temps-llc
View
83
Download
1
Embed Size (px)
Citation preview
Building aQuality-Ready
Environment
Prepared for
Company Apple
January 16, 2008
Prepared by
Larry Nicholson(513) 754-1655
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.
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
Apple - QRA ResultsYour Quality Journey Begins
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.