Case Study Open-source, on-demand Baobab Program Management System THE CUSTOMER CPS Baobab 1 Inc (CPS) is a startup company that provides web-based program management to the nutrition education community in the U.S. Potential clients include universities, community-based health and human service agencies, nongovernmental organizations, and trade and faith-based organizations that manage a variety of nutrition education programs or projects THEIR NEED CPS approached Aspire in the fall of 2007 to build a highly reliable and scalable, webbased specialty (PMS). The software would initially target Supplemental Nutrition Assistance Program - Education 2 (SNAP-Ed), but would need to have extended use in other nutrition and health promotion education programs, such as EFNEP and WIC 3. Federally funded by the Food and Nutrition Services of the United States Department of Agriculture (FNS-USDA), SNAP-Ed supports community-based nutrition and physical activity education for low income adults and children in 50 states and three territories through public and nonprofit organizations. Aspire helped the customer to build a flexible program management system, from concept to implementation. The product was built using the open-source LAMP stack, which helped reduce development time and cost. The customer wanted an intuitive, user-friendly system that would provide benefit equally through all levels of the software from community-based educators to state level management to end-point federal reporting and include built-in features to assure compliance with federal and state funding requirements while supporting best practices. Above all, the software needed to fully respond to Education and Administrative Reporting System (EARS), the reporting standard for SNAP-Ed, and have an implementation date of FY10 (October 1, 2009 September 30, 2010). Apart from internal applications used by individual organizations/universities, which are limited, smaller scope reporting systems, there were no other similar solutions available to SNAP-Ed implementing agencies. CPS s web-based product would be the first to cater exclusively to this audience 1) The baobab is a tree which only grows in the tropics of Africa, Australia and Madagascar. It is known as the tree of life or the upside down tree. In this enormous tree, every part of the baobab has function that allows the tree to live for hundreds of years under harsh conditions. Its broad branches provide shelter for man and animal, offering a gathering place of mystical proportion. 2) Prior to October 2008, SNAP-Ed was known as Food Stamp Nutrition Education (FSNE). 3) Programs with similar educational objectives include EFNEP (Expanded Food and Nutrition Education Program), WIC (Supplemental Nutrition Program for Women, Infants and Children); NSLP - National School Lunch Program; SBP - School Breakfast Program; SFSP - Summer Food Service Programs; CACFP Child and Adult Food Program; TEFAP The Emergency Food Assistance Program; CFNP Community Food and Nutrition Program; Food Distribution Program on Indian Reservations. Additional federal programs which support low-income people include: WIC Farmers Market; Senior Farmers Market; CSFP - Commodity Supplemental Food Program; the Older Americans Act Elderly Nutrition Program. 01
OUR DEED As the sole technology partner of the customer, Aspire built a flexible Software-as-a- Service (SaaS) (PMS) from concept to implementation. The web-based solution is built from scratch on the open-source LAMP stack and integrated it with a custom-built MVC framework, which is customizable for future expansion programs of nutrition education. Meeting 1 the client s objectives, the application Baobab Program Management System 2 simplifies program management and operation; improves collaboration among 3 nutrition educators; and provides a comprehensive reporting system that meets all EARS requirements. 4 The Program management software for the SNAP-Ed program participants included modules for customer management, project management, user management, educational session and materials management, a collaboration suite and a reporting framework. 5 SITUATION STATEMENT Supplemental Nutrition Assistance Program - Education (SNAP-Ed) is a U.S. federal/state partnership that supports nutrition education for low-income individual and families. Matching funds are provided by implementing agencies, which include land-grant universities and state public health departments. The objective of SNAP-Ed is to educate participants to make healthful and enjoyable food and physical activity choices. At the same time, participants learn how to get the best nutrition from their food dollar. Education focuses on wellness achieved through good nutrition and physical activity that can reduce the incidence of nutritioninfluenced diseases such as obesity, diabetes, cancers, heart disease. The federal funding source, FNS-USDA, provides Guidance [rules] that define the tools and strategies for education delivery. Special focus is given to families with young children who make up the majority of the food assistance participants. The Guidance allows education to the target audience of adults and children at or below 185% of poverty (annual income $39,220 for a family of four). In compliance with the Education and Administrative Reporting System (EARS), program participation is tracked by income level, age, gender, race and ethnicity. Beginning with FY09, SNAP-Ed agencies are required to submit all data required for EARS, which includes the number of clients being served by the agency as well as agency progress in meeting goals and objectives. Through the adoption of the Baobab (Baobab), nutrition educators will easily meet this federal deadline. Providing a comprehensive program management system, the following report elements are integrated into Baobab: program/project goals and objectives, start and end dates, curriculum and course materials, program locations and contact information, participant demographics and details, and various other administrative tasks. Baobab is also able to ensure the appropriate use of curriculum through suitable delivery methods. 02
Beyond simply capturing data points required for EARS, the software aims to improve the delivery of education by streamlining the education approach and process so that educators spend more time in delivery than in paperwork resulting in a greater reach and impact on individuals and families. This software takes CPS Baobab customers from a labor-intensive pen and paper system to a web-based user-friendly program that assures accuracy of reporting while ultimately decreasing the administrative burden. In addition to program details, participant demographics and more available time, Baobab reporting includes features for personnel appraisal which facilitates coaching of educators by their supervisors a benefit well beyond the basic federal reporting requirements. The product was built to enable single sign-on and multitenancy capabilities. Hence, multiple agencies and organizations that are a part of the SNAP-Ed program could use a single instance of the hosted service offered by the customer. TOOLS & TECHNOLOGIES USED Language: PHP 5.1.2 Framework: Customized PHP MVC framework. IDE: EclipsePDT. Database: MySQL 5.0 Web Server: Apache Configuration Management: SVN repository Operating System: RHEL Plug-ins, Tools and Technologies: Ext-JS, JSON, Smarty template engine, PHP-GD, AJAX. The PMS also provides a dashboard view for a quick review of all the projects coming under a program and their various activities, status of plans, session details, other news and events planned. Some of the key functional areas of the PMS developed by Aspire within a period of 6 months (beta in 3 months) were: Customer Management Project Management User Management Collaboration Suite with Calendar, News and Reminder Integration Complex Educational Session, location/sub location, and Materials Management Reporting Framework The reporting framework is an important feature of the Baobab Program Management System. It allows educators who conduct sessions to immediately record the number of people who attended a session, collect ethnographic, demographic and several other details from attendees online. All of the reports are then generated into a format that complies with federal government regulations and can be used to compare progress against the project plans. The reports would also allow information to be distributed and viewed by key members (like the project managers, supervisors, program manager/sponsor etc.) in a controlled fashion. 03
On-demand solution using the open-source LAMP stack The PMS was built as a SaaS product allowing for single sign-on and multi-tenancy. Hence, multiple agencies and organizations that are a part of the FSNE program can use a single instance of the hosted service offered by the customer. The product s architecture also permits customization of the user interface to cater to the data reporting needs of the different agencies using it. Aspire built the on-demand program management software right from the architecture, design, db and rights design to development, testing and implementation for the various agencies and organizations involved. As CPS specified open-source technologies to develop the product, Aspire chose simple but adequate technologies to bring the solution to market in a very short period of time. The product was built to enable single sign-on and multitenancy capabilities. Hence, multiple agencies and organizations that are a part of the SNAP-Ed program could use a single instance of the hosted service offered by the customer. Baobab was built on the LAMP (Linux-Apache-MySQL-PHP) stack known for the following advantages: It reduces development time considerably, close to 40%. Built-in features allow for Web 2.0 experience. Clear separation of business logic and presentation template. Fast, robust and easily portable to different databases/servers. Advanced reporting methods. Open source, and can be easily used to change and extend the system PHP 5.1.2 and Smarty template engine PHP was chosen as the development language as it suits simple web development and in particular v 5.1.2 was chosen for its object oriented development. Additionally, the PHP Smarty template was used to clearly separate the presentation logic from the business logic, and for its caching mechanism. Smarty s caching enhances response times and compresses the html by stripping the white spaces, enabling faster page loading times. 04
Architecture A custom-built MVC framework was used to develop the PMS which included Ext-JS, a very powerful and effective JavaScript framework which includes Web 2.0 capabilities. *MySQL actual PostgreSQl and Oracle possible Custom-built MVC framework and Ext-JS A custom-built MVC framework was used to develop Baobab which included Ext-JS, a very powerful and effective JavaScript framework which includes Web 2.0 capabilities. This allowed a collapsible layout, dynamic listings, dynamic rearrangement of columns and grouping on the fly using Ajax, an easy date and time picker etc. The framework also provides dynamic Ajax connections where the data for the listings are pulled as JSON data for faster response and displayed as dynamic listings in the pages with the options to sort / group by all the fields. Aspire is still enhancing the framework for other nutrition and health education programs even though the solution was originally targeted for FSNE/SNAP Ed. 05
Benefits to the customer By developing the complete end-to-end Baobab as a web-based SaaS solution, Aspire enabled, CPS to offer all nutrition education implementing agencies a cost-effective, hosted solution requiring no maintenance or computer servers. Built on the open-source LAMP stack, the time and cost required to develop the product was also reduced drastically. Aspire s custom built MVC framework gave the customer a scalable product which could be easily extended to include other federal and state nutrition and health education programs and has the potential to be used by all 50 states of the USA and their affiliated organizations and program implementing agencies Aspire provided the customer with a scalable product which can be easily extended to include other programs administered through the SNAP-Ed network and with the potential to be used by all 50 states of the US and their affiliated organizations. Aspire and CPS Baobab have formed a long term partnership with services extended beyond the original scope of the contract. These services include help desk support, IT support, technical writing and website design. 06
ABOUT ASPIRE SYSTEMS Aspire Systems is an Outsourced Product Development firm committed to helping our customers build software products better and faster. We work with some of the world s most innovative Independent Software Vendors and software-enabled businesses, ranging from start-ups to established industry leaders, transforming the way software is built. Aspire provides complete product lifecycle services, ranging from new product development and product advancement to product migration, re-engineering, sustenance and support. Our product development teams are spread between our Global Innovation Center in Chennai, India and offices in the United States. For more information : Website : www.aspiresys.com E-mail : info@aspiresys.com Phone : +91-44-67404000 +1-908-218-5017 CPS Baobab Inc E-mail : joyce.counihan@cps-baobab.org Phone : 828.438.4390 07