Software Architecture Documentation - sapacaFaceRecognition/Documentation GitHub Wiki
1. Introduction
1.1 Purpose
1.2 Definitions, Acronyms and Abbreviations
1.3 References
2. Architectual Representation
3. Architectual Goals And Contraints
4. Use Case View
5. Logical View
5.1 Overview
5.2 Architectually Significant Design Packages
5.2.1 Model
5.2.2 View
5.2.3 Controller
6. Process View
7. Deployment View
8. Implementation View
9. Data View
1. Introduction
1.1 Purpose
Dieses Dokument gibt einen Überblick über die Architektur des Systems. Es werden auf mehrere Aspekte der Architektur eingegangen.
1.2 Definitions, Acronyms and Abbreviations
MVC - Model View Controller
1.3 References
Dokumente: https://github.com/sapacaFaceRecognition/Documentation
1.4 Overview
Das restliche Dokument beschreibt die Architektur des Projektes SAPACA - FaceRecognition.
2. Architectual Representation
Das Projekt 'SAPACA - Face Recognition' benutzt MVC als Entwurfsmodell. Für die Umsetzung des MVC Entwurfmodells wird das Framework Spring Web MVC verwendet.
3. Architectual Goals and Constraints
Ziel des MVC-Entwurfmodells ist es, die Darstellung, Eingaben und Datenverarbeitung zu trennen. Durch das Entwurfsmodell wird das Gesamtsystem flexibel gegen Änderungen, die sich auf die Darstellung, Datenverarbeitung oder Eingabeführung beziehen.
4. Use-Case View

5. Logical View
5.1 Overview
Das folgende Bild zeigt das UML Diagramm mit dem MVC-Modell.
https://raw.githubusercontent.com/sapacaFaceRecognition/Documentation/master/Class%20Diagramm/Class%20DiagrammAufgeteilt.png
5.2 Architectually Significant Design Packages
Das Spring Framework verwendet die sogenannte Dependency Injection - dabei werden die Abhängigkeiten eines Objekts erst zur Laufzeit hin reglementiert. Aus eben diesem Grund werden auch keine Abhängigkeiten in unseren Klassendiagramm I angezeigt.
5.2.1 Complete
5.2.2 Model
5.2.3 View

5.2.4 Controller
6. Process View
n/a
7. Deployment View
8. Implementation View
n/a
9. Data View

10. Pattern
Es wurde das Factory Pattern im Projekt verwendet. Die genaue Erläuterung ist im Blogeintrag zu finden. Blog post.
Der markierte Bereich, wo das Factory Pattern angewandt wurde. Dadurch konnten Abhängigkeiten verringert und die Flexibilität gesteigert werden.
