Sei sulla pagina 1di 86

VisionTech Help Desk

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)

VisionTech Help Desk

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.

VisionTech Help Desk

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.

VisionTech Help Desk

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

VisionTech Help Desk

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

VisionTech Help Desk

INTRODUCTION

VisionTech Help Desk

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.

VisionTech Help Desk

System Requirements Specification

VisionTech Help Desk

System Requirements Specification


2.1 Objective:
The main objective of this project is to design, develop and implements the Helpdesk procurement system that would allow their business users to register the services. The work will be assigned to the field engineers. This system will provide information to the users, field engineers and administrator.

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

VisionTech Help Desk


Authentication module has different authentication based on the Users, field engineers, admin . Authentication provides user-based login and the interface has been given based on the type of user. Administration in VisionTech helpdesk procurement system provides the features to manager who can assign jobs to the field engineers and can view the reports of the various services provided to the users. Administration has additional features of closing the logs that has been created and keeps track of the activities done by various field engineers. Work Order Management module gives the reports and analysis to the manager. Manager can do management of assigned jobs and keep track of the users, who have to be serviced. This module provides the management of the tasks allotted to various field engineers.

2.5 Functional requirements:


Some of the key functional requirements of the proposed systems are outlined below: To provide services to the user To meet the querying, reporting and servicing the requirements for customers and system handlers of the help desk. To facilitate effective decision making by allocating work flow management to the particular field engineers. To discover the trends and potential opportunities in supporting the client requirements.

10

VisionTech Help Desk

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

VisionTech Help Desk

Literature Survey

3.1 Tools & Technologies Used: 3.1.1Java Servlets:

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.

3.1.2 Java Server Pages


Java Server Pages is a technology that allows Web pages to be created dynamically from the Web Server so that the page content can be varied according to circumstances. This can be used, for instance, to provide custom pages according to the identity of the user, the type of web browser they are using, information they have provided or selections they have made. JSP documents are written in plain text and have a .jsp file extension. They use tags, like those in HTML or XML, to denote JSP elements. A JSP element is used to dynamically insert content into a page. It can be used for many purposes, such as getting information from a database or retrieving user preferences. JSP elements can contain scriptlets, written in Java programming language, to provide the logic to determine which content should be generated for a Web page. Alternatively the logic can reside in a server-based resource, such as a Java Bean component, that can be accessed by a JSP tag to generate the content of a page. The separation of logic from other content is a particularly appealing feature of JSP as it makes page maintenance simpler. Like the Java Servlet technology from which it is derived, Java Server Pages is completely platform-independent so requires no modifications to run on any platform. It

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.

We can do much more with JavaScript, including creating entire application.

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

VisionTech Help Desk

System Analysis

4.1 Requirement Analysis


20

VisionTech Help Desk

4.1.1 Problem Recognition


Existing System: The existing system is a manual process which has the following Drawbacks: The user cant keep track of his problem because of service through manual process. User cant processed by the prompt service from the field engineer at right time. Field engineer cannot have scheduled work order assigned in the manual process. The manager will have the problem of assigning the job to the field engineer in the manual process, since it creates complexity. Proposed System: VisionTech Help Desk Procurement System provides online processing for its corporate customers. User can login and report the problem of the product in the online system. The Manager can see the number of problems from different clients and assign the work order to field engineers. This proposed system provides reports and user to keep track of their problem and field engineer can look at their assigned jobs and this system provides the optimum solution to the user in the prompt time.

4.2 Feasibility Study 4.2.1 Technical Feasibility


The technical feasibility of the proposed system has been analysed and the following viewpoints has been suggested.

21

VisionTech Help Desk


The project required a online system that provides facility to the user, admin, manager, field engineer. Etc. The client request satisfactions are achieved through the features of the MVC architecture and that responded using Servlet in j2ee technology. MySQL database server is one of the most popular and high performance databases providing good security. Since Windows NT operating system can support Database-based, it has been chosen as the backend to work on. 4.2.2 Operational feasibility This project is a generic solution, which will be used by technical users, who are proficient in the use of computers. No training has to be given to these people as they are very competent and knowledgeable in computers. After the feasibility study it was found that the project development was feasible in all ways i.e., technically, economically and operationally.

22

VisionTech Help Desk

System Design

23

VisionTech Help Desk


5.1 System Architecture:

Model-View-Controller (MVC) Architecture

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

VisionTech Help Desk 5.3 Database Design 5.3.1 TABLES DESIGN


