A semester project implemented in C# with a SQLite database, fulfilling all requirements of modules 106, 162, 164, 319, 320, and 322. The application demonstrates object-oriented programming, data persistence, and a user-friendly WPF interface.
- Full CRUD operations (Create, Read, Update, Delete)
- Data persistence with SQLite
- ER diagram and relational model included
- Singleton pattern for database connection
- Interface-based functionality separation
- User input validation and feedback
- Unit tests for logic components
- Modular, object-oriented code structure
- WPF user interface designed according to usability principles
/library-management-system
│
├── /Backend
│ ├── CreateTable.sql
│ ├── Test_Datensätze.sql
│
├── /Docs
│ ├── /Diagrams_Mockups
│ ├── IPT6.1_ER_Modell.png
│ ├── IPT6.1_Flowchart.png
│ ├── IPT6.1_Mockup_Books.png
│ ├── IPT6.1_Mockup_Customers.png
│ ├── IPT6.1_Mockup_Login.png
│ ├── IPT6.1_Relational_Model.png
│ ├── IPT6.1_UML_Diagram.png
│ ├── /Drawio Files
│ ├── IPT6.1_ER_Modell.drawio
│ ├── IPT6.1_Flowchart.drawio
│ ├── IPT6.1_Relational_Model.drawio
│ ├── IPT6.1_UML_Diagram.drawio
│ ├── Plan.xlsx
│
├── /Frontend
│ ├── /Library
│ ├── /Library
│ ├── /.vs
│ ├── /Library
│ ├── /bin
│ ├── /obj
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── AssemblyInfo.cs
│ ├── Library.csproj
│ ├── Library.csproj.user
│ ├── MainWindow.xaml
│ ├── MainWindow.xaml.cs
│ ├── /SQLiteconecttest
│ ├── Library.sln
│
├── .gitignore
├── IPT6.1_Showcase_Video.mp4
├── README.md
└── SQLite.NET.chm
| Modul | Beschreibung |
|---|---|
| 106 | Datenbankabfragen, Pflege, Speicherung (SQLite, CRUD) |
| 162 | Datenanalyse: ER-Diagramm & relationales Modell |
| 164 | Datenbankerstellung & -pflege via SQL-Scripts |
| 319 | Applikationsentwicklung inkl. Funktionsbeschreibung |
| 320 | Objektorientierte Programmierung mit Vererbung, Interfaces, UML |
| 322 | Benutzerfreundliche Oberfläche mit WPF, Eingabevalidierung |
- C# (.NET WPF)
- SQLite
- XAML (UI)
- Git & GitLab
- Visual Studio
- Markdown
- Figma
- Start: 27.01.2025
- Submission: 06.06.2025
- Presentation Video: 3 minutes
- Weekly development sessions: Monday mornings, occasionally at home at other times
- Open project in Visual Studio
- Ensure
.NET Desktop Developmentis installed - Run the solution (F5) – the database will be created if missing
This project was developed as part of a school semester assignment in the Informatikmittelschule Luzern.






