Code Contracts für Windows Communication Foundation (WCF
Transcrição
Code Contracts für Windows Communication Foundation (WCF
Code Contracts für Windows Communication Foundation (WCF) – Semesterprojekt – Betreuer: Prof. Dr. Bernhard Hollunder, Hochschule Furtwangen Teamgröße: 2 - 3 Studenten Termin: Wintersemester 2010/11 Inhalt: Mit Code Contracts [1] können für .NET Klassen und Methoden erweiterte Schnittstellenverträge in Form von Vorbedingungen, Nachbedingungen und Invarianten spezifiziert werden. Dies ermöglicht die explizite Beschreibung von System- und Objektzuständen, die zur Laufzeit eingehalten werden sollen. Neben einer (dynamischen) Überprüfung der Verträge zur Laufzeit bieten Code Contracts auch eine statische Auswertung an, d.h. bestimmte Kategorien von Schnittstellenverletzungen können bereits zur Compile-Zeit erkannt werden. Windows Communication Foundation (WCF) [2] ist ebenfalls eine .NET Technologie und ermöglicht die Erstellung von verteilten, dienste-orientierten Systemen. WCF unterstützt verschiedene Kommunikationsarten und -protokolle wie zum Beispiel Web Services. Derzeit ist es nicht möglich, beide Technologien zu kombinieren. In anderen Worten: bei einer WCF Anwendung werden die Code Contracts Anweisungen schlichtweg ignoriert. In [3] wird ein Ansatz beschrieben, wie dieses Manko behoben werden kann. Im Rahmen des Semesterprojektes soll dieser Ansatz praktisch umgesetzt werden. Hierzu ist es erforderlich, sich zunächst näher mit Code Contracts, WCF und Visual Studio auseinanderzusetzen. Nachfolgend soll das in [3] beschriebene Konzept realisiert werden. Voraussetzungen: • • Programmierkenntnisse in C# Interesse sich praktisch mit .NET, Code Contracts, WCF und Visual Studio auseinanderzusetzen. Literatur: [1] Microsoft Corporation: Code contracts user manual (2009). [2] Löwy, J.: Programming WCF Services. O'Reilly (2007). [3] Hollunder, B.: Code Contracts for Windows Communication Foundation (WCF). Proceedings of the Second International Conference on Advanced Service Computing (2010).