Small growing software enterprises are an increasingly important source of innovation and employment. They strive to productize the technologies that enable their key business idea(s), but often offer professional services and custom development projects as well to balance cash flow and share risk. This requires the integration of long-term product and business planning with modern, flexible but controlled approaches to software development promoted by the agile/lean software development movement. There is still little empirical research on agile software development, and most of the practitioner literature has concentrated on the perspective of a single team in an individual development project, leaving the links to product and portfolio management largely unaddressed. Likewise, existing literature on product and portfolio management essentially views development as an activity that can be planned in advance and then executed according to the plan. This gap in theory is problematic for small software organizations who, in order to remain operationally effective, need to maintain the big picture of the ongoing work of the development staff and align this with the long-term plans of the enterprise. This dissertation summarizes existing and presents new understanding for linking product and portfolio management with modern development methodologies such as Scrum in the face of the practical realities that may apply to many small software organizations. The research approach taken is that of design science and constructive research. The results are based on both findings from qualitative, participative action research -type case studies and a synthesis of related work based on a systematic review of research and practitioner literature. As results, we propose a framework that shows how the three key processes that should connect business and development decision-making - product roadmapping, release planning and different levels of portfolio management - can be understood in the context of organizations striving for agile software development. We also present an example of how a product roadmap can be visualized, state that explicit portfolio management is under certain conditions crucial for small organizations as well, and provide guidelines for it. As proof-of-concept, we present Agilefant (www.agilefant.org), an open source support tool for managing a portfolio of activities of which some - though not necessarily all - are planned and managed using backlogs with hierarchical work item structures. We propose that this provides transparency to business priorities while still enabling just-in-time elaboration required by agile software development.
|Translated title of the contribution||Kohti ketterää ohjelmistotuotteen ja -tekemissalkun hallintaa|
|Publication status||Published - 2012|
|MoE publication type||G5 Doctoral dissertation (article)|
- product backlog
- software development
- product management
- portfolio management