Anyone who works in agile software development knows how important it is to have an issue tracker application. These applications show the issues your team has completed, is working on, and will be working on in the future.
For many teams, Jira is the issue tracker of choice. One of the perceived advantages of Jira is that it serves as a “single source of truth” across an organization. This gives managers an accurate view into the progress, or lack thereof, of an organization against its product development goals.
But is Jira, or any issue tracker application, suited to this role as single source of truth? Is Jira an anti-pattern; poised to attack us when our back is turned?
Do you suspect that your company’s commitment to agile consists of jargon and sloganeering, as opposed to actual organizational and cultural change? Then you would do well to refer to this pamphlet on Detecting Agile BS (pdf) produced by the Department of Defense’s (DoD) Defense Innovation Advisory Board (DIB) in October of 2018. The DIB established itself to bring the best practices and innovations of Silicon Valley to DoD software development. The pamphlet was the result of luminaries such as Eric Schmidt, Reid Hoffman, and Neil deGrasse Tyson coming together turning their gimlet eye towards true agile practices in DoD software development.
I’ve excerpted some interesting parts of the pamphlet below and tied in some of my perspectives based on my current TeraThink project at U.S. Citizenship and Immigration Services (USCIS). Full disclosure: TeraThink is a for-profit company, and as such is not 100%-free of BS. However, I like to think we have less BS than most. I’ll detail why through highlighting key flags that a projects is not truly agile.
Here at Terathink, we are working with a large government agency constructing a content services platform. This platform allows content generated by benefit applications to be shared and reused across the organization’s disparate IT applications. We are doing this through the use of application programming interfaces, or APIs.
Our agile development team manages our work using a Kanban approach, from requirements gathering to the deployment of the API to a production environment. We have honed our use of Kanban to most effectively manage the work required to take a user request to functional reality.
Here at TeraThink, we are currently building an internal application that will allow us to better track new business opportunities. Simultaneously, we are exposing more of our staff to agile and continuous integration/continuous deployment (CI/CD) principles. Among the many concepts we are trying to inculcate in our team is the “layer cake” user story.
The layer cake idea has been around for over a decade. However, I’ve found on nearly all agile engagements that I’ve been on, teams either discard this idea early in the project or completely ignore it from the outset. It is up to the triumvirate of the Product Owner, Scrum Master, and Business Analyst to ensure that the scrum team writes user stories in such a manner that the outcome of each story is working software that delivers tangible value to the end user.
You’re an experienced Scrum Master beginning a new project. You meet with your Product Owner (PO) for the first time and hear him or her say any or all of the following:
- “I’ve never worked in this role before.”
- “I’ll do my best to be on-site as much as possible.”
- “I’ve completed Certified Scrum Master training, but I’ve never applied it in practice.”
- “I’m the Product Owner for your team, and nine others.”
Your spidey sense is now tingling. You are going to be working with an inexperienced and/or overextended PO. Fear not, however. Here are some methods and remedies you can apply to get your PO up to speed.