You are on page 1of 48

1.

ABSTRACT

PROJECT ANALYSIS

2. PROJECT ANALYSIS
Project analysis is done based upon the criteria given in the following model.

2.1 EXISTING SYSTEM: Features and Limitations: In this corporate world an individual works for different organizations at different shift timings. The shift timings of the employers of an organization make it difficult for the employers to communicate with other employers. The work output is based upon the employee individual ability which may not be consistent and effective due to lack of team work. The employee who joins the organization can create an account in the organizational site and work on it even after their working span in the organization. Due to which there is a possibility of lack of Security for the organizational confidential data. The administrator will only be able to restrict the access of non organizational individuals.

2.2 PROPOSED SYSTEM: Objectives of Proposed System: Builds an Intranet Mailing System that enhances communications among the members of the organization in a reliable, cost-effective and secure way. It allows communication between the staff of the organization through Intranet mailing system in spite of their shift timings. It provides the administrator the authority to provide access only to the current working staff of the organization. It restricts the account creation of non organizational members directly. It helps the organization to improve the performance of its teams.

2.3 FEASIBILITY STUDY: 3

Feasibility study is conducted once the problem cleared understood. Feasibility study is a high level capsule version of the entire system analysis and design process. The objective is to determine quickly at a minimum expense how to solve a problem is worth solving. The system has been tested for feasibility in the following points: 1. Technical Feasibility. 2. Economical Feasibility. 3. Operational feasibility.

1. Technical Feasibility: The proposed system can be developed using existing technology or not. It is planned to implement the proposed system using ASP.NET with C# and Databases are SQL Server 2008. The organization already possess Windows XP & Windows 7 server with Internet Information Server(IIS) & Data bases. It is evident that the necessary hardware and software are available for development and implementation of the proposed system.

2. Economical Feasibility: It is an evaluation of development cost weighted against the ultimate income or benefit derived from the developed system. Economic justification includes a broad range of concerns that includes cost-benefit analysis, long-term corporate income strategies, cost of resources needed for development. The organization has in place, the required Hardware for implementing the proposed system. The organization has already the effective LAN settings and host servers so it need not invest newly for the Intranet connection. So the organization need not incur any additional expenditure. 4

3. Operational Feasibility: This test of feasibility asks if the system will work with least difficulties when it is developed and installed. The technical staff has sufficient knowledge of the tools being used and the users need just to know how to access and browse the site.

SYSTEM SPECIFICATIONS

3. SYSTEM SPECIFICATIONS

HARDWARE & SOFTWARE SPECIFICATIONS:

Software Requirements Front End Business Logic Back End Web Browsers IDE

Technology Used ASP.NET C#.NET SQL Server 2008 Internet Explorer, Mozilla Firefox Microsoft Visual Studio.NET 2008

Hardware Requirements RAM Hard Disk Processor

Minimum Availability 128MB 20GB PIII 500MHZ

SYSTEM ANALYSIS

4. SYSTEM ANALYSIS

4.1 PURPOSE OF PROJECT: The main objective of the project is to develop a fully functional Intranet Mailing System that enhances communications among the members of the organization in a reliable, cost-effective and secure way. Thus it helps the organization to improve the performance of its teams in the corporate sector. This system design provides the following facilities to the users: Like send mail, composing a mail, checking inbox in a secure way. In the same manner the system provides authority to administrator to add and delete users.

According to Roger Pressman in Software Engineering: the requirement specification document is produced at the end of analysis of the system. This document is a very comprehensive document & contains all the User Requirements & Analysis diagrams. The requirements are broadly divided into two groups: 1. Functional Requirements. 2. Non-Functional Requirements. 4.2 FUNCTIONAL REQUIREMENTS: The main purpose of functional requirements within the requirement specification document is to define all the activities or operations that take place in the system. These are derived through interactions with the users of the system. Modules: 1. Admin 2. User

