Skip to content

Adding a List of OneRosterInfo post file generate #36

@bergerb

Description

@bergerb

Adding OneRosterInfo List to a C# Application

1. Introduction

1.1 Purpose

This document outlines the software requirements to add a list of OneRosterInfo objects to an OneRosterSampleDataGenerator application. The OneRosterInfo list will store counts of academic sessions, classes, courses, demographics, enrollments, organizations, and users. Additionally, it will maintain counts for both active and inactive records for each property. The list should be updated and populated with the counts on each generation of a OneRoster file.

1.2 Scope

This document defines the specific requirements for implementing the OneRosterInfo functionality within a C# application. It focuses on data storage, retrieval, and update mechanisms and does not encompass the generation of OneRoster files.

2. System Requirements

2.1 Environment

The application is expected to run on the Microsoft .NET framework, targeting C# as the primary programming language. It should be compatible with the following:

Operating System: Platform-independent, with primary testing on Windows.
.NET 7

##2.2 Dependencies
The application may rely on external libraries, frameworks, or a database system for data storage. These dependencies should be identified and documented.

3. OneRosterInfo Object

3.1 Object Definition

The OneRosterInfo object should be defined in C# as follows:

public record OneRosterInfo
{
    public int AcademicSessionsActiveCount { get; init; }
    public int AcademicSessionsInactiveCount { get; init; }
    public int ClassesActiveCount { get; init; }
    public int ClassesInactiveCount { get; init; }
    public int CoursesActiveCount { get; init; }
    public int CoursesInactiveCount { get; init; }
    public int DemographicsActiveCount { get; init; }
    public int DemographicsInactiveCount { get; init; }
    public int EnrollmentsActiveCount { get; init; }
    public int EnrollmentsInactiveCount { get; init; }
    public int OrganizationsActiveCount { get; init; }
    public int OrganizationsInactiveCount { get; init; }
    public int UsersActiveCount { get; init; }
    public int UsersInactiveCount { get; init; }
}

3.2 Data Storage

The OneRosterInfo objects should be stored in a database or appropriate data storage mechanism. Each instance represents the counts of educational data entities, both active and inactive.

4. Functional Requirements

4.1 Addition of OneRosterInfo List

4.1.1 User Interface

The application should provide a user interface or an API endpoint to add a new OneRosterInfo list. Users, or automated processes, should be able to input counts for each educational data entity, both active and inactive.

4.1.2 Validation

Input data should be validated to ensure that the counts are non-negative integers and within the valid range.

4.2 Updating OneRosterInfo List

4.2.1 Recurring Update

The OneRosterInfo list should be updated and populated every time a new OneRoster file is generated.

4.2.2 Calculation

Developers must implement a mechanism to calculate the counts for each educational data entity, both active and inactive, from the generated OneRoster file.

4.3 Retrieving OneRosterInfo List

4.3.1 Read Access

Developers should provide methods or API endpoints for reading and retrieving the OneRosterInfo list, both active and inactive counts, for reporting, display, or other relevant purposes within the application.

5. Non-Functional Requirements

5.1 Performance

The application should efficiently handle the storage and retrieval of OneRosterInfo data, including active and inactive counts.

5.2 Security

Appropriate security measures should be implemented to protect the integrity and confidentiality of the OneRosterInfo data, including access control and data encryption.

5.3 Scalability

The application should be designed to handle an increased volume of data and an increase in user activity, both for active and inactive data.

5.4 Documentation

Comprehensive documentation, including code comments, user guides, and technical documentation, should be provided to facilitate maintenance and usage of the OneRosterInfo functionality.

  1. Testing
    Comprehensive testing, including unit tests and integration tests, should be conducted to ensure the correctness and robustness of the OneRosterInfo functionality.

7. Deployment

The implementation of the OneRosterInfo functionality should be deployed to the production environment as part of the application's regular release process.

8. Maintenance and Support

Ongoing maintenance and support for the OneRosterInfo functionality, including bug fixes and updates, should be provided as part of the application's lifecycle.

9. Conclusion

This document outlines the software requirements for adding a list of OneRosterInfo objects to a C# application. These requirements cover the storage, retrieval, and update mechanisms for both active and inactive counts related to educational data entities. The developer should adhere to these requirements for successful implementation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions