Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
A Project Report
On Vi s i o n Te c h H e l p D e s k Under the Guidance of Mr. Ramesh V Desai A project report submitted in partial fulfillment of the requirement For the award of the degree of MCA Of SIKKIM MANIPAL UNIVERSITY, INDIA Submitted By: Name: Rohith N. Roll No: 581125191 Course: MCA Semester: 6th Centre: 3E India 1596 B.T.M Layout, Bangalore (Sikkim Manipal University Study Centre)
ACKNOWLEDGEMENT
The project work is always an outcome of team effort. Besides my effort, I would neither instigate nor accomplish this project to such a great extend and without the help and guidance of the faculty and staff members. So I am very much thankful to all of them for their kind cooperation and their efforts and dedication that made me complete this project successfully. This acknowledgment would be incomplete if we failed to thankthe faculty of the computer science department who has alwaysprovided us with encouragement and their valuable support. We alsothank our friends and well-wishers who supported and encouraged usalways, we would like to thank each and every one of this person whohelped us in this endeavor called tech pro Services.
BONAFIDE CERTIFICATE
Certified that this Project Report titled Vision Tech Help Desk is the bonafied work of Rohith N who carried out the project work under my supervision.
EXAMINER CERTIFICATION
This Project report of Rohith N Entitled Vision Tech Help Desk is approved and acceptable in Quality and Form.
Internal Examiner
External Examiner
TABLE OF CONTENTS
Contents:
1. Introduction 2. System Requirements Specification 3. Literature Survey 4. System Analysis 5. System Design 6. E-R Diagram 7. Dataflow Diagram 8. System Testing 9. Screen Shots
INTRODUCTION
1. Introduction:
. VisionTech provides services (providing computers, softwares, network support, etc)to its clients. VisionTech consists of an e-commerce helpdesk. The ecommerce application is used by VisionTech clients/customer to buy products online. And the service are completed in time by the field engineer, the customer as provides the separate login which they can login and they can order the problem through compliant, and the compliant is go through by the manager and assign the job to the field engineer. The field engineers see the reports and update the compliant before going to the field work. And after the completion of the service within the time and field engineer update status of the compliant as completed. Once the compliant is complete the manager see the report if the status is completed, then compliant is delete by the manager. The manager only has the rights to delete the compliant. The admin has the rights to get contracts with the company and bond is signed for the years to provide service. Admin has also had the rights to delete the account creation, and admin can only create the account for manger .field engineer and customer to login into the VisionTech help desk. Admin can edit the user account and to delete the login account. The customer can provide the update service of the profile of the customer who has requested for update profile. Those who have forgot the password and ask for the password ,and the password is mailed to the e-mail id of the customer.
2.2 Purpose:
This System delivers the reports to the field engineer. Reports are generated based on the dynamic business requirements and it also facilitates users to keep track of their service. Manager can assign a job to field engineer and the field engineer must completed the job with in the time and should update the workoder list.
2.3 Scope:
The scope of the project is to design, develop and implement VisionTech Helpdesk Procurement system for customer, which provides the solution for Hardware and Software problems.
2.4 Overview:
The VisionTech helpdesk procurement system is an web portal that provides services to the customers of VisionTech. The customer can login and enter the details of product that has been sold by the VisionTech group of companies. This portal has three main modules Authentication Administration Work Order Management
10
2.7 Software Interface: Name of the Soft ware Operating System Database Server Web Server Programming Language 2.8 Hardware Interface: Client: Name of the Hard ware Processor Hard disk RAM Capacity/Size Intel Pentium-1V (1.80 GHz) 10 GB 256 MB Version Windows 2000 MySql 5.0 Jakarta Tomcat 5.0 Java 1.5.0
Server: Name of the Hard ware Processor Hard disk RAM Capacity/Size Intel Pentium-1V (1.80 GHz) 10 GB 256 MB
11
Literature Survey
12
VisionTech Help Desk Servlets are the Java platform technology of choice for extending and enhancing Web servers. Servlets provide a component-based, platform-independent method for building Web-based applications, without the performance limitations of CGI programs. And unlike proprietary server extension mechanisms (such as the Netscape Server API or Apache modules), Servlets are server and platform-independent. This leaves us free to select a "best of breed" strategy for our servers, platforms, and tools. Servlets have access to the entire family of Java APIs, including the JDBC API to access enterprise databases. Servlets can also access a library of HTTP-specific calls and receive all the benefits of the mature Java language, including portability, performance, reusability, and crash protection. Today Servlets are a popular choice for building interactive Web applications. Third-party Servlets containers are available for Apache Web Server, Microsoft IIS, and others. Servlet containers are usually a component of Web and application servers, such as BEA WebLogic Application Server, IBM WebSphere, Sun Java System Web Server, Sun Java System Application Server, and others. A Servlet is a web component, managed by a container that generates dynamic content. Servlets are small, platform independent Java classes compiled to an architecture neutral byte code that can be loaded dynamically into and run by a web server. Servlets interact with web clients via a request response paradigm implemented by the Servlet container. This request-response model is based on the behavior of the Hyper text Transfer Protocol (HTTP). The Servlet container, in conjunction with a web server or application server, provides the network services over which requests and responses are set, decodes MIME based requests, and formats MIME based responses. A Servlet container also contains and manages Servlets through their lifecycle. A Servlet container can either be built into a host web server or installed as an add-on component to a Web Server via that servers native extension API. Servlet Containers can also be built into or possibly installed into web-enabled Application Servers. All Servlet containers must support HTTP as a protocol for requests and responses, but may also support other request / response based protocols such as HTTPS (HTTP over SSL). The minimum required version of the
13
VisionTech Help Desk HTTP specification that a container must implement is HTTP/1.0. It is strongly suggested that containers implement the HTTP/1.1 specification as well. A Servlet Container may place security restrictions on the environment that a Servlet can executed In a Java 2 Platform Standard Edition 1.2 (J2SE) or Java 2 Platform Enterprise Edition 1.3 (J2EE) environment, these restrictions should be placed using the permission architecture defined by Java 2 Platform. For example, high end application servers may limit certain action, such as the creation of a Thread object, to insure that other components of the container are not negatively impacted.
14
VisionTech Help Desk shares the Write Once, Run Anywhere philosophy that is common to all Java technologies. Java Server Pages is an important part of Suns Java 2 Enterprise Edition Platform that provides a highly scalable architecture for enterprise applications. Advantages of JSP: * Write Once, Run Anywhere properties * Separation of dynamic and static content * Support for Scripting and Actions * Splitting up Presentation and Implementation Java Server Pages technology is the Java technology in the J2EE platform for building applications containing dynamic Web content such as HTML, DHTML, XHTML and XML. The Java Server Pages technology enables the authoring of Web pages that create dynamic content easily but with maximum power and flexibility. The Java Server Pages technology provides a textual description for the creation of a response from a request. Template Data Substantial portions of dynamic content are actually fixed. The JSP technology allow for the natural manipulation of this data. Addition of Dynamic Data The JSP technology allows the addition of dynamic data to the template data in a way that is simple yet powerful. Encapsulation of Functionality The JSP technology provides two related mechanisms for the encapsulation of functionality: the standard Java Beans component architecture and the tag library mechanism. Good Tool Support The JSP technology has features that enable the creation of good authoring tools. The result is a flexible and powerful server-side technology. Benefits of JSP 15
VisionTech Help Desk Write Once, Run Anywhere properties The Java Server Pages technology is platform independent, both in its dynamic Web pages, Web servers, and its underlying server components. You can author JSP pages on any platform, run them on any Web server or Web enabled application server, and access them from any Web browser. High quality tool support The Write Once, Run Anywhere properties of JSP allows the user to choose best-of-breed tools. Additionally, an explicit goal of the Java Server Pages design is to enable the creation of high quality portable tools. Separation of Roles JSP supports the separation of roles: developers write components that interact with server-side objects. Reuse of components and tag libraries The Java Server Pages technology emphasizes the use of reusable components such as Java Beans components, Enterprise Java Beans components and tag libraries. Separation of dynamic and static content The Java Server Pages technology enables the separation of static content from dynamic content that is inserted into the static template. Support for scripting and actions The Java Server Pages technology supports scripting elements as well as actions. Actions permit the encapsulation of useful functionality in a convenient form that can also be
3.1.3 Tomcat
16
VisionTech Help Desk The Tomcat server is a Java based Web Application container that was created to run Servlets and Java Server Pages (JSP) in Web applications. Tomcat is the Servlet container that is used in the official Reference Implementation for the Java Servlet and Java Server Pages technologies. Tomcat is developed in an open and participatory environment and released under the Apache Software License. Tomcat is intended to be a collaboration of the best-of-breed developers from around the world. Tomcat 5 implements the Servlet 2.4 and Java Server Pages 2.0 specifications from the Java Community Process, and includes many additional features that make it a useful platform for developing and deploying web applications and web services.
3.1.4 MySQL
The MySQL database server is probably the world's most popular open source database software, with more than five million active installations as of September 2004. The database server software from MySQL is available under a "dual licensing" model. Under this model, users may choose to use MySQL products under the free software/open source GNU General Public License (commonly known as the "GPL") or under a commercial license. Viewing tip You may find it useful to open another copy of this lesson in a separate browser window. That will make it easier for you to scroll back and forth among the different listings and figures while you are reading about them.
3.1.5 JAVASCRIPT
17
VisionTech Help Desk JavaScript is a script-based programming language that was developed by Netscape Communication Corporation. JavaScript was originally called Live Script and renamed as JavaScript to indicate its relationship with Java. JavaScript supports the development of both client and server components of Web-based applications. On the client side, it can be used to write programs that are executed by a Web browser within the context of a Web page. On the server side, it can be used to write Web server programs that can process information submitted by a Web browser and then updates the browsers display accordinglyEven though JavaScript supports both client and server Web programming, we prefer JavaScript at Client side programming since most of the browsers supports it. JavaScript is almost as easy to learn as HTML, and JavaScript statements can be included in HTML documents by enclosing the statements between a pair of scripting tags <SCRIPTS>..</SCRIPT>. <SCRIPT LANGUAGE = JavaScript> JavaScript statements </SCRIPT> Here are a few things we can do with JavaScript :
Validate the contents of a form and make calculations. Add scrolling or changing messages to the Browsers status line. Animate images or rotate images that change when we move the mouse over them. Detect the browser in use and display different content for different browsers. Detect installed plug-ins and notify the user if a plug-in is required.
JavaScript
Vs
Java
18
VisionTech Help Desk JavaScript and Java are entirely different languages. A few of the most glaring differences are: Java applets are generally displayed in a box within the web document; JavaScript can affect any part of the Web document itself.
While JavaScript is best suited to simple applications and adding interactive features to Web pages; Java can be used for incredibly complex applications.
There are many other differences but the important thing to remember is that JavaScript and Java are separate languages. They are both useful for different things; in fact they can be used together to combine their advantages. A D V A N T A G E S
JavaScript can be used for Sever-side and Client-side scripting. It is more flexible than VBScript. JavaScript is the default scripting languages at Client-side since all the browsers supports it.
19
System Analysis
21
22
System Design
23
Model-View-Controller (MVC) Architecture: Model-View-Controller architecture is all about dividing application components into three different categories Model, View and the Controller. Components of the MVC architecture have unique responsibility and each component is independent of the other component. Changes in one component will have no or less impact on other component. Responsibilities of the components are: Model: Model is responsible for providing the data from the database and saving the data into the data store. All the business logic are implemented in the Model. Data entered by the user through View are check in the model before saving into the database. Data access, Data validation and the data saving logic are part of Model. View: View represents the user view of the application and is responsible for taking the input from the user, dispatching the request to the controller and then receiving response from the controller and displaying the result to the user. HTML, JSPs, Custom Tag Libraries and Resources files are the part of view component.
24
VisionTech Help Desk Controller: Controller is intermediary between Model and View. Controller is responsible for receiving the request from client. Once request is received from client it executes the appropriate business logic from the Model and then produces the output to the user using the View component. ActionServlet, Action, ActionForm are the part of Controller.
5.2 Application Architecture:
The business tier is the model, the presentation tier is view and the controller tier is the control of the application, which is based on the MVC Architecture. The request from the client is first sent to the web container, where the Servlets sends the request to the business delegates, which may be of plain java or ejbs. That will create an connection using Dao to access to EIS
25
adminlogin
Data Type Char Char Size 15 15
Username
Password Table Name: Field Type
account
Data Type
Clientid(pk) Companyname Website location1name location1street location1city location1state location1zip location1phone location1fax location2name location2street location2city location2state location2zip location2phone location2fax Servicecontract Startdate Durationyears Contractdetails Terminationdate Terminationreason
Table Name: Field Type
Int Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char Char
Size 11
70
30 15 15 15 15 10 12 10 15 15 15 15 10 12 10 15 15 3 70 15 50
user
Data Type
Size 10 15 15 15
26
VisionTech Help Desk Conformpassword Firstname Middlename Lastname Phone Fax Email Jobtitle Department Companyname Location Address Gender Char Char Char Char Char Char Char Char Char Char Char Char Char
15 15 15 10 11 10 20 25 20 30 20 70 8
workorder
Data Type
Size 10 40 40 35 120 25 20 10
technication
Data Type Char Char Size 10 8
Workorderid(FK) Userid
Table Name: Field Type
updatecustomer
Data Type
Size 10 15 15 10 11 10
27
20 25 20 70
Passed Email
Size 10 30
28
E-R Diagram
29
30
31
Dataflow Diagram
32
User
Update creation info Deleting ccount Status reports Update user request
Insert into
Updatecustomer
table
Pass table
2. Customer login Custome r Login User table Update user account User module 33 insert into
Updatecustomer
Create complaint
Show status of compliant reports 3.Manager module manager Login User table Show workorder reports Manager module table Assign workorder to field engineer table Delete complient status is completed
Request
request Workorder
Techinication
Insert into
4. Field engineer
Field engineer
Login
34
Workorder request
35
System Testing
36
VisionTech Help Desk Software testing is a process of analyzing or operating software for the purpose of finding bugs. Test activities that are associated with analyzing the products of software development include code inspections, walkthroughs, and desk checks. 8.2 UNIT TESTING Unit testing involves test planning, test case development and measurement of test unit against the requirement specifications. Planning involves designing the schedule, determining the resources required and determining the features to be tested. Test case development involves designing test cases that are to be tested; the test cases are prepared so as to test the system exhaustively to find the bugs present in the system. Measurement of test unit against specification involves testing the system by giving the test cases as input and checking the systems adherence to its specification. The following features were tested: Test to see if the requirements specified in the SRS are taken care of. Test to see if all the inputs are handled effectively. Test the system by traversing all paths to discover any surprises. Check if the errors and exceptions have been handled properly. See if the validations of input data are all taken care off. Test cases were designed to check the results retrieved from the database and the validation of all user inputs. All the modules were tested thoroughly. The module interface was also tested to ensure that information flows into and out of the program units.
37
VisionTech Help Desk This testing is performed after all individual modules are developed and ready for the integration. The objective of this testing is to build a program structure as dictated in the design by taking unit tested modules. Top down testing strategy was followed for each case. Top down integration is an incremental approach to the construction of program structure. Modules are integrated by moving downward through the control hierarchy, beginning with the main module. Modules subordinate to the main module are incorporated into the structure in depth first manner. In this way, interfacing between the various modules was also thoroughly tested. In this System, the integration testing is done by checking all possible workflows of the analysis and cleaning process. 8.4 SYSTEM TESTING System Testing is a series of test, which have to be performed to fully exercise the computer-based system. It ensures that all the system elements are fully integrated and each element performs its allocated function. 8.5 PERFORMANCE TESTING Performance testing is done to test run-time performance of the software within context of an integrated system. For real time systems, adherence to performance requirements is a must. It determines the amount of execution time spent in various units, program throughput and response time. This system being highly user-interactive and capable of executing large volume of data was expected to have a small response time
38
Screen Shots
39
40
41
Help page:
42
43
44
45
46
47
48
49
50
51
Tasks
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
Update workorder.
69
70
71
Customer login.
72
73
74
75
76
77
78
79
80
81
82
Conclusion
10. Conclusion
83
This Project was successfully completed as per the requirements specified by the client within the specified time. The project has been deployed and the various testing has been done. The Authentication, Administration and work order management has been completed. 10.1 Benefits: The following are the benefits that are listed below It provides user friendly interface to allow the users to call a log to the helpdesk through this system The manager has features of scheduling the work orders and the tasks allotted to the field engineer. 10.2 Limitations: Although the developed system has benefits it also has some limitations as stated below, The manager has to look after the work order and assign the corresponding job to the field engineer. If manager is not able to facilitate the work order the user will not be availing the service from the helpdesk. 10.3 Enhancements: The future enhancement of this project is to allocate the work order to the field engineer without the intervention of admin. This will have some complexity for the work order management and scheduling the jobs to the corresponding field engineers.
84
Bibliography
11. Bibliography 85
11.1 Books: 1. Head first Servlet & Jsp, OReilly. 2.java server programming Subramanian Allamaraju & cedric buest 2. Herbert Schildt, the Complete Reference Tata McGraw-Hill Publishing Company Limited, New Delhi Java 2 Fifth Edition. 3. Richard Fairely, Software Engineering, Tata McGraw-Hill Publication Fourth Edition. 11.2 Web: 1. www.java.sun.com 2 www.google.com 3. www.javascript-2.com 4. www.w3schools.com 5. www.javaperformancetuning.com
86