1. Admin: Administrator is the one who manages the entire database of the organization. He provides user friendly environment to the various users. He manages database of the present working employers of the organization. He manages the database such that only the individuals working in the organization alone can access the Intranet Mailing System and deactivates the accounts of the individuals who are not in the company. Thus, he provides the security of the confidentiality of the organization.

2. User: Users are the employers who work with the Intranet Mailing System of the organization. Only the users who are registered by the administrator alone can work with the site. 9

They are given the UserId and Password of their individual account which allows secure mailing strategy. User can perform the operations of composing a mail, Check Inbox mails, Check Sent mails, and Logout options.

4.3 NON-FUNCTIONAL REQUIREMENTS: Non-functional requirements deal with Analysis, Design & Data Requirements. The analysis and design phase of the system yield Data Flow Diagrams, textual analysis & Data Dictionary. Dta Dictionary consists of process statements showing how data is flowing from starting point to end point. Different technologies are used for better analysis and design of the project.

SYSTEM DESIGN

10

11

5. SYSTEM DESIGN

5.1 ARCHITECTURE DESIGN:

5.2 KERNEL ARCHITECTURE:

5.3 TECHNOLOGIES USED: 12

UML: A model is a simplification of reality. A model provides a blue of the system .Every system may be described from different aspects using different aspects using different models & each model may be structural, emphasizing the organization of a system.

Microsoft Visual Studio 2010: Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft. It can be used to develop console and graphical user interface applications along with Windows Forms applications. Describes new features in Visual Basic language and Code Editor. The features include implicit line continuation, auto-implemented properties, collection initializes, and more Describes new features in the C# language and Code Editor. The features include the dynamic type, named and optional arguments, enhanced Office programmability, and variance. Describes new and revised features in Visual C++. The features include lambda expressions, the revalue reference decelerator, and the auto, decltype, and static assert keywords.

13

5.4 UML DIAGRAMS: UML is a standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. UML stands for Unified Modeling Language. UML is different from the other common programming languages like C++, Java, and COBOL etc. UML is a pictorial language used to make software blue prints. So UML can be described as a general purpose visual modeling language to visualize, specify, construct and document software system. Although UML is generally used to model software systems but it is not limited within this boundary. It is also used to model non software systems as well like process flow in a manufacturing unit etc.

Goals of UML: 14

A picture is worth a thousand words, this absolutely fits while discussing about UML. Object oriented concepts were introduced much earlier than UML. So at that time there were no standard methodologies to organize and consolidate the object oriented development. At that point of time UML came into picture. There are a number of goals for developing UML but the most important is to define some general purpose modeling language which all modelers can use and also it needs to be made simple to understand and use. UML diagrams are not only made for developers but also for business users, common people and anybody interested to understand the system. The system can be a software or non software. So it must be clear that UML is not a development method rather it accompanies with processes to make a successful system. At the conclusion the goal of UML can be defined as a simple modeling mechanism to model all possible practical systems in todays complex environment. Diagrams are the heart of UML. These diagrams are broadly categorized as structural and behavioral diagrams. Structural diagrams are consists of static diagrams like class diagram, object diagram etc. Behavioral diagrams are consists of dynamic diagrams like sequence diagram, collaboration diagram etc. The static and dynamic nature of a system is visualized by using these diagrams. Use Case Diagram: displays the relationship among actors and use cases. Class Diagram: models class structure and contents using design elements such as classes, packages and objects. It also displays relation ships. Sequence Diagram: displays the time sequence of the objects participating in the interaction. This consists of the vertical dimension (time) and horizontal dimension. Collaboration Diagram: plays an interaction organized around the objects and their links to the one another. Numbers are used to show the sequence of messages.

State Diagram: displays the sequences of states that an object of an interaction goes through during its life time in response to received stimuli, together with its responses actions. 15

Activity diagram: displays a special state diagram where most of the states are on states and most of the transactions are triggered by completion of action in the source state. Component Diagram: displays the high level packaged structure of the code itself. Dependencies among components are shown, including source code components, binary code components, and executable components. Some components exist at compile time, at link time, at run times well as at more than one time. Deployment Diagram: displays the configuration of run-time processing elements and the software components, processes, and objects that live on them. Software component instances represent runtime manifestations of code units.

