Drupal Case Study Presentation of BrownSites, the Drupal-based departmental web template service deployed for Brown University. Presented at DrupalCampNYC (held at John Jay College), Dec. 10, 2011.
*Download presentation file for helpful background notes.
68. Get new site information from request database Create sites directory from default template folder Create temp folder Create empty site database and db user Update settings.php with db and db user Execute database import from paramaterized SQL dump Modify http config files – define site alias *upon errors throw error, stop execution, rollback where possible ** if success, operator manually reboots apache cluster to apply site alias changes Appendix 2: Deployment Script Highlights
Notes de l'éditeur
[Community] Higher Ed + Technology: - low cross communication - low system compatibility Drupal Community: - strong + awesome!!! - shared knowledge helped us succeed - we wanted to give back
cms implementation projects can range from individual site/application to organization-wide platform. On the Coffee cup scale: large to jumbo. Characteristics of large-jumbo: - across organization, - centralized support (training, documentation, upgrades), - common platform for app development ("forms", "databases", app templates), - integration with enterprise systems (APIs).
1) Economic Crisis => Organization Reorg - Senior Administration + Brown Corporation mandate for resource consolidation - translation: reduce need for technical specialists in departments by providing better centrally-supported tools 2) Brown Corporation mandate for Brown.edu Home redesign/upgrade - provide new look and feel for Brown.edu - better showcase news, evemts, and integrate multimedia - improve maintenance tools for more responsive updates – provide automation and integration with other systems where possible
The carrot: a system that upgrades the design of the site and makes site easier to maintain. diminishes the effects of... The stick: a) approval required for hiring of external resources for department website design and development. b) some department technical personnel/functions absorbed into CIS (university's IT department)
4 Pillars ["maaaarble columns!"] of CMS Implementation CMS Implementation big undertaking. Core team of 8. Planning started Feb 2010. Pilot sites launched Feb 2011. Bulk of development Sept 2010 through January 2011. For success: 1) Constituents: audience, stakeholders, users. Needs, wants, constraints. 2) Resources: team members, skill sets, existing/projected infrastructure. In-house vs. external resources. Constraints: Budget? Time? Personnel? Other? 3) Tools: start learning early. Build test sites. Online articles and videos. Webinars and training sessions. Identify technical challenges early. Leave room to experiment. 4) Growth: Be prepared. Gradual deployment. Support? Training? Platform performance and scaling?
Who are your constituents? What are their needs? Constraints? Overlaps? Conflicts? Identify and target key requirements. Identify potential collaborators - especially Pilot and Early Adopters. (focus of WebServices Design Team.) Two initial roll-outs: a) Pilot - tested rollout process and training. b) Early adopters - system enhancements, retest deployment and training, initial implementation request process. Key stakeholders: who's got leverage? Who will support (with funding or clout)? Upper level support (directives from upper IT management, budgeting, university governance and strategy?). For BrownSites project: Mike Pickett (CIO), Plan for Academic Enrichment, the Brown Corporation (redesign and re-org).
Who's the team? What tools and skills are already in place? What tools and skills are needed? BrownSites Personnel: 11 person web services team (7 fulltime + 4 interns). 3 members of UNIX Admin Team. 2 person computer education team. 1 member of the Help Desk. 3 members of Public Affairs and University Relations (PAUR). Infrastructure: Running Apache (version), PHP (version: ), and MySQL (version: ) on Linux. Prior Drupal installations for today@brown and news@brown (PAUR). Pilot department site projects in 2009 & early 2010 (PTP, BME, GradSchool).
Drupal = Flexibility => (near) Infinite Possibility Rubber Meet Road: Modules, Techniques Important stuff: - Platform: MultiSite vs. MultiCore, DB Prefix - Deployment Automation - Usability Accommodations/Enhancements - Data Integration: Bedework, Banner
Use the information gathered from learning about constituents, resources and tools to prepare for the issues of deployment process, training, support/maintenance, customization, performance/scaling (site count, server traffic, database size,...). What tools can you put in place (server analytics, watchdogs, load testing)? What team member support roles do you need (trainers, help desk, communications, IT directors)? What non-technology resources are needed (communications and outreach, IT policy, customer service strategy/procedures)? For BrownSites, preparations included Boost configuration, database backup (via Backup and Migrate), Disaster Recovery coordination and testing, request process development and stewardship (including training and production launch). Custom development and exceptions: policy, intake, process, prioritizing, charge back.
[Elmer's Easy Squeeze]
Brownsites version 1.1 (version 1.2 planned release 2/1/2011) ~160 sites deployed (~60 production) Plans: Improve system upgrade process (currently: manual sql dump scrubbing) improvements to request and deployment automation (e.g. better integration btwn request and deploy systems) Automate site decommission Build/Integrate faculty/staff info by dept.