open source software development l.
Skip this Video
Loading SlideShow in 5 Seconds..
Open Source Software Development PowerPoint Presentation
Download Presentation
Open Source Software Development

Loading in 2 Seconds...

  share
play fullscreen
1 / 30
Download Presentation

Open Source Software Development - PowerPoint PPT Presentation

bernad
205 Views
Download Presentation

Open Source Software Development

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Open Source Software Development

  2. Overview • OSS • OSSD • OSSD vs PSD • Future

  3. Free OSS ? • “Software that gives users rights to run, copy, distribute, change and improve it as they see it, without them asking permission from or make payments to any external group or person”. -Mitre FOSS report 2002

  4. Free as in “Freedom” • Freedom to study the code • Freedom to improve the program • Freedom to run the program anytime, for any purpose on any machine. • Freedom to redistribute. Free Speech not Free Beer

  5. Open Source Software ? • Open source software is FreeOSS that uses any license approved by the Open Source Initiative (OSI) from their list of approved open source licenses • www.opensource.org/licenses/

  6. Free OSS Licenses • GPL 55% • Apache 8% • BSD 7% • Other 30%

  7. Apache BIND Emacs FreeBSD Ghostscript Jakarta Jboss LaTex Linux MySQL Open Office Perl Samba Sendmail Snort Squid Free OS Software

  8. Don’t get confused • FreeWare • ShareWare • Public Domain software • PDS + License = Open Source Software

  9. Why OSS ? • Customizable • Improvable • Redistributable. • Runs Everywhere, for everyone. • Transparency. • Free !!!

  10. Next…. • OSS • OSSD • OSSD vs PSD • Future

  11. Surprising !! • How can the technical work of dozens, or even hundreds, of developers be coordinated without the usual project management apparatus? • How do useful, well-designed products emerge from the individual actions of widely-distributed developers, with minimal central planning and relatively impoverished communication? 

  12. The OSS Developer WAY ! • Discuss the “itch” with a few • Code Development starts • Create website and “announce”. • Community evolves • Functionalities added • Feedback and Communication flows

  13. Basic Open Source Software Development Process Manage Configuration Develop OSS Code Download and Install Communicate Experience Assert Requirements-Design End-Use Read, Analyze and Redesign OSS Community Development Process

  14. Communication is Informal!! • Community communications • Threaded discussion forums • Email (list servers) • Newsgroups • IRChat/Instant messages • Community digests (“Kernel Cousins”)

  15. People involved Reviewers Bug Report and Fix Functionalities Core

  16. Some tools

  17. OSSD into commercial world • IBM considers it important • Customers ask for it • Developing in open community leads to innovation • Develops open standards

  18. Linux today

  19. Why is OSSD successful ? • Collaboration is decentralized.Integration is controlled • Too many resources to fail • So many eyeballs looking at the code • Self-motivated , self-assigned programmers. • Large scale Peer Review • User Driven requirements

  20. Next…. • OSS • OSSD • OSSD vs PSD • Future

  21. It differs a lot ! • Different Paradigms • Cathedral vs Bazaar • To name a few • Assignment of work • Change Management • Testing & Bug Fixing

  22. Assignment of work • You assign (Baby Sitter) • Laggard • Sit inside the boundary • I pick (Parent) • More responsibility • More care • Avenues for exploration • Quality product

  23. ChangeManagement Is this a feasible methodology ? Can it be imbibed by PSD ?

  24. Testing and Bug Fixing • PS Industry spends 40% of time on testing and bug fixing. • White box testing • Black box testing • In OSSD it is a community process • Bugzilla • IssueTracker

  25. Strengths and Limitations of OSSD • Strengths • Cheaper • Runs for Everyone , Everywhere • Limitations • Product structure and Comprehension • Effective ways of incorporating requirements of non-developer users? • With larger scale, will coordination needs force adoption of “commercial” development techniques? • How to collaborate on “big” features? • How to respond to unanticipated events

  26. PSD better ? • Scaled projects • Time Factor • Equal Priority to every module • Quality

  27. Next…. • OSS • OSSD • OSSD vs PSD • Future

  28. Software Industry is changing • Competition • Client is no longer passive • Have to deal with drastic changes • Developer takes the centre stage • Short iterations • Dynamic • Distributed

  29. OSSD + PSD is it possible • Can XXSD evolve from OSSD and PSD which enables • Managing of distributed projects • Addressing Dynamism of Software Industry • Architecture where different organizations can work on a common problem for mutual benefits. • Providing quality software

  30. Questions for you • Is OSSD a substitute for PSD ? • Are bugs left unsolved in OSSD? • OSS is where some person or a small group contributes a major part and then people come in and start contributions. How long would such a model last ? • What happens if everyone becomes an OSS developer ? • Is OSSD geographically distributed PSD ?