| |
![zurück](../images/b_zurueck.gif)
VB.NET - FortgeschritteneAufbau BusinessLayer | | ![](../images/trans.gif) | Autor: SVisor | Datum: 04.08.12 11:24 |
| Hallo User
Ich arbeite mich gerade im Bereich der Softwarearchitektur ein wenig tiefer in die Materie ein. Dabei habe ich eine Beispielapplikation erstellt, welche die klassischen Layer enthält.
- UI-Layer (WPF, MVVM)
- WCF-Service
- Business-Layer
- Data-Layer (EF mit POCO‘s, Repositories)
Aktuell bin ich bei der der Gestaltung des Business-Layers angekommen. Was der Business-Layer macht, bzw. tun soll ist mir klar. Mir ist jedoch unklar, wie ich diesen Layer aufbauen soll. Bis jetzt ist der Layer so aufgebaut, dass in diesem einzelne Komponenten vorhanden sind.
Diese heissen zum Beispiel „Bestellung“, „Buchhaltung“, „Rechnung“ und „Dokumente“. Innerhalb dieser Komponenten werden spezifische Methoden/Funktionen zur Verfügung gestellt. Vereinfachte
Beispiele:
- Bestellung: „SetBillingAddress“, „SetDeliveryAddress“, „AddArticle“, „ChangeStatus“
- Buchhaltung: „CreateBookingStatement“
- Rechnung: „CreateCustomerInvoice“, „CancelInvoice“
- Dokumente: „AddDocument“, „RemoveDocument“
Soweit so gut. Der Bestellprozess stellt sich vereinfacht wie folgt dar:
--> Bestellung erfassen --> Bestellung ausliefern --> Rechnung erstellen --> Bestellung abschliessen
Beim Prozessschritt „Bestellung erfassen“ muss jeweils die Rechnungsadresse („SetBillingAddress“), die Lieferadresse („SetDeliveryAddress“) gesetzt und der Status geändert („ChangeStatus“) werden. Dies kann mit der Komponente „Bestellung“ erledigt werden. Zusätzlich muss jedoch noch ein Dokument („AddDocument“), eine Bestellbestätigung, erstellt und der Bestellung im System angehängt werden. Beim Erstellen einer Rechnung („CreateCustomerInvoice“) in der Komponente „Rechnung“, müssen Buchungen („CreateBookingStatement“) sowie weitere Dokumente („AddDocument“) erstellt werden.
Im Moment ist die Implementierung so gestaltet, dass die Komponente „Bestellung“ auch die Komponente „Dokumente“ aufruft. Dasselbe bei der Komponente „Rechnung“ welche die Komponenten „Buchhaltung“ und „Dokumente“ aufruft. Im Laufe der Zeit entstehen so unzählige Querverbindungen zwischen den einzelnen Komponenten. Dadurch wird aus meiner Sicht die Wartbarkeit und die Weiterentwicklung immer weiter eingeschränkt.
Meine Frage ist nun:
Wie kann ich solche Abhängigkeiten zwischen den einzelnen Komponenten vereinfachen/auflösen? Soll da ein darüber liegender Layer erstellt werden, welche die einzelnen Komponenten „orchestriert“? Wäre dies eine Facade?
Besten Dank für euere Tipps und Tricks!
SVisor | ![](../images/trans.gif) |
![](../images/48x48/info.gif) | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
![nach oben](../images/b_top.gif) ![zurück](../images/b_zurueck.gif) |
|
sevISDN 1.0 ![sevISDN f?r VB/VBA und VB.NET](../images/werbung/sevisdn_100x116.gif)
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats sevAniGif (VB/VBA) ![sevAniGif für VB/VBA](../images/werbung/sevanigif_100x100.jpg)
Anzeigen von animierten GIF-Dateien
Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|