This is a case study of a successful project where we used Drupal to create device certification workflow for an emerging Internet of Things technical standard that is backed by a consortium of 180 major manufacturers. We started with hundreds of pages of workflow, and initially built a prototype using contributed modules including Workflow, Rules, Views, and References dialog. After this we identified areas of custom functionality which we implemented over the next 6 months, leveraging various Drupal APIs:
- Access control (node grants).
- Form API and Ajax framework
- Custom fields and display handlers.
- Custom views relationship, to allow all the views to show only the latest approved revision of a node
- Email notifications and task tracking
- SSO (single sign-on) using CAS
We also used these great tools to make the process smoother:
- Using Behat and Circle CI for continuous integration and integration testing
- Using docker to provide all team members a uniform development environment
- Using Migrations to import extensive sample content to catch corner cases
I'll also cover how we dealt with the project management side of things, including:
- Coordination with deployment team
- Processing hundreds of pages of technical specs, and updates to them
- Running an agile development process, with regular client demos and feedback
- Managing expectations and other project challenges
This talk is aimed at developers, project managers, and decision makers who are contemplating using Drupal for a project with complex requirements requiring a substantial amount of custom development.