AllSeen Alliance

AllJoyn® Device Certification Workflow

Drupal-powered certification platform for the AllJoyn® Certified Program

AllJoyn® Device Certification Workflow

Evolving Web partnered with the Linux Foundation to deliver a Drupal-based device certification workflow for the AllJoyn®, an emerging Internet of Things (IoT) technical standard that is backed by the AllSeen Alliance, a consortium of 180 major hardware manufacturers and industry players that includes Qualcomm, Microsoft, LG, and Sony.

This was a major Drupal 7 intranet portal that allowed manufacturers to create an account, select an Authorized Laboratory, and submit hardware device specifications, test results, and associated documents into a complex multi-party workflow whose successful completion would allow them to advertise their products as AllJoyn® certified.

 

In the course of the project, we've implemented a custom certification workflow designed by domain experts in hardware testing and certification, which included the following technical challenges:

  • Specified states and transitions matrix for each entity under review
  • Complex access control scheme (node grants), reflecting the role of each user and related company, and the state of each document.
  • Extensive use of the Form API and Ajax framework
  • Custom fields and display handlers.
  • Custom views relationship to showing the latest approved revision entity
  • Email notifications and task tracking
  • CAS based SSO (single sign-on) scheme
  • HelloSign API integration

Because of the complexity and duration of the project, there were a number of unique challenges that we overcame to successfully deliver the solution on time. These included:

  • Processing several hundreds of pages of detailed technical specifications, provided by AT4 Wireless
  • Dealing with repeated revisions to the specifications as the project was nearing maturity
  • Using docker to provide all team members a uniform development environment
  • Coordination with Linux Foundation's deployment team
  • Running an agile development process, with regular client demos and feedback