Project Evaluation Activity V1
From Foss2Serve
Contents |
Project Evaluation
Preparation:
Description | Learners will gain an understanding of the breadth of available FOSS projects. Learners will also gain an understanding of the identifying characteristics of FOSS projects including pattern of contributions, patterns of commits, programming languages used, and more. |
Source | |
Prerequisite Knowledge | Completion of Browsing a Forge Activity or understanding of SourceForge and Ohloh; Understanding of course in which students will be participating in an HFOSS project. |
Estimated Time to Completion | 60-90 minutes |
Learning Objectives | Ability to: 1)Utilize the rubric to identify likely HFOSS projects. |
Materials/Environment | SIGCSE paper Access to Internet/Web and web browser. |
Additional Information | Lists of projects |
Rights | Licensed CC BY-SA |
Background:
This 8 minute video gives you an overview of rubric and how it is used.
[ Watch the video.]
Directions:
Part 1-Evaluate Mission Critical Criteria
Evaluate Viability
- Size/Scale/Complexity - An ideal project should be neither overly simple nor overly complex. One heuristic to use is the number of contributors as an indicator project complexity.
- Go to Ohloh.net, type Mifos into the Search Projects box, Click on Mifos to see the Project Summary page
- Scroll down to the Community area and calculate the average number of contributors in the last 12 months. The average was 9 so it passed the minimum average number of contributors metric of 6.
- Go to the Mifos web page and choose Tech Overview from the Contributors tab. From examination of the technology stack, the architecture looks modular and further search shows it is documented elsewhere on the site.
- Result-Based on the modular design and meeting the minimum average number of contributors metric, the project is scored a 2 for size/scale/complexity.
- Activity - Using the number of committers metric as an indicator of a suitable project activity.
- Return to the Mifos project summary page in Ohloh. Scroll to the Activity area on the page.
- Compute the 12-month average of commits. The 12-month average was about 108, much higher than the minimum average level of commits recommended for activity.
- Result-Because commits exceed the favorable level of activity for this project it may be a little large/complex. However, still appears manageable, the project is scored a 2 for activity.
- Community
- Examine download activity
- Go to Sourceforge.net and enter Mifos into the search box.
- Choose Mifos-Microfinance Open Source from the search results.
- Click on the number of downloads that is listed on the project page.
- Change the date range to give a graph of downloads over the last year.
- Examine mailing list activity.
- Return to the Mifos web page. From the Contributor tab choose the Join the Mailing List link to get access to the project mailing list.
- Once granted access, examine the Developer mailing list for activity.
- Examine the IRC channel
- Again from the Contributor tab on the Mifos web page, choose the IRC link.
- Examine the IRC channel for activity.
- Result-Downloads appear steady so the project has a community of users. Developers are responsive on mailing list and developers have a presence on IRC. Project is scored a 3.
- Examine download activity
Evaluate Approachability
Here you are evaluating a project's on-ramp to contribution, scoring as follows:
- 1-Insufficient-Few or no pointers on how to become involved.
- 2-Sufficient-Suggestions about how to get involved other than contributing money with accompanying high-level instructions.
- 3-Ideal-Obvious link to get started, list of suggestions for things to do and detailed instructions.
- Link to get started-From the Contributors tab on the Mifos web page there is a Get Started page with links to what Mifos is, how to contribute, community processes, and tools used.
- List of suggestions for things to do - Clicking the Get Involved link on the Get Started page provides a list of ways to contribute including testing, translation, development and documentation. There is also a volunteer bug queue listed as a good way for developers to get started.
- Detailed instructions-Instructions are provided in many areas including process, architecture, licensing, product functionality, and developer documentation.
- Result-Was scored a 3.
Evaluate Suitability
- Appropriate Artifacts -Since evaluation is dependent on class objectives, in this example we'll assume an objective is to learn the process of working in authentic development project through contributing bug fixes.
- Opportunities to contribute bug fixes - Examined the volunteer bite-sized bug queue accessible from the Volunteer page under the Contributors tab on the Mifos web page. There were 10 open bugs for new contributors. There were many more listed for more experienced contributors.
- Documentation on how to contribute bug fixes - From the Tech Overview page accessible from the Contributors tab on the web site there is a link to details on the code submission process.
- Result - May score a 2 or 3, depends on number of bugs and class size.
- Contributor Support-Does the project have a high volume of guidance to help students as they learn?
- Are communication tools documented?-
- Do developers have a web presence?-
- Are operating processed documented?-
- Do questions posed have timely and supportive answers?-
Decision to move to secondary criteria
Result - No criterion scored lower than a 2 so project passes on mission-critical criteria. Move on to evaluating the project on secondary criteria.
Part 2-Evaluate Secondary Criteria
Evaluate Viability
- Domain
- Does this project require domain knowledge that may be difficult for students to learn? -
- Result -
- Maturity
- To have the organization to support student learning, the project should have at least one stable production release -
- Result -
- User Support
- The project should have clear instructions for downloading, installing, and using the project -
- Result -
- Roadmap
- Student learning is best supported by projects that have a roadmap that includes new feature development, a method for users to submit new feature requests and a process for identifying how new features are prioritized.
- Result -
Evaluate Approachability
- Contribution Types
- Does the project contain opportunities for multiple types of contribution and of the type that fits the class?
- Result -
- Openness to Contributions
- Acceptance of a student contribution to a project provides valuable affirmation to student learning. Determine whether the project accepts student patches.
- Result -
- Student Friendliness
- Do community members moderate the tone of communication? Review mailing lists and IRC to gauge tone.
- Result -
Evaluate Suitability
- Project Description
- Students must be able to understand the purpose of the project. Does the project clearly describe the product? -
- Result -
- Platform
- What software and hardware platform does the FOSS project run on?
- Are there resources to support these platforms?
- Are students familiar with the platforms?
- Result -
- Development Features - Is the class dependent on specific development features?
- Programming language -
- Development environment -
- Supporting technologies -
- Result -