USECASE DIAGRAM: Admin:

User:

16

SEQUENCE DIAGRAM:

17

CLASS DIAGRAM:

COLLABORATION DIAGRAM: 18

COMPONENT DIAGRAM:

DEPLOYMENT DIAGRAM:

19

20

SYSTEM TESTING

21

6. SYSTEM TESTING

Software testing methods are traditionally divided into white box and black-box testing, these two approaches are used to describe the point of view that a test engineer takes when designing test cases.

White-Box Testing: Clear box testing, glass box testing, transparent box testing, or structural testing is a method of testing software that tests internal structures or workings of an application as opposed to its functionality (black-box testing).It can be applied at the unit integration and system levels of the software testing process, it is usually done at the unit level. It can test paths within a unit, paths between units during integration, and between subsystems during a system level test.

Black-Box Testing: It is a method of testing software that tests the functionality of an application as opposed to its internal structures or workings. Specific knowledge of the applications code/internal structure and programming knowledge in general is not required. These tests can be functional or nonfunctional, though usually functional. The test designer selects valid and invalid inputs and determines the correct output. There is no knowledge of the test 0bject's internal structure. This method of test can be applied to all levels of software testing: unit, integration, functional, system and acceptance.

22

TYPES OF TESTING: The various types of testing done on system are: 1. Unit Testing 2. Integration Testing 3. Validation testing 4. Output Testing 5. System Testing 6. Acceptance testing 7. AlphaBeta Testing

UNIT TESTING

MODULE TESTING

Component Testing

SUB-SYSTEM TESING

SYSTEM TESTING

Integration Testing
ACCEPTANCE

User Testing

TESTING

Unit Testing: 23

Unit testing is a method by which individual units of source code are tested to determine if they are tit for use. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual function or procedure. Unit tests are created by programmers or occasionally by white box testers. Each unit is thoroughly tested to check if it might fail in any possible situation. This testing is carried during the programming state itself. At the end of this testing phase each module is found to be having an adverse effect working satisfactorily, as regard to the expected output from the module. Integration Testing: Integration testing (sometimes called Integration and Testing, abbreviated "I&T")is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before system testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing. Validation Testing: After the culmination of the integration testing, the software is completely assembled as a package, interfacing errors have been uncovered a corrected, and a final series of software validation testing began. Here we test if the system functions in a manner that can be reasonably expected by the customer, The system is tested against the system requirement specification. Output Testing: After performing validation testing, the next phase is output testing of the proposed system, since no system can be useful if it does not produce the desired output in the specified format. The output generated or displayed by the system under consideration is tested by asking the user about the format required by them, here, the output format is considered in two ways one is on the screen and other is in the printed form beta testing is carried out by the client, and minor errors that have been discovered by the client are rectified to improve the user friendliness of the system

System Testing:

24

System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic.

Acceptance Testing: Acceptance testing generally involves running a suite of tests on the completed system Each individual test, known as a case, exercises a particular operating condition of the user's environment or feature of the system, and will result in a pass or fail, or Boolean, outcome. A smoke test is used as an acceptance test prior to introducing a build to the main testing process. lt mainly involves planning and execution of functional tests, performance tests and stress tests in order to demonstrate that the implemented system satisfies its requirements.

Alpha and Beta Testing: Alpha testing is simulated or actual operational testing by potential users/customers or an independent test team at the developers' site. Alpha testing is often employed for offthe-shelf software as a form of internal acceptance testing, before the software goes to beta testing. Beta testing comes after alpha testing, Versions of the software, known as beta versions, are released to a limited audience outside of the programming team. The software is released to groups of people so that further testing can ensure the product has few faults or bugs. Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of miniature users.

25

IMPLEMENTATION

26

7. IMPLEMENTATION

