Date of Award

5-2016

Document Type

Dissertation

Degree Name

Doctor of Philosophy (PhD)

Legacy Department

Computer Science

Committee Member

Dr. John D. McGregor, Committee Chair

Committee Member

Dr. Murali Sitaramanl

Committee Member

Dr. Amy Apon

Committee Member

Dr. Brian Malloy

Abstract

Platform based software engineering is at the heart of a new mode software product development in the context of software ecosystems. In this setting, an organization develops a software platform with the intention of providing that platform for use and extension by software-producing organizations. Multiple benefits arise from engaging in platform-based software engineering from both the perspective of the platform developer and the software product developer, including decreased time to market, defrayed cost of development and increased software quality. Organizations have been engaging in platform-based software engineering for years, exemplified by cases such as Eclipse, Android and SAP. However, the body of research that studies software ecosystems and platform-based software engineering is still growing, with many areas still requiring further investigation. One such area is decision-making support for software platform adoption. Platform adoption, more strategically significant than simple acquisition and use of third party libraries, represents a reciprocal relationship between the software platform developer and the product developer. This relationship, and the products developed from the platform, may be long-lived, necessitating a close relationship between the platform developer and the product developer. Thus, platform adoption is strategic, rather than tactical, in nature. Little research exists that investigates decision making in the context of software platform adoption. While the research community is cognizant of prominent decision support criteria for software platform adoption, including licensing, hardware and operating systems compatibility, little research attempts to quantify the benefits afforded to the software platform developer, and even less that investigates the benefits realized by adopting organizations who produce software products based on a software platform. This work is the first stage in a long term research plan for quantifying the cost and earned value of engaging in platform-based software engineering from the perspective of a software product developer adopting a software platform. We have illustrated the adoption decision through two scenarios that exemplify strategic concerns raised in software platform adoption. The central assumption of this work is that software platform adoption reduces the cost of software development while increasing the earned value of the software product being built. Using this central theory, we propose a model for quantifying the cost and earned value of a platform-based software development. This model views software development as a series of decisions, or rather options, concerned with the decision of whether to engage or halt software development. Our model utilizes the Black-Scholes model for options evaluation. The research illustrates utilization of stochastic Monte Carlo simulation in order to perform experimentation on our underlying model as applied to our scenarios. From this research, we intend to develop theory from our simulation results that helps support strategic decision making in the context of the software ecosystems surrounding the platform and products.

Share

COinS