Page 49 -
P. 49

16     Part 1  •  SyStemS analySiS FundamentalS

                                         software communities view it as a way to help societies change. Widely known open source proj-
                                         ects include Apache for developing a Web server, the browser called Mozilla Firefox, and Linux,
                                         which is a Unix-like open source operating system.
                                             However, it would be an oversimplification to think of open source software as a monolithic
                                         movement, and it does little to reveal what type of users or user analysts are developing open
                                         source software projects and on what basis. To help us understand the open source movement,
                                         researchers have recently categorized open source communities into four community types—ad
                                         hoc, standardized, organized, and commercial—along six different dimensions—general struc-
                                         ture, environment, goals, methods, user community, and licensing. Some researchers argue that
                                         open source software is at a crossroads and that the commercial and community open source
                                         groups need to understand where they converge and where the potential for conflict exists.

                                         Why Organizations Participate in Open Source Communities
                                         Organizations participate in open source communities for a variety of reasons. One is the rapidity
                                         with which new software can be developed and tested. It is faster to have a committed group of
                                         expert developers develop, test, and debug code than it is to have one isolated team working on
                                         software development. This cross-fertilization can also be a boon to creativity.
                                             Another reason to participate is the benefit of having many good minds work with innova-
                                         tive applications. Yet another reason for participating in an open source community might be the
                                         potential for keeping down development costs.
                                             Organizations might also seek to participate in an open source community due to a desire
                                         to bolster their own self-image and contribute something worthwhile to the larger software
                                         development community; they may want to contribute generously or altruistically to a higher
                                         good beyond developing profitable proprietary software, and doing so may make them appear as
                                         “good guys” to the external public.
                                             While organizations may ask or even require that their software developers become involved
                                         in one or more open source projects or communities, individual developers must interact with the
                                         community in a meaningful and knowledgeable way in order to first prove themselves worthy
                                         members of the group, and then strike up and maintain relationships that are mutually beneficial.
                                             Organizations and the design teams within them interact with open communities. Companies
                                         are taking advantage of an entire range of options that help them strike a harmonious equilibrium
                                         so that their contributions to the open community and their differentiation from the open com-
                                         munity become clear strategically. Reasons for contribution to and differentiation from include
                                         cost, managing resources, and the time it takes to bring a new product to the market.

                                         The Role of the Analyst in Open Source Software
                                         As an analyst you may find yourself, at the request of your chief employer, participating in an
                                         open source community. One widely known open source community is that surrounding the
                                         Linux kernel. This is a large, mostly virtual community of developers who all have different
                                         levels or types of participation and who all have different reasons for being involved. Other well-
                                         known open source projects include Mozilla Firefox, Android, Apache projects, and many more.
                                         Even NASA, the U.S. National Aeronautics and Space Administration, has a lively open source
                                         community (see http://ti.arc.nasa.gov/opensource/).
                                             One reason your company may ask you to participate in an open source community is curi-
                                         osity about what the software benefits to the organization might be. This may be a result of a
                                         sort of bandwagon effect, for when it becomes known that competitors are already participating,
                                         your organization may want to get involved. With competitors actively participating in an open
                                         community, an organization may calculate that it is something that should at least be investigated
                                         seriously, not dismissed summarily. Another reason your company might ask you to participate
                                         as a developer in an open community is to achieve what researchers have labeled “shared design.”
                                         Shared design means that while you are participating in the open source community, you are at
                                         the same time employed by an organization that wants to leverage your participation in the open
                                         source community to incorporate open source software designs into proprietary products, pro-
                                         cesses, knowledge, and IT artifacts that it is developing and that it hopes to eventually sell as a
                                         product that is differentiated from what the open source community has produced. Through a
                                         process of shared design the IT artifact is imbued with both community and organizational struc-
                                         tures, knowledge, and practices.
   44   45   46   47   48   49   50   51   52   53   54