SAMPLE CODE: Main Page: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace WebRole1 { public partial class Mail : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnLogin_Click(object sender, EventArgs e) { Response.Redirect("UserLogin.aspx"); } protected void Button1_Click(object sender, EventArgs e) { Response.Redirect("AdminLogin.aspx"); } } }

27

Admin Page: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; using System.IO; namespace WebRole1 { public partial class Admin : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { } protected void btnSubmit_Click(object sender, EventArgs e) { String sqlStmt = "Select * from admin where name='" + txtBoxAdname.Text + "' and password='" + txtBoxAdPwd.Text + "'"; //SqlConnection sqlConn = new SqlConnection("server=localhost;uid=sa;pwd=password;database=master;"); SqlCommand sqlCmd = new SqlCommand(sqlStmt, conn); SqlDataAdapter da = new SqlDataAdapter(sqlCmd); DataSet ds = new DataSet(); da.Fill(ds); //else Label1.Visible = true; if (ds.Tables[0].Rows.Count > 0) { Response.Redirect("admin_console.aspx"); } else Label1.Text = ("username and password does not match"); } protected void btnBack_Click(object sender, EventArgs e) { Response.Redirect("Home.aspx"); } } } AdminLogin Page: 28

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; using System.IO; namespace WebRole1 { public partial class AdminLogin : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { } protected void btnLogin_Click(object sender, EventArgs e) { String sqlStmt = "Select * from admin where username='" + txtBoxUsername.Text + "' and password='" + txtBoxPwd.Text + "'"; SqlCommand sqlCmd = new SqlCommand(sqlStmt, conn); SqlDataAdapter da = new SqlDataAdapter(sqlCmd); DataSet ds = new DataSet(); da.Fill(ds); if (ds.Tables[0].Rows.Count > 0) { Response.Redirect("admin_console.aspx"); } } } }

Admin_Console Page: 29

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; namespace WebRole1 { public partial class admin_console : System.Web.UI.Page { Dbconn conn = new Dbconn(); protected void Page_Load(object sender, EventArgs e) { } public void invisible() { panNewUser.Visible = false; panDel.Visible = false; } protected void btnAddnewUser_Click(object sender, EventArgs e) { conn.sql = "insert into login_data values('" + txtUname.Text + "','" + txtPasswd.Text + "')"; conn.cmd = new SqlCommand(conn.sql, conn.conn); try { conn.conn.Open(); conn.cmd.ExecuteNonQuery(); conn.conn.Close(); panNewUser.Visible = false; Response.Write("User Created"); } catch (Exception ex) { Response.Write(ex.Message); } }

protected void btnDel_Click(object sender, EventArgs e) { invisible(); 30

panDel.Visible = true; } protected void btnCreate_Click(object sender, EventArgs e) { invisible(); panNewUser.Visible = true; } protected void btnDelSave_Click(object sender, EventArgs e) { conn.sql = "delete from login_data where username='" + DropDownList1.SelectedValue + "'"; conn.cmd = new SqlCommand(conn.sql, conn.conn); try { conn.conn.Open(); conn.cmd.ExecuteNonQuery(); conn.conn.Close(); panDel.Visible = false; Response.Write("User Deleted"); } catch (Exception ex) { Response.Write(ex.Message); } } protected void btnOut_Click(object sender, EventArgs e) { Response.Redirect("Mail.aspx"); } } }

UserLogin: using System; using System.Collections.Generic; using System.Linq; using System.Web; 31

using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; using System.IO; namespace WebRole1 { public partial class UserLogin : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { }

protected void btnBACK_Click(object sender, EventArgs e) { Response.Redirect("Mail.aspx"); } protected void Button1_Click1(object sender, EventArgs e) { Session["username"] = Request["txtBoxUserName"]; String sqlStmt = "Select * from login_data where username='" + txtBoxUserName.Text + "' and passwd='" + txtBoxPwd.Text + "'"; SqlCommand sqlCmd = new SqlCommand(sqlStmt, conn); SqlDataAdapter da = new SqlDataAdapter(sqlCmd); DataSet ds = new DataSet(); da.Fill(ds); Label1.Visible = true; if (ds.Tables[0].Rows.Count > 0) { Response.Redirect("UserMainPage.aspx"); } else Label1.Text = ("username and password does not match"); }

protected void btnBack_Click1(object sender, EventArgs e) { Response.Redirect("Mail.aspx"); }

32

} }

