2. The challenge
To deliver software with new
functionality, yet not impact the
stability of the existing system.
It’s the problem of “changing the
wheels on a moving bus”.
3. The challenge
New functionality must be delivered
without error.
New releases cannot impact the
stability or functionality of the
existing system in whole.
4. The challenge
Enhancements may can be part of
the core product, or custom
developed for a single client.
Changes frequently must be
migrated to other client builds,
where they can differ significantly.
6. Testing
Testing issues:
• Software quality assurance function is
separate from development
• Test environments separate from
production and development
• Testers test to the specification, not
the code
7. Version control
Version control issues:
• Multiple developers working at once
• A complex architecture with many
dependencies
• Custom and core developments
occurring simultaneously
• Scheduled & emergency releases
8. Deployment
Package release issues:
• Developers don’t release code to test
or production
• Package release team doesn’t know
the code, data, or dependencies
• Release instructions must be accurate
for rollout and rollback
9. Audit
Release management requirements:
• All releases audited for compliance
with stated procedures
• Quality of release notes
• Presence of code review
• Approval by change control
committee and client prior to release
11. About PortfolioAid
• Founded in downtown Toronto in
2001.
• Experts in retail brokerage
compliance.
• Experiencing rapid growth as the
compliance market matures.
12. SDLC environments
• Used by developers
• No client data
Development • Version: production + 3
• Used by SQA team
• No client data
SIT • Version: production + 2
• Used by clients
• Limited production data
UAT • Version: production + 1
• Used by clients (live)
Production
• Full production data
13. Virtualization
PortfolioAid utilizes virtual
development environments for :
• Flexibility in deploying new systems
• Simplifying reconfiguration & upgrades
• Scrubbing environments if they are
damaged by a release – effects rollback
in minutes
14. Managing the SDLC
SQA Manager is gatekeeper to the
SIT environment. Must have:
• A proper spec from the BA’s
• A complete ticket with attached release
note
• Release instructions that work in ‘git’.
15. Managing the SDLC
Production Manager oversees all
releases to all clients:
• Runs the change control meeting
• Reports on metrics
• Investigates failed releases; tracks
remedial actions
16. Managing the SDLC
Package release team delivers all
new software, schema changes,
and configuration changes. They:
• Must have good release instructions
• Use ‘git’ to roll out and roll back
• Must have authorization from the
Production Manager
17. Fit for service
Success in software delivery
• Delivering value-added functionality in a
reliable fashion (1 error in 557 releases).
• Dependable processes free the time of
PortfolioAid SME’s.
• Packages migrating between clients with
ease; package releases tied to ticketing
system for approvals & audit.
18. My role
In buildng this strategy, I:
• Gathered and analyzed the governance/audit requirements
• Led the discussion and design of the SDLC (I am a PMP).
• Mapping the governance framework to business strategy.
• The writing (and substance) of process manuals.
• Managing the auditors. I have worked with American,
Japanese, and Canadian auditors. (Certified Internal Auditor
designation in progress).
• Nearly twenty years in IT. I have worked with technology
providers on three continents.
19. Questions
Michael Werneburg
416-848-4136
michaelw@portfolioaid.com