Internosis - knowledge management,ecommerce and project consulting
*Home>>>Software Development

How do you manage "open source" software programs?


I'm planning to open source my software program within my organization.

I'm hoping that people will develop new features or correct bugs and share their development with everyone else on a "Shared Drive".

How are all the different versions managed ?

I can see the whole thing getting out of control : ie too many versions causing confusion or taking up too much memory in the shared drive.

You need version control (or "revision control") software. Two versions of the source code is one too many.

Edit:
Possible source of confusion: the term "Open Source" has a special meaning to the software community that doesn't really apply to sharing program development within an organization.

I would contact the free software foundation. They are better suited to aid you in the move to open sourcing your code.

Your best bet is to start a project on SourceForge.net. They have Subversion/Change Management already in place. Check them out. Also, what a better way to get your software out there than by using a well known Open Source repository.

I think you need one clarification: if you are sharing source within an organization that is one thing and there are many good SCM (source code management) programs available and Subversion with a good branching structure (with everyone having a branch and a bug branch) and independent trunk with Cruise Control and some kind of ANT deployment would be a good place to start whether or not the project is internal or true "Open Source". Versions can be formal or the time stamp of the build in Agile techniques. Rollbacks are easy. If you control the merges to the main trunk and all mods and fixes are to the trunk you are usually in control of the development process.

"Open Source" to the greater software and user community has some different characteristics...to summarize a lot of thoughts and organizations:
The Source code is made available to anyone and its use is governed by the underlying licenses usually GPL2 or 3, BSD, etc.
It is usually free.
And, usually you provide the copyright.
And, then you usually post it for download on a site like SourceForge.
And, sometimes Communities build up around the project further developing the project.

If you developed your code on company time, of course, you would need permission, and there are some major consequences especially around the GPL license which would have to be thought through... If you get through all of the approvals, copyrights, and licensing issues then you would be basically ready to go.

From there you would "package" your project or code, go to SourceForge and request to submit a project. They have a "relatively" simple application process (you answer questions and describe your project). A couple days later it is approved. You figure out the upload process, upload your code, and away you go. If it is a small project you would need much more than that...

If you are trying to build an Open Source community and coordinate it that is a whole different subject which I don't think is what you are trying to do...

Good luck. Either way a good Source Code Management process is required whether internal or external.

Tags
  Supply Chain   Data Mining   ERP   CRM   Application Development   Software Consulting   Software Development   Information Technology   Technology Consulting   Project Training   Project Team   Project Control
Related information
  • How can I convert my ideas of marine navigation into IT language and develop into software product and profit.

    well i guess you have to look for a programmer for that .. and if you want to build a company .. then you have to make a website for that to have more sales .. if you want i can help drive traf...

  • Selling Software online?

    Firstly, the majority of decent webhosting companies offer an ecommerce solution and they'll also offer a sitebuilding service so getting that side of things set up is relatively simple. As...

  • Systemm development?

    Try doing your own homework! Read the material and you will find the answers.

    ...
  • Desktop pregnancy calendar software???

    I have a screen saver that is called expectant see. The baby grows with your baby! I love it! There is a idea!

    ...
  • How to send feature request to the Yahoo's Development Team?

    Hello Abbas First join the discussion at Moderator Central. It is moderated and monitored by some of the best technical people at Y!G who will be responsible for reviewing and implementing sugge...

  • Draw a UML Class diagram (Software Engineering)?

    it's hard to draw a diagram here.

    ...
  • Is Computer Science and Law a good mix?

    It is no better than a degree in English or any other subject matter. I had a degree in CS, was director of IT and went back to get a law degree. The recruiters for the law schools all said that ...

  • Is education in Germany free...?

    Education in germany is free, at least in some states.You need to pass a tough german test to be accepted and your school or university degrees need to be recognized.You also need a student visa wh...

  •  

    Categories--Copyright/IP Policy--Contact Webmaster