building a giant atlassian universe to take over the world
Post on 11-May-2015
Embed Size (px)
DESCRIPTIONFidelity Information Services uses Atlassian tools to manage its software lifecycle from end to end, for massive, multi-million LOC financial applications including core banking and channels products. In this session Glen and Chris will share the high-level process flow for development at Fidelity. Attendees will leave with the tools to implement change in their own environments while maintaining control and assuring quality in a regulated environment.
- 1.Building a Giant Atlassian Universe!To Take Over The World!Glenn Bingham and Chris Macharia!Fidelity Information Services!
2. The Process Guy The Technology Guy 3. Software and Services for Banks and Financial Institutions!14,000 Customers! 4. Software and Services for Banks and Financial Institutions! ! 200+ customers worldwide!Prole Core Banking Solution! Millions of account holders!TouchPoint Channels Solutions! 700+ software professionals! 5. Our Applications! Prole: the FIS real-time, international, multi-language/multi-currency, ultra-scalable core banking platform! 7mm+ LOC! TouchPoint: Channels solutions for branch, call center and e-banking! Prole core is M-code/MUMPS and Java, GT.M open source database. Channels applications are Java. Integration to other platforms via FIS Xpress SOA platform! 6. Large scale, big team, corporate environmentIt s people s money it needs to be correctNothing happens by accident! 7. Our Stack! Workow & Collaboration! JIRA, Conuence! Source Code! Subversion, Fisheye, Mercurial! Code Quality! Crucible, FindBugs, JTest, Fortify! Builds! Bamboo, Artifactory! 8. Our Stack!Development Project Mgmt ToolsToolsCode management MS Project Time tracking Code review Planview Time repor+ng Development history EPK Project plans Build scheduling Es+ma+ng tools Project status Build status MS Oce Program repor+ng Defect repor+ng Financial repor+ng Defect severity Green/Yellow/Red Task progress JTest, For+fy Detailed task status Ar+factory Traceability Quality Center QTP Winrunner, Loadrunner 9. Platform Usage & Volumes! 2,500 users! Users in North America, Europe, Asia, Central/South America, Australia! 150+ K JIRA records! Growth rate of 80% / year! Platform support team:! 4 core staff, 4 secondary support! 10. You don t have to toss out (all) your other toolsYou don t need a large team to support 100s ofusers! 11. FIS Software Development Lifecycle! Software quality and accuracy are paramount! Gigantic process! CMMI Level 3 based SDLC and project management process set - FISSP! FISSP is methodology independent; denes the what, not the how! Tools support the process; they do not dene the process! Our Atlassian integration project began in April, 2009! 12. Our Tools Philosophy! The primary intent three years ago was to evolve our software development methods toward a more incremental and continuous process! Implement new technology tools (Atlassian suite, Subversion, others) to support this transformation.! This model is descriptive, not prescriptive (step 1, step 2, etc.) teams adopt specific practices to achieve goals and benefits Software development workflow is guided/loosely constrained as opposed to controlled/highly constrained 13. Guided (loosely constrained)Our Tools Philosophy! vs.Controlled (highly constrained) Software development workflow is documented and enabled within Jira, but we have not constrained the tool to force compliance Team members are expected to follow the workflow and the rules Some rules are absolute and are highly constrained, for example, code check-in/check-out Some fields are required OOB = out of the box. For the most part, we are using the ability to configure Jira, but not the ability to highly customize it 14. Workow!JIs and development workflow 15. Using JIRA for Financials! Annual budget process! Portfolio Item is a major budget line item! Every Requirement JI must link upstream to a Portfolio Item JI! 16. Managing Requirements! Requirement JIs represent software requirements! Subtasks dene standard work! Requirement JIs beget Enhancement JIs! Traceability (large grain)! Requirements in Subversion! Introducing Balsamiq! 17. Managing Requirements! Next level of detail: Require- ments workow! 18. Know yourself! Align your culture to yourprocesses and tools, assess Flexibility vs. ControlTo take over the world, you need a planOOB=less work to implement and maintain! 19. Managing Source Code! Primary tool is Subversion! Also looking at Mercurial! Enhancements in JIRA! Traceable to Requirements! Agile development (Greenhopper)! Test case driven development! Integrated security! Mandatory code reviews! 20. Custom Integrations! Subversion commits dependent on JIRA issue links! Code branches locked/unlocked from Conuence! Subversion project access tied into JIRA/Crowd groups! JIRA workow transition counters! Auto creation of issues! Auto-switching issue types! 21. Builds and Deployments! Continuous integration builds! Cherry-picking builds! Ant or Maven 2 (Artifactory)! Local and remote auto-deploys! FTP and Auto-Test jobs!! 22. Testing! Defect JIs are linked to Enhancement JIs (as applicable)! Traceability! Other testing tools: Quality Center, QTP, Performance Center, LoadRunner! Use of linking for cross-project Defect JIs! 23. Additional Quality Assurance! Mandatory code reviews! Only authorized code changes allowed! Junit for automated unit tests via Bamboo! Automatic running of test suites on new builds! Static code scanning in developer local workspaces! More comprehensive code scanning of built code (JTest / Fortify)! All historical issue data is available for reporting and analysis! 24. Project Management Support! All PMO issue types in JIRA! Change Requests, Risks, !Issues, Action Items! Auto issue escalation! Delegation of Project Administration tasks! User management, Version management! 25. Leverage JIRA for traceability across the lifecycleUse Bamboo for more than just buildsAdd custom integrations and plugins, but judiciously! 26. Atlassian Toolset Benets! Lower license costs! Lower support costs! Responsive to SDLC changes! Ease of integrations, plug-ins! All data in one place! Full end-to-end traceability! Management visibility! 27. Balancing Trade-offs! All aboard, or See you later?! Our way or the highway! Centralized control vs delegated! Standard ows/pages vs customized! Stability vs exibility! 28. Tips and Pointers! Process:! To take over the world, you need a plan! Know yourself! Align your culture to your processes and tools! OOB=less work to implement and maintain! Technology:! No need to throw out other tools that are working well for you! Leverage JIRA for traceability across the lifecycle! Find the right balance between stability and exibility! 29. Q & A! 30. If you want to take over the world, you need a plan!#summit2012 31. Thank you!