Evolution Patterns of Open-Source Software Systems and Communications Review Report By Haroon Malik.

Slides:



Advertisements
Similar presentations
Overview of Free/Open Source Software for Librarians Eric Goldhagen
Advertisements

What is GNU/Linux (Not Linux!)? David Sudjiman davidsudjiman (at) yahoo (dot) com The latest version of this document can.
Systems Development Environment
Unit 1, Lesson 4 Software Development Cycle AOIT Introduction to Programming Copyright © 2009–2012 National Academy Foundation. All rights reserved.
Outline About author. The problem that discussed in the article.
GNU / Linux A free operating system. Summary History What can you find on a Linux OS Linux Economy.
Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together.
OPEN DEVELOPMENT, AGILE, XP AND SCRUM © University of LiverpoolCOMP 319slide 1.
Open Source Software Engineering
Open Source. Operating System  Application Program Interface (API) Scheduling: Defines which application to run, when to run it, and how much time. Memory.
Conquering Complex and Changing Systems Object-Oriented Software Engineering TJSS System Design Lecture 12 Päivi Ovaska.
Project Management and Communication Represented by: Latifa Jaber Al-Ghafran.
Open Source Software …its not all for the techies. - Dan Coming.
1 Open Source Code Steve Chenoweth CSSE 375, Rose-Hulman Based on Don Bagert’s 2006 Lecture.
Supported in part by the National Science Foundation – ISS/Digital Science & Technology Analysis of the Open Source Software development community using.
Claims Service-Oriented Architecture Performance Prototype Team Hooloovoo.
CWG2 on Tools, guidelines and procedures Licensing Adriana Telesca on behalf of the CWG2 December, 5 th 2014.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
How Is Open Source Affecting Software Development? Je-Loon Yang.
Brief History of C and Unix Systems Programming Concepts.
An Introduction to Device Drivers Sarah Diesburg COP 5641 / CIS 4930.
CHAPTER 6 OPEN SOURCE SOFTWARE AND FREE SOFTWARE
Linux Basics CS 302. Outline  What is Unix?  What is Linux?  Virtual Machine.
 Open-source software ( OSS ) is computer software that is available in source code form: the source code and certain other rights normally reserved.
Is Open Source Software a viable option for private and public organizations? Anthony W. Hamann Tuesday, March 21, 2006.
WEB ENGINEERING LECTURE 4 BY Kiramat Rahman. outline  In this Lecture you will learn about:  Term “Software” and its relationship with “Hardware” 
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
How I learned to stop worrying and love Open Source Software... Colin M. Sharples Advisory IT Specialist IBM Business Consulting Services SQNZ 21 October.
Overview of Linux Dr. Michael L. Collard 1.
Rational Unified Process Fundamentals Module 4: Disciplines II.
Presented By: Avijit Gupta V. SaiSantosh.
Operating Systems. Operating systems  Most important program that runs on a computer  Every general-purpose (such as desktop) computer must have OS.
Open Source Ethics Muhammad Sarmad Ali. What is Open Source? Doesn’t just mean access to source code.
Basic of Project and Project Management Presentation.
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Maintainability of FLOSS Projects
CPS 82, Fall Open Source, Copyright, Copyleft.
Chapter 1: Welcome to Linux An intro to UNIX-related operating systems.
Open Source Software Architecture and Design By John Rouda.
COMPUTER SOFTWARE Management Information Systems.
Applying the Open Source development model ● Technologies ● Open Source? ● Drawbacks of Open Source ● Advantages of Open Source ● System outline.
Software Licences HSF Recommendations John Harvey / CERN 24 June 2015
Free and Open Source Software Aruna Lorensuhewa Contact Details:
An Introduction to Device Drivers Ted Baker  Andy Wang COP 5641 / CIS 4930.
CSNB334 Advanced Operating Systems 1. Introduction to Linux Lecturer: Abdul Rahim Ahmad.
The UNIX Time-sharing system
Test status report Test status report is important to track the important project issues, accomplishments of the projects, pending work and milestone analysis(
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
EXtreme Programming and Open Source engineering paradigm A comparison
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
CS223: Software Engineering Lecture 14: Architectural Patterns.
CS 501: Software Engineering Fall 1999 Lecture 20 Management III Managing People.
Linux Operating System By: Julie Dunbar. Overview Definitions History and evolution of Linux Current development In reality ◦United States  Business.
Extreme Software Engineering A Hands-On Approach From Extreme Software Engineering: A Hands-On Approach Daniel H. Steinberg Daniel W. Palmer.
Chapter 8: Maintenance and Software Evolution Ronald J. Leach Copyright Ronald J. Leach, 1997, 2009, 2014,
The New NAP Members’ Area Development. Elgg What is elgg? –Elgg is an award-winning open source social networking platform.
Open Source Project Development – A case study - CSC8350, 4/07/ Instructor: Xiaolin Hu - Presenters: Fasheng Qiu & Xue Wang.
9/28/2016 The Linux Kernel Developers Community Jean DELVARE SuSE R&D, Kernel support Solutions Linux 2007, January 31st, 2007.
Red Hat & Fedora: A Strategy for Open Source Success Jared Smith Fedora Project Leader – Red Hat, Inc. This presentation is made available under a Creative.
Open source development model and methodologies.
Software Hardware refers to the physical devices of a computer system.
Selected topic in computer science (1)
The Development Process of Web Applications
Welcome to Linux Chap#1 Hanin Abdulrahman.
OPEN SOURCE SOFTWARE An Introduction.
An Introduction to Device Drivers
Chapter 2: The Linux System Part 1
TWO CASE STUDIES OF OPEN SOURCE SOFTWARE DEVELOPMENT: APACHE AND MOZILLA HAKAN TERZIOGLU 2/24/2019 EEL 5881.
Welcome to Linux Chap#1 Hanin Abdulrahman.
Welcome to Linux Chap#1.
Presentation transcript:

Evolution Patterns of Open-Source Software Systems and Communications Review Report By Haroon Malik

ABSTRACT 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.

Open Source software Free Redistribution Source Code Derived Works Integrity of The Author’s Source Code No Discrimination Against Persons or Groups No Discrimination Against Fields of Endeavor License Must Not Be Specific to a Product

New 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.

Source: [Madey, Freeh, and Tynan 2002]. Natural Product Evolution

APPROACH 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

The 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”.

The GNUWingut Project (Cont’d) 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.

The 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

The SRA-PostgreSQL Project Originally Developed as Research Prototype. Internationalization Bug fixes and patches

The 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

Psychiatry 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.

Roles of Community Members

Community 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

Four 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.

Four OSS (Roles and structure of communities) (Cont’d) 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

Four OSS (Roles and structure of communities) (Cont’d) 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.

Four OSS (Roles and structure of communities) (Cont’d) 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.

Four OSS (Roles and structure of communities) (Cont’d) 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

Evolution of Systems

Evolution 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

Classification 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

Classification of OSS Projects (Cont’d) 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.

Classification of OSS Projects (Cont’d) 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.

Classification of OSS Projects (Cont’d)

Evolution Pattern of OSS projects

Thank You.