UserMainPage: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace WebRole1 { public partial class UserMainPage : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } } }

Compose Page: using System; using System.Collections.Generic; using System.Linq; using System; using System.Collections.Generic; 33

using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; using System.IO; namespace WebRole1 { public partial class Compose : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { } protected void btnSend_Click(object sender, EventArgs e) { if (Session["username"] != null) { string sql = "insert into sendmaildetails values('" + txtBoxTo.Text + "','" + txtBoxSubject.Text + "','" + txtBoxBody.Text+ "','" + Session["username"] + "')"; SqlCommand sqlCmd = new SqlCommand(sql, conn); conn.Open(); sqlCmd.ExecuteNonQuery(); conn.Close(); //btnsend.Text = "RECORDS GOT INSERTED......!"; Response.Redirect("UserMainPage.aspx"); Response.Write("MAIL SENT"); } } } }

Inbox Page: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; 34

using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data; using System.IO; namespace WebRole1 { public partial class Inbox : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { String sqlStmt = "Select subject,body,from_name from sendmaildetails where to_name=('"+Session ["username"]+"')"; //SqlConnection sqlConn = new SqlConnection("server=localhost;uid=sa;pwd=password;database=master;"); SqlCommand sqlCmd = new SqlCommand(sqlStmt, conn); SqlDataAdapter da = new SqlDataAdapter(sqlCmd); DataSet ds = new DataSet(); da.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind(); } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { } } }

Outbox Page: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; 35

using System.Data.SqlClient; using System.Data; using System.IO; namespace WebRole1 { public partial class SentMail : System.Web.UI.Page { SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=webport"); protected void Page_Load(object sender, EventArgs e) { String sqlStmt = "Select to_name,subject,body from sendmaildetails where from_name=('" + Session["username"] + "')"; //SqlConnection sqlConn = new SqlConnection("server=localhost;uid=sa;pwd=password;database=master;"); SqlCommand sqlCmd = new SqlCommand(sqlStmt, conn); SqlDataAdapter da = new SqlDataAdapter(sqlCmd); DataSet ds = new DataSet(); da.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind(); } protected void btnBack_Click(object sender, EventArgs e) { Response.Redirect("UserMainPage.aspx"); } } }

8. SCREEN SHOTS

Main Page:

36

UserLogin Page:

37

User Page:

38

Compose Page:

39

Inbox Page:

40

Outbox Page:

41

Admin Page:

42

Create User Page:

43

Delete User Page:

44

45

CONCLUSION

46

9. CONCLUSION

The project has been appreciated by all the users of mobile who are using the windows 7 operating system.

It is easy to use since it uses the GUI provided in the user dialog. User friendly screens are provided. The usage of soft ware increases the efficiency, decreases the effort. It also provides the user with variable options in customizing the project to the administrator. It has been thoroughly tested and implemented.

10. FUTURE SCOPE

This code would work for the present specified requirements. This enables the admin to manage the access of only the working employees of the organization. It helps the user to check the mails. For further improvement of the project and making it user friendly, we can add the voice mail messages. We can also allow sending of a single message to all the users of the site which can be managed by the administrator. We can also implement the then requirements of the user to make it more user friendly and easier to access.

47

11. BIBLIOGRAPHY

Unified Modeling Language User Guide By Grady Booch. Software Engineering By Rogers Pressman Visual Basic 2010 By Anne Boehm SQL Server 3.5 for Professionals By Jain C#.NET Black Book By Evangeleous Petereous Professional ASP.NET 3.5 By Wrox Publications

48

You might also like