A Hierarchical Framework for Organizing a Software Development Process

  • Authors:
  • Foad Iravani;Sriram Dasu;Reza Ahmadi

  • Affiliations:
  • Foster School of Business, University of Washington, Seattle, Washington 98195;Marshall School of Business, University of Southern California, Los Angeles, Los Angeles, California 90089;Anderson School of Management, University of California, Los Angeles, Los Angeles, California 90095

  • Venue:
  • Operations Research
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Every year, companies that produce commercial tax preparation software struggle with thousands of state and federal changes to tax laws and forms. Three competitors dominate the market with its short selling season, and release delays slash profits. Tax authorities issue updates August--December, and all changes must be processed and incorporated before year end. Systematic resource allocation and process management are crucial yet problematic due to the volume and complexity of changes, brief production time frame, and feedback loops for bug resolution. A leading tax software provider asked us to propose systematic approaches for managing process flow and staffing development stages with the goal of releasing the new version on time at minimum cost. To that end, we developed deterministic models that partitioned tax forms into development groups and determined staffing levels for each group. Partitioning forms into groups simplified workflow management and staffing decisions. To provide a range of resource configurations, we used two modeling approaches. Numerical experiments showed that our models capture the salient features of the process and that our heuristics perform well. Implementing our models reduced company overtime hours by 31% and total workforce cost by 13%.