Documention for project

download Documention for project

of 76

Transcript of Documention for project

  • 7/29/2019 Documention for project

    1/76

    CHAPTER 1

    INTRODUCTION

    Given a set of evaluative text documents that contain opinions about an object,

    opinion mining aims to extract attributes and components of the object that have been

    commented on in each document and to determine whether the comments are positive,

    negative or neutral.

    Before the Web, when an individual needs to make a decision, he/she typically asks

    for opinions from friends and families. When an organization needs to find opinions of the

    general public about its products and services, it conducts surveys and focused groups.

    With the Web, especially with the explosive growth of the user generated content on

    the Web, the world has changed. One can post reviews of products at merchant sites and

    express views on almost anything in Internet forums, discussion groups, and blogs, which are

    collectively called the user generated content. Now if one wants to buy a product, it is no

    longer necessary to ask ones friends and families because there are plentiful of product

    reviews on the Web which give the opinions of the existing users of the product. For a

    company, it may no longer need to conduct surveys, to organize focused groups or to employ

    external consultants in order to find consumer opinions or sentiments about its products and

    those of its competitors.

    1.1 Objective

    To make effective decision for product and sales improvement in manufacturing

    business sector with the help of feedback opinion collected from various customers. The

    opinion based multiple choices feedback questionnaire help the manufacturing business

    sector to drive in aright path boosting.

    1

  • 7/29/2019 Documention for project

    2/76

    CHAPTER 2

    SYSTEM ANALYSIS

    Systems analysis is the study of sets of interacting entities; this field is closely related

    to requirement analysis. The analysis of the role of a proposed system and the identification

    of the requirements that it should meet and it is the starting point for system design

    2.1 Existing System

    Generally the product feedbacks on the web are in three formats.

    1. Pros, cons and the detailed review

    2. Pros and cons

    3. Free format

    2.1.1 Drawbacks of existing system

    1) Finding opinion sources and monitoring them on the Web however, can still be a

    formidable task because a large number of diverse sources exist on the Web and each

    source also contains a huge volume of information.

    2) Processing large amounts of review one by one requires a lot of time and cost for both

    businesses and customers.

    2.2 Proposed System

    A good summarization system can help them in getting the required and relevant

    information without going through all the reviews present on the site. Instead of collectingfeedback as stated above, the feedback is collected from customers by giving multiple

    choices to each feature.

    2.2.1 Merits of proposed system

    Opinions are so important that whenever one needs to make a decision, one wants to

    hear others opinions. This is true for both individuals and organizations.

    1. Individual consumers: If an individual wants to purchase a product, it is useful to

    see a summary of opinions of existing users so that he/she can make an informed

    decision. This is better than reading a large number of reviews to form a mental

    2

  • 7/29/2019 Documention for project

    3/76

    picture of the strengths and weaknesses of the product. He/she can also compare

    the summaries of opinions of competing products, which is even more useful.

    2. Organizations and businesses: Opinion mining is equally, if not even more,

    important to businesses and organizations. For example, it is critical for a product

    manufacturer to know how consumers perceive its products and those of its

    competitors. This information is not only useful for marketing and product

    benchmarking but also useful for product design and product developments.

    2.3 Feasibility Study

    A feasibility study is a high-level capsule version of the entire System analysis and

    Design Process. The study begins by classifying the problem definition. Feasibility is to

    determine if its worth doing. By having a detailed feasibility study the management will

    have a clear view of the proposed system with its benefits and drawbacks.

    2.3.1 Economical Feasibility

    Economical feasibility attempts to weigh the costs of developing and implementing a

    new system, against the benefits that would accrue from having the new system in place. This

    feasibility study gives the top management the economic justification for the new system.

    A simple economic analysis which gives the actual comparison of costs and benefits

    are much more meaningful in this case. In addition, this proves to be a useful point of

    reference to compare actual costs as the project progresses. There could be various types of

    intangible benefits on account of automation. These could include increased customer

    satisfaction, improvement in product quality better decision making timeliness of

    information, expediting activities, improved accuracy of operations, better documentation and

    record keeping, faster retrieval of information, better employee morale.

    The system developed and installed will be good benefit to the organization. The

    system will be developed and operated in the existing hardware and software infrastructure.

    So there is no need of additional hardware and software for the system.

    2.3.2 Operational Feasibility

    Proposed project is beneficial only if it can be turned into information systems that

    will meet the organizations operating requirements. Simply stated, this test of feasibility asks

    3

  • 7/29/2019 Documention for project

    4/76

    if the system will work when it is developed and installed. Are there major barriers to

    Implementation? Here are questions that will help test the operational feasibility of a project.

    The proposed system is operationally feasible, as it is developed in such a way that

    any user without knowledge can use the system very easily. It makes effective decision for

    product and sales improvement in manufacturing business sector with the help of feedback

    opinion collected from various customers. As the entire System is user friendly and is

    designed based on the users mental model, the user can easily understand without much

    learning.

    2.3.3 Technical Feasibility

    Evaluating the technical feasibility is the trickiest part of a feasibility study. This is

    because, at this point in time, not too many detailed design of the system, making it difficult

    to access issues like performance, costs on (on account of the kind of technology to be

    deployed) etc. A number of issues have to be considered while doing a technical analysis.

    The project is developed on Intel Core i3 processor with 2GB RAM. The environment

    required in the development of system is any windows platform. The language used in the

    development is VB.NET which is technically strong & Windows Environment and the entire

    Project can be easily developed using .Net so the project is technically feasible.

    2.4 Development Environment

    2.4.1 Waterfall Model

    The waterfall model, sometimes called the classic life cycle, suggests a systematic

    sequential approach to software development that begins with customer specification of

    requirements and progressed through planning modeling, construction, and deployment,

    culminating in on-going support of the completed software.

    For this project the following requirements are needed.

    4

    Planning

    Estimating

    Scheduling

    Tracking

    Construction

    Code

    Test

    Communication

    Project initiation

    Requirements

    gathering Deploym

    ent

    Delivery

    Support

    Feedback

    Modelling

    Analysis

    Design

    2.4.1 Waterfall model

  • 7/29/2019 Documention for project

    5/76

    a) Product features.

    b) Questionnaires for all features of a particular product.

    c) Feedback from various customers.

    2.5 Project Architectural Design

    Fig 2.5 Project Architectural Design

    Description

    a) The customer has to register by giving their personal details.

    b) A registered customer has selected a particular product from various products

    and the customer has also view all features of a particular product.

    c) The feedback has been fetched from customers based on selected model.

    d) Categorizes the feedback option after fetching the feedback from customers.

    e) Finally the customer has taken right decision based on feedback given by

    various customers.

    5

    Product features customization

    Fetching feedback from customer

    based on the selected model

    Categorizing the feedback option

    Applying cluster for understanding the

    opinion

    Decision making based on opinion

  • 7/29/2019 Documention for project

    6/76

    CHAPTER3

    SYSTEM SPECIFICATIONS

    3.1 Software Requirements

    Technology : .Net 2008

    Tool : Weka 3-5

    Operating System : Windows XP

    Backend : MS Access 2007

    Coding Language : VB.NET

    3.2 Hardware Requirements

    CPU Type : Intel Core i3

    RAM Memory : 1 GB

    Hard disk space required : 40 GB

    6

  • 7/29/2019 Documention for project

    7/76

    CHAPTER 4

    SOFTWARE DESCRIPTION

    4.1 Front End

    The Microsoft .NET Framework is software framework that can be installed on

    computers running Microsoft windows operating systems. It includes a large library of coded

    solutions to common programming problems and virtual machine thatmanages the execution

    of programs written specifically for the framework. The .NET Framework is a Microsoft

    offering and is intended to be used by most new applications created for the Windows

    platform.

    The frameworks base class library provides a large range of features including user

    interface, data access, database connectivity, web application development and network

    communications. The class library is used by programmers, who combine it with their own

    code to produce applications.

    7

  • 7/29/2019 Documention for project

    8/76

    Using Solution Explorer

    Solution Explorer is an area of the integrated development environment (IDE) that

    contains your solution and helps you manage your project files. The files are displayed in a

    hierarchical view, much like that of Windows Explorer. By default, Solution Explorer is

    located on the right side of the IDE. If Solution Explorer is not visible, you can click the

    View menu and then click Solution Explorer to open it.

    When you create a new Windows Forms application by using Visual Basic Express

    Edition, a Windows Application solution appears in Solution Explorer. The solution contains

    two nodes: My Project and Form1.vb, as the following diagram illustrates.

    The My Project node opens the Project Designer when you double-click it. The

    Project Designer gives you access to project properties, settings, and resources. For more

    information, see Introduction to the Project Designer. The Form1.vb node is the WindowsForm in your solution. You can view this file in Design view, which enables you to see the

    form and any controls that you have added to it. You can also view this file in the Code

    Editor, which enables you to see the code associated with the application you're creating.

    Toolbox

    The Toolbox is a container for all the controls that you can add to a Windows Forms

    application or a Windows Presentation Foundation (WPF) application. By default, the

    Toolbox is located on the left side of the integrated development environment (IDE). If the

    8

  • 7/29/2019 Documention for project

    9/76

    Toolbox is not visible, you can click the View menu, and then click Toolbox to display it.

    The following illustration shows the common controls in the Toolbox.

    Common controls in the Toolbox

    You can set the Toolbox to automatically hide when you're not using it, or you

    can set the Toolbox to always be visible in the IDE. This makes it easier for you to see all the

    controls while you create your application. The controls are not visible on the Toolbox when

    you are in the Code Editor.

    To add controls to your application, you can drag them directly from the

    Toolbox to the form

    Introduction to Windows Forms

    The user interface is the part of your program that users see when they run the

    program. A user interface usually consists of a main window or form, and several controls,

    such as buttons, fields for entering text, and so forth. These types of Visual Basic programs

    are known as Windows Forms applications, and the user interface is created using Windows

    Forms controls.

    Toolbox Component

    Buttons

    9

  • 7/29/2019 Documention for project

    10/76

    The easiest way for users to interact with your program is through buttons. For

    example, many programs have Exit buttons. As you saw in the previous lesson, the Button

    control in Visual Basic looks and behaves like a push button. The Button control also has

    predefined events that can be used to initiate actions such as ending a program.

    Buttons are, generally, rectangular controls with a raised appearance on the

    form. There are many properties, however, that can be set to change their appearance. The

    most obvious is the Text property, which determines the text displayed, and this text is

    displayed in the fontor typeface determined by the Font property. The BackColor property

    determines the button's color, and the ForeColor property determines the text's color.

    When the user clicks a button at run time, the Button raises the Click event.

    When an event occurs, controls run code in response to those events. You can write code that

    should run when the user clicks the button by creating an event handler.

    An event handler is a method that executes when an event occurs. When a user

    clicks a button, the button's Click event has an event handler.

    Controls Used :

    Textbox

    It is used to receive input from the user by allowing the user to enter the data into it.

    The basic property used is text property.

    Syntax: TextBox1.text

    To get data that is in the TextBox1 to a variable named address, the following code

    is used.

    Address=TextBox1.Text

    If the data to be inserted is huge, then the property Multiline is set True so that data

    can be inserted in multiple lines.

    Label

    10

  • 7/29/2019 Documention for project

    11/76

    It is used to provide a descriptive caption and possibly an associated hot key for other

    controls. The basic property used to provide caption is text property.

    Syntax: Label1.Text

    If a label is to be displayed with caption as Username, then the following code is

    used.

    Label1.Text=Username

    Button

    It is commonly used to perform some action when the user clicks on the button. The

    basic property used is text property with Click event.

    Syntax: Button1.Text

    If a button with a name as Send is to be displayed, then the following code is used.

    Button1.Text=Send

    Checkbox

    It is commonly used to offer users a yes or no, true or false choice. Anytime by clicking

    on this control, it toggles between the yes state and the no state. The basic property used is

    checked.

    The only important event for Checkbox control is Click event.

    Syntax: CheckBox1.Checked=TrueCheckBox1.Checked=False

    If a Checkbox named CheckBox1 is checked, the following code is used to check it

    If CheckBox1.Checked=True then

    Desired code

    End If

    Panel

    It is used as a Container to group more controls under a single control. When a Panel is

    placed, the basic control used is to set the border of the panel through Border Style.

    Syntax: Panel1.BorderStyle=Fixed Single

    If a Panel with a single line border is to be displayed, then the following code is used.

    Panel1.BorderStyle=Fixed Single

    The other basic control used is visible, which controls the visibility of the panel.

    Syntax: Panel1.Visible=True

    Panel1.Visible=False

    If a panel named Panel1 is to made invisible, then the following code is used.

    11

  • 7/29/2019 Documention for project

    12/76

    Panel1.Visible=False

    Combo Box

    It is used to select a particular item from a set of items. The item that the user selected is

    obtained by the control Text.

    Syntax: ComboBox1.Text

    If the item selected by the user from the ComboBox1 is to be stored in a variable named

    month, the following code is used.

    Month=ComboBox1.Text

    Events used

    Click

    A click event occurs when the user left-clicks on a control. Button, Checkbox, List Box,

    Combo Box etc.

    Lost Focus

    Lost Focus fires when the input focus leaves the control and passes to another control.

    4.2 Features of VB.NET

    XML comments that can be processed by tools like NDoc to produce

    "automatic" documentation.

    Data Source binding, easing database client/server development.

    Design-time expression evaluation.

    The My pseudo-namespace (overview, details), which provides:

    Easy access to certain areas of the .NET Framework that otherwise require

    significant code to access.

    Dynamically-generated classes.

    Relational, object, and XML data. Visual Basic 9.0 unifies access to data

    independently of its source in relational databases, XML documents, or arbitrary

    object graphs, however persisted or stored in memory. The unification consists

    in styles, techniques, tools, and programming patterns. The especially flexible

    syntax of Visual Basic makes it easy to add extensions like XML literals and

    SQL-like query comprehensions deeply into the language. This greatly reduces

    the "surface area" of the new .NET Language Integrated Query APIs, increases

    the discoverability of data-access features through IntelliSense and Smart Tags,

    12

  • 7/29/2019 Documention for project

    13/76

    and vastly improves debugging by lifting foreign syntaxes out of string data into

    the host language.

    Just My Code, which hides boilerplate code written by the Visual Studio .NET

    IDE.

    Increased dynamism with all the benefits of static typing. The benefits of

    static typing are well known: identifying bugs at compile time rather than run

    time, high performance through early-bound access, clarity through explicitness

    in source code, and so on. However, sometimes, dynamic typing makes codeshorter, clearer, and more flexible. If a language does not directly support

    dynamic typing, when programmers need it they must implement bits and pieces

    of dynamic structure through reflection, dictionaries, dispatch tables, and other

    techniques. This opens up opportunities for bugs and raises maintenance costs.

    By supporting static typing where possible, and dynamic typing where needed,

    Visual Basic delivers the best of both worlds to programmers.

    Reduced cognitive load on programmers. Features such as type inference,

    object initializes, and relaxed delegates greatly reduce code redundancy and the

    number of exceptions to the rules that programmers need to learn and remember

    or look up, with no impact on performance. Features such as dynamic interfaces

    support IntelliSense even in the case of late-binding, greatly improving

    discoverability over advanced features.

    Other features are Overloads, Constructors, New Property Syntax,

    Parameterized Properties, and Shared Members.

    4.3 Back End

    13

  • 7/29/2019 Documention for project

    14/76

    MS Access 2007 is used as back-end in this system. This system maintains a

    relational database in back-end. In the relational model, data is stored in structures called

    relations. Here no constraints are used to create the database.

    Microsoft Access database is available with the Microsoft Office Professional

    suite of business products therefore no additional database software is required

    since any company purchases computers with this suite of products already

    installed.

    Microsoft Access database is likely to be available and supported for years to

    come because Microsoft is the premier software company in the world.

    MS Access is the most widely used desktop database system in the world.

    Access may be the best choice since Access has more support and development

    consultants than any other desktop database system.

    It is significantly cheaper to implement and maintain compared to larger database

    systems such as Oracle or SQL Server.

    Fairly complex databases can be setup and running in 1/2 the time and cost ofother large database systems (the simpler the database the greater the cost

    advantage).

    Access integrates well with the other members of the Microsoft Office suite of

    products (Excel, Word, Outlook, etc.).

    Other software manufacturers are more likely to provide interfaces to MS Access

    than any other desktop database system.

    When designed correctly, Access databases can be ported to SQL Server or

    Oracle. This is important if you want to start small or develop a pilot database

    system and then migrate to the larger database management systems.

    14

  • 7/29/2019 Documention for project

    15/76

    15

  • 7/29/2019 Documention for project

    16/76

    CHAPTER 5

    PROJECT DESCRIPTION

    5.1 Problem Definition

    In opinion mining the feedback is collected from various customers about a particular

    product based on the selected model and then the feedback option is categorizes based on the

    combination of choices then the feedback is mined by applying clustering technique. Finally

    the manufacturer has taken right decision about a particular product.

    5.2 Overview of the Project

    In this system, first the customer has to register by giving their personal details. Aregistered customer has selected a particular product from various products and the Customer

    has also view all features of that particular product. The feedback is collected from various

    customers for the selected model and he/she also fetched feedback based on selected model

    that can be given by several customers. Then it categorizes the feedback option after getting

    the feedback from customers based on the combination of choices. After collecting feedback

    from several customers and then the feedback has been mined by applying clustering

    technique. After mining feedback and then the feedback has been analyzed based on

    similarity of choices. Finally the customer has taken right decision based on feedback given

    by various customers and that can also be useful for manufactures in the further improvement

    of sales.

    5.3 Module Description

    The project mainly consists of six modules. The module is used to distinguish one set

    of task from the other.

    1. Existed customers

    2. New customer

    16

  • 7/29/2019 Documention for project

    17/76

    3. Features

    4. Questionnaires

    5. Data Conversion

    6. Feedback analysis

    5.3.1 Existed customers

    a) The existed customer has entered by giving customer id and password.

    b) After entering all details click on submit.

    5.3.2 New customers

    a) Customer name, E-mail id, occupation and password.

    b) After that click on submit.

    c) The customer who is not registered they may register by giving customer id,

    d) After the customer has log in by giving their id and password.

    5.3.3 Features

    a) After the customer has logged then the customer can view all features by selecting

    product id and then click on search

    b) Then the all features are displayed for selected product.

    5.3.4 Questionnaires

    a) It consists of all questions after entering customer details all questionnaires of a

    particular product can be displayed.

    b) After that the customer has to answer for all the feedback questionnaires and then

    click on submit.

    c) By clicking on cancel, all the details which are entered by user those are

    cancelled.

    5.3.5 Data conversion

    a) After collecting feedback from various customers then the data in tables can be

    converted into arff file format.

    b) The data which is in arff file that can be given as input for clustering in Weka tool.

    5.3.6Feedback analysis

    a) The feedback is analyzed based on the combination of choices.

    b) After collecting feedback from various customers after that we can mine the

    feedback by applying clustering techniques.

    17

  • 7/29/2019 Documention for project

    18/76

    c) After mining the feedback we can analyze the feedback based on similarity of

    choices.

    d) After analyzing the feedback the customer has taken correct decision.

    5.4 Data Flow Diagram

    A data flow diagram is graphical tool used to describe and analyze movement of data

    through a system. These are the central tool and the basis from which the other components

    are developed. The transformation of data from input to output, through processed, may be

    described logically and independently of physical components associated with the system.

    These are known as the logical data flow diagrams. The physical data flow diagrams show

    the actual implements and movement of data between people, departments and workstations.

    A full description of a system actually consists of a set of data flow diagrams.

    A DFD is also known as a bubble Chart has the purpose of clarifying system

    requirements and identifying major transformations that will become programs in system

    design. So it is the starting point of the design to the lowest level of detail. A DFD consists

    of a series of bubbles joined by data flows in the system.

    DFD Symbols

    In the DFD, there are four symbols

    1. A square defines a source(originator) or destination of system data

    2. An arrow identifies data flow. It is the pipeline through which the information

    flows

    3. A circle or a bubble represents a process that transforms incoming data flow into

    outgoing data flows.

    4. An open rectangle is a data store, data at rest or a temporary repository of data.

    Process that transforms data flow

    Source or Destination of data

    Data flow

    Data Store

    18

  • 7/29/2019 Documention for project

    19/76

    Fig 5.4.1 Symbolic notations of Data Flow Diagram

    Constructing a DFD

    Several rules of thumb are used in drawing DFDS:

    1. Process should be named and numbered for an easy reference. Each name

    should be representative of the process.

    2. The direction of flow is from top to bottom and from left to right. Data

    traditionally flow from source to the destination although they may flow back to

    the source. One way to indicate this is to draw long flow line back to a source.

    An alternative way is to repeat the source symbol as a destination. Since it is

    used more than once in the DFD it is marked with a short diagonal.

    3. When a process is exploded into lower level details, they are numbered.

    4. The names of data stores and destinations are written in capital letters. Process

    and dataflow names have the first letter of each work capitalized.

    A DFD typically shows the minimum contents of data store. Each data store should

    contain all the data elements that flow in and out.

    Questionnaires should contain all the data elements that flow in and out. Missing

    interfaces redundancies and like is then accounted for often through interviews.

    Salient features of DFDs

    1. The DFD shows flow of data, not of control loops and decision are controlled

    considerations do not appear on a DFD.

    2. The DFD does not indicate the time factor involved in any process whether the

    dataflow take place daily, weekly, monthly or yearly.

    3. The sequence of events is not brought out on the DFD.

    Rules Governing the DFDs

    Process

    1) No process can have only outputs.

    2) No process can have only inputs. If an object has only inputs than it must be a

    sink.

    3) A process has a verb phrase label.

    Data Store

    1) Data cannot move directly from one data store to another data store, a process

    must move data.

    19

  • 7/29/2019 Documention for project

    20/76

    2) Data cannot move directly from an outside source to a data store, a process, which

    receives, must move data from the source and place the data into data store

    3) A data store has a noun phrase label.

    Source or Sink

    The origin and / or destination of data.

    1) Data cannot move direly from a source to sink it must be moved by a process

    2) A source and / or sink has a noun phrase land

    Data Flow

    1) A Data Flow has only one direction of flow between symbols. It may flow in both

    directions between a process and a data store to show a read before an update.

    The latter is usually indicated however by two separate arrows since these happen

    at different type.

    2) A join in DFD means that exactly the same data comes from any of two or more

    different processes data store or sink to a common location.

    3) A data flow cannot go directly back to the same process it leads. There must be at

    least one other process that handles the data flow produce some other data flow

    returns the original data into the beginning process.

    4) A Data flow to a data store means update (delete or change).

    5) A data Flow from a data store means retrieve or use.

    A data flow has a noun phrase label more than one data flow noun phrase can appear

    on a single arrow as long as all of the flows on the same arrow move together as one package.

    Context Level -0 DFD

    20

    Management

    Giving

    feedback

    Feedback analyzed

    based on opinionAdopting

    Clustering Based

    on Multiple

    Choices

    feedback

    Opinion Mining

    Customer

  • 7/29/2019 Documention for project

    21/76

    Fig 5.4.2 Context Level Data Flow Diagram for opinion mining

    Context Level-1 DFD

    Fig 5.4.3 First-Level Data Flow Diagram for opinion mining

    21

    Management

    Customer

    feedback

    Login Select productGiving feedback

    Collecting

    feedback

    Apply clusteringMaking decision

    Validate

    loginCustomer

    View

    Features

    Question

    s

    Feedback

    Analysis

    Register Product_detailsQuestionnaires

    customer_response

  • 7/29/2019 Documention for project

    22/76

    5.5 Database Design

    In order to design effective database without redundancy, the normalization technique

    applied according to the process that is proposed to make effective retrieval and storage of

    data and analysis has given as follows.

    5.5.1Normalization

    Normalization is a process of minimization of redundancy related to non-primary

    keys. Before designing any system, normalization of databases is done for the following

    reasons,

    To reduce the redundancy of stored data.

    To avoid loss of data.

    To structure the data.

    To permit simple retrieval of data.

    Procedure for normalizing the database

    Eliminate non atomic values. The resulting database will be First NF.

    Take projections to eliminate transitive dependencies. Now the database will be

    Second NF.

    Take projections to eliminate transitive dependencies. This gives a Third NF relation.

    Take projections of these Third NF relations to eliminate functional dependencies in

    which the determinant is not a candidate key. This gives a collection of BCNF

    relations.

    Take projections of these BCNF relations to eliminate any multi valued

    dependencies that are not implied by the candidate key. This produces a collection of

    Fifth NF relations.

    This reduction consists of replacing the relations by suitable projections. The

    collection of these projections on equipment to the original relations so on information is lost

    in the process. In other words, the process is reversible. This is called non loss

    decomposition.

    Since no information is lost in the deductions process, any information that can be derived

    from the original structure can also be derived from the new structure. Having arrived at the

    22

  • 7/29/2019 Documention for project

    23/76

    program specifications, programs, and hardware specifications, testing of the system is to be

    undertaken. This step of system analysis and designing is known as implementation.

    First Normal FormA relation is in First NF if the intersection of any column and row contains only one

    value (no repeating groups).

    Methods

    Identify suitable primary key from a pool of Un-normalized Data. Remove any item

    that repeats within a single value of this key to another relation bringing within them the

    primary key to form part of a new composite key in the new relation.

    Second Normal Form

    A table in Second NF is also in First NF if the values in every column are functionally

    dependent on the complete primary key.

    Methods

    For every relation within a single data item making up the primary key, this rule

    should always be true. For those with a compound key examines every column and

    determines whether its value depends on the whole of the compound key or just some of the

    part of it. Remove those that depend only on part of the key to a new relation with that part as

    the primary key.

    5.5.2 Table Structure

    5.5.2.1 Name: Register

    Description: This table consists of personal details for all the customers.

    Column name Data type Size Constraints

    Customer id Text 10 Primary key

    Customer name Text 30 Not null

    E-mail id Text 30 Not null

    Occupation Text 20 Not null

    23

  • 7/29/2019 Documention for project

    24/76

    Password Text 20 Not null

    5.5.2.2 Name:Product_details

    Description: It consists of specifications and their description details for all the products.

    Column name Data type Size Constraints

    Productid Text 10 Primary Key

    Productname Text 20 Unique

    Modelid Text 10 Not null

    Processor Text 30 Not null

    Memory Text 30 Not null

    Harddisk Text 30 Not null

    Opticaldrive Text 30 Not null

    Screensize Text 30 Not null

    Internet Text 30 Not null

    Multimedia Text 30 Not null

    Webcam Text 30 Not null

    Ports Text 30 Not null

    Color Text 30 Not null

    Battery Text 30 Not null

    OS Text 30 Not null

    5.5.2.3 Name: Questionnaires

    Description: It contains all questionnaires and their choices for the specific products.

    24

  • 7/29/2019 Documention for project

    25/76

    Column name Data type Size Constraints

    Qno AutoNumber 10 Foreign key

    Questions Text 150 Unique

    Choice1 Text 5 Not null

    Choice2 Text 5 Not null

    Choice3 Text 5 Not null

    Choice4 Text 5 Not null

    5.5.2.4 Name: Customer_response

    Description: It contains response to all the questionnaire of that particular product forall the

    customers.

    Column name Data type Size Constraints

    Customer id Text 10 Not null

    Product id Text 10 Not null

    Model id Text 10 Not null

    Date Date/time - Not null

    OpQ1 Number 5 Not null

    OpQ2 Number 5 Not null

    OpQ3 Number 5 Not null

    OpQ4 Number 5 Not null

    OpQ5 Number 5 Not null

    25

  • 7/29/2019 Documention for project

    26/76

    OpQ6 Number 5 Not null

    OpQ7 Number 5 Not null

    OpQ8 Number 5 Not null

    OpQ9 Number 5 Not null

    OpQ10 Number 5 Not null

    5.5.2.5 Name: Decision

    Description: It contains values as per the choices from the user.

    Column name Data type Size Constraints

    Option1 Number 20 Not null

    Option2 Number 20 Not null

    Option3 Number 20 Not null

    Option4 Number 20 Not null

    5.5.3 E-R DiagramIn this system, the need for flexibility of storage and retrieval is essential. Entity

    Relationship (ER) diagrams is associated with the databases and database management

    systems and explores how to use relationships in a pool of data when developing methods for

    data storage and retrieval. There are some effective ways of organizing and storing data

    (random, sequential and indexed) in transaction systems, where each transaction is processed

    to update a record in the master file.

    26

  • 7/29/2019 Documention for project

    27/76

    When information systems are developed primarily for use in transaction processing,

    the focus is often on a single entity. The overall logical structure of a database can be

    expressed graphically by E-R diagrams, which have following components:

    Entity

    Any object that has meaning for particular application. A computer system may be an

    entity. Entity is an object that is distinguishable from other objects with a specific set of

    attributes.

    Attributes

    Element of a data model or characteristic quality of a data type.

    Relation

    Equally, inequality or any property that can be said to hold for two objects in a

    specific order.

    Symbolic notations :

    Represents entities

    Represents attributes

    27

  • 7/29/2019 Documention for project

    28/76

    Represents Relationships

    Represents primary key

    Represents links

    Fig 5.5.3.1 Symbolic notations of ER Diagram

    28 Product

    id

  • 7/29/2019 Documention for project

    29/76

    29

    Questionnaires

    Passwor

    dId

    Customer

    Gets

    featur

    es

    Register

    Log

    in

    Id

    Name

    Occupat

    ion

    E-mailid

    Model

    name

    Product

    Ans

    we-

    ring

    Model

    id

    Choice1

    Choice2

    Choice

    4

    Choice3

  • 7/29/2019 Documention for project

    30/76

    Fig 5.5.3.2 ER-Diagram for opinion mining

    5.5.4 Architectural Design

    30

    Customer

    Login

    Main page

    Products Questioneries

  • 7/29/2019 Documention for project

    31/76

    5.5.5 Data Dictionary

    A Data Dictionary, as the name implies, is a repository of information about data. In

    some database systems, the stored definitions of data (called schema) provide all necessary

    data dictionary information; in other, the data dictionary is supplementary. The information in

    the data dictionary is about types of data and uses of data.

    The data dictionary provides lists of data items sequenced alphabetically by

    classification, keyword, etc. the dictionary provides a consistent official description of data as

    well as consistent data names for programming and retrieval. The advantages of a data

    dictionary are not only consistency of data description and naming, but also ease of updating

    where one data description serves many purposes.

    The database administrator to enforce standards for names and descriptions may use

    data dictionaries; those who create data must follow their standards. Creating a data

    dictionary requires significant effort to remove past inconsistencies and ambiguities.

    Data dictionary is used

    To manage the details in a large system.

    To communicate a common meaning for all system elements.

    31

    ADMIN

    Login

    Mainpage

    Product

    s

    Questioneri

    es

    Data

    ConversionReport Output

    Decisio

    n

  • 7/29/2019 Documention for project

    32/76

    To document the feature of the system.

    To locate errors and omissions in the system.

    FIELDNAME CONSTRAINT LOCATION DATATYPE SIZEcustomerid Primary key Register Text 10

    customername Not null Register Text 30

    e-mailid Register Text 30

    occupation Not null Register Text 20

    password Not null Register Text 20

    productid Primary key Product_details Text 30

    productname Unique Product_details Text 30

    modelid Not null Product_details Text 30processor Not null Product_details Text 30

    memory Not null Product_details Text 30

    harddisk Not null Product_details Text 30

    opticaldrive Not null Product_details Text 30

    Screensize Not null Product_details Text 30

    Internet Not nll Product_details Text 30

    Multimedia Not null Product_details Text 30

    Webcam Not null Product_details Text 30

    Ports Not null Product_details Text 30

    Color Not null Product_details Text 30

    Battery Not null Product_details Text 30

    Os Not null Product_details Text 30

    Qno Primary key Questionnaires Auto number 10

    Questions Unique Questionnaires Text 150

    Choice1 Not null Questionnaires Text 5

    Choice2 Not null Questionnaires Text 5

    Choice3 Not null Questionnaires Text 5

    choice4 Not null Questionnaires Text 5

    Customerid Not null Customer_response Number 10

    Productid Not null Customer_response Number 10

    Modelid Not null Customer_response Number 10

    Date Not null Customer_response Date/time -

    Opq1 Not null Customer_response Number 5

    Opq2 Not null Customer_response Number 5

    Opq3 Not null Customer_response Number 5

    32

  • 7/29/2019 Documention for project

    33/76

    Opq4 Not null Customer_response Number 5

    Opq5 Not null Customer_response Number 5

    Opq6 Not null Customer_response Number 5

    Opq7 Not null Customer_response Number 5

    Opq8 Not null Customer_response Number 5

    Opq9 Not null Customer_response Number 5

    Opq10 Not null Customer_response Number 5

    Table 5.5.4.1 Data Dictionary for Opinion mining

    5.5.6 Database Constraints

    a) Primary Key: Username is a primary key constraint which represents uniqueness.

    The advantage is that we can avoid redundancy by using this primary key

    constraint. By using this, we can derive table in to 1Nf automatically.

    b) Not Null: this is used to represent that the concerned fields should not be left

    empty. That means one should enter the fields so that it is necessary to know the

    fields.

    33

  • 7/29/2019 Documention for project

    34/76

    CHAPTER 6

    SYSTEM IMPLEMENTATION

    6.1.1 Installation of .NET

    The three phases for installing Visual Studio .NET are as follows:

    Phase 1 involves installing Windows components.

    Phase 2 involves installing Visual Studio .NET.

    Phase 3 involves checking for service releases.

    Installing Visual Studio is not a difficult task. The steps to install .NET are

    a) To start the installation, insert the Visual Studio .NET CD-ROM. If

    installation does not start automatically, double-click setup.exe to start the

    installation. Setup launches the initial screen.

    b) Click Windows Component Update to bring up the End User License

    Agreement screen.

    c) Click the I accept the agreement button to accept the user agreement, and

    the next screen appears. This screen lists the required Windows components for

    running Visual Studio .NET.

    d) ClickContinue, and the next screen appears. Installing windows components

    requires rebooting the machine several times. Setup gives us an option to enter the

    34

  • 7/29/2019 Documention for project

    35/76

    password to do an unattended install. Setup uses the password to automatically log

    the user in after every reboot. Checking the Automatically log on check box enables

    the two text boxes. Type the password in the first text box. Retype the password for

    confirmation in the Confirm Password textbox.

    e) After specifying the password, clickInstall Now!To begin the installation of

    Windows components. The setup program installs the components and automatically

    reboots the system when necessary. This marks the end of the first phase of

    installation. After all the necessary Windows have been successfully installed, a

    screen is displayed.

    f) The next step is to start installing, which constitutes the second phase of the

    entire installation procedure. After clicking the done hyperlink the screen that

    appeared before is displayed, but this time the second link is enabled, and the first

    and third hyperlinks are disabled.

    g) ClickVisual Studio .NET, and the setup program copies the files necessary

    for installation and displays the next screen.

    h) After entering the product key and the desired name, click the I accept the

    agreement button. Click Continue to continue to the next part of the current phase,

    which is selecting the features we want to install.

    i) After selecting the features to install, click Install Now! to start the

    installation. The last phase of the installation, which is checking for service releases,

    kicks in after the Visual Studio .NET installation is complete.

    6.1.2 Deployment of the System

    a) Copy the folder opinion mining from CD-ROM to the C partition.

    b) Open the file opinion mining of type Visual Basic Project File, double-click it.

    c) .NET application is launched, then Login form is displayed.

    The user then may register or a registered user authenticates to the System.

    6.2 Launching Weka tool

    The WekaGUIChooser (class weka.gui.GUIChooser) provides a starting

    for launching Wekas main GUI applications and supporting tools. If one prefers a MDI

    (multiple document interface) appearance, then this is provided by an alternative launcher

    called Main (class weka.gui.Main). The GUI Chooser consists of four buttonsone for

    each of the four major Weka applicationsand four menus.

    35

  • 7/29/2019 Documention for project

    36/76

    Fig 6.2 Weka GUI Chooser

    The buttons can be used to start the following applications:

    Explorer An environment for exploring data with WEKA (the rest of this

    documentation deals with this application in more detail).

    Experimenter An environment for performing experiments and conducting statistical

    tests between learning schemes.

    Knowledge Flow This environment supports essentially the same functions as the

    Explorer but with a drag-and-drop interface. One advantage is that it supports

    incremental learning.

    SimpleCLI Provides a simple command-line interface that allows direct execution of

    WEKA commands for operating systems that do not provide their own command line

    interface.

    The menu consists of four sections:

    1. Program

    Log Window opens a log window that captures all that is printed to stdout or stderr.

    Useful for environments like MS Windows, where WEKA is normally not started from a

    terminal.

    Exit Closes WEKA.

    2. Tools other useful applications.

    ArffVieweran MDI application for viewing ARFF files in spreadsheet format.

    36

  • 7/29/2019 Documention for project

    37/76

    SqlViewerrepresents an SQL worksheet, for querying databases via JDBC.

    Bayes net editorAn application for editing, visualizing and learning Bayes nets.

    3. Visualization ways of visualizing data with WEKA.

    Weka homepage opens a browser window with WEKAs homepage.HOWTOs, code

    snippets, etc. The general WekaWiki, containing lots of examples and HOWTOs around the

    development and use of WEKA.

    Wekas on Source forgeWEKAs project homepage on Sourceforge.net.

    System Info lists some internals about the Java/WEKA environment, e.g., the

    CLASSPATH.

    To make it easy for the user to add new functionality to the menu without having to

    modify the code ofWEKA itself, the GUI now offers a plug-in mechanism for such add-

    ons. More details can be found in the Wiki article Extensions for Wekas main GUI.

    If you launch WEKA from a terminal window, some text begins scrolling in the

    terminal. Ignore this text unless something goes wrong, in which case it can help in tracking

    down the cause (the Log Window from the Program menu displays that information as well).

    6.2.2 Technique Used

    In this system I can use only one clustering technique that can be applied in the

    Weka-3-6-4 tool i.e. Simple K-means algorithm which can be used for clustering the

    feedback that can be collected by several customers.

    37

  • 7/29/2019 Documention for project

    38/76

    CHAPTER 7

    SOURCE CODE

    Code for Login

    Description:This code generates login page in this page the existed customer has enter their

    id and password.

    Imports ADODBPartialClass Login Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim rs AsNew ADODB.Recordset

    ProtectedSub LinkButton1_Click(ByVal sender AsObject, ByVal eAs System.EventArgs) Handles LinkButton1.Click

    Response.Redirect("Newuser.aspx") EndSub

    ProtectedSub ImageButton1_Click(ByVal sender AsObject, ByVal eAs System.Web.UI.ImageClickEventArgs) Handles ImageButton1.Click

    cn.Open("opinion") If UCase(Mid(cid.Text, 1, 1)) = "C"Then

    rs.Open("select * from register where customerid='" +cid.Text + "' and password='" + pwd.Text + "'", cn, 1, 2) If rs.EOF Then

    rs.Close()cn.Close()MsgBox("User ID or Password Wrong", 16)cid.Text = ""pwd.Text = ""

    38

  • 7/29/2019 Documention for project

    39/76

    cid.Focus() Else

    Session("uname") = cid.TextSession("cname") = rs.Fields("cname").ValueResponse.Redirect("Welcome1.aspx")

    EndIf EndIf If UCase(Mid(cid.Text, 1, 1)) = "A"Then If UCase(cid.Text) = "ADMIN"And UCase(pwd.Text) ="ADMIN"Then

    Session("uname") = cid.TextSession("cname") = cid.TextResponse.Redirect("Welcome1.aspx")

    EndIfcn.Close()

    EndIf EndSubEndClass

    Code for Customer Registration

    Description: This code generates registration page in this page the new customer has enter

    all their personal details.

    Imports ADODBPartialClass Newuser Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim reg AsNew ADODB.Recordset

    ProtectedSub Page_Load(ByVal sender AsObject, ByVal e AsSystem.EventArgs) HandlesMe.Load

    cn.Open("opinion")reg.Open("select * from register", cn, 1, 2)

    If reg.EOF ThenTextBox1.Text = "C101"

    Elsereg.MoveLast()TextBox1.Text = "C" +

    Trim(Str(Val(Mid(reg.Fields("customerid").Value, 2)) + 1)) EndIf

    reg.Close()cn.Close()

    EndSub

    ProtectedSub ImageButton1_Click(ByVal sender AsObject, ByVal eAs System.Web.UI.ImageClickEventArgs) Handles ImageButton1.Click

    If TextBox2.Text = ""ThenTextBox2.Focus()

    39

  • 7/29/2019 Documention for project

    40/76

    ExitSub EndIf If TextBox3.Text = ""Then

    TextBox3.Focus() ExitSub EndIf If TextBox4.Text = ""Then

    TextBox4.Focus() ExitSub EndIf If TextBox4.Text = ""Then

    TextBox4.Focus() ExitSub EndIf

    cn.Open("opinion")reg.Open("select * from register", cn, 1, 2)reg.AddNew()reg.Fields("customerid").Value = TextBox1.Textreg.Fields("cname").Value = TextBox2.Textreg.Fields("occupation").Value = TextBox3.Textreg.Fields("emailid").Value = TextBox4.Textreg.Fields("password").Value = TextBox5.Textreg.Update()reg.Close()cn.Close()MsgBox("Registerd Successfully", 64)TextBox1.Text = "C" + Trim(Str(Val(Mid(TextBox1.Text, 2)) +

    1))TextBox2.Text = ""TextBox3.Text = ""TextBox4.Text = ""TextBox5.Text = ""Response.Redirect("Login.aspx")

    EndSub

    ProtectedSub ImageButton2_Click(ByVal sender AsObject, ByVal eAs System.Web.UI.ImageClickEventArgs) Handles ImageButton2.Click

    Response.Redirect("Login.aspx") EndSub

    ProtectedSub ImageButton3_Click(ByVal sender AsObject, ByVal e

    As System.Web.UI.ImageClickEventArgs) Handles ImageButton3.ClickTextBox2.Text = ""TextBox3.Text = ""TextBox4.Text = ""TextBox5.Text = ""TextBox2.Focus()

    EndSubEndClass

    Code for Product Specifications

    40

  • 7/29/2019 Documention for project

    41/76

    Description: This code generates specification page through this page the customer can view

    all features for specific product.

    Imports ADODBPartialClass features Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim rs AsNew ADODB.Recordset ProtectedSub Button4_Click(ByVal sender AsObject, ByVal e AsSystem.EventArgs) Handles Button4.Click

    cn.Open("opinion")rs.Open("select * from product where productid='" +

    DropDownList1.Text + "'", cn, 1, 2)Image2.ImageUrl = "~/lappys/" + rs.Fields("image").ValueTextBox1.Text = rs.Fields("productname").ValueTextBox2.Text = rs.Fields("modelid").Value

    TextBox3.Text = rs.Fields("processor").ValueTextBox4.Text = rs.Fields("memory").ValueTextBox5.Text = rs.Fields("harddisk").ValueTextBox6.Text = rs.Fields("opticaldrive").ValueTextBox7.Text = rs.Fields("screensize").ValueTextBox8.Text = rs.Fields("internet").ValueTextBox9.Text = rs.Fields("multimedia").ValueTextBox10.Text = rs.Fields("webcam").ValueTextBox11.Text = rs.Fields("ports").ValueTextBox12.Text = rs.Fields("color").ValueTextBox13.Text = rs.Fields("battery").ValueTextBox14.Text = rs.Fields("os").Value

    rs.Close()cn.Close()Session("pid") = DropDownList1.TextSession("pname") = TextBox1.TextSession("mid") = TextBox2.Text

    EndSubEndClass

    Code for Product Questionnaires

    Description: This code generates questionnaire page it consists of questionnaires for specific

    product.

    Imports adodbPartialClass Question Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim que AsNew ADODB.Recordset

    41

  • 7/29/2019 Documention for project

    42/76

    ProtectedSub Page_Load(ByVal sender AsObject, ByVal e AsSystem.EventArgs) HandlesMe.Load IfNot IsPostBack Then OnErrorGoTo fiaz

    Session("pid").ToString()cn.Open("opinion")que.Open("select * from question", cn, 1, 2)que.MoveFirst()

    WhileNot que.EOFLabel1.Text = "Q 1. " + que.Fields("question").ValueRadioButton1.Text = que.Fields("a1").ValueRadioButton2.Text = que.Fields("a2").ValueRadioButton3.Text = que.Fields("a3").ValueRadioButton4.Text = que.Fields("a4").Valueque.MoveNext()Label2.Text = "Q 2." + que.Fields("question").ValueRadioButton5.Text = que.Fields("a1").ValueRadioButton6.Text = que.Fields("a2").ValueRadioButton7.Text = que.Fields("a3").ValueRadioButton8.Text = que.Fields("a4").Valueque.MoveNext()Label3.Text = "Q 3." + que.Fields("question").ValueRadioButton9.Text = que.Fields("a1").ValueRadioButton10.Text = que.Fields("a2").ValueRadioButton11.Text = que.Fields("a3").ValueRadioButton12.Text = que.Fields("a4").Valueque.MoveNext()Label4.Text = "Q 4." + que.Fields("question").ValueRadioButton13.Text = que.Fields("a1").ValueRadioButton14.Text = que.Fields("a2").ValueRadioButton15.Text = que.Fields("a3").ValueRadioButton16.Text = que.Fields("a4").Valueque.MoveNext()Label5.Text = "Q 5." + que.Fields("question").ValueRadioButton17.Text = que.Fields("a1").ValueRadioButton18.Text = que.Fields("a2").ValueRadioButton19.Text = que.Fields("a3").ValueRadioButton20.Text = que.Fields("a4").Valueque.MoveNext()Label6.Text = "Q 6." + que.Fields("question").ValueRadioButton21.Text = que.Fields("a1").Value

    RadioButton22.Text = que.Fields("a2").ValueRadioButton23.Text = que.Fields("a3").ValueRadioButton24.Text = que.Fields("a4").Valueque.MoveNext()Label7.Text = "Q 7." + que.Fields("question").ValueRadioButton25.Text = que.Fields("a1").ValueRadioButton26.Text = que.Fields("a2").ValueRadioButton27.Text = que.Fields("a3").ValueRadioButton28.Text = que.Fields("a4").Valueque.MoveNext()Label8.Text = "Q 8." + que.Fields("question").ValueRadioButton29.Text = que.Fields("a1").Value

    RadioButton30.Text = que.Fields("a2").ValueRadioButton31.Text = que.Fields("a3").ValueRadioButton32.Text = que.Fields("a4").Value

    42

  • 7/29/2019 Documention for project

    43/76

    que.MoveNext()Label9.Text = "Q 9." + que.Fields("question").ValueRadioButton33.Text = que.Fields("a1").ValueRadioButton34.Text = que.Fields("a2").ValueRadioButton35.Text = que.Fields("a3").ValueRadioButton36.Text = que.Fields("a4").Valueque.MoveNext()Label10.Text = "Q 10." +

    que.Fields("question").ValueRadioButton37.Text = que.Fields("a1").ValueRadioButton38.Text = que.Fields("a2").ValueRadioButton39.Text = que.Fields("a3").ValueRadioButton40.Text = que.Fields("a4").Valueque.MoveNext()

    EndWhileque.Close()cn.Close()

    ExitSubfiaz: MsgBox("Select the Product")

    Response.Redirect("features.aspx") EndIf EndSub

    ProtectedSub ImageButton8_Click(ByVal sender AsObject, ByVal eAs System.Web.UI.ImageClickEventArgs) Handles ImageButton8.Click If RadioButton1.Checked = FalseAnd RadioButton2.Checked =FalseAnd RadioButton3.Checked = FalseAnd RadioButton4.Checked =FalseThen

    MsgBox("Missing Answer For First Question") ExitSub EndIf

    If RadioButton5.Checked = FalseAnd RadioButton6.Checked =FalseAnd RadioButton7.Checked = FalseAnd RadioButton8.Checked =FalseThen

    MsgBox("Missing Answer For Second Question") ExitSub EndIf

    If RadioButton9.Checked = FalseAnd RadioButton10.Checked =FalseAnd RadioButton11.Checked = FalseAnd RadioButton12.Checked =

    FalseThen MsgBox("Missing Answer For Third Question") ExitSub EndIf

    If RadioButton13.Checked = FalseAnd RadioButton14.Checked =FalseAnd RadioButton15.Checked = FalseAnd RadioButton16.Checked =FalseThen

    MsgBox("Missing Answer For Fourth Question") ExitSub EndIf

    If RadioButton17.Checked = FalseAnd RadioButton18.Checked =FalseAnd RadioButton19.Checked = FalseAnd RadioButton20.Checked =FalseThen

    43

  • 7/29/2019 Documention for project

    44/76

    MsgBox("Missing Answer For Fifth Question") ExitSub EndIf

    If RadioButton21.Checked = FalseAnd RadioButton22.Checked =FalseAnd RadioButton23.Checked = FalseAnd RadioButton24.Checked =FalseThen

    MsgBox("Missing Answer For Sixth Question") ExitSub EndIf

    If RadioButton25.Checked = FalseAnd RadioButton26.Checked =FalseAnd RadioButton27.Checked = FalseAnd RadioButton28.Checked =FalseThen

    MsgBox("Missing Answer For Seventh Question") ExitSub EndIf

    If RadioButton29.Checked = FalseAnd RadioButton30.Checked =FalseAnd RadioButton31.Checked = FalseAnd RadioButton32.Checked =FalseThen

    MsgBox("Missing Answer For Eighth Question") ExitSub EndIf

    If RadioButton33.Checked = FalseAnd RadioButton34.Checked =FalseAnd RadioButton35.Checked = FalseAnd RadioButton36.Checked =FalseThen

    MsgBox("Missing Answer For Ninth Question") ExitSub EndIf

    If RadioButton37.Checked = FalseAnd RadioButton38.Checked =FalseAnd RadioButton39.Checked = FalseAnd RadioButton40.Checked =FalseThen

    MsgBox("Missing Answer For Tenth Question") ExitSub EndIf

    cn.Open("opinion")que.Open("select * from response", cn, 1, 2)

    que.AddNew()que.Fields("c_id").Value = Session("uname").ToStringque.Fields("p_id").Value = Session("pid").ToStringque.Fields("p_name").Value = Session("pname").ToStringque.Fields("m_id").Value = Session("mid").ToStringque.Fields("fdate").Value = Today.Date

    'First Question If RadioButton1.Checked Then

    que.Fields("oq1").Value = 1 ElseIf RadioButton2.Checked Then

    que.Fields("oq1").Value = 2 ElseIf RadioButton3.Checked Then

    que.Fields("oq1").Value = 3 ElseIf RadioButton4.Checked Thenque.Fields("oq1").Value = 4

    44

  • 7/29/2019 Documention for project

    45/76

  • 7/29/2019 Documention for project

    46/76

    que.Fields("oq7").Value = 2 ElseIf RadioButton27.Checked Then

    que.Fields("oq7").Value = 3 ElseIf RadioButton28.Checked Then

    que.Fields("oq7").Value = 4 EndIf 'eight question If RadioButton29.Checked Then

    que.Fields("oq8").Value = 1 ElseIf RadioButton30.Checked Then

    que.Fields("oq8").Value = 2 ElseIf RadioButton31.Checked Then

    que.Fields("oq8").Value = 3 ElseIf RadioButton32.Checked Then

    que.Fields("oq8").Value = 4 EndIf 'ninth question If RadioButton33.Checked Then

    que.Fields("oq9").Value = 1 ElseIf RadioButton34.Checked Then

    que.Fields("oq9").Value = 2 ElseIf RadioButton35.Checked Then

    que.Fields("oq9").Value = 3 ElseIf RadioButton36.Checked Then

    que.Fields("oq9").Value = 4 EndIf 'tenth question If RadioButton37.Checked Then

    que.Fields("oq10").Value = 1 ElseIf RadioButton38.Checked Then

    que.Fields("oq10").Value = 2 ElseIf RadioButton39.Checked Then

    que.Fields("oq10").Value = 3 ElseIf RadioButton40.Checked Then

    que.Fields("oq10").Value = 4 EndIf OnErrorGoTo raj

    que.Update()MsgBox("Submitted Successfully THANK YOU FOR YOUR FEEDBACK",

    64)Response.Redirect("features.aspx")

    que.Close()cn.Close() ExitSubraj: MsgBox("WE HAVE ALREADY GOT YOUR FEEDBACK ON THIS PRODUCT",16)

    EndSub

    EndClass

    Code for Data Conversion

    46

  • 7/29/2019 Documention for project

    47/76

    Description: This code generates conversion page which is used for converting the

    information in the form of arff format.

    Imports SystemImports System.IOImports System.TextImports System.Collections.GenericImports ADODBPartialClass Conversion Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim rs AsNew ADODB.Recordset Dim ds AsNew ADODB.Recordset

    ProtectedSub Button1_Click(ByVal sender AsObject, ByVal e AsSystem.EventArgs) Handles Button1.Click

    Dim mydocpath AsString =Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) Dim sb AsNew StringBuilder()

    cn.Open("opinion")

    rs.Open("select * from response where fdate between #" +TextBox1.Text + "# and #" + TextBox2.Text + "# and m_id='" +DropDownList1.Text + "'", cn, 1, 2) Dim count AsInteger = 0 If rs.EOF Then

    MsgBox("There is no data", 16)

    rs.Close()cn.Close() ExitSub EndIf

    rs.MoveFirst()

    WhileNot rs.EOFcount = count + 1rs.MoveNext()

    EndWhilers.Close()rs.Open("select distinct c_id from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)rs.MoveFirst()sb.AppendLine("@relation data")sb.AppendLine()sb.Append("@attribute c_id {")

    Dim nir AsInteger = 0 WhileNot rs.EOF

    nir = nir + 1 If nir < count Then

    sb.Append(rs.Fields("c_id").Value.ToString + ",") Else

    sb.Append(rs.Fields("c_id").Value.ToString) EndIf

    47

  • 7/29/2019 Documention for project

    48/76

    rs.MoveNext() EndWhile

    sb.AppendLine("}")rs.Close()cn.Close()

    cn.Open("opinion")rs.Open("select distinct p_id from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    count = 0rs.MoveFirst()

    WhileNot rs.EOFcount = count + 1rs.MoveNext()

    EndWhilers.Close()rs.Open("select distinct p_id from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    sb.Append("@attribute p_id {")nir = 0

    WhileNot rs.EOFnir = nir + 1

    If nir < count Thensb.Append(rs.Fields("p_id").Value.ToString + ",")

    Elsesb.Append(rs.Fields("p_id").Value.ToString)

    EndIfrs.MoveNext()

    EndWhilesb.AppendLine("}")cn.Close()

    cn.Open("opinion")rs.Open("select distinct m_id from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    count = 0rs.MoveFirst()

    WhileNot rs.EOFcount = count + 1rs.MoveNext()

    EndWhilers.Close()rs.Open("select distinct m_id from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    sb.Append("@attribute m_id" + "{")nir = 0

    WhileNot rs.EOFnir = nir + 1

    If nir < count Thensb.Append(rs.Fields("m_id").Value.ToString + ",") Else

    48

  • 7/29/2019 Documention for project

    49/76

    sb.Append(rs.Fields("m_id").Value.ToString) EndIf

    rs.MoveNext() EndWhile

    sb.AppendLine("}")cn.Close()

    cn.Open("opinion")rs.Open("select distinct fdate from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    count = 0rs.MoveFirst()

    WhileNot rs.EOFcount = count + 1rs.MoveNext()

    EndWhilers.Close()rs.Open("select distinct fdate from response where fdate

    between #" + TextBox1.Text + "# and #" + TextBox2.Text + "# andm_id='" + DropDownList1.Text + "'", cn, 1, 2)

    sb.Append("@attribute fdate" + "{")nir = 0

    WhileNot rs.EOFnir = nir + 1

    If nir < count Thensb.Append(rs.Fields("fdate").Value + ",")

    Elsesb.Append(rs.Fields("fdate").Value)

    EndIfrs.MoveNext()

    EndWhilesb.AppendLine("}")sb.AppendLine()sb.AppendLine("@attribute oq1 numeric")sb.AppendLine("@attribute oq2 numeric")sb.AppendLine("@attribute oq3 numeric")sb.AppendLine("@attribute oq4 numeric")sb.AppendLine("@attribute oq5 numeric")sb.AppendLine("@attribute oq6 numeric")

    sb.AppendLine("@attribute oq7 numeric")sb.AppendLine("@attribute oq8 numeric")sb.AppendLine("@attribute oq9 numeric")sb.AppendLine("@attribute oq10 numeric")rs.Close()rs.Open("select * from response where fdate between #" +

    TextBox1.Text + "# and #" + TextBox2.Text + "# and m_id='" +DropDownList1.Text + "'", cn, 1, 2)

    sb.AppendLine()sb.AppendLine("@Data")

    WhileNot rs.EOFsb.AppendLine(rs.Fields("c_id").Value.ToString + "," +

    rs.Fields("p_id").Value.ToString + "," +rs.Fields("m_id").Value.ToString + "," + rs.Fields("fdate").Value +"," + rs.Fields("oq1").Value.ToString + "," +

    49

  • 7/29/2019 Documention for project

    50/76

    rs.Fields("oq2").Value.ToString + "," +rs.Fields("oq3").Value.ToString + "," +rs.Fields("oq4").Value.ToString + "," +rs.Fields("oq5").Value.ToString + "," +rs.Fields("oq6").Value.ToString + "," +rs.Fields("oq7").Value.ToString + "," +rs.Fields("oq8").Value.ToString + "," +rs.Fields("oq9").Value.ToString + "," +rs.Fields("oq10").Value.ToString)

    rs.MoveNext() EndWhile Using outfile AsNew StreamWriter("c:\Opinionminig\APP_DATA\data.arff")

    outfile.Write(sb.ToString()) EndUsing

    rs.Close() Dim j AsInteger Dim c1, c2, c3, c4 AsInteger

    c1 = 0c2 = 0c3 = 0c4 = 0rs.Open("select * from response where fdate between #" +

    TextBox1.Text + "# and #" + TextBox2.Text + "# and m_id='" +DropDownList1.Text + "'", cn, 1, 2)

    rs.MoveFirst() WhileNot rs.EOF For j = 5 To 14 If rs.Fields(j).Value = 1 Then c1 = c1 + 1 If rs.Fields(j).Value = 2 Then c2 = c2 + 1 If rs.Fields(j).Value = 3 Then c3 = c3 + 1 If rs.Fields(j).Value = 4 Then c4 = c4 + 1 Next

    rs.MoveNext() EndWhile

    rs.Close()ds.Open("select * from decision", cn, 1, 2)ds.Fields(0).Value = c1ds.Fields(1).Value = c2ds.Fields(2).Value = c3ds.Fields(3).Value = c4

    ds.Update()ds.Close()cn.Close()MsgBox("Data Conversion Completed", 64)

    EndSub

    ProtectedSub Calendar1_SelectionChanged(ByVal sender AsObject,ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged

    TextBox1.Text = Calendar1.SelectedDateTextBox1.Style.Add("text-align", "center")

    EndSub

    ProtectedSub Calendar2_SelectionChanged(ByVal sender AsObject,ByVal e As System.EventArgs) Handles Calendar2.SelectionChanged

    50

  • 7/29/2019 Documention for project

    51/76

    TextBox2.Text = Calendar2.SelectedDateTextBox2.Style.Add("text-align", "center")

    EndSub

    EndClass

    Code for Output

    Description: This code generates output page through this page the admin can view the

    percentage of opinions.

    Imports SystemImports System.IO

    Imports System.TextImports System.Collections.GenericPartialClass output Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim rs AsNew ADODB.Recordset

    ProtectedSub Page_Load(ByVal sender AsObject, ByVal e AsSystem.EventArgs) HandlesMe.Load Using outfile AsNew StreamReader("C:\Opinionminig\APP_DATA\out")

    TextBox1.Text = outfile.ReadToEnd

    EndUsing Dim a, b, c, d, t AsInteger

    cn.Open("opinion")rs.Open("select * from decision", cn, 1, 2)a = rs.Fields(0).Valueb = rs.Fields(1).Valuec = rs.Fields(2).Valued = rs.Fields(3).Valuers.Close()cn.Close()t = a + b + c + dChr(10)

    TextBox2.Text = "Percentage of Opinion" + Chr(10) + Chr(10)TextBox2.Text = TextBox2.Text + "A=" + Str(a) + "(" +

    Mid(Str((a / t) * 100), 1, 6) + "%)" + Chr(10) + Chr(10)TextBox2.Text = TextBox2.Text + "B=" + Str(b) + "(" +

    Mid(Str((b / t) * 100), 1, 6) + "%)" + Chr(10) + Chr(10)TextBox2.Text = TextBox2.Text + "C=" + Str(c) + "(" +

    Mid(Str((c / t) * 100), 1, 6) + "%)" + Chr(10) + Chr(10)TextBox2.Text = TextBox2.Text + "D=" + Str(d) + "(" +

    Mid(Str((d / t) * 100), 1, 6) + "%)" + Chr(10) + Chr(10)TextBox2.Style.Add("text-align", "center")

    EndSub

    EndClass

    51

  • 7/29/2019 Documention for project

    52/76

    Code for Decision

    Description: This code generates Decision page through this page the admin can view the

    decision for the product.

    Imports ADODBPartialClass Decision Inherits System.Web.UI.Page Dim cn AsNew ADODB.Connection Dim ds AsNew ADODB.Recordset ProtectedSub Page_Load(ByVal sender AsObject, ByVal e AsSystem.EventArgs) HandlesMe.Load IfNot IsPostBack = TrueThen

    cn.Open("opinion")ds.Open("select * from decision", cn, 1, 2)

    Dim a, b, c, d AsIntegera = ds.Fields("c1").Valueb = ds.Fields("c2").Valuec = ds.Fields("c3").Valued = ds.Fields("c4").Value

    If a > b And a > c And a > d ThenLabel1.Text = "This Product performance is

    Excellent.."Image3.ImageUrl = "~/smileys/" +

    ds.Fields("image").ValueImage4.Visible = FalseImage5.Visible = FalseImage6.Visible = FalseLabel5.Text = "Recommended to carry same work for

    other products"

    ElseIf b > a And b > c And b > d ThenLabel2.Text = "This Product performance is

    Average.."Image4.ImageUrl = "~/smileys/" +

    ds.Fields("image1").Value

    Image3.Visible = FalseImage5.Visible = FalseImage6.Visible = FalseLabel6.Text = "Recommended to slightly change the

    work on product"

    ElseIf c > a And c > b And c > d ThenLabel3.Text = "This Product performance is Below

    Average.. "Image5.ImageUrl = "~/smileys/" +

    ds.Fields("image2").ValueImage4.Visible = False

    Image3.Visible = FalseImage6.Visible = False

    52

  • 7/29/2019 Documention for project

    53/76

    Label7.Text = "Recommended to carry some Majorchanges on product"

    ElseIf d > a And d > b And d > c ThenLabel4.Text = "This Product performance is Not

    Good.."Image6.ImageUrl = "~/smileys/" +

    ds.Fields("image3").ValueImage4.Visible = FalseImage5.Visible = FalseImage3.Visible = FalseLabel8.Text = "Recommended to Overall change on

    product"

    ElseIf a = b Or a = c ThenLabel2.Text = "This Product performance is

    Average.."Image4.ImageUrl = "~/smileys/" +

    ds.Fields("image1").ValueImage3.Visible = FalseImage5.Visible = FalseImage6.Visible = FalseLabel6.Text = "Recommended to slightly change the

    work on product"

    ElseIf a = d Or b = c ThenLabel3.Text = "This Product performance is Below

    Average.. "Image5.ImageUrl = "~/smileys/" +

    ds.Fields("image2").ValueImage4.Visible = FalseImage3.Visible = FalseImage6.Visible = FalseLabel7.Text = "Recommended to carry some Major

    changes on product"

    ElseIf d = b ThenLabel3.Text = "This Product performance is Below

    Average.. "Image5.ImageUrl = "~/smileys/" +

    ds.Fields("image2").ValueImage4.Visible = FalseImage3.Visible = FalseImage6.Visible = FalseLabel7.Text = "Recommended to carry some Major

    changes on product"

    ElseIf c = d ThenLabel4.Text = "This Product performance is Not

    Good.."Image6.ImageUrl = "~/smileys/" +

    ds.Fields("image3").Value

    Image4.Visible = FalseImage5.Visible = FalseImage3.Visible = False

    53

  • 7/29/2019 Documention for project

    54/76

    Label8.Text = "Recommended to Overall change onproduct"

    EndIf EndIf EndSubEndClass

    54

  • 7/29/2019 Documention for project

    55/76

    CHAPTER 8

    SCREEN SHOTS

    Login Form

    The Existed Customer has log in by entering their details through this form.

    55

  • 7/29/2019 Documention for project

    56/76

    Registration Form

    The new customer has register by giving their personal details in this form.

    56

  • 7/29/2019 Documention for project

    57/76

    Welcome Form

    57

  • 7/29/2019 Documention for project

    58/76

    After successfully logging the existed customer a welcome message will be displayed And its

    like Home page includes information and their features for all the products.

    58

  • 7/29/2019 Documention for project

    59/76

    Product Specifications Form

    This consists of all the specification details of product vostro by choosing the product id.

    59

  • 7/29/2019 Documention for project

    60/76

    Product Specifications Form

    This form consists of all the specification details of product XMS by choosing the product id.

    60

  • 7/29/2019 Documention for project

    61/76

    Product Specifications Form

    This form consists of all the specification details of product latitude by choosing the product

    id.

    61

  • 7/29/2019 Documention for project

    62/76

    Product Specifications Form

    This form consists of all the specification details of product inspiron by choosing the product

    id.

    62

  • 7/29/2019 Documention for project

    63/76

    Product Questionnaires Form

    It consists of questionnaires with multiple choices for the selected product.

    63

  • 7/29/2019 Documention for project

    64/76

    Conversion Form

    The data is converted into arff file format through this form.

    64

  • 7/29/2019 Documention for project

    65/76

    Report Text Form

    It shows the product review information in the form of text format. This data can be given asan input for clustering in the weka tool

    65

  • 7/29/2019 Documention for project

    66/76

    Clustering Result

    This form shows the result for the product review after performing the clustering method inthe weka tool.

    66

  • 7/29/2019 Documention for project

    67/76

    Product Decision

    This form shows decision for product review.

    67

  • 7/29/2019 Documention for project

    68/76

    CHAPTER 9

    SYSTEM TESTING

    9.1 Definition of System Testing

    The common view of testing held by users is that it is performed to improve that there

    are no errors in a program. This is extremely difficult since designer cannot prove to be one

    hundred percent accurate. Therefore, the most useful and practical approach is with the

    understanding that testing is the process of executing a program with explicit intention offinding errors that make the program fail.

    Testing has its own cycle. The testing process begins with the product requirements

    phase and from there, parallels the entire development process. In other words, for each phase

    of each phase of the development process there is an important testing activity. Successful

    testing requires a methodical approach. It requires the focus on basic critical factors:

    Planning

    Project and process control

    Risk management

    Organization and professionalism Inspections

    Measurement tools

    9.2 Test Plan

    68

  • 7/29/2019 Documention for project

    69/76

    Before going for testing, first we have to decide upon the type of testing to be carried

    out. The following factors are taken into consideration:

    To ensure that information properly flows into and out of program.

    To find whether the local data structures maintaining their integrity during all steps in

    an algorithm execution or not.

    To ensure that the module operate properly at boundaries established to limit or

    restrict processing.

    To find out whether error-handling paths are working correctly or not.

    To find out whether the values are correctly updated or not check for validation.

    Testing is an important phase in the development life cycle of the product.

    Objectives of Testing

    Testing is done to ensure

    No bug occurrence in future usage of the Application.

    Quality Assurance standard is achieved.

    Discover symptoms caused by bugs and provide clear diagnosis so that bugs can be

    easily prevented.

    9.3 Test Case Design Techniques

    During testing the program to be tested is executed with a set of test cases and output

    of the program for the test cases is evaluated to determine if the program is performing as

    expected. To accomplish this objectives test case design techniques are used:

    69

  • 7/29/2019 Documention for project

    70/76

    White Box testing

    Black Box testing

    9.3.1White box Testing

    White box testing of software is predicted on a close examination of procedural detail.

    The status of the project may be tested at various points to determine whether the expected or

    asserted status is corresponding to the actual status. Using this, the following test cases can be

    derived:-

    Exercise all logical conditions on their true and false side.

    Execute all loops within their boundaries and their operation bounds.

    Exercise internal data structure to ensure their validity.

    9.3.2 Black box Testing

    Knowing the specified function that a product has been designed to perform, test can

    be conducted that each function is fully operational. Black box test are carried out to test that

    input to a function is properly accepted and output is correctly produced. A black box tests

    examines some aspects of a system with little regard for the internal structure of the software.

    Errors in the following categories were found through Black box testing:

    Incorrect or missing functions.

    Interface errors.

    Errors in database structure or external database access.

    Performance errors.

    Initialization and termination errors.

    9.3.3 Test Cases

    Case Generation Report

    Test Case 1

    70

  • 7/29/2019 Documention for project

    71/76

    Input: Already existed customer has entered their Customer Id and Password. For new users

    Click on the New User

    Process: Checks whether the entered Customer Id and Password pair are correct or wrong by

    comparing with the database.

    Output: If Customer Id and Password word pair matches, then features form is displayed,

    else appropriate error message displayed .

    Test Case 2

    Input: Customer Id and Customer Name, Customer E-mail Id, Occupation, Password are

    entered.

    Process: Checks whether the Customer Id is automatically generated or not by comparing

    with the database.

    Output: If Customer Id is generated, then customer registration details are created

    successfully, else a label is displayed with a message.

    Test Case 3

    Input: One or more mandatory fields are not filled.

    Process: Checks whether all the mandatory fields are filled with data or not.

    Output: If all the mandatory fields are filled, then next step is carried out, else an

    appropriate error message is displayed.

    9.4 Testing Strategies

    Testing is set of activities that can be planned in advanced and conducted

    systematically. A strategy for software testing must accommodate low- level tests that are

    necessary to verify that a small source code segment has been correctly implemented as well

    as high-level tests that validate major system function against customer requirements.

    9.4.1 Validation Testing

    It begins after the integration testing is successfully assembled. Validation succeeds

    when the software functions in a manner that can be reasonably accepted by the client. In this

    the majority of the validation is done during the data entry operation where there is a

    maximum possibility of entering wrong data. Other validation will be performed in all

    process where correct details and data should be entered to get the required results.

    9.4.2 Test Case Verification

    71

  • 7/29/2019 Documention for project

    72/76

    Test Case Verification 1.1

    User name is vara and password is giri that exist in the database.

    Input: vara and giri is entered as username and password

    Process: Checks vara and giripair exist in the database.Output: If vara and giri pair does matches, then features form is displayed, else

    appropriate error message Username or password is wrong is displayed.

    Test Case Verification 1.2

    Customer id is C101, Customer name is vara, E-mail id is [email protected], Occupation is

    student and Password is giri.

    Input: C101, vara, [email protected], student, giri are entered.

    Process: Checks whether the C101 is automatically generated or not by comparing with the

    database.

    Output: If C101 is generated, then the above details are created successfully, else a label is

    displayed with a message.

    Test Case Verification 1.3

    Customer id is C101, Customer name is vara, Occupation is student and Password is giri is

    entered while the answer is left null.

    Input:C101, vara, student and giri is entered while the answer is left null

    Process: Checks whether all the mandatory fields are filled with data or not.

    Output: As the mandatory field answer is null, the following error message is displayed

    PLEASE FILL ALL THE STARRED FIELDS

    CHAPTER 10

    CONCLUSION and FUTURE ENHANCEMENT

    10.1 Conclusion

    72

  • 7/29/2019 Documention for project

    73/76

    In this project, I proposed a set of techniques for mining and summarizing product

    feedback based on opinion mining technique. The objective is to make effective decision for

    product and sales improvement in manufacturing business sector with the help of feedback

    opinion collected from various customers. The experimental results indicate that the proposed

    techniques are very promising in performing their tasks. It is believe that this problem will

    become increasingly important as more people are buying and also giving feedback on the

    web. Summarizing the reviews is not only useful to common shoppers, but also crucial to

    product manufacturers.

    10.2 Future Enhancements

    The above algorithm which works for same product with different models, its not

    possible to work for different products. In future its may be possible to enhance in this

    system for different products with different models.

    73

  • 7/29/2019 Documention for project

    74/76

    CASE STUDY FOR CLUSTERING

    Algorithm: K-Means. The K-means algorithm for partitioning, where each clusters center

    is represented by the mean value of the objects in the cluster.

    Input:

    K: the number of clusters,

    D: a data set containing n objects.

    Output: A set of k clusters

    Method:

    1) Arbitrarily choose K objects from D as the initial cluster centers;

    2) Repeat

    3) (Re)assign each object to the cluster to which the object is the most similar, based on

    the mean value of the objects in the cluster;

    4) Update the cluster means, i.e., calculate the mean value of the objects for each cluster;

    5) Until no change;

    74

  • 7/29/2019 Documention for project

    75/76

    REFERENCES

    1. Technical Papers

    [1]. Ana-Maria, Extracting Product Features and Opinion from Reviews, Human Language

    Technology Conference and Conference on Empirical Methods in Natural Language,

    Vancouver , Canada, pp. 339-351, 2005.

    [2]. Bing Liu, Opinion Observer: Analyzing and Comparing Opinions on the Web, WWW

    2005, Chiba, Japan, pp.342-251, 2005.

    [3]. Hu. M. and Liu, B., Mining and Summarizing Customer Reviews. In KDD04, (Seattle,

    WA, 2004), ACM.

    [4]. Thomas Y. Lee, Needs-based Analysis of Online Customer Reviews, ICEC07,

    Minneapolis, Minnesota, USA, pp. 303-309, 2007.

    [5]. Wei Haung, XinChen and Haibo Wang, Product Information Retrieval based on

    Opinion Mining. China: University of Hubei, 2010.

    2. Books

    [1]. Data Mining: Concepts and Techniques, Jiaweni Han, Morgan Kaufmann Publishers,

    SecondEdition.

    [2]. ASP.NET and VB.NET Web Programming, Matt J. Crouch, Pearson Education.

    75

  • 7/29/2019 Documention for project

    76/76

    [3]. Software Engineering: A Practitioners Approach, Roger S. Pressman, McGraw Hill, and

    Sixth Edition.