History: Constructive Cost Model COCOMO

Preview of version: 42

Constructive Cost Model (COCOMO)

WikiSuite is the most comprehensive and integrated Free/Libre/Open Source enterprise software suite ever developed, so you'd expect that it took a massive amount of work. But how much? As of 2019, WikiSuite's cost to develop is well over 50 million $USD.

Really? How is this calculated?

Yes, really: If you tried to re-code WikiSuite using proprietary models. Below are the reports for various WikiSuite components generated by Black Duck Open Hub. Here is one example: https://www.openhub.net/p/tikiwiki/estimated_cost, and it has this note: "COCOMO is meant to include the design, specification drafting, reviewing and management overhead that goes along with producing quality software." More info:

How can it be free and who paid for this?

Like Wikipedia, GNU/Linux and Firefox, WikiSuite is the result of massive collaboration.

How do you arrive to "well over 50 million $USD"? Are you including the cost of GNU/Linux?

Nope. Just the Linux Kernel would cost billions to redevelop

The WikiSuite-specific code (mostly ClearOS installers):

This is intentionally as small as possible since we focus on upstreaming code to the various Software Components

The main software components:

Tiki Wiki CMS Groupware


Openfire

Jitsi Meet

ClearOS

Syncthing


Over 9500 commits

Optional components

Elasticsearch


Over 44000 commits

Kibana

Kimchi


We won't count KVM as we consider it as part of GNU/Linux

FusionPBX

FreeSWITCH

Xibo

Isn't the figure exaggerated?

  • In some cases, it's actually underestimated. COCOMO counts the number of lines of code. But a project like Tiki has been in active development for over 16 years, and there has been over 68 000 code commits. This battle-tested code costs more to develop than a younger application that would have the same number of lines of code.


As of 2019-02-04, Tiki is estimated at $14,744,047, and the latest revision is #68960, which represents about $214 per commit. Given the work that goes into software development, and since "COCOMO is meant to include the design, specification drafting, reviewing and management overhead that goes along with producing quality software.", it is clearly not overestimated. But that doesn't even count the 125 external dependencies. Think about it. Each dependency represents a distinct community / code base / bug tracker / etc.

Ok, but it this for plugins / duplicated functionality?

There is tiny feature overlap / code duplication in WikiSuite because our philosophy is to avoid it as per Component criteria. While it's true that some of WikiSuite have apps or plugins, it's mostly a deployment mechanism, and there is no mess like explained at: http://pluginproblems.com/

Ok, but I am not going to use all the features

That is true of all feature-rich software. But the economics don't make it feasible to build software just for your needs. Community Free / Libre / Open Source software will necessarily want to cater to a wider community and get more users and contributors.

Given this huge value isn't a huge cost to maintain the apps?

Most of the software components are 10 to 15 years old so they are mature. Maintaining apps, even with the occasional revamps, is a tiny fraction of the effort of re-writing. And now, each of the has a community / ecosystem which uses and makes sure to maintain and develop.

Conclusion

Even if we exclude dependencies (which is debatable), and not count all the components, we can see that it's "well over 50 million $USD". This demonstrates the following:


History

Information Version
Marc Laporte 64
View
Marc Laporte Fixed 63
View
Marc Laporte Add a section: But adding up these figures is way more than $50 million (a fair question) 62
View
Marc Laporte Changing because it's currently broken 61
View
M. Bilal Siddiq 59 - 60
View
Marc Laporte 58
View
Marc Laporte 57
View
Marc Laporte Thanks luci! 56
View
gary.cunningham-lee Fixed an error I introduced; changed large-figure format (to use comma). 54 - 55
View
Marc Laporte 53
View
Marc Laporte 33 - 52
View
Marc Laporte Addressing reasonable questions 32
View
Marc Laporte 31
View
Marc Laporte 17 - 30
View
Marc Laporte 16
View
Marc Laporte 15
View