Computer Monitoring System for EE Faculty By Yaroslav Ross And Denis Zakrevsky Supervisor: Viktor Kulikov.

Slides:



Advertisements
Similar presentations
Final Presentation WINTER 2009 – SUMMER 2009 PRESENTED BY: George Kour Hany Danial SUPERVISOR: Victor Kulikov Networked Software Systems Laboratory DEPARTMENT.
Advertisements

OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Final Presentation WINTER 2009 – SUMMER 2009 PRESENTED BY: George Kour Hany Danial SUPERVISOR: Victor Kulikov Networked Software Systems Laboratory DEPARTMENT.
Toolbox Mirror -Overview Effective Distributed Learning.
Website For Traveling! by : Hammad Abed, Rabie Loulou Supervisor : Viktor Kulikov Spring 2009 The Faculty of Electrical Engineering - Softlab.
SoftLab Project Winter 2008 Supervisor: Victor Kulikov Students: Dmitry Kanevsky Nir Lev-Ari.
Lab Chief Eng.Ilana David Supervisor:Viktor Kulikov Submitters: Darina Klots Shallev Kellerman.
2 Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how statecharts can be used to describe system behaviors  Use statecharts.
Introduction To System Analysis and Design
1 Chapter 12 Working With Access 2000 on the Internet.
Chapter 12: ADO.NET and ASP.NET Programming with Microsoft Visual Basic.NET, Second Edition.
INTRANET SECURITY Catherine Alexis CMPT 585 Computer and Data Security Dr Stefan Robila.
EE-Video Yossi Biton Nir Yakobovski Outline  The concept  Main functionality  Challenges & Solutions  Design considerations Layers Class diagram.
Collaborative Picture Gallery Project Presentation Amos Hersch Aviad Barzilai Supervisor Maxim Gurevitch Lab Chief Eng. Ilana David.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
Online Magazine Bryan Ng. Goal of the Project Product Dynamic Content Easy Administration Development Layered Architecture Object Oriented Adaptive to.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
EE-Video Yossi Biton Nir Yakobovski Outline  The concept  Main functionality  Challenges & Solutions  Design considerations Layers Class diagram.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Use Case Analysis – continued
On-Line Video Store Vitaly Panor Tal Joffe September, 2009 Project Supervisor: Victor Kulikov VTVS.
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
PHASE 3: SYSTEMS DESIGN Chapter 7 Data Design.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Supervisor: Victor Kulikov Oded Duek Aviv Grinblat Final presentation Spring 2010.
Systems Analysis and Design in a Changing World, Fifth Edition
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Web Application Architecture and Communication. Displaying a Web page in a Browser
Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
Lecture 7 Interaction. Topics Implementing data flows An internet solution Transactions in MySQL 4-tier systems – business rule/presentation separation.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
Web application project Advertising board web site Created by : Alon Nagar Supervisor:Victor Kulikov.
ADO.NET A2 Teacher Up skilling LECTURE 3. What’s to come today? ADO.NET What is ADO.NET? ADO.NET Objects SqlConnection SqlCommand SqlDataReader DataSet.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 23 How Web Host Servers Work.
Database Application Security Models Database Application Security Models 1.
1 Accelerated Web Development Course JavaScript and Client side programming Day 2 Rich Roth On The Net
12 Systems Analysis and Design in a Changing World, Fifth Edition.
National Center for Supercomputing Applications NCSA OPIE Presentation November 2000.
StockWatch Developers: Nimrod Hagay Hagai Barkan Supervisors: Assaf Solomovitch Viktor Kulikov June 2009.
Network Monitor Final presentation Project in systems programming, Winter 2008 Students : Vitaly Zakharenko & Alex Tikh Supervisor : Isask'har (Zigi) Walter.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
NET-AUCTION This online auction project Directed by: Mr. Maxim Gurevich Submitted by: Yuri Kipnis Alex Scheotkin Alex Scheotkin.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
Amir Bishara and Dorin Danial Supervisors: Roiy Zysman Dr. Ilana David.
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Status Report Presentation Industry Mentor:
Chapter 11 Working with Credit Card Methods of Processing Credit Cards Preparing for Cyber Cash Authoring a Credit card Transaction.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
Database Management Systems (DBMS)
SOFTWARE SYSTEM LABORATORY 1 COMPUTERED GRADUATION FORM Performers: Ofir Medlinsky Ahmad Hamdan Instructor: Victor Kulikov GF.
WEB SERVER SOFTWARE FEATURE SETS
CSC 2720 Building Web Applications Basic Frameworks for Building Dynamic Web Sites / Web Applications.
CSC 405: Web Application Engineering II8.1 Web programming using PHP What have we learnt? What have we learnt? Underlying technologies of database supported.
Expense Tracking System Developed by: Ardhita Maharindra Muskan Regmi Nir Gurung Sudeep Karki Tikaprem Gurung Date: December 05 th, 2008.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
Server Concepts Dr. Charles W. Kann.
Database Driven Websites
Teaching slides Chapter 8.
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Outline Chapter 2 (cont) OS Design OS structure
Database Management Systems
Web Servers (IIS and Apache)
Software Development Process Using UML Recap
Presentation transcript:

