On the Necessity of Software Ecosystem Analysis: Can any software company do without? – by Slinger Jansen

In this dawning age of App Stores, plug-ins, apps, partnership models, technology platforms and computing devices in our pockets, it is impossible to run a software business without taking the ecosystem into account. A software ecosystem is defined as a set of actors functioning as a unit and interacting with a shared market for software and services, together with the relationships among them. These relationships are frequently underpinned by a common technological platform or market and operate through the exchange of information, resources and artifacts. It is surprising to see that so many organizations are unaware of their ecosystems and are unable to steer them into the direction that their strategy dictates, even with so much available knowledge about the topic.

Software ecosystems are not biological ecosystems. The term software ecosystems is derived from business ecosystems, which in turn is derived from biological ecosystems. We highlight the example of the jaguar, which is known to eat up to 85 species, thereby controlling large parts of the ecosystem, even though the elegant and nimble jaguar only takes up a minute part of the ecosystem in total body mass. This could be compared to a platform leader like Microsoft, which, although seemingly large with its 100,000 employees, is only a minute part (less than 1%) of the total Microsoft based ecosystem in terms of developers and revenues. The comparison of course only goes so far: entities in software ecosystems are part of multiple subsystems, have directed aims and goals, and in some cases have the power to exit the ecosystem or even destroy it.

Software ecosystems are not business ecosystems. Although software ecosystems can be considered subsets of business ecosystems, the specific focus on software is necessary. Open source ecosystems, for instance, harbor properties that cannot easily be described in terms of profitability, survivability, and longevity, all terms that can be easily analyzed in business ecosystems using economic data. Also, interchanges in software ecosystems mostly consist of knowledge, whereas in business ecosystems physical goods play a much larger part.

Motivations for Ecosystem Analysis. It is beneficial toanalyze the software ecosystem, independently of the maturity of an organization. Whether you are Apple, trying to get a grip on distributable components used by app developers, or a small open source consortium trying to attract more developers, ecosystems analysis supports the re-affirmation of the organization’s strategy and may even help shape it. The main motivations are:

Critical mass – Software producing organizations have the aim to get their software to be used by as many people in as many settings as possible in their respective domains. For open source organizations this means establishing long-lasting consortia and technological platforms that are future proof and attract a plethora of platform extenders. Increasingly, these consortia even develop profitable counterparts, such as RedHat, MySql, and SugarCRM. For commercial software companies the advantages are even clearer: the more people use the platform, the more staying power a technological platform has.

Health analysis – Software producing organizationsstart monitoring the developments in their ecosystems so they can better track how the ecosystem is doing. Are the numbers of strategic partners declining or growing? How many new entrants has the Google Apps ecosystem seen over the last two years? Are BlackBerry developers massively switching to Windows Mobile? With health analyis, software producing organizations can keep track of how their software ecosystems are doing, and steer them in the strategic direction they are looking for. An example of a visualization of such an ecosystem can be found in figure 1, below.

Profit – For some software producing organizations, the ecosystem has become the main source of income, i.e., the largest revenues come from partners, resellers, and/or original equipment manufacturers. The main fees are received from app store sales, developer memberships, and other streams of revenue rather than typical services or license revenues.

These claims can be further substantiated with the following examples.

Figure 1. A visualization of the Google Apps ecosystem shows that Google is a strong hub in the Apps ecosystem and few relationships exist between niche players. Google could increase the health of the ecosystem by forging more relationships between partners to improve embeddedness. (Copyright Joey van Angeren 2013).

SAP has an advanced partnership program: it is constructed around ten different function-based roles targeting specific types of partners, such as service providers, software partners, technology partners and value-added resellers. As the SAP ecosystem was growing, a need was felt for advertising partner services and products to end-customers in an SAP context. As the ecosystem grew, the SAP EcoHub was founded to share products, services, whitepapers, success stories, and business cases to further the goals of partners and to increase lock-in of partners. The portal has become a success: it currently lists 1200 solutions, 600 service partners, and boasts three new app stores for analytics, mobile, and rapid deployment solutions.

Example 2: Analyzing Open Source Ecosystems: Ruby and Gnome

Open source ecosystems have the property that they are open: anyone can analyze them. There are convenient modeling and analysis tools out there, but with every data mining challenge the starting point should be the question. One of the tools available is Gource, which presents a beautiful visualization of the growth of an ecosystem, but does not necessarily add to the analysis of an ecosystem.

In the ecosystems community, relevant question-based research has taken place, however. For the Ruby community, for instance, we have shown that it is more productive to enable and stimulate key players to develop new components than to have new entrants develop them, as key players have a tendency to have a much larger impact on the total ecosystem with their apps than new entrants do.

Others have researched the Gnome community and have uncovered that developers typically restrict themselves to specific activities (documentation, development, spec writing etc.) instead of taking them all on at once. Furthermore, contributors specialize in specific tasks over time. Additionally, Gnome developers operate in sub-communities. Finally, the Gnome community peaked in 2003 but now seems to be on the decline.

Research Challenges in Software Ecosystems

Even though the above shows major advantages of software ecosystem analysis, there still exist several significant challenges. We highlight three major ones:

Modeling – Unfortunately, inadequate modeling guidelines exist currently for creating theoretical and visual models of software ecosystems, hampering advancements in this area. Even though many different tools are available, they do not provide pointers and guidelines for performing correct and insightful modeling of software ecosystems.

Health analysis – The health analysis of an ecosystem is still a daunting data mining task: what are the indicators to look at? How can data be found on the revenues of our partners? How many new entrants join the ecosystem every year? And how much do these really contribute? In both commercial and open source contexts, techniques are being developed to speed up analysis and provide overviews for different software ecosystems.

Governance – One of the toughest questions in the field is how to govern software ecosystems to gain measurable success in terms of staying power, profit, usage and participation. The research community is for instance working on techniques and models for nurturing niche players and app developers in an ecosystem, such as modeled in figure 1. These players of variable financial and network health can be supported to become more successful, thereby increasing overall success of the ecosystem.

Figure 2. Strategy determination for niche player stimulation and nourishment can be done by analyzing network and financial health.

Software ecosystems present a unique research field that deserves much more attention than it is currently getting. Fortunately, initiatives such as the workshop on software ecosystems are stimulating activity in the area. We strongly encourage that academia and industry invest in tools, methods and models for performing ecosystems analysis, as it will most certainly provide software producing organizations with strategic advantages in strategy and in staying power.

Slinger Jansen is an assistant professor at the Department of Information and Computer Science at Utrecht University. He is one of the leading researchers in the domain of software ecosystems and co-founders of the International Conference on Software Business and International Workshop on Software Ecosystems. He is lead editor of the book “Software Ecosystems: Analyzing and Managing Business Networks in the Software Industry” and of several others. Besides his academic endeavors he actively supports new enterprises and sits on the boards of advisors of several start-ups, one of which is ThinkEcosystems.com.