Title: Evolution Patterns of Open-Source Software Systems and Communications
1Evolution Patterns of Open-Source Software
Systems and Communications
- Review Report
- By
- Haroon Malik
2ABSTRACT
- Open Source software (OOS) development a natural
product evolution approach. - Case Study of four typical OSS projects
- Border Prospective Evolution of OOS systems and
its associated communities. - Proposed three types of OSS classification
- Exploration-oriented,
- Utility-Oriented
- Service-Oriented.
3Open Source software
- Free Redistribution
- Source Code
- Derived Works Integrity of The Authors Source
Code - No Discrimination Against Persons or Groups
- No Discrimination Against Fields of Endeavor
- License Must Not Be Specific to a Product
4New Dimension
- Previous studies
- The growth of size.
- Decay of architecture and design
- Change of defect density.
- Current Approach
- Evolution of OSS along with its respective
community.
5Natural Product Evolution
6APPROACH
- Started in January 2001 by SRA to Conducted a
survey on current status of OSS - Four local project were studied
- GNUwingut Project
- Linux Support project.
- SRA-PostgresSQL project
- Jun project
7The GNUWingut Project
- GNU project Develops free UNIX operating System
- GNUWingut project Helps client import GNU
software programs on to particular hardware
platform - Richard Stallman Scientific knowledge to be
shared among mankind.
8The GNUWingut Project (Contd)
- Centralized Control
- Develop Patches
- Helps client to refine patch and report them to
GNU core team development - Strict adhere to GNU guidelines
- Acts as intermediate in couture barrier.
9The Linux Support Project
- Supports Linux bazaar style with decentralized
control. - Identify and solve problem in course of using
Linux. - Apply fix to existing source code
- Do not contribute to the community
10The SRA-PostgreSQL Project
- Originally Developed as Research Prototype.
- Internationalization
- Bug fixes and patches
11The JUN Project
- Distribution of Jun Library
- Deals with the software that has been developed
in house - Contribution is from small group
- Strictly managed by single project leader
12Psychiatry
- General framework is required to manipulate the
nature of evaluation in OSS project. - The frame work should address roles of OSS
community members - The frame work should be able to depict the OSS
community structure.
13Roles of Community Members
14Community Structure
- No direct association of community member roles
with social attributes - Balanced composition of roles
- Unique community structure is determined by the
nature and the its member population
15Four OSS (Roles and structure of communities)
- GNU Systems
- Project Leader
- Helped by Core members.
- Makes Most decisions.
- Active Developer
- Trusted by project leader.
- Contribute own code, Improve peripheral
developers code and are bug fixer.
16Four OSS (Roles and structure of communities)
(Contd)
- Recommend code to Project leader
- Large numbers Readers exists in GNU community
- They also acts as passive users.
- Linux
- One project leader (Linus Torvalds)
- Few core members responsible for development of
subsystem
17Four OSS (Roles and structure of communities)
(Contd)
- Many Active developers.
- Huge volume of passive user.
- PostgreSQL
- No single project leader.
- Six core members.
- 30 Active developers (major development team).
- Inclusion of new features require voting by core
members.
18Four OSS (Roles and structure of communities)
(Contd)
- Community members are mostly passive users and
Bug Reporter. - Few Readers and extremely low volume of Bug
Fixer. - Leader of SRA PostgreSQL project is Active
Developer. - Other SRA members work as Peripheral Developers.
19Four OSS (Roles and structure of communities)
(Contd)
- JUN
- Project leader SRA employee
- Many other employee work as Core Members.
- Few Bug Reporters exists in community
- Most members are passive user with exception of
few as readers
20Evolution of Systems
21Evolution of Communities
- Evolution of an OSS community is brought by the
role changes of its members. - Evolution of OSS community is determined by two
factors - Existence of motivated members
- Social Mechanism of the community
22Classification of OSS Projects
- Exploration-oriented OSS
- GNU and JUN falls in to this category.
- Quality requirement of this class is very high
- Once, released becomes learning source for
thousands. - Must be developed and maintained by expert
programmers such as project leaders. - Community members mostly collaborate with leader
as reviews and testers
23Classification of OSS Projects (Contd)
- Utility-Oriented OSS
- Linux falls in to this classification (excluding
Linux kernel). - Consists of many relative independent programs.
- Mostly developed from scratch.
- Mostly targeted to solve individual or small
group needs. - Evolution pattern is tournament style.
24Classification of OSS Projects (Contd)
- Service-Oriented OSS
- PostgreSQL marks this class.
- Population of stakeholders is much larger then
that of Community. - Conservative against evolutionary and rapid
changes. - Changes are made in council style.
25Classification of OSS Projects (Contd)
26Evolution Pattern of OSS projects
27