Add constraints to developer documentation

This commit is contained in:
Simon Bruder 2023-11-08 19:39:15 +01:00
parent 45f1ae88b3
commit de64a048bc
Signed by: simon
GPG key ID: 8D3C82F9F309F8EC

View file

@ -74,10 +74,55 @@ The first column lists the quality demands, while in the following columns an "x
|Portability | x | | | |
|===
== Randbedingungen
* Hardware-Vorgaben
* Software-Vorgaben
* Vorgaben zum Betrieb des Software
== Constraints
Each constraint is annotated with b, r and/or u,
each representing if it is a
build-time (includes development),
run-time (backend),
or use-time (frontend)
constraint.
Use-time constraints can be separated into customer (c) and administration (a),
each denoted by having their letter prefixed with `u.`.
=== Hardware Specifications
* r: server computer
* b: mid-range computer
* u: computer
* b: input device for text
* u: input/output devices
** pointing device
(e.g, mouse, TrackPoint™, digitizer, touch input)
** text input device
(i.e. keyboard),
can be emulated (software/touch or for accessibility reasons)
** u.a: screen with a resolution of at least 1920×1080 at a DPR of 1 (= 96dpi)
** u.c: screen with a resolution of at least 360×640/640×360 at a DPR of 1 (= 96dpi)
=== Software Specifications
* r: JRE 17
* b: JDK 17
* u: Any HTML5/CSS3 compatibly browser using one of the following engines (or a newer version)
** Chromium 108
** Firefox 115
** WebKit 605.1.15
** Explicity not supported are any browsers based on Trident/EdgeHTML
=== Product Usage
The system is going to to be used as a website for administration and handling of orders for the catering service operated by Hannes Wurst.
The system is supposed to run on a server computer
(a computer running 24/7 with a datacenter-grade internet connection)
so that customers and the administrator can access it at any time.
Its provided service is made available as a web site (HTML5/CSS3/ECMAScript over HTTP).
Should the customer of the project require an encrypted connection using TLS,
it is their responsibility to set up a reverse proxy in front of the system.
It cannot be assumed that the users (customers and administrator) have a technical background,
so common patterns that are easily learned should be used.
== Kontextabgrenzung
* Kontextdiagramm