Power Point


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Power Point

  1. 1. Help On Board Gary Bonde [email_address] php use case www.helponboard.org Web based client sales tracking application
  2. 2. Why are we here? <ul><li>Deal with the use of technology to support remote clients. </li></ul><ul><li>Learn how php and MySql were chosen for the Help On Board project management application. </li></ul><ul><li>Understand the challenges of using the same application code with multiple sites at multiple hosting locations. </li></ul>
  3. 3. Session Topics <ul><li>Development experiences </li></ul><ul><li>What is Help On Board? </li></ul><ul><li>Php and MySql solutions </li></ul><ul><li>Help On Board application development </li></ul><ul><li>Application feature highlights </li></ul><ul><li>Technology to support remote clients </li></ul><ul><li>Questions and Answers -  </li></ul>
  4. 4. 1. Development experiences
  5. 5. 1. What have I done? <ul><li>10 years of business system development experience with Canadore College in North Bay, Ontario. Managed and enhanced in-house student and financial business systems in an Oracle database and development environment. </li></ul><ul><li>2 years of development on a web based community information portal project that included integrated G.I.S. on a windows coldfusion server platform. </li></ul><ul><li>Proprietary environment proved financially hard to sustain and opened the door to open source solutions for development including products like phpnuke, phpwebsite and MySql. </li></ul>
  6. 6. 2. What is Help On Board?
  7. 7. 2. Help On Board Is <ul><li>A fundraising solutions company that develops and manages unique programs for a variety of cause-related and tourism organizations. </li></ul><ul><li>The largest game manufacturer in Canada over the last 4 years. </li></ul><ul><li>Located in North Bay, Ontario, about 4 hours north of Toronto, with a US sales office in Denver, Colorado. </li></ul>
  8. 8. 2. What does Help On Board produce? <ul><li>Custom “Opoly” style real estate trading game for the client’s community. 3,500 games are usually produced for each client. </li></ul><ul><li>Clients sell sponsorships that are used on the finished game board and package. </li></ul>
  9. 9. 2. Where are Help On Board’s clients? <ul><li>28 games since 1999, with 21 current projects across North America. </li></ul><ul><li>This is a flash based map using an xml file with php integration. </li></ul>Open source mapping project: www.allthegoodness.com/projects/map/
  10. 10. 2. What needs to be tracked? <ul><li>39 game board sponsors </li></ul><ul><li>Media sponsors </li></ul><ul><li>Retail sponsors </li></ul><ul><li>Donors list sponsors </li></ul><ul><li>Box top photos </li></ul><ul><li>Game tokens </li></ul>Sponsor information is tracked and used in the finished game.
  11. 11. 2. Help On Board’s business needs <ul><li>Business model included move to a comprehensive web based client tool set to support increasing number of remote clients. </li></ul><ul><li>Original web based client tools were based on active server pages and an access database for each client site. This proved difficult to scale and move to alternate hosting service providers. </li></ul><ul><li>New tools would require dynamic pdfs, and images. </li></ul><ul><li>Decision was made to move to php development because of included dynamic pdf and image creation along with portability across many hosting providers. </li></ul>
  12. 12. 3. Php and MySql solutions
  13. 13. 3. Search for php and MySql solutions <ul><li>Started project with no php programming experience and used web research to find php solutions. </li></ul><ul><li>Decision was made to use group-office community edition, by Intermesh, as a framework for development after 3 weeks of research. </li></ul><ul><li>Google/Yahoo/Sourceforge/Hotscripts searched for applications, frameworks and code examples. </li></ul><ul><li>Searched for groupware php and MySql products like dotproject, phpcollab, and group-office. </li></ul>
  14. 14. 4. Help On Board application development
  15. 15. 4. Development environment <ul><li>Started with Virtual PC windows server environment for early php and MySql development. </li></ul><ul><li>Decided on Dreamweaver MX for development because of visual design, built-in php highlighting and ftp client. </li></ul><ul><li>FreeBSD remote hosting environment and local windows server development created a number of file conversion issues. </li></ul><ul><li>Stopped using local windows server development environment and moved to remote file editing on master application site. </li></ul>
  16. 16. 4. Development Starts <ul><li>The existing Group-Office framework for security, themes, menu and module structure were used and the rest of the modules and tables were removed. </li></ul><ul><li>The first version of the application was completed in 18 days and was used during a webconference training session for our Kelowna, British Columbia client. </li></ul><ul><li>The example module was used to start the development and after: </li></ul>
  17. 17. 4. Application feature challenges <ul><li>The application included sponsor input, dynamic pdf contracts, project input, and manual content arranged in five menus. </li></ul><ul><li>Started with pdflib but converted to fpdf when one site was moved to a web server not having pdflib . </li></ul><ul><li>Dynamic jpegs with truetype fonts using GD 2.+ became an issue when one site was moved to a web server that had GD 1.62. </li></ul><ul><li>The two most difficult application features were the dynamic contract pdf and jpeg images. </li></ul>
  18. 18. 4. Development synchronization <ul><li>Dreamweaver synchronization was an issue with more than one site sharing the same application code and requiring client edited files. </li></ul><ul><li>Researched source code control options, found and modified a php based ftp synchronization script tool. </li></ul><ul><li>Added a form frontend to the script to allow extended options. </li></ul>
  19. 19. 4. Application evolution <ul><li>Worked with the first client over 2 months to fix most of the bugs and to create new features. </li></ul><ul><li>My knowledge of the business increased over the next 4 months and the application required a number of major adjustments. </li></ul><ul><li>Development continued and 6 new clients were added. The number of new sites to synchronize became a time issue. </li></ul><ul><li>The php ftp synchronization script tool saved many hours by using the files since last update option. The tool is also used to create new sites based on a master site file set. </li></ul>
  20. 20. 4. Where are we now? <ul><li>The application has been used on over 30 sites and is increasing in features and stability in response to client requests. </li></ul><ul><li>I took on the role of client trainer for the application after the first 9 months. Through this role I learned how the application needed to change for workflow and new features. </li></ul><ul><li>We now use a dedicated hosting server in North Carolina to isolate our client sites from other hosted clients. </li></ul><ul><li>Added phpMyAdmin to the development environment to ease testing and updates to each client site. </li></ul>
  21. 21. 5. Application feature highlights
  22. 22. 5. Data driven public website <ul><li>Public website draws information entered in the application. </li></ul><ul><li>Minor amount of manual html file editing. </li></ul><ul><li>Graphic designer created site template and is updated for each client. </li></ul>
  23. 23. 5. Public website visual sales board <ul><li>Dynamic jpeg visual game board on the public and tools side. </li></ul><ul><li>Quick visual cue to what is sold, on hold or available for sale. </li></ul><ul><li>Image is recreated as sponsors are updated. </li></ul>
  24. 24. 5. Application Dashboard <ul><li>Password protected application for project leaders and committee members. </li></ul><ul><li>Dashboard with sales chart and quick links to other areas within application. </li></ul>
  25. 25. 5. Application menus <ul><li>Data driven, collapsible content menu system. </li></ul><ul><li>The left menu is always shown expanded. </li></ul><ul><li>When a top menu is clicked the left content menu is updated to show all items. </li></ul>
  26. 26. 5. Client project manual content <ul><li>Online Help On Board project manual with sample documents and images for client use. </li></ul><ul><li>Replaces printed client project manual, adds more information and reduces printing costs. </li></ul>
  27. 27. 5. Saleable components – top half <ul><li>Mouse over on game components displays a graphic description of component. </li></ul><ul><li>Clients must understand what components can be sold and is crucial to a successful project. </li></ul>
  28. 28. 5. Saleable components – bottom half <ul><li>Left side has detailed component description. </li></ul><ul><li>Right side is javascript based input for each component group and displays totals for sponsorship revenues. </li></ul><ul><li>This is used to pre-populate the pricing input and link to a project financial forecast. </li></ul>
  29. 29. 5. Sales kit documents <ul><li>A number of documents are provided to help create a sales kit. </li></ul><ul><li>Project logo graphics, letterhead template, presentation labels, and sales sheets. </li></ul><ul><li>Nine different game blank pdf sponsor contracts can be generated with the project logo and contact information. </li></ul>
  30. 30. 5. Project input <ul><li>Basic project information used on public website contract, invoices, and thank you letters. </li></ul><ul><li>Application settings only available to Help On Board personnel. </li></ul>
  31. 31. 5. Photo/Token input <ul><li>Photography and game token input displays choices made. </li></ul><ul><li>Inputs are done using a common popup dialog. </li></ul>
  32. 32. 5. Game component pricing <ul><li>Ability to control pricing of individual game components and shows the items colour keyed to space on game board. </li></ul>
  33. 33. 5. Homes/Hotels plastics colour <ul><li>Javascript based colour selection for homes and hotels. </li></ul><ul><li>Email sent to Help On Board on colour selection update. </li></ul>
  34. 34. 5. Interactive visual sales board summary <ul><li>Interactive dynamic jpeg visual sales summary board. </li></ul><ul><li>Quick view advanced component edit popup. </li></ul><ul><li>Tabbed interface to sponsor summaries. </li></ul>
  35. 35. 5. Sponsorship sales spreadsheet <ul><li>Game sponsor sales summary is colour coded to game board and shows payment details and totals. </li></ul><ul><li>Control display order on public site. </li></ul><ul><li>Common add, view, delete functions. </li></ul>
  36. 36. 5. Prospect edit and convert <ul><li>Sales leads are entered and pre-filled pdf contracts can be generated. </li></ul><ul><li>Sales lead can be converted to a sold game board sponsor. </li></ul>
  37. 37. 5. Sponsorship edit and convert <ul><li>Sponsor information is used in pdf contract, invoice, and thank you letter. </li></ul><ul><li>Sponsor can be converted back to a prospect. </li></ul>
  38. 38. 5. Sponsor game purchases <ul><li>Sponsor game purchase summary shows games pre-purchased and payment and balance details. </li></ul><ul><li>Quick edit popup updates payment and games delivered status. </li></ul>
  39. 39. 5. Document generation <ul><li>Document generation and storage. </li></ul><ul><li>Dynamic pdf contracts. </li></ul><ul><li>Dynamic word .rtf file templates for invoices and thank you letters. </li></ul>
  40. 40. 5. Sponsor csv export <ul><li>Sponsor information is available in 3 excel compatible comma separated values files for use in client side applications. </li></ul>
  41. 41. 5. Retail inventory management <ul><li>Master and retailer inventory tracking with inventory distribution and sales charts. </li></ul><ul><li>Inventory task popup for both master and retailer inventory. </li></ul><ul><li>Summary and details screens for master and retailer inventory. </li></ul>
  42. 42. 6. Technology to support remote clients
  43. 43. 6. Webconferencing <ul><li>Webconferencing is used to train our clients and has saved many miles of travel and cut down costs to our clients. We use webconference.com as our service provider. </li></ul><ul><li>Firewalls and spyware applications can interfere with the webconference software. </li></ul>
  44. 44. 7. Questions and Answers - 