Computer Monitoring System for EE Faculty By Yaroslav Ross And Denis Zakrevsky Supervisor: Viktor Kulikov

Presentation contents General System Design Website Monitor service Design patterns Possible improvements and questions

Project Goals To create computer monitoring system. To use different web and windows OS technologies. To experience in software systems and database design. To experience in software systems and database design.

Technologies Used MS.NET 2.0 ASP.NET 2.0 ADO.NET 2.0 MS SQL 2005 HTML Java Script

CMS (Computers Monitor System) General. The purpose of the system is to avoid PCs "disappearing" on EE faculty. It gives possibility to insert and store information about faculty computers, system users and other management information and checks computers state ( monitoring ) every period of time.

CMS (Computers Monitor System) General. The CMS contains three major sub systems: 1) Web Site. 2) Service. 3) Data Base.

System Design

Use Cases A use case defines a goal-oriented set of interactions between external actors and the system under consideration. Actors are parties outside the system that interact with the system. An actor may be a class of users, roles users can play, or other systems

Use Cases

Web site All user interface (settings, data changes and data view) of CMS is done using the web site. The web site consists of three layers: - Presentation layer. - Business logic layer. - Data access layer.

Web site layers

Presentation Layer (User Interface): - Web controls ( reuse ), all logic implemented in C# classes, which inherits from System.Web.UI.UserControl.Net class. - Web pages (master page based, CSS used to avoid duplication, Java script used for custom controls), all logic implemented in C# classes, which inherits from System.Web.UI.Page.Net class.

Web site layers

Business logic layer- Business Logic Layer (BLL) serves as an intermediary for data exchange between the presentation layer and the DAL. In "real world" application this layer can contain large functionality like: security constraints for data based on user permissions, data operations and other business logic. In CMS the main functionality of BLL is to transfer data from Presentation Layer to DAL. Small amount of logic and some minor data operations. This layer created mostly as contribution to right design of such application and it makes easier future application development and improvement. The number of classes in BLL is as a number of logic entities in the system. These classes are presented in figure.

Web site layers

Data Access Layer - The MS recommended approach, for right software architecture of Websites is to separate the data access logic from the presentation layer. All code that is related to data source – such as creating a connection to the database, issuing SELECT, INSERT, UPDATE, and DELETE commands, and so on – is located in the DAL. The presentation layer should not contain any references to such data access code, but should instead make calls into the DAL (via BLL in our case) for all data requests. Data Access Layers contains methods for accessing the database data. The DAL is written at C# language and strongly uses ADO.NET (2.0). The MS recommended approach, for right software architecture of Websites is to separate the data access logic from the presentation layer. All code that is related to data source – such as creating a connection to the database, issuing SELECT, INSERT, UPDATE, and DELETE commands, and so on – is located in the DAL. The presentation layer should not contain any references to such data access code, but should instead make calls into the DAL (via BLL in our case) for all data requests. Data Access Layers contains methods for accessing the database data. The DAL is written at C# language and strongly uses ADO.NET (2.0).

