250 likes | 472 Views
BUILDING COMMUNITY SERVICE PROJECTS EFFECTIVELY. Lisa MacLean and Michael Werner macleanl@wit.edu , wernerm@wit.edu Department of Computer Science and Systems Wentworth Institute of Technology Boston, MA 02115. Why Community Projects.
E N D
BUILDING COMMUNITY SERVICE PROJECTS EFFECTIVELY Lisa MacLean and Michael Werner macleanl@wit.edu, wernerm@wit.edu Department of Computer Science and Systems Wentworth Institute of Technology Boston, MA 02115 Bulding Community Service Projects Effectively
Why Community Projects • May satisfy community service requirements for graduation • Students become aware of the social and ethical implications of computing • Real projects are more demanding than toy projects – The students learn more • Students are highly motivated
Some Recent Projects • St. Francis House – A homeless shelter needed a database system to track the delivery of services. • The Nelson Mandela Training Center - An online application process for students seeking training • Parker Hill/Fenway ABCD - A database of available day care slots. • New England Home for Little Wanderers - A web-enabled application for sponsoring Christmas gifts • Urban League of Eastern Massachusetts - A registration system for courses and other services
Difficulties and Constraints • Semesters are too short • Students are inexperienced • Project schedules conflict with coop
Community-based organization • Serves African Americans and other residents of color • Provides job training and professional skills • Advocacy and public policy • Funded by donations, foundations, government entities
ULEM’s Software Need • Enroll students into training courses • On-Line Applications • Internal review and approval • Tracking attendance and progress • Provide reporting internally and to funding agencies
Initial Scope • EPST (Employment and Professional Skills Training Program) • SCSP (Seniors in Community Service Program) • Parent Involvement Program • Youth Program • Technology Training Program • Volunteer Program
Actors • Public – Browse courses on-line and request admission. • Front-Line Staff – Help walk-ins fill out request forms. • Coordinators – Create courses, approve enrollment, and record attendance and progress. • Managers – Report to funding sources on services delivered. • Database Administrators – Maintain database integrity
Project Initiation (Spring ’03) Software Design Class • Seniors • Front-end design • HTML screens • Server-side scripting • Business logic • Single group • Other groups did unrelated projects • Not used much in the lectures Database Class • Sophomores • Back-end design • Identify data elements • Prepare database schema • Class divided into 6 groups • Each group assigned to one ULEM program • Running example driving the lectures
Collaboration and Project Management • Back-end team sent representatives to meet with the client • Front-end team met separately with client • Professors plus a few students acted as liaisons • Front-end was held up waiting for the database design • Little over-all project management
Database Explosion • Back-end produced 6 database designs for the 6 programs • Massive data integration problem (200 tables) • Front-end team mocked up a database design so they could test their scripts
Stored Procedures • Instituted by back-end teams • Provided good security • Front-end could call stored procedures without needing to know their implementation • Back-end was free to modify database design while maintaining the procedures • Lessened the need for coordinating front and back ends
Summer and Fall ‘03 • One Senior continued the project • Reduced to a single ULEM program • Wrote ASP scripts using stored procedures (but these were unreliable) • Different Senior continued in the Fall • Massive database and stored procedure redesign
Spring ‘04 • New front-end team constituted • Rewrote ASP scripts into PHP • Prototype completed and installed on ULEM’s computers • ULEM staff start providing feedback and bug reports • BUT – ULUM had switched to Active Directory • Login procedures needed to be rewritten
Project Completion – Summer ‘04 • One Senior completed the project • Most bugs addressed • Authentication conformed to active directory.
Risk Factors Identified • Communication can break down • The development team may lack needed skills. • Projects may fail to progress in a timely fashion. • Participants may have different goals and time schedules. • Integrating work done by separate groups is problematic. • If projects drag, clients are likely to change their requirements.
Better Next time • The client contract • Developer’s commitment and time line • Client’s commitment and time line • Clear requirements specification • Student preparation • Formal course in project management • Course in WWW applications including server-side scripting
Project Management • Estimating costs and benefits • Work breakdown into phases and tasks • Assigning personnel to tasks • Coordinating • Assessing risks • Managing resources • Monitoring progress • Managing artifacts • Tracking costs and resources
Nonprofits share common traits • Provide services free or at reduced cost. • Employ both paid staff members and volunteers. • Funded by government agencies, foundations and contributors. • Need to report on how funds are used. • Need to manage day-to-day operations such as scheduling classes and appointments • Require different levels of access for different users • Prefer common web interfaces for use internally by the staff, and externally by contributors, clients and the public.
Application Frameworks • Reusable partial application • Provides core functionality to support nonprofits • Customizable to meet specific requirements • Under development at Wentworth
Implementation Languages • SQL –Database back-end and building stored procedures. • PHP –Server-side programming. PHP has strong database interfaces. • HTML –Client and server side web programming. • Javascript –Client-side checking of requests prior to submission.
Future Directions • Service learning is valuable • Students gain experience with real projects • Give-back to the community • New - Center for Service learning • Better understanding of how to do it • Student and faculty preparation • Project management • Application frameworks