Also habe ich ein Klassendiagramm nach der Zuordnung erstellt, ist das der richtige Weg? Ich bin besonders unsicher über die Column class
, weil es mir scheint, dass es nur variabel sein kann.Klassendiagramm für Anzeigensystem
Sie bauen Anwendung, die Daten aus mehreren verschiedenen Werbesysteme und dann speichern Sie die Daten in die Datenbank geladen werden, so wird es möglich sein, sie zu analysieren.
Sie müssen im Auge nehmen, dass jedes Werbesystem unterschiedliche Struktur des Berichts hat: Verschiedenen benannten Spalten, andere Reihenfolge der Spalten, unterschiedliche Datumsformate Auch die Daten von Anzeigensystemen sind in unterschiedlichen Datenformaten (JSON, CSV, XML),
Berichte von jedem System unterschiedliche Menge an Spalten enthält, unsere Anwendung nur in einigen von ihnen interessiert ist: Datum, ad_campaing, AD_GROUP, Stichwort, Eindrücke, Preis (in jedem System, das sie haben anderen Namen)
Logik von Werbekonten besteht darin, dass eine Anzeigenkampagne mehrere Anzeigengruppen enthält und eine Anzeigengruppe mehrere Keywords enthält.
Was für ein Klassendiagramm soll man machen? Ein Domänenmodell (Beschreibung der Entitäten in der Problemdomäne), ein konzeptionelles Modell der Lösung (im Hinblick auf die Konzepte, die die Benutzer kennen müssen), ein Modell der Software (die Klassen, die im Quellcode definiert sind), ein Modell der Zieldatenbank ....? –
Nun, ich sollte objektorientiertes Design machen, das ist einfach zu lesen, und jedes Mal, wenn ich meine Frage mit Code und Fragen dazu gepostet habe, wurde es ignoriert/downvoted. Also ich denke, es ist genug, wenn ich zumindest weiß, ob die Struktur der Anwendung in diesem Diagramm gut ist. Ein objektorientiertes Design daraus zu machen, sollte nur darin bestehen, es in Code umzuwandeln, wenn ich mich nicht irre. – rtom
OK, ich nehme an, dass Sie ein Design-Modell der Software machen müssen. Ich gehe davon aus, dass die Zielsprache eine OO-Sprache wie Java oder C# ist. Ich denke, Sie müssen eine generische Schnittstelle für einen Bericht und eine Adapterklasse für jeden spezifischen Berichtstyp entwerfen. Jede Adapterklasse implementiert die generische Schnittstelle, um den jeweiligen Berichtstyp zu laden. –