Meine Situation:Method-Level-Dokumentation in n-Tier-Anwendungen
Die Datenanforderung Kette meiner Anwendung sieht wie folgt aus:
(Client) -> (WebService) -> (SQL or OLAP Cube)
Der Client ist eine Silverlight-Anwendung, die eine generierte Proxy verwendet zu kommunizieren mit einem WCF Webservice. Die wiederum Autorisierung und Zugriff auf SQL-DBs und OLAP-Cubes mit einer DAL-Komponente, im Grunde leitet es nur die Anforderungen. Daher besteht jede Methode an vier verschiedenen Orten:
// WCF Webservice interface and implementation (used by client)
public interface ICatalogService
public class CatalogService : ICatalogService
// DAL interface and implementation (used by webservice)
public interface ICatalogDataAccessLayer
public class CatalogDataAccessLayer : ICatalogDataAccessLayer
Nun meine Frage, wo soll ich Dokumentation klar gestellt, um diese Methoden angeben? Auf Klassen- oder Schnittstellenebene, auf der DAL oder auf dem Webservice?
Meine Gedanken so weit:
Ich würde sagen, dass es am sinnvollsten ist die Methode Daten auf der Schnittstelle zu schreiben, denn es ist der Vertrag, der verbraucht wird. Allerdings habe ich nicht einen Vorteil zwischen webservice und DAL in meiner besonderen Situation sehen:
- Ich bin der einzige Entwickler, gibt es keine separaten Webservice-Typ oder Client-Typ, der die Dokumentation benötigt
- Dies ist ein geschlossene Architektur, die WebService nicht öffentlich ist
- Jeder an diesem Projekt in der Zukunft arbeiten, Zugang zu allen Komponenten davon haben werden (und wird die Dokumentation finden, wo immer sie sind)
Also, was tun Sie Denk darüber nach? Wo sollte ich Dokumentation auf Methodenebene in diesem Fall platzieren?