Beruflich Dokumente
Kultur Dokumente
Choosing Drupal
Began with search for WCM for DoIT
Tested many (Plone, OpenCMS, Joomla, etc.)
Settled on Drupal for functionality and a11y
Started w/ 1 virtual server, no real environment
Ancient History
Portals required on CSU campuses
Java
JDK/JavaEE/JSR
168/WSRP
PHP
drupal_hook API
Services module
Portlet Factory
Any IDE/Editor
Monolithic
Broke weekly
Core is relatively
small
Few expertise
Huge community
No community
Only support is
PMRs
Support via
forums, IRC,
Acquia
The A Team
Me Architect /
Developer / Themer
Supakit superkid
Kiatrungrit Developer
Jason D'Silva
Student Asst. Developer (10
hours/week)
Management position
was actually vacant
during our 2.5 month
sprint. So had a parttime interim project
manager.
What we liked:
Quick
turnaround
Scope creep
Weekly
feedback
Cramming at end
Loss of resources
Clear deadlines
Daily checkins
Working a lot
Learning a lot
Demo
Architecture
MySQL DB
connection test
script
Apache+PHP 5.2
Apache+PHP 5.2
MySQL DB
connection test
script
Utility Modules
Address change
connectioncheck
Benefits pps
deletecookies
encryption
langhide
Ethnicity resurvey
Scheduled message
Financialaidofferletter admin
Military status
sfsulogout
shibbolethdata
Nextmuni
validator
xmlservice
Need hand-holding
Monthly meetings
and code workshops
Development cycle
Develop code
Run unit tests
Check into SVN
Additional development
Interface testing
Tag in SVN
Automated tests
If any tests fail, system is rolled back to
previous build
Prepare
Define requirements including functionality and UI
Remember you are working within the Portal template so many UI elements are
predefined
Determine where portlet will be located and who should have access
Local development
Build portlet
Run unit tests
Unit tests should include all UI components and all backend interfaces
Backend
Work with the data and application owners of the source systems to
build the required backend interfaces
Make sure you follow the defined security model if there is one, or
work with us to define one if the system you are connecting to has no
model defined
Development (DEV)
Run unit tests
Run integration tests, finalize development
Peer review all code
Tag SVN code for test
Request Test build
Code is pulled from SVN into Dev
Code is automatically pulled from TEST at 1am and deployed into staging
Staging
Automated test suite is run
If any tests fail, production roll out is not performed
If all tests pass, promotion to Prod occurs automatically at 6am
Production (PROD)
Automated tests are run
If any tests fail, production is rolled back to previous release
Accessibility
508 compliant
Security
Grendel-Scan
OWASP standards
Scalability
Performance
We have a monthly
meeting Drupal User
Group
Tools to consider
Open Atrium
Pressflow
Memcached/Boost
Drupal is not
Drupal.org
On campus: http://drupal.sfsu.edu/drupal
UC Berkeley Drupal
Sites
UCLA Graduate
Students
Association
UCLA Semel Institute
UCLA Family
Commons
UCLA School of
Public Affairs
Questions?