add TODO document + progress calculation
This commit is contained in:
parent
31cd92f3be
commit
45c1bed43b
1
.gitignore
vendored
1
.gitignore
vendored
@ -4,6 +4,7 @@
|
|||||||
/build/www/**
|
/build/www/**
|
||||||
/src/test/javascript/coverage/
|
/src/test/javascript/coverage/
|
||||||
/worktrees/
|
/worktrees/
|
||||||
|
TODO-progress.png
|
||||||
|
|
||||||
######################
|
######################
|
||||||
# Node
|
# Node
|
||||||
|
87
TODO.md
Normal file
87
TODO.md
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
This document is just for tracking the initial development project and thus only in German.
|
||||||
|
|
||||||
|
### Kommunikative Aufwände
|
||||||
|
|
||||||
|
| ID | Beschreibung | Budget | Aufwand | Leistung |
|
||||||
|
|:----|:------------------------------------------------------------|--------:|--------:|---------:|
|
||||||
|
| PRE | Vorbesprechungen bis inkl. KickOff-Meeting | 8 | 4 | 4 |
|
||||||
|
| PRJ | Zweiwöchige Projektbesprechungen | 12 | 2 | 2 |
|
||||||
|
| RET | Vierwöchige Retrospektiven (optional) | 6 | | |
|
||||||
|
| TRA | Einarbeitung von Mitarbeitern des Auftraggebers (Training) | 12 | | |
|
||||||
|
| E2E | Unterstützung beim Aufbau der E2E-System-Integrations-Tests | 40 | | |
|
||||||
|
| MIG | Unterstützung bei der Datenmigration | 16 | | |
|
||||||
|
| INS | Unterstützung ei der Inbetriebnahme / Einführung | 16 | | |
|
||||||
|
| APP | Abnahme (Approval) | 4 | | |
|
||||||
|
| SUP | Unterstützung nach der Abnahme (Support) | 12 | | |
|
||||||
|
| | | | | |
|
||||||
|
|
||||||
|
|
||||||
|
### Allgemeine Leistungen
|
||||||
|
|
||||||
|
| ID | Beschreibung | Budget | Aufwand | Leistung |
|
||||||
|
|:----|:-----------------------------------------------------------|---------:|--------:|---------:|
|
||||||
|
| DEV | Aufbau der Entwicklungsumgebung (bis inkl. Unit-Tests) | 16 | 12 | 16 |
|
||||||
|
| ATN | Entwurf des Authorisierungs-Systems | 40 | 68 | 36 |
|
||||||
|
| ATZ | Auswahl und Implementierung des Authentifizierungs-Systems | 20 | | |
|
||||||
|
| ITS | Aufbau einer Umgebung für Integrationstests (*1) | 4 | 4 | 4 |
|
||||||
|
| ATS | Aufbau einer Umgebung für Akzeptanztests (*1) | 16 | 3 | |
|
||||||
|
| PIP | Aufbau einer Build- und Testpipeline | 20 | | |
|
||||||
|
| ARC | Aufbau einer Architekturkontrolle | 8 | 2 | 2 |
|
||||||
|
| | | | | |
|
||||||
|
|
||||||
|
(*1: ITS+ATS sind aufgesplittet aus TST mit 20 geplanten Stunden entstanden)
|
||||||
|
|
||||||
|
### Leistungen bezogen auf fachliche Objekte
|
||||||
|
|
||||||
|
| ID | fachliches Objekt | Persona | Ops | Budget | Aufwand | Leistung |
|
||||||
|
|:----|:-----------------------|:---------------|:-------------|-------:|--------:|---------:|
|
||||||
|
| ROL | Rollen | Hostmaster | Scrulojtx | 26 | 10 | 5 |
|
||||||
|
| USR | LDAP-User | Hostmaster | Scrufojtex | 29 | 10 | 5 |
|
||||||
|
| USR | LDAP-User | LDAP-User | rufojex | 20 | 10 | |
|
||||||
|
| GRP | Gruppen | Hostmaster | scrulojtx | 26 | | |
|
||||||
|
| CBD | Customer Base | Sachbearbeiter | ScruLojia | 20 | 10 | 4 |
|
||||||
|
| CBD | Customer Base | Kunde | sr | 5 | 1 | |
|
||||||
|
| MSV | Managed Virtual Server | Hostmaster | crudfoj | 20 | | |
|
||||||
|
| MSV | Managed Virtual Server | Owner | rulojt | 15 | | |
|
||||||
|
| MWS | Managed Webspace | Hostmaster | scrudfojte | 26 | 2 | |
|
||||||
|
| MWS | Managed Webspace | Owner | srulojte | 18 | 1 | |
|
||||||
|
| MWS | Managed Websppace | Admin | srulojte | 6 | 1 | |
|
||||||
|
| ACC | Unix-Account | Owner | scrudfojte | 26 | 2 | |
|
||||||
|
| ACC | Unix-Account | Admin | sruloje | 15 | 1 | |
|
||||||
|
| DOM | Domain | Owner | (scrudfojte) | 9 | 1 | |
|
||||||
|
| DOM | Domain | Admin | (srle) | 3 | 1 | |
|
||||||
|
| EMA | E-Mail-Address | Owner | (scrudfojte) | 9 | 1 | |
|
||||||
|
| MAL | E-Mail-Alias | Owner | - | 0 | 1 | |
|
||||||
|
| DBP | Database Postgres | Owner | (scrudlojte) | 9 | | |
|
||||||
|
| DBP | Database Postgres | Admin | (srle) | 3 | | |
|
||||||
|
| DUP | Database-User Postgres | Admin | (scrudlojte) | 9 | | |
|
||||||
|
| DUP | Database-User Postgres | Admin | - | 0 | | |
|
||||||
|
| DBM | Database MariaDB | Owner | - | 0 | | |
|
||||||
|
| DBM | Database MariaDB | Admin | - | 0 | | |
|
||||||
|
| DUM | Database-User MariaDB | Admin | - | 0 | | |
|
||||||
|
| DUM | Database-User MariaDB | Admin | - | 9 | | |
|
||||||
|
| | | | | | | |
|
||||||
|
|
||||||
|
**Ops Agenda**: **S**: Schema, **V**: View, **C**: Create, **R**: Read, **U**: Update, **D**: Delete, **L**: List, **F**: Filter, **O**: Optimistic Locking, **J**: Journal (Audit), **H**: Historization, **U**: Undo, **I**: Inactivate, **T**: Tombstone, **A**: Archive, **E**: Event, **X**: Extraordinary
|
||||||
|
|
||||||
|
|
||||||
|
### Wöchentlicher Status
|
||||||
|
|
||||||
|
<!-- file not committed to git, please run `tools/todo-progress` to generate -->
|
||||||
|
![hsadmin-ng Projektfortschritt](TODO-progress.png)
|
||||||
|
|
||||||
|
In der folgenden Tabelle sind Aufwand und Leistung akkumulierte Werte.
|
||||||
|
|
||||||
|
<!-- generated todo-progress begin: -->
|
||||||
|
| Datum | Budget | Aufwand | Leistung | Verbleibend |
|
||||||
|
|------------|-------:|--------:|---------:|------------:|
|
||||||
|
| 2022-07-17 | 553 | 44 | 0 | 553 |
|
||||||
|
| 2022-07-24 | 553 | 8 | 0 | 553 |
|
||||||
|
| 2022-07-31 | 553 | 143 | 40 | 513 |
|
||||||
|
| 2022-08-04 | 553 | 147 | 78 | 475 |
|
||||||
|
<!-- generated todo-progress end. -->
|
||||||
|
|
||||||
|
|
33
tools/todo-progress
Executable file
33
tools/todo-progress
Executable file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# check if required programs are installed
|
||||||
|
declare -a required=(gnuplot sponge)
|
||||||
|
for cmd in "${required[@]}"; do
|
||||||
|
command -v $cmd >/dev/null 2>&1 || { echo >&2 "Required '$cmd' not installed => aborting."; exit 1; }
|
||||||
|
done
|
||||||
|
|
||||||
|
# calculate current values
|
||||||
|
let budget=`grep '^| ... |' <TODO.md | rev | cut -d'|' -f4 | rev | grep -o '[[:digit:]]*' | total`
|
||||||
|
let effort=`grep '^| ... |' <TODO.md | rev | cut -d'|' -f3 | rev | grep -o '[[:digit:]]*' | total`
|
||||||
|
let output=`grep '^| ... |' <TODO.md | rev | cut -d'|' -f2 | rev | grep -o '[[:digit:]]*' | total`
|
||||||
|
let remainder=$(expr $budget - $output)
|
||||||
|
|
||||||
|
# generating progress report
|
||||||
|
echo '<!-- generated todo-progress begin: -->' >.todo-progress.md
|
||||||
|
sed -e '1,/todo-progress begin:/d' -e '/todo-progress end./,$d' TODO.md >>.todo-progress.md
|
||||||
|
if [ "$1" = "--recalculate" ]; then
|
||||||
|
echo "| $(date --iso-8601) | $(printf "%6d" $budget) | $(printf "%7d" $effort) | $(printf "%8d" $output) | $(printf "%11d" $remainder) |" >>.todo-progress.md
|
||||||
|
fi
|
||||||
|
echo '<!-- generated todo-progress end. -->' >>.todo-progress.md
|
||||||
|
|
||||||
|
# replace the generated todo-progress part
|
||||||
|
if [ "$1" = "--recalculate" ]; then
|
||||||
|
uniq <.todo-progress.md | sponge .todo-progress.md
|
||||||
|
sed -i -e '/todo-progress begin:/,/todo-progress end./!b' -e '/todo-progress end./!d;r .todo-progress.md' -e 'd' TODO.md
|
||||||
|
fi
|
||||||
|
|
||||||
|
# re-generate progress chart
|
||||||
|
sed -e's/^|//' <.todo-progress.md | tr '|' ';' | grep ';' | grep -v -- '---' >.todo-progress.csv
|
||||||
|
gnuplot tools/todo-progress.gnuplot
|
||||||
|
rm .todo-progress.md .todo-progress.csv
|
||||||
|
|
||||||
|
echo "HINT: To recalculate the current values and add a new line, use '$0 --recalculate'."
|
6
tools/todo-progress-line.csv
Normal file
6
tools/todo-progress-line.csv
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Datum ; Soll-Leistung
|
||||||
|
2022-07-11 ; 0
|
||||||
|
2022-07-31 ; 102
|
||||||
|
2022-08-31 ; 253
|
||||||
|
2022-09-30 ; 399
|
||||||
|
2022-10-31 ; 550
|
|
23
tools/todo-progress.gnuplot
Normal file
23
tools/todo-progress.gnuplot
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
set xdata time # x-axis values are time (date) values
|
||||||
|
set timefmt "%Y-%m-%d" # date value format
|
||||||
|
set datafile separator ";" # CSV column separator is semicolon
|
||||||
|
set key autotitle columnhead # first data line contains column titles
|
||||||
|
set format x "%y-%m-%d" # display date format
|
||||||
|
|
||||||
|
set xrange ["2022-07-11":"2022-10-31"] # x-axis value-range
|
||||||
|
set yrange [0:600] # y-axis value-range
|
||||||
|
|
||||||
|
set key inside # graph legend style
|
||||||
|
set xtics rotate by -45 # rotate dates on x-axis 45deg for cleaner display
|
||||||
|
set title 'hsadmin-ng Projektfortschritt' # graph title
|
||||||
|
|
||||||
|
set terminal png # output format
|
||||||
|
set term png size 920, 640 # output canvas size
|
||||||
|
set output 'TODO-progress.png' # output file name
|
||||||
|
|
||||||
|
plot '.todo-progress.csv' using 1:2 with linespoints linetype rgb "black" linewidth 2, \
|
||||||
|
'' using 1:3 with linespoints linetype rgb "red" linewidth 2, \
|
||||||
|
'' using 1:4 with linespoints linetype rgb "green" linewidth 2, \
|
||||||
|
'' using 1:5 with linespoints linetype rgb "blue" linewidth 2, \
|
||||||
|
'tools/todo-progress-line.csv' using 1:2 with linespoints linetype rgb "gray" linewidth 1 \
|
||||||
|
|
Loading…
Reference in New Issue
Block a user