As the guys have been saying, I think you're being too prescriptive in describing the solution and NOT detailing the actual requirements of the system. Detail hardware and software separately.
Factors to include when documenting this include:
- Scope of the Requirements (Define the areas that the requirements encompass to ensure that the requirements documented are relevant to the need being addressed.)
- Inclusions
- Exclusions
- Current Process Overview (Produce an overview that shows the current process - a flow chart would be a great idea)
- Context
- Diagram (Produce a context diagram that shows how the area being addressed interacts with other areas eg fermentation .
Here is a direct copy out of a section of a project requirements template:
Business requirements are defined in 3 sections,
1. Business requirements - these are the major requirements that are to be met by the solution;
2. Non functional requirements - these are the non functional requirements that need to be addressed by the solution; and
3. Additional requirements these are requirements that are not related to a business objective.
Each business requirement documented must be within the scope as previously defined and must relate the a business objective detailed in section 3.2 of this document. Each business requirement should meet the following criteria:
The requirement is clearly and specifically stated;
The requirement is realistic and achievable;
The requirement is sufficiently defined such the requirements can be verified; and
Each requirement must be unique.
Attributes of the business requirement:
Business Requirement ID number to uniquely identify each requirement. Use BR1, BR2 as the numbering sequence.
Business Objective ID: which business objective this business requirement relates to (users need only detail the relevant ID number). Note that for additional requirements, no Business Objective ID will be specified. Rather additional requirements are those requirements that are not related to an objective they include timing and performance requirements, expected life time of solution, financial / budgetary constraints, documentation that is required for the solution etc.
Business Requirement Title: a brief title for each requirement;
Description: a clear description of the requirement;
Owner: who owns this requirement (note that this may not be an individual, it could also be a business unit);
Classification: classification of requirement into common area groupings (usability etc)
Business Area Impacted: classification of the business areas affected by this requirement (e.g. Loan Processing Centre);
Priority: classification of the level of importance of the requirement (mandatory, highly desirable, desirable, nice to have). Prioritising requirements, will assist in the solution design process;
Verification: statement that the requirement can be verified and how; and
Measures of success: the key success criteria / key performance criteria for the project.
If you specify user enablement of functions you will be able the functions built as part of the design, but allow them to be enabled by the individual brewer to fit their particular setup eg you batch sparge but I fly, therefore you turn off the water height/volume function, but I enable it. Similar situation for things like mash stirrers. this would also allow brewers to start with a basic system & grow it over time as budget & desires allow.
I'd add in things like ability to create, name, store and load different schedules eg a weizen mash would have different charactistics to a pale ale.
It might be an idea to take the class to your place for a brew day so they can see a setup in action. It would make the challange real world, instead of just being perceived as just a theoretical excercise necessary to pass the course.
Drop me a PM with your email & I'll send you a couple of templates which may help (I work as a project manager so business requirements are very important to me when defining a projects scope).
There are a lot of good "project requirements template"s online eg
this one
Crozdog