Requirements

Requirements#

This chapter defines the technical specifications and constraints of our project. Its primary purpose is to establish clear guidelines for implementation while addressing the core question: What functionality must our editor provide to effectively serve the users in creating interactive textbooks?

We begin by describing how the requirements were collaboratively created and refined through early discussions with the client and continuous feedback from the teaching staff (see Creation and Refinement). To clearly define priorities, we organize the finalized requirements using the MoSCoW prioritization method—categorizing them as Must, Should, Could, or Won’t—to distinguish essential features from enhancements and explicitly excluded items (The requirements are ordered and summarized in the appendix). Functional Requirements outlines the functional requirements, covering core editor capabilities, Non-Functional Requirements focuses on non-functional requirements such as maintainability, performance, and security. Constraints details the technical constraints and boundaries that shaped the scope of the implementation. Lastly, Implementation Status reflects on where we currently are on the road-map for implementing the requirements. This comprehensive specification serves both as a development guide and a shared agreement with stakeholders to validate outcomes. The requirements are summarized in Appendix A, which includes one table listing all requirements using the MoSCoW method, and another table showing which requirements have been completed and which have not.