diff --git a/ScrumTaskboard/TaskContext.cs b/ScrumTaskboard/TaskContext.cs
index 3baacce..8e5fa43 100644
--- a/ScrumTaskboard/TaskContext.cs
+++ b/ScrumTaskboard/TaskContext.cs
@@ -4,6 +4,13 @@ using System.Runtime.Serialization;
namespace ScrumTaskboard
{
+ ///
+ /// Provides access to the database via the Entity Framework Core.
+ ///
+ ///
+ /// Each property represents a table.
+ /// Tables can be queried and updated via the context class.
+ ///
public class TaskContext : DbContext
{
public DbSet Tasks { get; set; }
@@ -14,11 +21,23 @@ namespace ScrumTaskboard
public DbSet Projects { get; set; }
public DbSet Users { get; set; }
+ ///
+ /// Creates a new instance with default options.
+ ///
public TaskContext() { }
+ ///
+ /// Creates a new instance with the given options.
+ ///
public TaskContext(DbContextOptions options) : base(options) { }
}
+ ///
+ /// Represents a task in an agile work process.
+ ///
+ ///
+ /// A task is a small piece of work, associated with a larger userstory.
+ ///
public class ScrumTask
{
public int Id { get; set; }
@@ -40,6 +59,13 @@ namespace ScrumTaskboard
public ScrumPrio Priority { get; set; }
}
+ ///
+ /// Represents a userstory in an agile work process.
+ ///
+ ///
+ /// A userstory is a piece of work that can be done in one sprint.
+ /// It can be further divided into multiple tasks.
+ ///
public class ScrumUserstory
{
public int Id { get; set; }
@@ -63,6 +89,13 @@ namespace ScrumTaskboard
public ScrumSprint Sprint { get; set; }
}
+ ///
+ /// Represents a category of userstories.
+ ///
+ ///
+ /// Every userstory can optionally be associated with a single category.
+ /// This can be helpful to organize work in larger teams.
+ ///
public class ScrumCategory
{
public int Id { get; set; }
@@ -74,6 +107,14 @@ namespace ScrumTaskboard
public ScrumProject Project { get; set; }
}
+ ///
+ /// Represents an agile sprint.
+ ///
+ ///
+ /// A sprint is typically one to four weeks long.
+ /// Userstories are typically started and completed
+ /// during one sprint.
+ ///
public class ScrumSprint
{
public int Id { get; set; }
@@ -86,6 +127,13 @@ namespace ScrumTaskboard
public ScrumProject Project { get; set; }
}
+ ///
+ /// Represents the status of a task or userstory.
+ ///
+ ///
+ /// Classic status are "Backlog", "In Progress" and "Done", but
+ /// teams can create others to fit their individual workflow.
+ ///
public class ScrumStatus
{
public int Id { get; set; }
@@ -93,6 +141,13 @@ namespace ScrumTaskboard
public string Description { get; set; }
}
+ ///
+ /// Represents a project that the team works on.
+ ///
+ ///
+ /// Userstories and sprints can be categorized into projects,
+ /// to help organization for larger teams.
+ ///
public class ScrumProject
{
public int Id { get; set; }
@@ -100,6 +155,13 @@ namespace ScrumTaskboard
public bool IsPrivate { get; set; }
}
+ ///
+ /// Represents a team member that can work on userstories.
+ ///
+ ///
+ /// This allows teams to track who is working on a userstory
+ /// at a given time.
+ ///
public class ScrumUser
{
public int Id { get; set; }