PMS_-_Final_Presentation - Networked Software Systems

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