Project Title: WEBMAIL: Web Based Email System
Project Title: WEBMAIL: Web Based Email System
o Drafts, o Address Book o User friendly that user can access information on a single click..
CHAPTER 2 INTRODUCTION
Web Based E-mail System or Webmail is a service which allows users to access their email using a Web browser, so that it is accessible from any Internetconnected system anywhere in the world. What differentiates Webmail from a normal PC-based email system such as Microsoft Outlook is that you can access your mail on any PC that is connected to the internet. Some of the desirable traits of a mail system are: Centralized storage. Users should see the same email history every time they check email, no matter which computer or email reader they happen to be using. Reliability. Email is important. A disk failure or a negligent sysadmin should not be a cause for losing it. The mail server should always be running, and well-connected to the internet. Availability. Email should be readable wherever you are. Completeness and correctness. An email reader should be able to receive, display, and send attachments. Any message it sends should be standards-conforming. Because many other systems are not, it should be able to handle common deviations from the standard.
In examining technical feasibility, configuration of the system is given more importance than the actual make of hardware. The configuration should give the complete picture about the systems requirement.
management of supply chain. It can be analyzed that the cost of proposed system is much less than the benefits that can be derived from it. So we can accept it to be economically feasible.
Reliable System There are two level of reliability. The first is meeting the right requirements. A careful and through systems study is needed to satisfy the aspect of reliability. The second level of systems reliability involves the actual working delivered to the user. At this level, the systems reliability is interwoven with software engineering and development. There are three approaches to reliability. Error avoidance: Prevents errors from occurring in software. Error detection and correction: In this approach errors are recognized whenever they are encountered and correcting the error by effect of error, of the system does not fail. Error tolerance: In this approach errors are recognized whenever they occur, but enables the system to keep running through degrades perform or by applying values that instruct the system to continue process. Maintenance The key to reducing need for maintenance, while working, if possible to do essential tasks 1. More accurately defining user requirement during system development. 2. Assembling better systems documentation. 3. Using more effective methods for designing, processing, and login and communication information with project team members. 4. Making system engineering process effectively.
INTRODUCTION
Web Based E-mail System or Webmail is a service which allows users to access their emails using a Web browser, so that it is accessible from any Internetconnected system anywhere in the world.
6. 7. 8.
Storing the sent mails in Database, also storing the attachment on Mails can be saved and attachments can be stored in Database on Adding new contacts and showing contact list under
the web server. And showing the list of sent mail in SENTMAIL. web server as draft in DRAFTS without sending them. ADDRESSBOOK.
be a cause for losing it. The mail server should always be running, and well-connected to the internet. Hence must conform to a certain level of reliability. 3. Email should be readable wherever you are. Hence must conform
Software Requirements:
Operating System Front End Web Server Database Server Mail Server : : : : : Windows NT | 2000| XP Visual Studio.Net 2008 IIS (Internet Information Server) SQL Server (Express Edition) EmailArchitect Email Server
Microsoft Visual Studio 2008(.NET Framework 3.5) ASP.NET Platform SQL Server 2005 EmailArchitect Email Server Web Based Email System 11
6.5.1 ABOUT MICROSOFT .NET .NET is Microsofts vision of Software as a service , a development environment in which you can build, create and deploy your applications and the next generation of components, the ability to use the Web rather than your own computer for various services. Microsoft introduced great technologies like COM, DCOM, and COM+ etc. to enable reuse of Software. Although these technologies are very powerful to reuse Software, they required a huge learning curve. According to this aspect, Microsoft realized that its time to come up with a new Technology, a better one, an easier one, a new Framework, within which each Programming Task is easy accomplished. Components of .NET Framework: The .NET Framework consists of Web Forms, Windows Forms and Console applications that pertains the presentation layer of an application Web Forms are used in Web-Based applications whereas Windows Forms are used in Windows based applications for providing an interactive user interface. Some of the advantages offered by the .NET Framework are: 1. Consistent programming model 2. Multi-platform applications 3. Multi-language integration 4. Automatic resource management 5. Ease of deployment The .NET Framework is a managed, type-safe environment for application development and execution. The framework manages all aspects of the execution of your program: it allocates memory for the storage of data and Web Based Email System 12
instructions, grants or denies the appropriate permissions to your application, initiates and manages application execution, and manages the reallocation of memory for resources that are no longer needed. The .NET Framework consists of two main components; the common language runtime and the .NET Framework class library. The common language runtime can be thought of as the environment that manages code execution. It provides core services, such as code compilation, memory allocation, thread management, and garbage collection. Through the common type system (CTS), it enforces strict type safety, and it ensures that code is executed in a safe environment by enforcing code access security. The .NET Framework class library provides a collection of useful and reusable types that are designed to integrate with the common language runtime. The types provided by the .NET Framework are object-oriented and fully extensible, and allow you to seamlessly integrate your applications with the .NET Framework.
6.5.2 ASP .NET ASP.NET is the platform that you use to create Web applications and Web services that run under IIS. ASP.NET is not the only way to create a Web application. Other technologies, notably the CGI, also enable you to create Web applications. What makes ASP.NET special is how tightly it is integrated with the Microsoft server, programming, data access, and security tools. ASP.NET provides a high level of consistency across Web application development, in a way, it is similar to the level of consistency that Microsoft Office brought to desktop applications. ASP.NET is part of the .NET Framework and is made up of several different components. Web Based Email System 13
Advantages of ASP.NET ASP.NET has many advantages over other platforms when it comes to creating Web applications. Probably the most significant advantage is its integration with the Windows server and programming tools. Web applications created with ASP.NET are easier to create, debug, and deploy because those tasks can all be performed within a single development environmentVisual Studio .NET. ASP.NET delivers the following other advantages to Web application developers: Executable portions of a Web application compiled so they execute more quickly than interpreted scripts On-the-fly updates of deployed Web applications without restarting the server Access to the .NET Framework, which extends the Windows API Use of the widely known Visual Basic programming language, which has been enhanced to fully support object-oriented programming Automatic state management for controls on a Web page (called server controls) so that they behave much more like Windows controls The ability to create new, customized server controls from existing controls Built-in security through the Windows server or through other
authentication/authorization methods Integration with Microsoft ADO, NET to provide database access and database design tools from within Visual Studio .NET Web Based Email System 14
Full support for Extensible Markup Language (XML), cascading style sheets (CSS), and other new and established Web standards Built-in features for caching frequently requested Web pages on the server, localizing content for specific languages and cultures, and detecting browser capabilities.
6.5.3 SQL SERVER 2005 Microsoft SQL Server is based on Client/ Server Architecture. It is designed to work effectively in a number of environments: As a two tier or multi tier client/server database system. As a desktop database system. Client/Server Database Systems Client/server systems are constructed so that the database can reside on a central computer, known as a server, and be shared among several users. Users access the server through a client or server application: In a two tier client/server system, users run an application on their local computer, known as a client that connects over a network to the server running SQL Server. The client application runs both business logic and the code to display output to the user, and is also known as a thick client. In a multi tier client/server system, the client application logic runs at two locations: The thin client is run on the user's local computer and is focused on displaying results to the user.
15
The business logic is located in server application running on a server. Thin clients request functions from the server application, which is itself a multithreaded application capable of working with many concurrent users. The server application is the one that opens connections to the database server and can be running on the same server as the database, or it can connect across the network to a separate server operating as a database server. Database Architecture Microsoft SQL Server data is stored in databases. The data in a database is organized into the logical components visible to users. A database is also physically implemented as two or more files on disk. When using a database, you work primarily with the logical components such as tables, views, procedures, and users. The physical implementation of files is largely transparent. Typically only the database administrator needs to work with physical implementation. Server Architecture The server is the Microsoft SQL Server components that receives SQL statements from clients and perform all the actions necessary to complete the statements. The component that make up the SQL server: How the server compiles each batch of SQL statements into an execution plan that tells the server how to process the statement. How the server manages Microsoft windows resources such as memory, threads and tasks. How the server determines which part of a distributed query references a linked server and what request to transmit to the server to obtain the needed data. Web Based Email System 16
How the server transmits remote stored procedure call to remote server. How the server manages concurrency and transaction issues. How the server implements server cursors. How the server implements server cursors. Administration Architecture
Each version of Microsoft SQL Server seeks to automate or eliminate some of the repetitive work done by the database administrators in earlier versions of SQL Server. Because database administrators are typically among the people most highly trained in database issues at each site, this frees a valuable resource to spend more time working on database design and application data access issues.
6.5.4 EmailArchitect Email Server It is a Windows based Email Server. It is a full featured and high performance smtp, pop3 and imap4 components for professional developers with full support, assistance and professional guidance. All of components are completely suitable for Visual Basic, VBA, ASP, Visual C++, CSharp, VB.NET, JScript.NET, ASP.NET or other programming languages which support COM. SMTP component allows developers to deliver required reliability and functionality email applications in C#, VB.NET, JScript.NET, ASP.NET or other .NET framework more easily. POP3 & IMAP4 component allows developers to deliver required reliability and functionality email applications in C#, VB.NET, JScript.NET, ASP.NET or other .NET framework more easily.
17
Admin
User
WEBMAIL
Check mails
Send mails
Contact list
18
Admin
User
_______ LOGIN
Drafts
M. Send
POP3 Server
SMTP Server
List of mails
19
_Login db_
Admin
Verification
Menu Selection
User
20
USER
Compose mail
Mail db
Attachment db
21
USER
Inbox
Mail db
Open mail
Reply mail
Forward mail
SMTP server
Attachment db
USER
Forward mail
SMTP server
23
USER
Forward mail
SMTP server
24
USER
Address book
Contact list
Add Contact
Contacts db
25
USER
Admin Setting
Change Setting
Administrator db
26
USER
User Setting
Change Password
Login db
27
7.2
E-R Diagrams:
USERID LOGIN
NAME
PASSWORD
USER_ MAIL
LAST_NAME
MAILDB
MAIL_ATT ACH
ATTACH MENT
CID
USERID
CONTACTS
NAME
LAST NAME
DOMAIN
HOST
ADMINISTRATOR
SMTP_PORT
POP_PORT
29
7.3
30
7.4
USECASE DIAGRAM
31
7.5
ACTIVITY DIAGRAM
7.5.1 Registration
32
7.5.2 Login
33
34
35
7.6
BLOCK DIAGRAM
Login Form
Authentication
Registration
Close
New User
Exit
36
7.7
MODULE DESCRIPTION
7.7.1 Login
This module deals with the authentication of the user. If the userID and Password is correct, then user is allowed to log into the system .
7.7.2 Logout
In this module the current user session is expired. And then page is redirected to Login page.
7.7.3 Registration
A user has to register itself before using this system. So new user must have to fill some information and thus create its userID to get authentication to access the Webmail.
a list of mails.
38
7.8
DATA DICTIONARY
SQL Server 2005 used as back end in this project. The tables are as follow:
Figure 7.19 Login table Description: This table is used to contain the user details for login and access the system.
39
7.9
Administrator Table
Description: This table contains the Network Credentials required to log into and access the mail server.
40
Figure 7.21 Maildb table Description: This table contains the details of the received, saved and sent mails.
41
Figure 7.22 Attachments Table Description: This table contains the details of attachments of the received,
42
Figure 7.23 Contacts Table Description: This table contains the details of the contacts added in the Address Book.
43
44
8.8 Sentmail.aspx This form populates all the sent mails. 8.9 Drafts.aspx This form populates all the mails saved as drafts. 8.10 Addressbook.aspx This form lists all the contacts of the user. 8.11 Add_contacts.aspx This form allows user to add new contact. 8.12 Open_mail.aspx This form allows user to view the mail details. 8.13 Forward_mail.aspx This form allows user to forward a mail further from Inbox, Sentmail and Drafts. 8.14 Adm.aspx This form shows the Network Credentials. 8.15 Change_setting.aspx This form allows admin to reset the Network Credentials. 8.16 User_setting.aspx This form allows user to change its Password. 8.17 Logout.aspx This form expires the current users session. Web Based Email System 45
when components were exposed to very high transaction volumes. EXECUTION TEST This program was successfully loaded and executed. Because of good programming there were no execution errors. OUTPUT TEST The successfully output screens are placed in the output screens section.
47
48
10.2 REGISTRATION
49
50
10.4 INBOX
51
10.5 SENTMAIL
52
10.6 DRAFTS
53
54
55
56
57
58
59
60
61
CHAPTER 11 CONCLUSION
Webmail allows users to access their email using a Web browser. Users can access its mails from any Internet connected system from anywhere in the world. It is easy to use, since it uses the GUI. User friendly screens are provided. It can be easily and efficiently employed as a web based Email system. User can compose, send, receive and save mails in a very easy way. User can easily reply and forward mails. It has been thoroughly tested and implemented. Internet based application.
62
63
BIBLIOGRAPHY
Books ASP.NET 3.5 Using C# By CMC Ltd. Database System Concepts By Korth (McGRAW HILL Publication) System Analysis and Design By E.M. Awad (Galgotia Publication) An Integrated Approach to Software Engineering By Pankaj Jalote URL www.wikipedia.com
64