Project of the Month, December 2008

Orange HRM – Human Resource Management


Project Leader:

Sujee Saparamadu

Sujee Saparamadu
Occupation: Chief Executive Officer / Co-Founder
Education: Computer Information System, Boston University
Software Engineering and Electrical Engineering: University of New Haven
Location: East Coast, USA

Himath Dissanayake

Himath Dissanayake
Occupation: Chief Technical Officer
Education: MS Software Engineering, Carnegie Mellon University, USA
BS Computer Science and Engineering , University of Moratuwa, Sri Lanka
Location: West Coast, USA and Colombo, Sri Lanka

Ruchira Amarasinghe

Ruchira Amarasinghe
Occupation: Chief Architect
Education: BS Electrical Engineering, University of Peradeniya, Sri Lank
Location: Texas, USA

Key Developers:

Gayanath Jayarathne

Gayanath Jayarathne
Occupation: Software Engineer
Education: B.Sc Computer Engineering, University of Peradeniya, Sri Lanka
Location: Kandy, Sri Lanka

Madhusanka Goonathilake

Madhusanka Goonathilake
Occupation: Software Engineer
Education: BS Management Information Systems (Undergraduate), University College Dublin, Ireland
Location: Colombo, Sri Lanka

Nilufer Nilar

Nilufer Nilar
Occupation: Software Engineer
Education: BIT, University of Colombo. BSc University of Colombo
Location: Colombo, Sri Lanka

Teresa Gabbert

Teresa Gabbert
Occupation: Community Representative
Education: Business Studies, Diplom-Betriebswirtin (FH), Eberswalde, Germany
Location: Colombo, Sri Lanka

Mohamed Zanfer

Mohamed Zanfer
Occupation: Software Engineer
Bachelor of Information Technology, University of Colombo, Sri Lanka
Location: Colombo, Sri Lanka

Rasmus Vido

Rasmus Vido
Occupation: Marketing Executive
Education: BS in Business Administration from Copenhagen Business School in Denmark
MS in Marketing and Economics from Copenhagen Business School in Denmark
Location: Copenhagen , Denmark

Why did you place the project on SourceForge.net?

We placed our project in Sourceforge to take advantage of the integrated services offered by SourceForge.net, particularly source control, bug tracker, hosted downloads, mailing lists and forums. In addition, SourceForge.net is also the most popular open source software hosting service and it provides valuable exposure to our project. We also find the various statistics available from SourceForge.net very useful.

How has SourceForge.net helped your project succeed?

SourceForge.net provided us a great infrastructure that we could use for a lot of our development coordination. This was a great help at the initial stage, as we did not have
to spend time and money on creating an infrastructure. We used a number of SourceForge features (e.g. source code repository, bug tracker, feature tracker, forum) from the beginning.
In addition, most users initially got to know about OrangeHRM through SourceForge.net. We did not have to spend a lot effort on marketing. Even today, SourceForge.net is one of the main sources of traffic to our website.


The number one benefit of using SourceForge.net is:

Getting the product across to users all around the globe. Superior infrastructure!! Thousands and thousands of downloads can happen at the same time.

Project name:Orange HRM – Human Resource Management
Date founded/started: January, 2006
Project page: http://sourceforge.net/projects/orangehrm/

Description of project:

OrangeHRM is a Human Resource Management (HRM) system that facilitates personnel information management, employee self service, leave, time & attendance, benefits, and recruitment of a company. It’s is the most active open source human resource management software. With over 175,000 downloads, OrangeHRM is also fast becoming one of the most widely used HRM applications in the world. We believe in providing users simple to use robust software, and iteratively improving it based on feedback we get from them. This rapid evolving of the product is driven by agile development practices, and weekly product releases to SourceForge. 

Why and how did you get started?

We could see a few drawbacks in enterprise HR software: Too expensive for small to medium sized enterprises; ability to customize was low; companies had to accept what comes in the box; used built-in technologies that do not provide great portability limiting companies to a few installation options.

We started OrangeHRM as a research project to address these issues. The intention was for it to be free (of charge), so anyone could afford it, to be open source, so anyone can customize it, and to be based on PHP, MySQL, and Apache for greater portability. We started the project end of 2005, and made our first release to SourceForge in January 2006.

Who is the software’s intended audience?

Human resource professionals (and all employees) in small to medium sized organizations. OrangeHRM can be used by small companies with a few employees or large companies with thousands of employees in multiple locations.

What are the system requirements for your software, and what do people need to know about getting it set up and running?

The basic system requirements are PHP 5.2 or later, MySQL server 5.0.12 or later and Apache Server 1.3 or later. We have a one click installer for Microsoft Windows, which bundles OrangeHRM with the XAMPP AMP Stack. Our regular web based installer is also very simple to use, only needing basic file system skills (copying, creating directories, and unzipping) to set it up.

What gave you an indication that your project was becoming successful?

Mainly the rapid increase in downloads and forum postings, which indicated that more and more companies were using OrangeHRM in production.

When we see blog postings like the following comment. We don’t even know the user, but [clearly] people are using the product and we have made a difference in their life. “I can’t believe this software is free! I was struggling with being a new business owner and honestly did not spend enough time or energy on the HR needs of my company. Thankfully, OrangeHRM came to my rescue and provided the ideal solution for my small business to manage and develop my human resources.”

What has been your biggest surprise?

The speed with which OrangeHRM became popular among users. We did not invest much on marketing the product. However, being a top project on SourceForge had an enormous impact on the adoption of OrangeHRM. So many users got to know about OrangeHRM through SourceForge; they downloaded and used it; they liked it, and they wrote about OrangeHRM, attracting more users. This viral nature of open source software adoption was a pleasant surprise

