The Accounting Standards Codification (ASC), promulgated by the Financial Accounting Standards Board (FASB), directs users to capitalize software development costs for development activities that result in new functionality for internal-use software (see ASC 350-40). The purpose of this accounting rule is to appropriately reflect the economic output of software development activities, which is often an asset that generates value over months and years, in financial statements.
For accountants, tracking software development costs can be a battle fought on multiple fronts. Organizing systems and processes to track development activities can take time and some trial and error. It requires an understanding of inputs, development activities, processes, and outputs. A close partnership with the development team is a must-have.
Even after partnering with the development team to lay the foundation for tracking software development activities, consistently and accurately logging time can be met with varying results. In my experience, company culture and leadership are the main factors that determine success in this area and can make or break an accountant’s efforts to develop a reliable process. Obstacles notwithstanding, Jira empowers companies to track their software development activities, so they can effectively manage their projects and correctly perform their accounting.
Jira supports the Agile software development process, which uses initiatives (with Portfolio for Jira), epics, and user stories as a foundation. Initiatives, epics, and user stories track different layers of information. For example, an initiative might track a specific asset, an epic, a feature of that asset, and a user story, some of the work required to develop the feature of that asset. Ultimately, accountants need to organize costs by asset, and developers need to record work by issue, and Jira provides functionality that allows both needs to be met.
From the outset of using Jira to manage the software development process, it is important to establish ground rules to improve the chances of a successful process.
- Software developers and other development team members must track all of their time. Jira is only as useful as its data, and complete data helps inform management analysis and support accounting results.
- Development team members must assign all of their time to issues and user stories, and team leaders must link all user stories to epics and all epics to initiatives. A continuum between work performed and broader initiatives improves management analysis and accounting results.
For accounting purposes, Jira needs several data fields at different issue levels.
- Asset name and number: A descriptive asset name and unique asset number the accountant can use to monitor the asset in an accounting software application.
- Application development start date: The date software development begins, after management assesses the project proposal, determines requirements, and allocates internal resources.
- Application development completion date: The date software is ready for general release.
- Project stage: The stages of the development initiative - preliminary project stage, application development stage, and post-implementation stage.
- Initiative: A link to the related initiative.
- Epic type: The type of work; for example, development activities, quality assurance activities, and maintenance and bug fixes.
User Story Level
- Epic: A link to the related epic.
- Description: A detailed description of work performed.
With the above process and data in place, the accountant has what he or she needs to allocate employee compensation (for example, salaries and wages, employee benefits, and employer payroll taxes) between assets and expenses.