Project Management Software for Course Development

Custom Project Management Application

Project management applications are either expensive or time-consuming to configure and customize for your team (I’m looking at you spreadsheets!). In a team environment, using spreadsheets or other offline files can be tricky for access with multiple users opening and saving the same file, resulting in “conflicted file” errors.

To solve this problem, I developed a secure web application to track course development projects for agile and waterfall-based projects.

The application was developed using C# .Net Core with an Azure SQL database and is secured using Okta.

Partial database schema

Partial database schema

There are three main entities for this application; Courses, Projects, and Tasks. Courses have a one to many relationship with Projects. Projects have dates (start/end) and scope (new/revision) with a one to many relationship with Tasks. Tasks can also be created without a parent to allow for adding tasks that are not project and course related. I often get assigned tasks that not directly related to a course development project but significant enough to schedule keep track of.

Tasks go one step deeper and can have a one to many relationship with Task Items. I may be assigned a specific task on a development team however that task can typically be broken down into several items that I need to complete for completion. This allows me to keep track of Tasks but also the progress of each task in detail.

The user-interface allows you to enter Courses, Projects, and Tasks. Tasks are categorized by month and a summary of each task’s progress are listed.

Screenshot of the Tasks view

Screenshot of the Tasks view