Agile Software Development in Life Sciences Ryan O’Sullivan, Donal O’Brien

advertisement
Agile Software Development
in Life Sciences
Ryan O’Sullivan, Donal O’Brien
(QUMAS)
Dublin - 17th October 2013
1
Introductions
• Donal O'Brien, Vice President of Development & Support, QUMAS
– Responsible for leading and managing all aspects of the QUMAS product
development and product support activities.
– Over twenty years experience in the development and implementation of software
systems, in a number of industry sectors including Life Sciences and Financial
Services.
– Certified Scrum master and Certified Product Owner
– Holds a BSc in Computer Science and a Masters in Business Administration.
Dublin - 17th October 2013
2
Introductions
• Ryan O’Sullivan, Senior Development Manager, Scrum Master
– Ryan O’Sullivan has over fifteen years experience in Product development
across a number of technology sectors.
– Certified Scrum master and Certified Product Owner
– Worked across all technologies within QUMAS over the last thirteen years.
– Responsible for Implementing a Scrum development model within QUMAS.
– Holds a BSc in Biological Sciences and a Higher Diploma in Computer Science
Dublin - 17th October 2013
3
Round-table
• Interactive Session on the use of Agile
software development in Life Sciences
• Feedback from the group on its
experience of Agile
– Advantages of Agile
– Challenges
– Lessons learned etc.
4
Why is Agile a topic
for Discussion?
• Widespread adoption of agile methods…
– 56% penetration (Forrester/Dr Dobbs 2009)
– >80% by 2012 (Gartner 2010, VersionOne 2011)
Agile methods work!
5
Why is Agile a topic
for Discussion?
• Agile methods initially seen as best suited to…
small projects

co-located teams

non-critical environments
?
6
Structure of Round-Table
• Brief overview of Agile
• Scrum as implemented in QUMAS
– (R-Scrum)
• Feedback
7
•
Adapted from a paper presented to the 35th International Conference on Software
Engineering San Francisco, May 2013.
•
Brian Fitzgerald, BA, MBS (NUI), PhD (Lond), FICS, FBCS, CITP, Ceng,
•
Dr Klaas-Jan Stol
•
(Lero : The Irish software engineering research centre - See more at:
http://www.lero.ie)
•
Case Study http://staff.lero.ie/stol/files/2013/04/ICSE2013_Fitzgerald_etal.pdf
Dublin - 17th October 2013
8
Reason for Change
• 2008 - QUMAS started a number of Integration projects with third
parties where the traditional SDLC needed to be optimised .
• 2009 - Evaluated the Atlassian Product Suite.
• 2010 - Modified the SDLC to reflect the new Scrum Development
lifecycle and implemented on a new Flagship product.
• 2012 - Made the Scrum SDLC the new standard across
Development
Dublin - 17th October 2013
9
Agile Manifesto
Individuals and interactions
OVER
Processes and tools
Working software
OVER
Comprehensive documentation
Customer collaboration
OVER
Contract negotiation
Responding to change
OVER
Following a plan
Key in regulated environments
Dublin - 17th October 2013
10
What is Scrum?
•
A framework for managing agile software development.
•
Scrum Roles
– A Product Owner owns the product backlog.
– Scrum Master keeps the team focused on its goal and ensures no one
is impeded in their work .
– The Team implements the planned work
•
Scrum Ceremonies
– Sprint Planning Meeting
– Sprint Review
– Sprint Retrospective
– Daily Scrum
Dublin - 17th October 2013
11
Generic Scrum
What is Scrum
Scrum Master
1 day
Product
Owner
Scrum Team
Product
Backlog
Sprint
Planning
Meeting
3 Weeks
Sprint
Backlog
Daily
standup
meeting
Sprint review
Shippable
product
Sprint
retrospective
Dublin - 17th October 2013
12
R-Scrum
• R-Scrum
• New checkpoints: Dev check, QA Review
• New roles: User doc, QA
• New artefacts: Non-Conformance Report
Dublin - 17th October 2013
13
R-Scrum
•
Quality
– QA bought in to agile process (despite fundamental change in work
configuration)
• Formal conformance audit of every Sprint completed within three
days of end of Sprint (~every three weeks)
• Non-conformance report fed back to Backlog
– ‘Continuous Compliance’
• “No unexpected surprises at final release. We are just confirming
the final release” VP Quality & CRM
Dublin - 17th October 2013
14
Living Traceability
• Transparent end-to-end traceability enabled by tool
support
User
stories
Production
code
System
test
Tasks
Design
Docn.
Living
Traceability
Source
code
Build
Code
review
Unit
Tests
Dublin - 17th October 2013
15
Traceability
Traceability
Traceability
Effectiveness
– Real time Management of Sprint progress
– Team ownership & Responsibility
– Responsive to customer requests within two Sprints ~ five weeks
– Customers ordering product before final release (having experimented
with working product prototypes)
– Facilitates regulatory audits – can be driven by auditor
Dublin - 17th October 2013
19
Continuous Deployment
– Facilitated through ‘living traceability’
– Regression test suite of thousand+ tests in typical build
– Code base monitored every two hours: code check-in triggers
continuous integration build
– Builds guaranteed to have new functionality for customer demos
Dublin - 17th October 2013
20
Quality
• Quality enhanced in a myriad of ways
– Embedding of QA – continuous compliance
– Constant validation of product and sprint backlogs based on feedback
from QA/sales & marketing/customers
– Quick response to customer feedback
– Continuous integration -> latest functionality available for demo
– Testing and User Documentation in Parallel
• Integrated tool support critical – living traceability
Dublin - 17th October 2013
21
Quality
The essence of Agility is to deliver stakeholder value as
fully-tested working software in small increments
frequently.
•
Demonstrate compliance in small increments
•
Rehearse the whole process in stages (over and again)
•
Conduct one final assessment
•
You’re ready for Release!
Dublin - 17th October 2013
22
Topics for Discussion
• Traceability
• Documentation
• Auditor Perception
• Requirements Management
Dublin - 17th October 2013
23
Download