What has been your biggest challenge?

We’re still trying hard to get a wider developer community involved. We have been successful to the extent of getting a lot of inputs from the community to define the roadmap of OrangeHRM. Also, we have received language packs from users all over the world. Moving forward, we would like to have a larger community of developers making significant code contributions to the project. It’s been a challenge to create the processes that allow a large community of developers to contribute code. This is something we will roll-out in the next few months.

Why do you think your project has been so well received?

Himath: We have been receptive to community input. We try to implement features that have the highest demand from users. I think the feeling that users are part of the process of evolving this product make them believe in OrangeHRM.



Ruchira: I think it is because OrangeHRM is easy to install and use, and contains the major features users look for in a Human Resource Management system.
 

Sujee: We have a superior technical support team that resolve issues on a timely manner and we have better communications between the clients and the organization. Frequent updates are given to the client till the problem is resolved.

What advice would you give to a project that’s just starting out?

Himath: Get a working product with a few of the most important features out as soon as possible. Don’t wait until everything is perfect. The best way to develop a product is when you get the input from its potential user base as early as possible. SourceForge is a great place to start an open source project as it already has the required infrastructure, and it’s one of the best ways to let users get to know about the product.



Gayanath: Clearly identify what your product is going to fulfill. If your product is free and open source, don’t make it an excuse to produce an average product. Instead, get the advantage of FOSS to provide great value leveraging community feedback.

Where do you see your project going?

Himath: We want to become the most widely used Human Resource Management software in the world. During the last 12 months, the number of OrangeHRM monthly downloads have increased by more than 100%, which is an indication that we’re on the correct path.



Gayanath: It’s going to be the world’s most used HRM system.

What’s on your project wish list?

A comprehensive performance appraisal module that facilitates the entire performance appraisal process of an organization. An employee training module that helps organizations manage the training needs of their employees. Improved modularity in the architecture with the ability to easily integrate with other open source software. This include exposing functionality of major modules over web services.

What are you most proud of?

Himath: We have had more than 150,000 downloads. Not all downloads may have become production systems, but based on our estimates the number of production systems is in thousands. I am proud of the fact that we’re making an impact on the lives of people in all parts of the world by providing a system that improves their workplace efficiency.



Gayanath: Being the only free and open source HR system that provides all essential HRM functionalities.

If you could change something about the project, what would it be?

We would like to review the entire code base and do the necessary refactorings to make sure that the design continues to be good. Also, we would like to improve the unit test coverage to 100% of the functionality.

How do you coordinate the project?

Himath: We have a distributed core development team. We follow a development process derived from Extreme Programming (XP). All features are defined in stories with a story having multiple tasks. The stories and tasks are tracked using another great open source tool XPlanner, which the developers access over the Internet. All bugs and feature requests are tracked in SourceForge trackers.
We use the testing tool Selenium to perform regression testing.

Sujee: Since our team is distributed around the world we use VOIP to do the communications between team members. Also, we have web cams installed on our conference rooms and individual employees have their own setup.

Ruchira: We communicate through email, skype chat and calls, use xplanner to assign tasks, and use trackers in sourceforge.net to track bugs and feature requests. We also use Google web applications, particularly Google calendar and Google Docs.

How many hours a month do you and/or your team devote to the project?

Sujee: I put in lot of hours, not enough time in a day to finish all the work. Team as a whole, work on task to get them done. Therefore, the guys don’t count the hours they will finish the task. There have been days where the developers have been coding while the sun is rising. Beauty about having a distributed team is that you can pass the puck to the other side when the sun is setting.

Himath: Full-time. About 140 hrs a month.

Ruchira: I work on the project full time and devote around 130 hours per month.

Gayanath: I work full time and contribute around 120 hours per month.

Madhusanka: I work on the project full time and devote around 120 hours per month.


What is your development environment like?

Ruchira: Linux (Ubuntu 8.04), PHP 5.2.4, Apache, MySQL, Eclipse with PHPEclipse as the IDE, Firefox browser. For testing on Internet Explorer, I use virtual machines running on VirtualBox.

Gayanath: Fedora 7,  Apache 2.2,  MySQL 5.0.37, PHP 5.2.2. I use EasyEclipse for PHP as the IDE. I mainly use Firefox as the web browser. I find Meld Diff Tool very useful when reviewing code changes.

Madhusanka: Developers use GNU/Linux. Fedora & Ubuntu are the flavors that are used according to personal preference. GNOME desktop is the choice of all GNU/Linux users.
QA Testing process is carried out on Microsoft Windows XP for browser compatibility testing with Microsoft Internet Explorer.

IDEs: Eclipse IDE with PHPEclipse; Design Tools: ArgoUML, Power*Architect; Development Support Tools: Meld (Diff Viewer), MySQL GUI Tools; Testing & Debugging Tools: PHPUnit, XDebug; Build Tools: phing

Milestones:

Date Description
End of 2005 Started development
January, 2 2006 OrangeHRM was approved as a project on SourceForge
January 2006 Released OrangeHRM 0.1 to SourceForge with basic employee information management functionality.
November 2006 Released leave module
February 2007 Was ranked within the top 10 projects in SourceForge for the first time
June 2007 Released Time and Attendance modul
February 2008 Reached 100,000 downloads
September 2008 Released Recruitment module.

How can others contribute?

We welcome contributions from the community. They can contribute to requirements, development, and testing. The feature tracker on SourceForge is the primary place for making feature requests. Please contact us at info@orangehrm.com if you’re interesting in contributing code or getting involved in testing. We’re planning to streamline the processes for community collaboration in the next few months.


Check out our previous projects of the month.