Building a Giant Atlassian Universe to Take Over the World


Published on

Fidelity 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.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Building a Giant Atlassian Universe to Take Over the World

  1. 1. Building a Giant Atlassian Universe!To Take Over The World!Glenn Bingham and Chris Macharia!Fidelity Information Services!
  2. 2. The Process Guy The Technology Guy
  3. 3. Software and Services for Banks and Financial Institutions! 14,000 Customers!
  4. 4. Software and Services for Banks and Financial Institutions! ! 200+ customers worldwide!Profile Core Banking Solution! Millions of account holders!TouchPoint Channels Solutions! 700+ software professionals!
  5. 5. Our Applications!•  Profile: 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!•  Profile 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. 6. Large scale, big team, corporate environment

It s people s money – it needs to be correct

Nothing happens by accident!
  7. 7. Our Stack!•  Workflow & Collaboration! •  JIRA, Confluence!•  Source Code! •  Subversion, Fisheye, Mercurial!•  Code Quality! •  Crucible, FindBugs, JTest, Fortify!•  Builds! •  Bamboo, Artifactory!
  8. 8. Our Stack! Development Project Mgmt Tools Tools Code  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  Office   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. 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. 10. You don t have to toss out (all) your other tools

You don t need a large team to support 100s ofusers!
  11. 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; defines the what, not the how!•  Tools support the process; they do not define the process!•  Our Atlassian integration project began in April, 2009!
  12. 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. 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. 14. Workflow!JIs and development workflow
  15. 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. 16. Managing Requirements!•  Requirement JIs represent software requirements!•  Subtasks define standard work!•  Requirement JIs beget Enhancement JIs!•  Traceability (large grain)!•  Requirements in Subversion!•  Introducing Balsamiq!
  17. 17. Managing Requirements!•  Next level of detail: Require- ments workflow!
  18. 18. Know yourself! Align your culture to yourprocesses and tools, assess Flexibility vs. Control

To take over the world, you need a plan

OOB=less work to implement and maintain!
  19. 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. 20. Custom Integrations!•  Subversion commits dependent on JIRA issue links!•  Code branches locked/unlocked from Confluence!•  Subversion project access tied into JIRA/Crowd groups!•  JIRA workflow transition counters!•  Auto creation of issues!•  Auto-switching issue types!
  21. 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. 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. 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. 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. 25. Leverage JIRA for traceability across the lifecycle

Use Bamboo for more than just builds

Add custom integrations and plugins, but judiciously!
  26. 26. Atlassian Toolset Benefits!•  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. 27. Balancing Trade-offs!•  All aboard, or See you later?!•  Our way or the highway! •  Centralized control vs delegated! •  Standard flows/pages vs customized! •  Stability vs flexibility!
  28. 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 flexibility!
  29. 29. Q & A!
  30. 30. If you want to take over the world, you need a plan! #summit2012
  31. 31. Thank you!