mirror of
https://github.com/LD-Reborn/Berufsschule_HAM.git
synced 2025-12-20 06:51:55 +00:00
Moved meeting/specs related docs into corresponding folders, added agenda for next meeting
This commit is contained in:
198
docs/Specs/20250919 Pflichtenheft.md
Normal file
198
docs/Specs/20250919 Pflichtenheft.md
Normal file
@@ -0,0 +1,198 @@
|
||||
# **Pflichtenheft**
|
||||
|
||||
**Projekt:** Hardware-Asset-Management-Tool
|
||||
**Firma:** WalhöferGbR
|
||||
|
||||
---
|
||||
|
||||
## **Deckblatt**
|
||||
|
||||
| **Projektname:** | Hardware-Asset-Management-Tool |
|
||||
| ------------------------------- | ------------------------------ |
|
||||
| **Kunde:** | Firma WalhöferGbR |
|
||||
| **Auftragnehmer / Entwickler:** | KeineAhnungGmbH |
|
||||
| **Version:** | 2.0 |
|
||||
| **Datum:** | 03.10.2025 |
|
||||
| **Abgabe:** | 01.12.2025 |
|
||||
| **Budget:** | 40.000 € |
|
||||
**Kontaktperson Kunde:**
|
||||
- Name: Jochen Walhöfer
|
||||
- Abteilung: IT-Abteilung
|
||||
- E-Mail: jochen.walhoefer@meinbtg.de
|
||||
|
||||
**Kontaktperson Entwickler:**
|
||||
- Name: Andreas Stefan
|
||||
- E-Mail: andreas.stefan@KeineAhnungGmbH.de
|
||||
|
||||
---
|
||||
|
||||
## **Versionshistorie**
|
||||
|
||||
| Version | Datum | Autor | Änderung / Kommentar |
|
||||
| ------- | ---------- | -------------- | ------------------------- |
|
||||
| 1.0 | 19.09.2025 | Lucretia Dietz | Erstfassung Pflichtenheft |
|
||||
| 2.0 | 03.10.2025 | Lucretia Dietz | Erweiterung Hosting & Support |
|
||||
|
||||
---
|
||||
## **Inhaltsverzeichnis**
|
||||
|
||||
1. Einleitung / Zielbestimmung
|
||||
2. Produkteinsatz
|
||||
3. Produktfunktionen
|
||||
4. Produktdaten
|
||||
5. Benutzerrollen & Rechtekonzept
|
||||
6. Systemarchitektur & Technologien
|
||||
7. Schnittstellen
|
||||
8. Sicherheitsanforderungen
|
||||
9. Qualitätsanforderungen
|
||||
10. Setup, Support & Lizenz
|
||||
11. Abgrenzungskriterien (Nicht-Ziele)
|
||||
12. Budget- und Zeitplanung
|
||||
13. Glossar
|
||||
14. Unterschriften
|
||||
|
||||
---
|
||||
|
||||
## 1. Einleitung / Zielbestimmung
|
||||
|
||||
Ziel dieses Projekts ist die Entwicklung eines webbasierten Hardware-Asset-Management-Tools für die IT-Abteilung der Firma WalhöferGbR.
|
||||
Das System soll firmeneigene Hardware zentral verwalten, LDAP-Daten integrieren und relevante Informationen erfassen und pflegen.
|
||||
|
||||
Die Software wird in .NET (C#) entwickelt und soll innerhalb des Budgets von 40.000 € bis zum 01.11.2025 einsatzbereit sein.
|
||||
|
||||
---
|
||||
|
||||
## 2. Produkteinsatz
|
||||
|
||||
- **Zielgruppe / Nutzer:** IT-Abteilung der Firma Walhöfer
|
||||
- **Einsatzort:** Innerbetrieblich, Zugriff über Webbrowser
|
||||
- **Hauptnutzen:** Übersicht über Hardwarebestand, Zuordnung zu Nutzern, Verwaltung zentraler Informationen
|
||||
|
||||
---
|
||||
|
||||
## 3. Produktfunktionen
|
||||
|
||||
- Assets anlegen, bearbeiten und löschen
|
||||
- Assets zu Nutzern zuordnen
|
||||
- Suchen und Filtern von Assets
|
||||
- Inventarisierung von Geräten (durch Inventarisierer)
|
||||
- Einfache Übersichtsseiten („alle Geräte pro Nutzer“)
|
||||
- Rollenverwaltung über LDAP-Gruppen
|
||||
- Schreibender und lesender Zugriff auf LDAP, inklusive Schemaerweiterung
|
||||
|
||||
---
|
||||
|
||||
## 4. Produktdaten
|
||||
|
||||
- Seriennummer
|
||||
- Standort
|
||||
- Zugeordneter Nutzer
|
||||
- Garantieende
|
||||
- Marke
|
||||
- Modell
|
||||
- Inventarisierungsstatus
|
||||
|
||||
Weitere Attribute können über das erweiterte LDAP-Schema ergänzt werden.
|
||||
|
||||
---
|
||||
|
||||
## 5. Benutzerrollen & Rechtekonzept
|
||||
|
||||
| Rolle | Rechte |
|
||||
| --------------- | ------------------------------------- |
|
||||
| Admin | Vollzugriff, Rollenverwaltung |
|
||||
| Inventarisierer | Geräte inventarisieren und bearbeiten |
|
||||
| Nur-Lesen | Nur Ansicht |
|
||||
Rollensteuerung erfolgt über LDAP-Gruppen.
|
||||
|
||||
---
|
||||
|
||||
## 6. Systemarchitektur & Technologien
|
||||
|
||||
- Webanwendung auf .NET (C#)
|
||||
- Browserbasiert
|
||||
- Zentrale Datenhaltung über LDAP
|
||||
- SSL-verschlüsselte Verbindungen
|
||||
- Erweiterbares LDAP-Schema für Geräteinformationen
|
||||
- Hosting auf Kundenhardware (on-premise)
|
||||
- Ubuntu Server mit
|
||||
- 2 CPU Kernen
|
||||
- 2 GB RAM
|
||||
- 50 GB SSD
|
||||
- Windows Server mit
|
||||
- 4 CPU Kernen
|
||||
- 4 GB RAM
|
||||
- 100 GB SSD
|
||||
---
|
||||
|
||||
## 7. Schnittstellen
|
||||
- LDAP
|
||||
- **Lesender Zugriff:** Nutzer- und Geräteinformationen
|
||||
- **Schreibender Zugriff:** Pflege und Ergänzung von Geräten
|
||||
- **Schemaerweiterung:** Neue Attribute für Geräteobjekte
|
||||
- **Authentifizierung:** LDAP-Single Sign-On (SSO)
|
||||
- **Autorisierung:** Rollen über LDAP-Gruppen
|
||||
|
||||
---
|
||||
|
||||
## 8. Sicherheitsanforderungen
|
||||
|
||||
- LDAP-Authentifizierung
|
||||
- SSL für alle Verbindungen
|
||||
- Rollenbasiertes Berechtigungsmodell
|
||||
- Schreibrechte nur für berechtigte Benutzer
|
||||
|
||||
---
|
||||
|
||||
## 9. Qualitätsanforderungen
|
||||
|
||||
- Performance für ca. 100 Nutzer
|
||||
- Erweiterbare Architektur
|
||||
- Stabile, wartbare Software
|
||||
- Datensicherung erfolgt extern durch den Kunden
|
||||
|
||||
---
|
||||
|
||||
## 10. Setup, Support & Lizenz
|
||||
|
||||
- Die Lieferung beinhaltet Vier (4) Personenstunden für Aufbau und Abnahme des Systems.
|
||||
- Nach der Lieferung der Software werden keine weiteren Änderungen durchgeführt.
|
||||
- Die Software wird mit der MIT Lizenz geliefert.
|
||||
- Alle Verantwortungen seitens der KeineAhnungGmbH hinsichtlich Support werden durch die MIT Lizenz definiert.
|
||||
- Alle Rechte der Firma WalhöferGbR hinsichtlich der Verwendung, Weiterentwicklung und Weitergabe werden durch die MIT Lizenz definiert.
|
||||
|
||||
---
|
||||
|
||||
## 11. Abgrenzungskriterien (Nicht-Ziele)
|
||||
|
||||
- Keine automatischen Benachrichtigungen
|
||||
- Keine Workflows
|
||||
- Kein Datenexport (CSV, PDF, Excel)
|
||||
- Keine Mehrsprachigkeit
|
||||
- Keine speziellen UI/Design-Vorgaben
|
||||
|
||||
---
|
||||
|
||||
## 12. Budget- und Zeitplanung
|
||||
|
||||
- **Budget:** 40.000 €
|
||||
- **Abgabedatum / Fertigstellung:** 01.11.2025
|
||||
- Entwicklungsaufwand in enger Abstimmung mit der IT-Abteilung
|
||||
|
||||
---
|
||||
|
||||
## 13. Glossar
|
||||
|
||||
- **Asset:** Hardwaregerät (PC, Laptop, Monitor, Drucker, Smartphone)
|
||||
- **LDAP:** Lightweight Directory Access Protocol, zentrale Datenhaltung für Nutzer und Geräte
|
||||
- **SSO:** Single Sign-On, einmalige Authentifizierung für alle Zugriffe
|
||||
- **Inventarisierung:** Kennzeichnung eines Gerätes als inventarisiert
|
||||
|
||||
---
|
||||
|
||||
## 14. Unterschriften
|
||||
|
||||
| Name | Funktion | Unterschrift | Datum |
|
||||
| --------------- | ------------- | ------------ | ----- |
|
||||
| Jochen Walhöfer | Auftraggeber | | |
|
||||
| Lucretia Dietz | Projektleiter | | |
|
||||
48
docs/Specs/20250928 Object attribute specs.md
Normal file
48
docs/Specs/20250928 Object attribute specs.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Object attribute spec
|
||||
|
||||
## users
|
||||
- ObjectClass:
|
||||
- inetOrgPerson
|
||||
- cn = Name
|
||||
- sn = Surname
|
||||
- title = title (e.g. "Dr.", "Herr", "Frau", etc.)
|
||||
- uid = user identifier (e.g. sn + cn or sn[1:3] + cn[1:3])
|
||||
- jpegPhoto = jpeg photo of the user
|
||||
- userPassword = user password (hashed using one of these: PBKDF2, BCrypt/SCrypt, Argon2)
|
||||
- description = json string containing data as JSON. E.g.:
|
||||
- `{"BirthDate": "01.01.2001", "Address": {"City": "Gelsenkirchen", "Street": "Vattmannstraße", "StreetNr": "11" }, "Workplace": "btg-317-23"}`
|
||||
|
||||
## locations
|
||||
- ObjectClass:
|
||||
- extensibleObject
|
||||
- locality
|
||||
- top
|
||||
- cn = location identifier (e.g. location name + room name + seat)
|
||||
- l = location name (e.g. "btg")
|
||||
- street = Street name and number (e.g. "Overwegstraße 30")
|
||||
- description = json string containing data as JSON. E.g.:
|
||||
- `{"RoomNumber": "317", "Seat": "23"}`
|
||||
|
||||
## groups
|
||||
- ObjectClass:
|
||||
- extensibleObject
|
||||
- posixGroup
|
||||
- top
|
||||
- cn = group identifier (e.g. "admin")
|
||||
- gidNumber = group id number (e.g. 1)
|
||||
- displayName = display name (e.g. "Administrator")
|
||||
- description = json string containing data as JSON. E.g.:
|
||||
- `{"Permissions": ["CanInventorize", "CanManageUsers", "CanManageLocations", "CanManageAssets", "CanManageGroups"]}`
|
||||
|
||||
## assets
|
||||
- ObjectClass:
|
||||
- device
|
||||
- extensibleObject
|
||||
- top
|
||||
- cn = inventory id of the device (e.g. "2000001")
|
||||
- name = Make & model of the device (e.g.: "AMD Radeon RX9070 XT OC Black Triple Fan 16 GB GDDR6", "Voodoo 3 3500TV")
|
||||
- serialNumber = serial number of the product as specified by the manufacturer
|
||||
- owner = current owner of the product as an attribute list (e.g.: "uid=testuser")
|
||||
- l = location cn (e.g. "btg-317-23")
|
||||
- description = json string containing data as JSON. E.g.:
|
||||
- `{"Type": "PC Component", "Purchase":{"PurchaseDate": "2024-01-01", "PurchaseValue": "877.33", "PurchasedAt": "SpechtleKG", "purchasedBy": "musterfrauandrea"}}`
|
||||
Reference in New Issue
Block a user