Presented By: Erez Rokah Supervisor: Victor Kulikov Erez Goldshide Networked Software Systems Laboratory Department of Electrical Engineering Technion - Israel Institute of Technology Motivation Increasing awareness to the environment Increasing cost of printing paper and toner The need to manage lab resources Project Goals Automatic management of printing requests (jobs) as a Service for Windows Server 2008 Integration with Active Directory Defining printing quotas for users Ability to log and track printing requests Getting familiar with .Net developing environment Implementing OOP principles Requirements Analysis Scope and Audience System Administrators Experienced Users Scenarios analysis Deriving requirements and priorities Technology Overview Microsoft Visual Studio .Net 2008 C# programming language Active Directory System.Printing XML Multi-threaded design Print Manager Service Wait for a new print job to arrive in one of the printing queues User exists in database? No Add user to database with default values Yes User quota permits printing the current print job? Yes Release the print job to the printer and update quota No Delete the print job Class Diagram Database Management New users are added to the database After a time interval (defined in the configuration file) database is checked for consistency with Active Directory Database management is done by a different thread and implement design tools learnt at “Structure of Operation Systems” (046209) Database Tables Global Parameters Table Managed Printers Table Field Type Field Type Property String PrinterName String Value String Built-in properties: DefaultMaxQuota, LDAPDomain, UserCleanUpInterval Users Table Logs Table Field Type Field Type UserName String UserName String UserGUID String UserGUID String UsedQuota Int64 JobName String MaxQuota Int64 NumberOfPages Int PrinterName String JobSubmittedTime DateTime Configuration and Logging Logging is done automatically by the service Configuration is done through a main administration utility Access to the logs is done through the administration utility The administration utility also allows backing up and restoring databases and logs Future Development Adding groups management Adding client side application for service notifications (e.g. quota reached) Literature MSDN Google Thanks For Your Time © Erez & Erez
© Copyright 2025 Paperzz