ACDM Focus 2 – Processes December 13, 2013 Diane Guerrero Principal SCM Engineer What this presentation will answer… How Time Warner Cable deploys new features to customer devices by employing software process lifecycle management with an integrated tool set. 2 Agenda Tool Overview Application Links/Tool Integrations Lifecycle Processes Enforced by Tools Benefits Conclusion Questions 3 Tool Overview Atlassian Software Systems (Sydney, Australia) • Jira and essential plugins • Confluence • FishEye • Crucible Perforce Software (Alameda, CA) • Perforce Versioning Engine 4 • Project/issue tracker with powerful customization options • Agile plugin adds agile project management to any JIRA project for software development teams practicing Scrum or Kanban • Structure plugin is an enterprise issue organizer for Project Management, Requirements Management, Test/QA and Help Desk 5 Enterprise wiki to collaborate and share knowledge. Content variations • IT helpdesk information • Development requirements definition • Development design/specification collaboration • Beta tracking • Deployment tracking • Operations maintenance/logging • Blogging • Reporting 6 • One tool with two distinct purposes • Fisheye provides the ability to view the contents of your Source Code Management (SCM) repositories in your web browser • Crucible allows an on-premises code review solution for enterprise teams 7 Perforce Versioning Engine stores and manages access to versioned files, tracks user operations and records all activity in a centralized database. • Software version control • Document management • Release archive of record for production software • Product delivery mechanism 8 Application Links/Tool Integrations 9 Deployment Footprint 10 Lifecycle Processes Enforced by Tools Jira • Issue type specific workflows (Field Report, QA reported bug, Development Epic/Story or Task, etc.) to define scope • Auto assignment based on issue type to expedite closure • Individual project team custom workflows to reinforce policies • Custom fields (~200) and custom screens that require the entry of detailed information to facilitate development efforts • Agile development enforced by Jira Agile plugin to clearly establish formal lightweight process 11 Lifecycle Processes Enforced by Tools Jira • Action authorization for issues managed by custom permission schemes per project (role based for transition between workflow steps) • Custom email notification schemes per project manages to whom email is sent and for which event type (issue created, issue closed, etc.) to eliminate noise Perforce • Protection scheme to prevent unauthorized or inadvertent access to files • Policies in place to enforce intelligent branching • Software products submitted and a promotion model established (Dev Test – QA/Test – Beta – General Availability) for release management • Product release documentation promotion model in place to ensure the correct documents are bundled with each release • Field Support team members pull the software release product from the General Availability location to ready for deployment activities to customers 12 What are the Benefits Flesh out new features before development starts, saving resource time by using the collaborative design and requirements gathering in Confluence. 13 What are the Benefits More maintainable code and improved products by embracing efficient lightweight peer code reviews with Fisheye/Crucible. 14 What are the Benefits Early detection of bugs/issues prior to field deployment by employing interative development and test using Jira. 15 What are the Benefits Better estimating of resource time, cost and scope by using the Jira Agile plugin to manage competing project priorities. 16 What are the Benefits Project scope can span multiple Jira projects. The Jira Structure plugin (also known as the Enterprise Issue Organizer) provides a common view of overall progress across projects with unlimited hierarchy (sub-issues, sub-sub-issues, etc.). 17 What are the Benefits Fewer customer outages for upgrades with new software delivery model that ensures the qualified software work product is what is deployed to the field from Perforce (repeatable and reliable delivery). 18 What are the Benefits The ability to accurately detail what was delivered in a release with reports from Jira and Perforce. 19 Conclusion The migration to this process started in 2003 and was fully realized when our engineering teams instituted the Atlassian tool set a few years ago. 20 Questions? 21