The current induction process at SSW has been in place for many years. It began life in classic ASP, and was updated to use ASP.NET without significant architectural changes.

Using the current process, new employees must print the induction pages and physically mark each task that they complete. The printed pages are then signed by both the inductee, and induction manager.

SSW would like to improve the induction process by moving it to be completely online, as well as adding new features to allow other organisations to use the system. This has the potential to be a source of revenue, by providing a hosted induction service where clients can pick and choose existing induction tasks, or add their own.

The name of the project to redevelop the induction process is SugarLearning.

Figure: Click to view SugarLearning in action at FireBootCamp


Platforms Considered

Below are the platforms considered for this application. Included is information around why each platform was discounted.


Moodle

Not suitable due to complexities resetting completion status and alerting users that content has changed, as well as the fact that it’s on PHP (i.e. non-MS)

SharePoint Customisations/App or solution

Not suitable due to SharePoint development complexities. While you get versioning/content approval for free, all other functionality must be custom built.

MVC with content stored in HTML file in GitHub

Not suitable due to difficulty in querying, rolling up and otherwise working with the content if it’s only in GitHub

MVC with content stored in SQL

Pros: MVC is a core competency, relatively quick to start building

Cons: Must be hosted somewhere (is Azure a candidate?), versioning and content approval would need to be built from scratch

Generic JavaScript solution with WordPress

WordPress Pros: WordPress is easy to use, has basic versioning

WordPress Cons: We would need to subscribe to a hosting service, would require development on PHP, and the WordPress directory only allows GPLv2 licensed plugins making it harder to monetise

Custom MVC solution using Sitefinity

Pros: MVC based CMS from Telerik

Cons: May be difficult to host on multiple subdomains as each subdomain may require contacting Telerik for a license

Generic JavaScript/TypeScript solution (using MVC/Web API backend)

Pros: Generic – can use any CMS, only ‘I understand’ functionality needs to be built – we’re not reinventing the CMS wheel

Cons: Must be hosted somewhere (is Azure a candidate?), pushing notifications to users when content changes would require either a scheduled polling job on the backend, or integration with the CMS

The generic solution would need to work with an existing CMS. Both Wordpress and SharePoint were considered for this solution. They were discounted due to the requirement to re-use pages, while allowing them to be modified later on in a way similar to forking.

Generic JavaScript solution with SharePoint

SharePoint Pros: Versioning, Content Approval (i.e. inductee could modify a typo as they go through the material, and Induction managers could then approve/reject), the platform is in line with SSW’s expertise and offerings, MS stack, quick to get started adding content on existing site, no additional hosting/servers required as it could be added to existing SharePoint installation.

SharePoint Cons: It’s SharePoint, development is challenging, although the proposed solution alleviates this.

MVC Easy CMS

Not investigated

Piranha CMS

Brendan Richards feedback was that it was strange that Piranha has its own implementation of an Active Record pattern. It would be better if it used an existing framework.