Table Name: Field Type

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

Userid(pk) Type Username Password

Char Char Char Char

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

Table Name: Field Type

workorder
Data Type

Workorderid(pk) Date Typeofproblem Otherproblem Descriptionofproblem Priority Status Userid

Char Char Char Char Char Char Char Char

Size 10 40 40 35 120 25 20 10

Table Name: Field Type

technication
Data Type Char Char Size 10 8

Workorderid(FK) Userid
Table Name: Field Type

updatecustomer
Data Type

Userid Firstname Middlename Lastname Phone Fax

Char Char Char Char Char Char

Size 10 15 15 10 11 10

27

VisionTech Help Desk Email Jobtitle Department Address


Table Name: Field Type

Char Char Char Char pass


Data Type char Char

20 25 20 70

Passed Email

Size 10 30

28

VisionTech Help Desk

E-R Diagram

29

VisionTech Help Desk

30

VisionTech Help Desk

31

VisionTech Help Desk

Dataflow Diagram

7. Admin D.F.D.(Data Flow Diagram) 1. Admin login


Admin Login Admin login table Account creation Info AdminModule table Account deletion

Insert into Account

32

VisionTech Help Desk

Adding Customer, manager, field engineer creation info table

User

Update creation info Deleting ccount Status reports Update user request

Insert into

Updatecustomer

table

Forgot password request

Pass table

2. Customer login Custome r Login User table Update user account User module 33 insert into

Updatecustomer

VisionTech Help Desk

Create complaint

Workorder table Insert into

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

Show workorder Update workorder reports reports status is complete

34

VisionTech Help Desk User table

Field engineer module

Workorder request

35

VisionTech Help Desk

System Testing

8.1 OBJECTIVE OF 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.

8.3 INTEGRATION TESTING

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

VisionTech Help Desk

Screen Shots

39

VisionTech Help Desk Admin login: page

40

VisionTech Help Desk

Forgot password: page

41

VisionTech Help Desk

Help page:

42

VisionTech Help Desk

Admin login page

43

VisionTech Help Desk

Admin home page

44

VisionTech Help Desk

New account creation page:

45

VisionTech Help Desk Customer, Manager, Field Engineer creation page.

46

VisionTech Help Desk Admin user creation Success page.

47

VisionTech Help Desk Modify user page

48

VisionTech Help Desk

Edited user based on userid page.

49

VisionTech Help Desk

User delete page

50

VisionTech Help Desk

Delete account page.

51

VisionTech Help Desk

Tasks

52

VisionTech Help Desk

Update customer request page.

53

VisionTech Help Desk

Forgot password page

54

VisionTech Help Desk

Logout button click

55

VisionTech Help Desk

Logout successfully page.

56

VisionTech Help Desk

Manager login page

57

VisionTech Help Desk

Manager home page.

58

VisionTech Help Desk

Manager reports page.

59

VisionTech Help Desk

Manager assign Techinication page

60

VisionTech Help Desk

Job is successfully assigned page.

61

VisionTech Help Desk

Manager delete order page.

62

VisionTech Help Desk

Manager Logout click page

63

VisionTech Help Desk

Manager Logout successfully page.

64

VisionTech Help Desk

Field engineer login page.

65

VisionTech Help Desk

Field engineer home page.

66

VisionTech Help Desk

Field engineer reports.

67

VisionTech Help Desk

Field engineer update workorder.

68

VisionTech Help Desk

Update workorder.

69

VisionTech Help Desk

Field engineer click logout page.

70

VisionTech Help Desk

Field engineer logout successfully.

71

VisionTech Help Desk

Customer login.

72

VisionTech Help Desk

Customer home page.

73

VisionTech Help Desk

Customer workorder page.

74

VisionTech Help Desk

Customer compliant success order id page.

75

VisionTech Help Desk

Update customer profile page.

76

VisionTech Help Desk

Update profile success page.

77

VisionTech Help Desk

Customer search complient page.

78

VisionTech Help Desk

Customer compliant status page.

79

VisionTech Help Desk

Customer shows all compliant page.

80

VisionTech Help Desk

Customer logout click page.

81

VisionTech Help Desk

Customer logout successful page.

82

VisionTech Help Desk

Conclusion

10. Conclusion

83

VisionTech Help Desk

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

VisionTech Help Desk

Bibliography

11. Bibliography 85

VisionTech Help Desk

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

Potrebbero piacerti anche