Web site layers

BLL&DAL class diagram

Web site layers

Data base Data base implemented on transact SQL using MS SQL server For each table there is a set of stored procedures (SELECT, UPDATE, INSERT, DELETE). The DB is normalized, all tables contain primary keys that used if necessary as secondary key in other tables to prevent data duplicating.

Data base The data base consists of following tables: Users: (set of available users with personal information, password, and permissions). Permissions (set of available users permissions). Computers (set of all available computers with IP, place, name, status). Rooms (set of all available rooms). Buildings (Set of all available buildings). Computer Status (set of available statuses). Connection Look up (set of all ports that will be monitored). PC Connection Status (holds the information of monitoring results for all monitored ports for each computer). Configurations (set of different monitor configurations contains repeat time, mail address etc.).

CMS Database table diagram

Monitor service The Monitor Service is part of CMS project that responsible of scheduled faculty PCs monitoring. It is implemented as Windows Service and need to be installed, on server. The service created using ADO.NET on C# language. Monitor contains dataset (DAL), based on ADO.NET, all data manipulations done through it. The dataset contains strongly-typed data tables and table adapters, which call the store procedures from database, and transfer\receive data.

Monitor service The service activity depends on timer control that invokes monitor run every period of time (this period of timed stored in database and can be changed via the website). The monitor checks all existing PCs in database, which should be online, sends pings and tries to create socket connections on different ports that defined in system settings. If none of connections is successful, mail about such PC sent to system administrator ( address must be defined in system settings via website). The mail sending procedure is quite "expensive" in time concept, and not depends on the monitoring itself, so this is done in separate thread, using multithreading mechanism that.Net provides. Test application is also added to monitor, in order to run application without installation. The test application implemented as Windows Form, which invokes the timer\monitor

Monitor Dataset

Monitor class diagram

Design Patterns Design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern is not a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations.

Design Patterns Singleton (Creational pattern): The singleton pattern is implemented by creating a class with a method that creates a new instance of the class if one does not exist. If an instance already exists, it simply returns a reference to that object. The singleton pattern is implemented by creating a class with a method that creates a new instance of the class if one does not exist. If an instance already exists, it simply returns a reference to that object.

Singleton in the project Class MonitorUtils (Lazy Initialization) Table adapters in BLL ADO.NET connection to SQL database is built as singleton

Design Patterns Observer (behavioral pattern): The observer pattern is a design pattern used in computer programming to observe the state of an object in a program. This pattern is mainly used to implement a distributed event handling system. The essence of this pattern is that one or more objects (called observers or listeners) are registered (or register themselves) to observe an event which may be raised by the observed object (the subject). (The object which may raise an event generally maintains a collection of the observers.) The observer pattern is a design pattern used in computer programming to observe the state of an object in a program. This pattern is mainly used to implement a distributed event handling system. The essence of this pattern is that one or more objects (called observers or listeners) are registered (or register themselves) to observe an event which may be raised by the observed object (the subject). (The object which may raise an event generally maintains a collection of the observers.)

Observer pattern UML diagram

Observer in the project Timer in Monitor service (easy to show). Built in for many web controls and pages (buttons, combo boxes and etc).

Observer in the project

Possible improvements Multithreading can be used in monitor in order to improve performance. The system can inform the administrator not only by , but also by SMS. AJAX technology can be used to improve site performance. Using ASP.NET membership to receive a built in way for validating and storing user credentials.

Questions?