DOORS Update for VT

advertisement
Opening DOORS at Medtronic
How we migrated from RequistePro to DOORS
to improve CareLink product development
Presented by: Scott Edinger
Medtronic, Inc
CareLink Product Development
September 16, 2010
9/20/2010
1
About Me
„
„
Firmware and Software Development
Background
Joined Medtronic in 1998
„
„
„
Cardiac Rhythm Disease Management (CRDM)
division
Joined CareLink product development in 2007
Developed and deployed several engineering
information and test management systems
9/20/2010
2
CareLink™
„
„
Web-based system for remotely monitoring patients with
Medtronic pacemakers, ICDs, and heart monitoring
devices
Developed with Microsoft ASP.NET and SQL Server
technologies
9/20/2010
3
CareLink History with
Requirement Management (RM)
„
„
IBM Rational RequisitePro used since beginning of
CareLink (2000)
CareLink Firmware (Home monitor)
„
Standard use of ReqPro
„
„
„
CareLink Software (Clinic web software)
„
Non-standard use of ReqPro to accomplish reuse
„
„
„
Word document is the master source of the data
Requirements are tagged and extracted into a database for tracing
ReqPro Database contains a superset of data for all projects
Documents are generated using SoDA for each project and release
Verification and Validation Testing
„
„
„
Test Cases and Test Procedures
Traceability to Requirements
Documents/Reports generated using SoDA
9/20/2010
4
Move from ReqPro to DOORS
„
Needs of CareLink software development
outgrew ReqPro
„
„
„
„
Tool Evaluation
„
„
Technical limitations
Vertical traceability/system decomposition issues
Reuse on concurrent projects was difficult to manage
Evaluated several Requirement Management (RM)
tools
DOORS was selected as best overall fit
„
„
Best out-of-the-box functionality with ability to extend
when needed (ie. reuse)
Decision made before IBM Rational acquired DOORS
9/20/2010
5
Pilot Project Using DOORS
„
Proved out on major CareLink software release
„
„
„
Based on previous release data in ReqPro
If successful, follow-on releases would use DOORS
Scope
„
Started out small
„
„
„
No integration with change control
„
„
„
„
System-level specification and concept description with traceability
10 months before start of verification and validation testing work
Same as done with ReqPro
Generated Word documents are checked into version control and
referenced by change control
Used out-of-box functionality as much as possible
Tool work focuses
„
9/20/2010
Import, Reuse, Traceability, and Document Generation
6
Quickly Moved to Production Use
„
User Acceptance
„
„
„
Users have embraced DOORS
Productivity and quality have increased
Continual iteration, building on successes
„
„
„
Added lower-level subsystem specs with traceability
Added follow-on development projects/releases
Added verification and validation
„
„
„
„
„
Test cases and test procedures
Tracing links
Interface with homegrown test management tool
Added other groups
Each iteration added new user needs and challenges
9/20/2010
7
Development
„
Import
„
„
Traceability
„
„
Homegrown Test Management Application
Document generation/reporting
„
„
Manages content sharing between projects and releases that are
being developed concurrently
Integration to Existing Tools
„
„
Defining relationships and developing tracing views
Reuse
„
„
Import from ReqPro and/or Microsoft Word
Configuring Rational Publishing Engine (RPE) to generate
different documents
DOORS Add-in Mechanism
9/20/2010
8
Import
„
Developed innovative ReqPro import methods
„
ReqPro data is imported directly into DOORS using ReqPro RPX
OLE API
„
„
„
„
„
Different approaches used to merge ReqPro and Word content
DOORS modules are built dynamically from scratch
„
„
„
„
System and User-defined attributes
Folder/document structure
Links
Medtronic standard attributes, types, and views
Group permissions are applied
Custom partitioning for shareable editing
ReqPro link data is later used to build DOORS links
9/20/2010
9
Requirements Traceability
9/20/2010
10
Reuse
„
„
„
None of the tools we evaluated did this well
DOORS provided the framework to build what we
needed
User Interface Controls
„
„
„
„
Locking of shared content
Branching/merging content
Project label manipulation
Mechanisms
„
„
„
Branching project iterations within releases
Propagating shared data between derived releases/projects
Replicating common requirement content into different contexts
9/20/2010
11
Document Generation
„
„
„
„
„
„
Rational Publishing Engine (RPE) is awesome!
Generates documents in a fraction of time compared to
SoDA or DocExpress
Documents are easy to design with a visual layout tool
JavaScript can be used to customize just about
everything to meet documentation needs
Very successful in rendering complex documents
Confident that this tool will meet our document
generation needs
9/20/2010
12
DOORS Add-in Mechanism
„
What is deployed in our customization
„
„
„
„
„
Uses standard DOORS add-in mechanism
„
„
„
„
„
Windows installer deploys to local drive
Windows shortcuts match database and add-in code base
Enforces use of correct add-in version
„
„
Custom project and module menus
Trigger code
Layout DXL and DXL Attribute support code
RPE template files (*.dot and *.dta)
Requires appropriate add-in version to edit module content
Prompts user to upgrade when necessary
Adjusts easily to DOORS upgrades
Works with DOORS Web Access (no menus or trigger
initiated dialogs)
9/20/2010
13
What opened DOORS for us?
„
Flexibility of users and management in CareLink
organization
„
„
„
Already in mindset of managing requirements in a database
Willing to take risks, especially in the wake of previous failed RM
efforts
Willing to endure pain of new tools/process changes to get to a
better future state
„
„
First rollout of any new tool always impacts project
Tools team partnered with key lead systems and testing
engineers
„
„
Users were encouraged to be involved in forming and continually
guiding the tool and processes
Worked together to remove roadblocks and trusted each other
9/20/2010
14
What opened DOORS for us?
„
Used tools out-of-the-box as much as possible
„
„
„
Started out small, iterating and building on
successes
„
„
„
Reuse mechanism is main custom functionality that
was developed
Developed tools to enforce consistency and to save
time
Started out assimilating existing data structure and
processes
Streamlined processes for efficiency
Learned from and improved on ideas, tools and
techniques from past RM efforts
9/20/2010
15
Questions / Discussion
9/20/2010
16
Download