Commercial open source has a peculiar sales process. Frequently, when a firm decides to buy (license) a specific type of software like a content management system or a wiki engine, they’ll find that their company already employs multiple solutions, downloaded for free from the Internet. By some measures, this is dangerous to IT governance, as it bypasses corporate purchasing and operating regulations. On the other hand, open source empowers IT users to make their own decisions early on without having to go through lengthy approval processes, keeping them nimble and speedy. So, is commercial open source good or bad for IT operations and the CIO?
Software researchers need case studies to validate new tools and methods of object-oriented software design. A good thing to do is to standardize on a set of open source frameworks and libraries that are known and available to everyone. Basically, a benchmark set for new tools and methods in object-oriented software design. JUnit and JHotDraw come to mind.
Most open source frameworks and libraries that are being used in research studies have little original documentation associated with them. However, I as well as others have written up such documentation. Here are those frameworks that I see increasingly being used in scientific studies, as well as any design documentation documentation that I may have provided.
Commercial open source firms go to market trying to create an “unfair” competitive advantage that lets them win customers more easily than their competitors. So do most other companies. Commercial open source firms do this by bypassing the traditional purchasing process by getting their software into customer companies for free, before the customers even know they will need the software. But is an employee’s decision to install a piece of open source software a good decision for the company? After all, every software locks in its users, whether open source or not.
Markus Völter of the Software Engineering Radio podcast show interviewed me about open source business models. Why not listen to the Open Source Business Model podcast while running rather than reading it as papers on my website?
As a researcher, imprecise naming bothers me. The general confusion around the terms commercial open source, professional open source, and community open source warrants closer analysis.
First my proposal, then some litmus tests, followed by a bit of history.
- Commercial open source is software provided as open source where a single legal entity owns the rights to the software (SugarCRM, Alfresco, etc.)
- Professional open source is software provided as open source where a dominant firm provides services around the software without actually owning it (JBoss, Spring, etc.)
- Community open source is software provided as open source where multiple stakeholders hold the rights and no player dominates the software (Linux, Apache, etc.)
I’m a founding member and associate editor of the International Journal of Open Source Software & Processes. Please consider submitting a paper to this new journal, call for papers appended.
CALL FOR PAPERS
International Journal of Open Source Software & Processes (IJOSSP)
An Official Publication of the Information Resources Management Association – New in 2009
Editor-in-Chief: Stefan Koch, Vienna University of Economics and BA, Austria
Published: Quarterly (both in Print and Electronic form)
Author: Dirk Riehle
Abstract: This paper describes the design of the unit testing framework JUnit v3.8. The documentation technique employed is an enhanced version of collaboration-based design, also known as role modeling. In collaboration-based design, objects are viewed as playing multiple roles in different contexts, and different contexts are viewed as task specific collaborations. The documentation accounts for every method in the JUnit 3.8 framework by assigning it to a role. It thereby investigates whether roles and collaborations can serve as basic units of functionality provided by a design like a framework. Such a measure of functionality can serve multiple purposes, for example estimating implementation efforts or measuring complexity.
Keywords: JUnit 3.8 Documentation
Reference: In Software Engineering Notes Volume 33, Issue 2 (March 2008), Article No 5. ACM Press, 2008.
Available as a PDF file.
On March 30th, 2008, Ward Cunningham will unveil his latest innovation at the DorkBotPDX 0x01 event in Portland, Oregon. Don’t miss this chance to meet and listen to one of the great innovators in computer science.
Based on multiple requests, for the Total Growth of Open Source paper, we are providing a table of doubling times for the exponential models as well as semi-log scale graphs of the growth curves.
Table 1: Doubling times for the growth curves
I’m on the program committee of the Web 2.0 Pattern Mining Workshop @ TOOLS 2008 Europe. Please consider submitting a paper.
Abstract: Web 2.0 features are now commonplace—blogs, wikis, RSS feeds, social bookmarking and the like are almost everywhere you look online. Now that these technologies are maturing, what are their common problems and challenges? How are these problems being solved? What similar challenges do Web 2.0 developers face, and how can they leverage the most common solutions? Here’s your chance to gather with other professionals facing the same issues and work together to identify solutions.