Presentation is loading. Please wait.

Presentation is loading. Please wait.

Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.

Similar presentations


Presentation on theme: "Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee."— Presentation transcript:

1 Meir Botner David Ben-David

2 Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.

3 Project Requirement  Support two types of clients (Customer/Provider).  Registration through a web interface.  Enable Customer-Provider sessions  Text messaging communication.  Video/Audio conference system.  Cash transaction between the system users.  Providers ranking system.

4 Technologies  SQL (MSSQL Database + stored procedure)  RPC (.NET Remoting) .NET  ASP.NET  HTML  Java script  C#

5 .NET Framework The.NET Framework is the infrastructure for the new Microsoft.NET Platform. The.NET Framework is the infrastructure for the new Microsoft.NET Platform. A common environment for building, deploying, and running Web Services and Web Applications. A common environment for building, deploying, and running Web Services and Web Applications. The.NET Framework contains common class libraries - like ADO.NET, ASP.NET and Windows Forms - to provide advanced standard services that can be integrated into a variety of computer systems. The.NET Framework contains common class libraries - like ADO.NET, ASP.NET and Windows Forms - to provide advanced standard services that can be integrated into a variety of computer systems.

6 .NET Framework Cont. Language neutral. Provides simplified development and easy integration between a number of different development languages. Language neutral. Provides simplified development and easy integration between a number of different development languages. Implements the Common Language Infrastructure (CLI) standard with the Common Language Runtime (CLR) virtual machine. The CLR’s just-in-time compiler converts Common Intermediate Language (CIL) code into code native to the operating system Implements the Common Language Infrastructure (CLI) standard with the Common Language Runtime (CLR) virtual machine. The CLR’s just-in-time compiler converts Common Intermediate Language (CIL) code into code native to the operating system

7 .NET Remoting Remote Method Invocation (RPC) Allows an application to make an object available across remote boundaries, processes or even different computers connected by a network. Remote Method Invocation (RPC) Allows an application to make an object available across remote boundaries, processes or even different computers connected by a network. Commercial Messenger Server implements a.NET Remoting object. Commercial Messenger Server implements a.NET Remoting object. Remote service runs in Singleton mode, allowing a stateful communication. Remote service runs in Singleton mode, allowing a stateful communication.

8 C# We have chosen C# as are main programming language We have chosen C# as are main programming language Supported by the.NET Framework CLR Supported by the.NET Framework CLR Object oriented syntax based on C++ Object oriented syntax based on C++ Garbage collection mechanism Garbage collection mechanism C# provides syntactic sugar for a common pattern of a pair of methods, accessor (getter) and mutator (setter) encapsulating operations on a single attribute of a class, in form of properties C# provides syntactic sugar for a common pattern of a pair of methods, accessor (getter) and mutator (setter) encapsulating operations on a single attribute of a class, in form of properties

9 Methodologies Throughout our project, we have widely used design patterns such as: singleton pattern Throughout our project, we have widely used design patterns such as: singleton pattern Event driven programming (EDP) methodology (C# delegates and events) Event driven programming (EDP) methodology (C# delegates and events) We have supplied thread safety through usage of monitors and locks, as well as readers- writers lock mechanism We have supplied thread safety through usage of monitors and locks, as well as readers- writers lock mechanism

10 Web Development ASP.NET ASP.NET Stands for Active Server Pages Stands for Active Server Pages IIS passes browser requests to the ASP engine. The ASP engine reads the ASP file and executes it. The ASP file is returned to the browser as plain HTML IIS passes browser requests to the ASP engine. The ASP engine reads the ASP file and executes it. The ASP file is returned to the browser as plain HTML Access to database. Provides security. Access to database. Provides security. JavaScript is a scripting language widely used for client-side web development. JavaScript is a scripting language widely used for client-side web development. These technologies were used in building up the Commercial Messenger registration site These technologies were used in building up the Commercial Messenger registration site

11 MSSQL Our project’s database is stored on a Microsoft SQL 2005 server. Our project’s database is stored on a Microsoft SQL 2005 server. All database actions are carried out by stored procedures. All database actions are carried out by stored procedures. Stored procedures are ran by the DAL (single access point to the database) Stored procedures are ran by the DAL (single access point to the database)

12 SQL Database Diagram We are using the SQL data base to save all the users personal details and the conversations history.

13 System Architecture

14 System Modules

15 Client Module Implements the client application ran by a single customer or provider in the system. Concentrates the business logic, as well as the graphical user interface (GUI) of the system.

16 Client – Class Diagram The main form is a singleton that functions as the “heart” of the client application.

17 Client – Class Diagram Control classes - Controls the user contact list, status voice & audio and conversation charge.

18 Client – Class Diagram All the dialog are activated from the main form and are used to update and set the user details (balance, password, contact list ……)

19 DAL Module The data access layer of the system. The DAL is implemented as a singleton, providing access to data stored in the system’s database server. It intermediates between the common data classes of the system and a dataset of strongly typed table adapters and tables.

20 DAL-Class Diagram The data access layer implement all the function that the upper levels needs to communicate with the data base to get and update data.

21 Data Module Exposes common interfaces and classes, used by all the system’s modules

22 Data – Class Diagram We use this classes & interface in all the other modules

23 Server Module The Commercial Messenger Server implements the business logic layer, intermediating between the DAL and the clients of the system. It is implemented with.NET Remoting (RPC) and concentrates the entire functionality of the system in a thread safe manner.

24 Server – Class Diagram The server module have all the function that the client need for interaction with the lower levels and also classes for holding an active sessions.


Download ppt "Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee."

Similar presentations


Ads by Google