canny surveys

Upload: parth-ghiya

Post on 04-Jun-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/13/2019 Canny Surveys

    1/91

    A

    Project

    Report on

    Canny Surveys

    Prepared By:

    Ghiya Parth (Information Technology, 09/IT/021)

    Group-023

    Guided By:-

    Mrs. M isba Shaikh

    M r. Vipin Bardia

    At

    Computer Engineering & Information Technology Department

    AHMEDABAD INSTITUTE OF TECHNOLOGY

    Ahmedabad-380060

  • 8/13/2019 Canny Surveys

    2/91

    Canny Surveys

    by

    Ghiya Parth (090020116027)

    (Ahmedabad Institute of Technology)

    Developed At

    CIGNEX Datamatics

    Ahmedabad

    A thesis (project) submitted

    in

    Partial fulfillment of the requirements

    for the degree of

    BACHELOR OF ENGINEERING

    In

    Information Technology

    Project Guide (Internal): Project Guide (External):

    Mrs. Misba Shaikh Mr. Vipin Bardia

    Lecturer CE/IT Department Jr. Consultant

    Ahmedabad Institute of Technology CIGNEX Datamatics

  • 8/13/2019 Canny Surveys

    3/91

    Certificate

    This is to certify that the Mini Project entitled Canny Surveys" submitted by Ghiya

    Parth B.(090020116027), towards the partial fulfillment of the requirements for the degree of

    Bachelor of Engineering in Information Technology ofAhmedabad Institute Of Technology

    under the Gujarat Technological Uni versity, Ahmedabad is the record of work carried out by

    him under my supervision and guidance. In my opinion, the submitted work has reached a level

    required for being accepted for examination. The results embodied in this project, to the best of

    my knowledge, haven't been sub-mitted to any other university or institution for award of any

    degree or diploma.

    Misba Shaikh Prof. Satyadev Vyas

    Asst. Prof / Lecturer Head of Dept.

    CE/IT Dept. CE/IT Dept.

    AIT, Ahmedabad. AIT,Ahmedabad.

    AHMEDABAD INSTITUTE OF TECHNOLOGY

    NR. VASANTNAGAR TOWNSHIP, GOTA - OGNAJ ROAD

    AHMEDABAD 382481

    NOV- 2012

  • 8/13/2019 Canny Surveys

    4/91

    This is to certify that the Mini Project entitled Canny Surveys"submitted by Ghiya

    Parth B.,towards the partial fulfilment of the requirements for internship program is the record

    of work carried out by him under my supervision and guidance. In my opinion, the submitted

    work has reached a level required for being accepted for examination. The results embodied in

    this project, to the best of my knowledge, haven't been sub-mitted to any other university or

    institution for award of any degree or diploma

    Mr. Vipin Bardia

    Jr. Consultant

    CIGNEX Datamatics

    CIGNEX DATAMATICS

    President Plaza Thaltej Circle, S G Road,

    Ahmedabad Sarkhej Gandhinagar Highway, Thaltej, Ahmedabad, Gujarat

  • 8/13/2019 Canny Surveys

    5/91

    I | P a g e

    CANDIDATES DECLARATION

    This is to certify that

    1) The project comprise my original work towards degree of bachelor ofengineering in Information technology at AHEMEDABAD INSTITUTE

    OF TECHNOLOGY, under the GTU, Ahmedabad and has not been

    submitted elsewhere for a degree

    Ghiya Parth

    Group IT-023

    (090020116027)

  • 8/13/2019 Canny Surveys

    6/91

    II | P a g e

    ACKNOWLEDGEMENT

    It is truly said,

    By the time you realize the value of the people around us, It might be time for them to

    leave.

    So one should never miss a chance to say

    THANK YOU!!

    Hence acknowledgement here is an effort to thank all such people who contributed to my project

    one way or another.

    First of all I would like to thank almighty for blessing me with competitive senses and a platform

    to spruce myself and I would like to thank my parents for their silent support.

    It all started with in the beginning of our 7thSemester of B.E. I was selected as the intern

    at CIGNEX Datamaticsfor internship. I heartily thank Mr Peter Pereirawho believed in my

    abilities and gave me a chance that would shape my future.

    During my training period I had Mr Vipin Bardiaas my mentor. I specially would like

    to thank him and I found him as a very helpful friend.

    I would also like to pay my sincere thanks to Mrs Misba Shaikh (Lect., CE/IT

    department), as my internal project guide who actively participated in the college presentation

    and gave me valuable advices whenever necessary. And I would like to thank to Prof. Satyadev

    Vyas (HOD, CE/IT department) for supporting me and encourage me.

    With Sincere Regards,

    Ghiya Parth

  • 8/13/2019 Canny Surveys

    7/91

    III | P a g e

    ABSTRACT

    An application for survey includes creating survey database for storing surveyee

    information, survey question information, and survey results information. The surveyee

    information consists about the creator of survey and the targeted audience which he seeks

    opinion of. The survey question information tells about the surveyor and the targeted

    information. It seeks to display the questions on their display through which the targeted

    audience can enter their opinion. The survey results information focuses on generating high

    quality reports including various types of graphs. The entire application focuses real time work

    and to reduce the total cost of ownership by adopting open source technology. The application

    focuses on survey logic which makes the survey less tedious, more accurate by simply

    distinguishing the questions based on the user.

  • 8/13/2019 Canny Surveys

    8/91

    IV | P a g e

    LIST OF ABBREVIATIONS

    Name Abbreviations

    JSP Java Server Pages

    J2EE Java 2 Platform Enterprise Edition

    IDE Integrated Development Environment

    HTTP Hyper Text Transfer Protocol

    CS Canny Surveys

    SRS System Requirement Specification

    GUI Graphical User Interface

    PDF Portable Document Format

    XML eXtended Mark-up language

    CSS Cascading Style Sheet

    AJAX Asynchronous JavaScript And XML

    JS JavaScript

    SRM Software Reuse Model

    RTF Rich Text File

    ODT Online Dictionary and Thesaurus

    CSV Comma Separated Value

    DOM Document Object Model

  • 8/13/2019 Canny Surveys

    9/91

    V | P a g e

    LIST OF TABLES

    Table No Table Description PageNo

    2.1 Milestone deliverables 10

    2.2 Project Scheduling 11

    2.3 Risk Identification 13

    2.4 Risk Analysis 16

    4.1 Event Response Table 31

    4.2 Class Diagram Access Modifiers 35

  • 8/13/2019 Canny Surveys

    10/91

    VI | P a g e

    LIST OF FIGURES

    Figure

    No

    Figure Description Page No

    2.1 Risk Management 12

    3.1 Module Architecture 20

    4.1 Class Diagram 36

    4.2 Audience Use Case 38

    4.3 Decision Committee Use Case 39

    4.4 Admin Use Case 404.5 Admin Activity Diagram 44

    4.6 Fill Survey Activity Diagram 45

    4.7 Create Survey Activity Diagram 46

    4.8 Admin Sequence Diagram 50

    4.9 Audience Functionalities Sequence Diagram 51

    4.10 Decision Committee Sequence Diagram 52

    4.11 Audience Scenario Sequence Diagram 53

    4.12 Audience Functionalities Sequence Diagram 54

    4.13 Role Change Request Scenario Diagram 55

    4.14 Surveys Fill up Sequence Diagram 56

    4.15 E-R Diagram 69

    5.1 Table Relationship Diagram 74

    5.2 Home Page State Transition Diagram 75

    5.3 Admin Page State Transition Diagram 76

  • 8/13/2019 Canny Surveys

    11/91

    VII | P a g e

    COMPANY PROFILE

    CIGNEX Datamatics(formerly CIGNEX Technologies Inc.) was founded in

    2000 with a vision to help organizations leverage Open Source technologies toachieve their business objectives. Today, CIGNEX Datamatics is a global leader of

    Open Source Enterprise Portals, Content Management, and Big Data solutions for

    businesses and public agencies. CIGNEX Datamatics helps enterprises improve

    productivity by integrating existing systems with Open Source solutions to lower

    costs. By leveraging Open Source technologies we have helped our clients

    achieve business goals, increase business velocity, lower the cost of doing

    business, reduce TCO, and gain competitive advantage.

  • 8/13/2019 Canny Surveys

    12/91

    Contents

    Candidates Declaration.......... I

    Acknowledgement.. IIAbstract. III

    List of Abbreviations.....IVList of Tables..... V

    List Of Figures...VICompany Profile...........VII

    Chapter 1

    1 Introduction

    1.1 Project Summary.. 2

    1.2 Purpose. ........ 2

    1.3 Scope.. ...... 3

    1.4 Objective..... 3

    1.5 Technology And Literature Review.... 4

    Chapter 2

    2 System Management

    2.1 Project Planning.. 72.1.1 Project Development Approach And Justification................ 7

    2.1.2 Milestones And Deliverables............................................................ 11

    2.2 Project Scheduling..

    152.3 Risk Management.. 12

  • 8/13/2019 Canny Surveys

    13/91

    4.4.3 Can the system be integrated with the other system which is already in 29

    place.?......................................................................................................... ...................

    4.5 Requirements Validation.. 294.6 Activities in the New System. 31

    4.7 Features of the New System.. 33

    4.8 Class Diagram... 35

    4.9 System Activity.......................... 37

    4.10 Activity Diagrams....................................... 414.11 Sequence Diagrams ...................... 47

    4.12 Data Modeling..................... 57

    4.12.1 Data Dictionary. 574.12.2 E-R Diagram 69

    4.13 Main Modules Of The New System 70

    4.14 Selection Of Software And Hardware Justification..................... 71

    Chapter 3

    3. System Requirement's study

    3.1 User Characteristics.. 19

    3.2 Hardware And Software Requirements...... 20

    3.3 Constraints... 21

    3.1 Interfaces to other application 21

    3.2 Parallel Operations 223.3 Assumptions and Dependencies 22

    Chapter 4

    4 System Analysis

    4.1 Study Of Current System 24

    4.2 Problems and Weakness Of Current System..................... 24

    4.3 Requirements of New System. 254.3.1 User Requirements. 254.3.2System Requirements. 26

    4.4 Feasibility Studies.. 26

    4.4.1 Does the system Contribute to the overall development of the 28organization.?...............................................................................................................

    4.4.2 Can the System be implemented using current technology and within the 29

    given cost and schedule constraints?..............................................................................

  • 8/13/2019 Canny Surveys

    14/91

    Chapter 5

    5. System Design

    5.1 Table Relationship Diagram... 745.2 State Transition UML Diagram.. 75

  • 8/13/2019 Canny Surveys

    15/91

    Canny Surveys INTRODUCTION

    AIT (IT) 1 | P a g e

    CHAPTER-1

    INTRODUCTION

    IN THIS CHAPTER

    PROJECT SUMMARY.... PURPOSE..... SCOPE. OBJECTIVE. TECHNOLOGY AND LITERATURE REVIEW....

  • 8/13/2019 Canny Surveys

    16/91

    Canny Surveys INTRODUCTION

    AIT (IT) 2 | P a g e

    INTRODUCTION

    1.1 PROJECT SUMMARY

    To solve the current problems in survey a web application CannySurveys is

    proposed. The proposed software CannySurveys is meant to act as a tool to help the analysts in

    CIGNEX DATAMATICS for their research works.

    The application will help to minimize work load carried out in a survey

    process. The system will be designed to maximize the efficiency of a requirement analyst when

    he will get a clear idea of the popular requirements, which would have been otherwise done

    manually or some applications running on external web server. The application shall eliminate

    all issues of hosting an application at external web server like security, a lack of direct oversight

    while remaining easy to use and understand. Designed in open source environment it shall save

    the total cost of ownership.

    1.2 PURPOSE

    As per current scenario all employees at CIGNEX use external tools for

    Surveys. External tools do not provide them the control they need over the application. The risk

    of sharing company data on external storage is also a concerning factor. So the need of a new

    application arouses

    .

    An application that they can use on their own web server and can have total

    control on. An application designed in open source thus providing all the designing advantages

    and benefits.

  • 8/13/2019 Canny Surveys

    17/91

    Canny Surveys INTRODUCTION

    AIT (IT) 3 | P a g e

    The main objectives of Canny Surveys are as follows:

    Making survey filling up less tedious Providing an agile application that can stand up to the company needs. Providing an alternative to external tools usage Provide all the advantages of open source technologies. To achieve the highest practical rates of unbiased response

    1.3 SCOPE

    Currently at present the project is limited to the company itself, but in future the

    possibility of downloading source code files at a price may be born.

    Speaking of the project the application is designed to allow an analyst to communicate

    with a group of people via different types of questions and based on the collective response of

    people, generate reports of the survey results. The software shall provide wide range of output

    reports making it easy for anyone to read it and use its results for any process. The software shall

    facilitate communication between analyst and other people. Wide options shall be used

    throughout the system, to provide enough choices so as to enhance the communication in hope

    for better utilization of survey results. The system shall also contain a relational database of all

    the employees, based on which the distribution of various functions of the application is based

    on. The application shall be configurable; it shall be able to configure as many surveys as

    possible. The application shall provide a role based survey to access it.

    1.4 OBJECTIVE

    The system is designed with the following objectives.

    To provide an agile design

  • 8/13/2019 Canny Surveys

    18/91

    Canny Surveys INTRODUCTION

    AIT (IT) 4 | P a g e

    Designing the application in such a way that it follows the MVC architecture. So only valid

    requests shall have access to java classes, which would be the talking component with the

    database. Servlets shall act as a controller.

    To reduce the cost of ownership.it shall follow one of the companys goal of reducing the total cost of ownership by

    seamlessly adopting open source technologies. So designing shall have its own advantages

    such as frequent updates, less bugs, more efficiency and more.

    To collect unbiased precise survey responses.The application shall have time based surveys so once the survey is closed no one would be able

    to fill it. This shall increase the predictability rate of people. Also the application shall prevent

    search indexes from the survey to be displayed, so only the targeted audience is able to fill up the

    survey. These further results in a more accurate decision for the decision committee to make.

    To make survey filling less tedious and more enjoyable.The application shall have the option of survey logic which shall design the survey in such a

    way that if a user omits certain questions than other questions pertaining to that matter shall

    automatically be omitted. This will make survey filling less tedious.

    Instant decision making with reports.The application shall be helpful to all members of decision making committee as instant

    reports shall be available once the survey expires. Wide range of reports shall include pie

    charts, graphs, and histograms. Also option of exporting it to word, pdf, csv and more shall

    make workload of members of decision committee less.

    1.5 TECHNOLOGY AND LITERATURE REVIEW

    In this we use J2SE (JAVA) technology. Project coding and GUI are done on java platform

    with the use ofNETBEANS IDE.

  • 8/13/2019 Canny Surveys

    19/91

    Canny Surveys INTRODUCTION

    AIT (IT) 5 | P a g e

    One characteristic, platform independence, means that programs written in the Java

    language must run similarly on any supported hardware/operating-system platform. One should

    be able to write a program once, compile it once, and run it anywhere. The syntax of Java is

    largely derived from C++. Unlike C++, which combines the syntax for structured, generic, and

    object-oriented programming, Java was built exclusively as an object oriented language. The

    Java Runtime Environment, orJRE, is the software required to run any application deployed on

    the Java Platform. End-users commonly use a JRE in software packages and Web browser plug-

    in. Sun also distributes a superset of the JRE called the Java 2 SDK (more commonly known as

    the JDK), which includes development tools such as the Java compiler, Java doc, Jar and

    debugger.

    Netbeans is strong tool which is use for editing, debugging, to run the application in very

    easy way with Java. It has very user friendly GUI so easy to use. It provides all support java doc,

    java libraries. It also uses to develop web-application also.

    Moreover for client side scripting Jquery shall be used. JQueryis a multi-browser JavaScript

    library designed to simplify the client-side scripting of HTML. jQuery is free, open source

    software, licensed under the MIT License.jQuery's syntax is designed to make it easier to

    navigate a document, select DOM elements, create animations, handle events, and develop Ajax

    applications. jQuery also provides capabilities for developers to create plug-ins on top of the

    JavaScript library. This enables developers to create abstractions for low-level interaction and

    animation, advanced effects and high-level, theme-able widgets. The modular approach to the

    jQuery library allows the creation of powerful dynamic web pages and web applications.

    JasperReportsis an open source Java reporting tool that can write to a variety of targets, such

    as: screen, a printer, into PDF, HTML,Microsoft Excel, RTF, ODT, Comma-separated

    values or XML files. It can be used in Java-enabled applications, including Java EE or web

    applications, to generate dynamic content. It reads its instructions from an XML or .jasper file.

  • 8/13/2019 Canny Surveys

    20/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 6 | P a g e

    CHAPTER-2

    SYSTEM MANAGEMENT

    IN THIS CHAPTER

    PROJECT PLANNING PROJECT SCHEDULING... RISK MANAGEMENT

  • 8/13/2019 Canny Surveys

    21/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 7 | P a g e

    PROJECT MANAGEMENT

    Software project management is the umbrella activity within software engineering. This

    chapter provides how to plan, track and estimates the application by managing various

    phases. It encompasses Project Development Approachs justification, Schedules, risk

    analysis, cost and effort estimation.

    2.1PROJECT PLANNING

    2.1.1 Project Development Approach and JustificationThe model that is suited for is software reuse model. Many software firms make in course of

    time libraries of generic reusable software components that can be assembled to give shape to

    new software products. Not only codes but designs and specifications can also be reused.

    Components that can be reused may be

    1. a whole application system2. major subsystems of an application3. Modules or objects.4. Functions

    Advantages occurring from this software reuse are

    1. Increasing system reliability2. Reduced overall project risk due to less uncertainty in cost estimates3. Effective use of specialists in developing generic components that in a wide array of

    variety of products.

    4. Embodiment of organizational standards in reusable components, such as menus in userinterface and error handling procedures.

    5. Reduction in software development time.

  • 8/13/2019 Canny Surveys

    22/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 8 | P a g e

    Figure: 2.1 SOFTWARE REUSE MODEL

    The steps for developing a software with re-usable component are

    1. The software component should be generalized by a way of generalizing names,operations and exceptions.

    2. Complete documentation should be available for a reusable component.3. Test cases for such a component must be available to, and used by, a reuser while

    integrating it with the remaining developed components.

    With object-oriented programming becoming popular, the concept of reusability

    has gained momentum. Objects encapsulate data and functions, making them self-contained. The

    Requirements

    Detail design of the remaining

    components

    Integration

    Delivery

    Coding of remaining components

    and unit testing

    Design of Architecture

    Components specifications

    Search for reusable components.

  • 8/13/2019 Canny Surveys

    23/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 9 | P a g e

    inheritance facility available in object-oriented programming facilitates invoking these objects

    for reusability. But extra effort is required to generalize even these objects/object classes. The

    organization should be ready to meet this short-term cost for potential long-term gain.

    The most common form of reuse is at the level of whole application system. Two types of

    difficulties are faced during this form of reuse:

    A. Portabil ity

    Whenever a piece of software is developed in one computer environment but is used in another

    environment, portability problems can be encountered. The problems may be one of (1)

    transportation or (2) adaptation.

    Transportation involves physical transfer of the software and the associated data. The

    transportation related problems have almost disappeared now-a-days with computer

    manufacturers forced, under commercial pressure, to develop systems that can read tapes and

    disks written by other machine types and with international standardization and widespread use

    of computer networking.

    Adaptation to another environment is, however, a subtler problem. It involves communication

    with the hardware (memory and CPU) and with the software (the operating system, libraries, and

    the language run-time support system). The hardware of the host computer may have a data

    representation scheme (for example, a 16-bit word length) that is different from the word length

    of the machine where the software was developed (for example, a 32-bit word length). The

    operating system calls used by the software for certain facilities may not be available with the

    host computer operating system. Similarly, run-time and library features required by the software

    may not be available in a host computer. Whereas run-time and library problems are difficult to

    solve, the hardware and the operating system related problems could be overcome by recourse to

    devising an intermediate portability interface. The application software calls abstract data types

    rather than operating system and input-output procedures directly. The portability interface then

    generates calls that are compatible to those in the host computer. Naturally, this interface has to

    be re-implemented when the software has to run in a different architecture.

  • 8/13/2019 Canny Surveys

    24/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 10 | P a g e

    B. Customization

    Now-a-days it has become customary to develop generalized software packages and then

    customize such a package to satisfy the needs of a particular user.

    2.1.2 Milestones and Deliverables

    Milestone ChartMain milestones/phases shown on higher chart, and sub-milestones for each phase on charts below

    Table 2.1 MILESTONE DELIVERABLES

    MILESTONES Responsibility months days

    Analysis To analyze similar existing software in market 0 15

    Design To design a unique software 1 0

    Development To develop a software with minimal complexities. 2 0

    Testing To test each and every modules of software and

    finding out bugs

    2 0

    Deployment To deploy a software on a particular domain. 1 0

  • 8/13/2019 Canny Surveys

    25/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 11 | P a g e

    2.2 PROJECT SCHEDULINGThis is basically the approach which I have followed

    Table 2.2 PROJECT SCHEDULING

    Research & Development: -

    Analysis: -2 weeks

    Gathering Information Determining Requirements Defining Scope

    Designing: -

    Database Design2 weeks Design Modules

    Design Input Screen

    Construction: -

    Coding :-2 months

    Generating the Database Module Coding the Input pages Report Generation

    Testing: -

    Unit Testing1 week Integration Testing

    System Testing

  • 8/13/2019 Canny Surveys

    26/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 12 | P a g e

    Methods

    Documentation Work 1 week

    Total Duration 2 months & 6

    weeks

    2.3RISK MANAGEMENTRisk management is the identification, assessment, and prioritization of risks (as the effect of

    uncertainty on objectives, whether positive or negative) followed by coordinated and

    economical application of resources to minimize, monitor, and control the probability and/or

    impact of unfortunate events or to maximize the realization of opportunities

    Figure: 2.2 RISK MANAGEMENT

  • 8/13/2019 Canny Surveys

    27/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 13 | P a g e

    2.3.1 Risk Identification

    Risk identification is the first step of risk management. It is concerned with discovering

    possible risks to the project. Risk identification is a systematic attempt to specify threats to the

    project plan.

    Table 2.3 RISK IDENTIFICATION

    Risks Risk Type Description

    Technology Business The underlying

    technology on which

    the system is built is

    superseded by new

    technology.

    Requirement

    change

    Project and

    Product

    There will be a larger

    no. of changes to the

    requirements than

    anticipated.

    Management

    change

    Project There will be a

    change of

    organization

    management with

    different priorities.

  • 8/13/2019 Canny Surveys

    28/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 14 | P a g e

    Hardware

    unavailability

    Project Hardware that is

    essential to the

    project will not be

    delivered on

    schedule.

    Specification

    delay

    Project and

    Product

    Specification of

    essential interface are

    not available on

    schedule

    Size under

    estimated

    Project and

    Product

    The size of the

    system is under

    estimated.

    2.3.2 Risk Analysis

    Risk analysis or monitoring involves regularly assessing each of the identified risk todecide whether or not the risk is becoming more or less probable and whether the effects of the

    risk have been changed.

    Table 2.4 Risk Analysis

    Sr. No. Risk Probability Effect

    1. Very Low (< 10 %) Insignificant

    2. Low (1025 %) Tolerable

    3. Moderate (5075%) Serious

  • 8/13/2019 Canny Surveys

    29/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 15 | P a g e

    4. High (5075 %) Catastrophic

    5. Very High (> 75 %) S/W not acceptable

    2.3.3 Risk Planning (Identify strategies to manage the risk)Scheduling risk occurs when everything is not properly defined, so any requirement

    which comes to us, we will first check its feasibility.

    There is no alternative of the process risk; we need to study the current structure and the

    standard of the current system deeply.

    Solutions to the risks identified

    Technical Risk: The tools and technology were selected in such a way that these kinds of risks

    are maintained. The application is also going to be deployed on a backup server. So hardware

    failure risk is also minimized.

    Requirement Risk: All the user and domain requirements were understood properly. So there

    will not be any major changes in requirements. Any new requirement can be handled as the

    software is designed in a modular way.

    Resource Risk: All the required resources are provided in advance. So, the possibility of this

    risk is minimized.

    Schedule Risk: For the solution of this risk, a project execution plan is made in advance, in

    which each phase is given the sufficient timing. So, chance of this risk is less.

  • 8/13/2019 Canny Surveys

    30/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 16 | P a g e

    Also proper test cases can be made for risk planning.

    Table 2.4 Risk Analysis

    Risk Test Factor Explanation

    Incorrect results will be

    produced

    Correctness Data should be entered, read,

    processed correctly and the

    results should be outputted

    correctly

    Unauthorized transactions will

    be accepted by the system

    Authorization Data and its processing logic

    must be authorized by

    management.

    Computer file integrity will be

    lost

    File integrity Data entered will remain

    unaltered

    Processing cannot be

    reconstructed

    Audit trail Saves the supporting

    evidential matter to

    substantiate the processing

    Continuity of processing will

    be lost

    Continuity of processing Ensure backup recovery in

    case of system failure

    Service provided to users willdegrade to an unacceptable

    level

    Service levels Desired services should beavailable within an acceptable

    time frame

    Security of the system will be

    compromised

    Access control The system should be secured

    against unintentional and

    unauthorized users

    The system will not give

    correct results for an extended

    period of time

    Reliability The system should continue to

    function correctly for a long

    period of time.

    System will be difficult to use Ease of use Effort required to learn,

    operate data, interpret output

    should be small

    Programs will not be Maintainability Effort to locate and fix a

  • 8/13/2019 Canny Surveys

    31/91

    Canny Surveys PROJECT MANAGEMENT

    AIT (IT) 17 | P a g e

    maintainable software defect should be

    small

    System will not be portable

    with other computer systems

    Portability Effort to transfer a program to

    another hardware/software

    environment should be small

    System will not be able to

    interconnect with other

    computer systems

    Coupling Effort to interconnect

    components within the system

    and other system should be

    small

    Performance level will be

    unacceptable

    Performance The amount of resources used

    by the system should be small

    System will be difficult to

    operate

    Ease of operations Effort to integrate the system

    with operating system and to

    operate the system should be

    small

    There are three main strategies for risk planning.

    Avoidance strategy:we can avoid the risk mentioned above by checking al resources available and gathering

    all requirements at initial stage.

    Minimization strategy:Risk can be reduced by proper analysis of problem and avoiding them as soon as

    possible.

    Contingency plans:These strategies mean that if the worst happens prepare for it, and have strategy in place

    to deal with it.

  • 8/13/2019 Canny Surveys

    32/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 23 | P a g e

    CHAPTER-4

    SYSTEM ANALYSIS

    IN THIS CHAPTER

    STUDY OF CURRENT SYSTEM.. PROBLEMS AND WEAKNESS OF CURRENT SYSTEM REQUIREMENTS OF NEW SYSTEM.. FEASIBILITY STUDY REQUIREMENTS VALIDATION. ACTIVITIES IN THE NEW SYSTEM... FEATURES OF THE NEW SYSTEM CLASS DIAGRAM.. SYSTEM ACTIVITY.. ACTIVITY DDIAGRMS. SEQUENCE DIAGRAMS... DATA MODELLING MAIN MODULES OF THE NEW SYSTEM. SOFTWARE AND HARDWARE JUSTIFICATION.

  • 8/13/2019 Canny Surveys

    33/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 24 | P a g e

    SYSTEM ANALYSIS

    4.1 STUDY OF CURRENT SYSTEM

    Currently CIGNEX is using external tools to collect surveys. They configure a survey at external

    survey tool and the current application sends an email to each of the email id/email group added

    with a link to the survey. An employee fills the survey and on submits it sends an email to the

    owner of the survey. It also stores data at the external server.

    CIGNEX uses an external open source tool LIME SURVEYS for managing its surveys.

    LimeSurvey (formerly PHPSurveyor) is an open source online survey application written

    in PHP based on a MySQL, PostgreSQL or MSSQL database, distributed under the GNU

    General Public License. Designed to be user-friendly, it enables users to develop and publish

    surveys, and collect responses, without doing any coding.

    4.2 PROBLEM AND WEAKNESS OF CURRENT SYSTEM.

    Lack of Survey logic may sometimes make a survey too lengthy and perplexing.

    The major limitations were found in the process were

    The survey is hosted at external application. It only supports limited number ofemails/users to be configured for the survey.

    No control on the application, every feature to be used as per the external toolsspecifications.

    The account expires after certain time. All the data related to server vanishes when thishappens.

  • 8/13/2019 Canny Surveys

    34/91

  • 8/13/2019 Canny Surveys

    35/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 26 | P a g e

    The application should have export facility. The application should be User friendly The application should be providing various question types such as multiple choice,

    rating questions, ranking, radio check boxes etc.

    4.3.2 System Requirements.

    The following system requirements should be met.

    Minimum 100 MB free space on the server. Apache tomcat server Oracle database. (Disadvantage of using a Type-4 JDBC driver.) An LDAP connection for connecting with all the employees so as to manage employee

    groups easily.

    4.4 FEASIBILITY STUDYThe data collection that occurs during preliminary investigations examines system

    feasibility, the likelihood that the system will be beneficial to the organization. Three tests of

    feasibility are studies: Technical, Time, Management, Social,Economic and Operational.

    Technical Feasibility:It involves determining whether or not a system can actually be constructed to solve the

    problem at hand. Some users expect too much of computers, assuming that computers can

    accurately predict the future, immediately reflect all information in an organization, easily

    understand speech, or figure out how to handle difficult problems. Such systems, even if they

    exist, are not yet available for widespread use.

    The technical issues raised during the feasibility stage of the investigation are:

  • 8/13/2019 Canny Surveys

    36/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 27 | P a g e

    1. Does the necessary technology exist (can it be acquired) to do what is suggested?2. Does the proposed equipment have the technical capacity to hold the data required

    to use the new system?

    3. Will the proposed system and components provide adequate responses to inquires,regardless of the number or location of users?

    4. Can the system be expanded, if developed?5. Are there technical guarantees of accuracy, reliability, ease of access and data

    security?

    Economic Feasibility:It involves estimating benefits and costs. These benefits and costs may be tangible or

    intangible. Because of confusion between the types of costs, it is sometimes very difficult to

    decide if the benefits outweigh the costs.

    Tangible benefits may include decreasing salary costs (by automating manual

    procedures), preventing costly but frequent errors, sending bills earlier in the month, and

    increasing control over inventory levels. Such benefits may be directly estimated in rupees

    without much trouble. Intangible benefits may include increasing quality of goods produced,

    upgrading or creating new customer services, reducing repetitive or monotonous work for

    employees, and developing a better understanding of the market.

    Cost and benefit estimates on each project provide a basis for determining which projects

    are most worthy of consideration. Each estimate can be analyzed to determine how rapidly costs

    are recovered by benefits, to calculate both the absolute and interest-adjusted amounts of excess

    benefits, and to establish the ratio of benefits to costs. All of these factors are considered when

    developing an overall sense of the project's economic feasibility.

    Operational Feasibility:Proposed projects are of course beneficial only if they can be turned into

    information systems that will meet the organization's operation requirements. Simply stated, this

    test of feasibility asks if the system will work when developed and installed.

  • 8/13/2019 Canny Surveys

    37/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 28 | P a g e

    Some are the following questions that help to you to check the operational feasibility of

    the project are:

    1. Is there sufficient support for the project from the management and fromusers?

    2. Are current business methods acceptable to the user?3. Have the users been involved in the planning and development of the

    project?

    4. Will the proposed system cause harm?Some of the issues related to this system are:

    1. Will the system produce result in any respect or area?2. Will loss of control result in any area?3. Will accessibility of information be lost?4. Will individual performance be poorer after implementation than before?5. Will customers be affected in an undesirable way?6. Will it slow performance in any areas?

    Time Feasibility:Time feasibility study is a determination of whether a proposed project will be completed

    within given time.

    Social feasibility:Social feasibility is a determination of whether the new system will be acceptable to the

    people or not.

    4.4.1 Does the system contribute to the overall objectives of the organization?Yes the designed system shall commit to the objectives of the organization. One of the

    most important objectives it shall satisfy is to reduce the total cost of ownership by

    seamlessly using open source technologies.

  • 8/13/2019 Canny Surveys

    38/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 29 | P a g e

    4.4.2 Can the system be implemented using the current technology and within the givencost and schedule constraints?

    Yes the system can be developed using current technologies and within cost and schedule

    constraints. Open source technologies provide many benefits including designing and

    economical benefits which shall be technically as well as economically feasible to the

    company.

    4.4.3 Can the system be integrated with other system which is already in place?The system is designed to overcome the limitations of previous application and hence it is

    an independent web application. Hence it cannot integrate with the previous one. Another

    reason justifying it can be previous system was an external tool meant to be run

    anywhere, while this was specifically meant to run on the companys server.

    4.5REQUIREMENTS VALIDATON

    Require validation is concerned with showing that the requirement actually defines the

    system which customer wants. It has much common with analysis as it is concern with

    finding problems with the requirements. However they are distinct processes since validation

    should be concerned with a complete graph of the requirement document whereas analysis

    involves working it in incomplete requirement.

    During requirement validation processes, different types of check should be carried out on

    the requirement in the requirement document. This check includes

    Validity check: A user may think that the system is needed to perform certainfunctions. However further thought and analysis may identify additional or different

    functions that are required. System diverse users with different needs and set of

    requirements are inevitably a compromise across user community

  • 8/13/2019 Canny Surveys

    39/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 30 | P a g e

    Completeness check: The requirement document should include requirements whichdefine all functions and constraints intended by system user.

    Realism Check: Using knowledge of existing technology the requirement should bechecked to ensure that they actually can be implemented. Here check should also take

    account of the budget and schedule for the system deployment.

    Verifiability: To reduce the potential for dispute between customer and contractor.System requirement should always be return so that they are verifiable. This means

    that a set of checks can be designed which can demonstrate that delivered systemmeets the requirements.

    Some other validation tests include:

    o Regular Expression Validator:This tool will help you in checking syntax of the regular expression typed in. Also you can check

    whether particular value matches with the regular expression exactly once or multiple matches

    are available depending on the option you choose.

    o Required Field Validator:The Required Field Validator control is used to make an input control a required field. With this

    control, the validation fails if the input value does not change from its initial value. By default,

    the initial value is an empty string ("").

    o Compare validator:The compare validator control is used to compare the information entered by user.

  • 8/13/2019 Canny Surveys

    40/91

  • 8/13/2019 Canny Surveys

    41/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 32 | P a g e

    Fill a survey On clicking

    fill up survey

    Audience

    home page

    Check if

    active

    surveys are

    available

    Show a list of

    unfilled

    active

    surveys.

    Survey

    explorer page

    Change role Audience

    asks for other

    survey rights

    Audience

    home page

    Display

    current role

    and available

    roles

    Role change

    request

    accepted

    Admin home

    page for

    approval

    Change

    survey

    responses

    On clicking

    edit survey

    responses

    Survey

    explorer

    page

    Show filled

    up surveys

    and edit

    option

    Re-fill a filled

    up survey

    Survey

    explorer page

    Audience

    logs out

    Log out

    request

    Audience

    home page

    Log out

    request

    parameters

    Save activity

    performed by

    the user

    Main page

    Edit a survey

    template

    On clicking

    change

    survey

    template

    Create a

    survey page

    Check if role

    is allocated

    Display the

    available

    templates for

    modifying

    Survey

    explorer page

    Admin logs

    in

    Log in

    request

    Admin home

    page.

    Validate user

    name and

    password

    Valid-invalid

    login

    notifications

    Admin home

    page

    Configure a

    survey

    On clicking

    configuration

    requests

    Admin home

    page

    Showing all

    the

    configuration

    survey

    requests

    Approve or

    deny the

    configuration

    requests

    Survey

    explorer page

    waiting to be

    filled

    Set up

    targeted

    audience

    On clicking

    send survey

    for filling up

    Amin home

    page

    Showing all

    the members

    of the

    company

    Set up a

    group of

    targeted

    audience

    Audience

    email inbox

    page

  • 8/13/2019 Canny Surveys

    42/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 33 | P a g e

    Role change

    requests

    On clicking

    the role

    change

    requests

    Admin home

    page

    Showing all

    role change

    requests

    Approve or

    deny the

    change

    requests

    Audience

    home page

    notifying

    them about

    approval or

    denying

    Report

    generation

    On clicking

    analyze a

    survey

    Admin home

    page

    Display all

    active

    surveys

    Generate

    specific

    reports based

    on need

    Audience

    home page

    showing the

    statistics

    Re-configure/

    De-configure

    a survey

    On clicking

    configure

    Admin home

    page

    Display all

    surveys

    Set up

    surveys as per

    active/passive

    surveys.

    Survey

    explorer

    page.

    4.7FEATURES OF THE NEW SYSTEMThe new application shall fulfill all of the user requirements. Some of the major features of

    whose are listed below.

    1. The new application shall provide various question types as under. TextboxShort text TextboxNumeric Format Validation TextboxEmail Format Validation EssayLong text Multiple text fields Table of text fields Checkbox Table of checkboxes Radio button Table of radio buttons

  • 8/13/2019 Canny Surveys

    43/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 34 | P a g e

    Drop-down menu Tables of dropdown menus Ranking - Table format Ranking - Drag & Drop Ranking - Top X# of items RankingStars Instructions/Text Image Video Contact information form Date format Essay-Huge text

    2. The admin shall be able to generate various reports for survey analysis. The reportformats include

    Bar charts, pie charts, histograms, etc.

    3. An option of survey logic so as to organize the surveys, so as to make survey filling lesstedious.

    4. The application shall prevent the search engine from indexing a survey which would limitthe survey for specified audience only, thus resulting in an accurate result.

    5. It shall be able to configure as many surveys as per need arises. The survey shall bedistributed as per group needs.

    6. The application shall have export option. It shall write to a variety of targets such aspdf, html, Microsoft excel, RTF or XML files.

    7. The application shall have role based and time based access to surveys. Once a time limitexpires no one can configure that survey except admin.

    8.

    The application shall stand true to companys goal that is to reduce the total amount ofownership by adopting open source technologies.

  • 8/13/2019 Canny Surveys

    44/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 35 | P a g e

    4.8 CLASS DIAGRAM

    A class diagram in the Unified Modeling Language (UML) is a type of static structure

    diagram that describes the structure of a system by showing the system's classes, their

    attributes, operations (or methods), and the relationships among the classes.

    There are two principal kinds of static relationships.

    1. Associations2. Subtypes

    Class diagrams also show attributes and operations of a class and constraint that apply to

    the way objects are connected.

    TABLE 4.2: CLASS DIAGRAM ACCESS MODIFIERS

    MARK VISIBILITY TYPE

    + public

    # protected

    - private

    ~ package

    There are at least two important reasons for understanding the class diagram. The first is

    that it shows the static structure of classifiers in a system; the second reason is that the

    diagram provides the basic notation for other structure diagrams prescribed by UML.

    Developers will think the class diagram was created specially for them; but other team

    members will find them useful, too. Business analysts can use class diagrams to model

    systems from the business perspective. As we will see in other articles in this series on

    UML basics, other diagramsincluding the activity, sequence, and state chart diagrams

    refer to the classes modeled and documented on the class diagram

  • 8/13/2019 Canny Surveys

    45/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 36 | P a g e

    FIGURE 4.1: CLASS DIAGRAM

    -changeOfRoleRequest()

    Audience +surveyAnswerCollector()

    +surveyReportMaker()

    +surveyAnalyzer()

    +surveyResultExport()

    +surveyId : int

    +questionType : char

    +surveyCreationDate : int

    +surveyTerminationDate : int-surveyCategory : char

    +surveyPriority : int

    -surveyReportType : char

    -surveyExportOptionType : char

    Surveys

    +SurveyConfigure()

    +surveyId : Surveys

    +surveyDate : Surveys

    +surveyTimeSpecified : Surveys

    ActiveSurveys

    +surveyDeConfigure()+surveyReConfigure()

    +surveyId : Surveys

    +surveyTimeSpecified : Surveys

    +surveyDate : Surveys

    PassiveSurveys

    +createSurvey()

    +reviewSurvey()

    +organizeSurvey()

    +sendSurveyConfigurationRequest()

    +previewSurveys()

    -lastSurveyCreated

    DecisionCommitee

    +doRegister()

    +doLogin()

    +doLogout()

    +doRequestForChangePassword()

    +doFillSurveys()

    +doEditSurveyResponses()

    +doViewFilledSurveys()

    -ID

    -email_id

    -first_name

    -last_name-survey_role

    -username

    -password

    -lastSurveyFilled

    CignexEmployees+createNew()

    +createFromTemplate()

    +createByCopy()

    -creationDate

    -surveyCategory

    -surveyFillupTimePeriod

    Creates

    * *

    +doFill()

    +editResponses()

    +saveResponses()

    -first_Filled

    -last_Filled

    Fills

    *

    *

    +doConfigure()

    +setUpGroupsOfAudience()

    +handleRoleChangeRequests()

    +handleSurveyConfigurations()

    +generateSurveyReports()

    +exportSurveyReports()

    -ID

    -email_id

    -first_name

    -last_name

    -username

    -password

    Admin

    *

    -Configures*

    -handles *

    *

  • 8/13/2019 Canny Surveys

    46/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 37 | P a g e

    4.9 SYSTEM ACTIVITY (USE CASE)

    A use case diagram depicts actors, use cases, and the relationships among them. Usecaseis a software engineering term that is equivalent to a social scientist's notion of

    task. With some simple extensions, use case diagrams can be used to represent a

    usability professional's task model

    NOTATION FOR USE CASE

    Actor

    Use Case

    Association

    Include

    We use following relationships:

  • 8/13/2019 Canny Surveys

    47/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 38 | P a g e

    Figure 4.2 AUDIENCE USE CASE

  • 8/13/2019 Canny Surveys

    48/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 39 | P a g e

    Figure 4.3 DECISION COMMITTEE USECASE

  • 8/13/2019 Canny Surveys

    49/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 40 | P a g e

    Figure 4.4 ADMIN USECASE

  • 8/13/2019 Canny Surveys

    50/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 41 | P a g e

    4.10 ACTIVITY DIAGRAMSBasic Ativity Diagram Symbols and Notations

    Action states

    Action states represent the noninterruptible actions of objects. You can draw an action state in

    SmartDraw using a rectangle with rounded corners.

    Action Flow

    Action flow arrows illustrate the relationships among action states.

    Object Flow

    Object flow refers to the creation and modification of objects by activities. An object flow arrow

    from an action to an object means that the action creates or influences the object. An object flow

    arrow from an object to an action indicates that the action state uses the object.

  • 8/13/2019 Canny Surveys

    51/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 42 | P a g e

    Initial State

    A filled circle followed by an arrow represents the initial action state.

    Final State

    An arrow pointing to a filled circle nested inside another circle represents the final action state.

    Branching

    A diamond represents a decision with alternate paths. The outgoing alternates should be labeled

    with a condition or guard expression. You can also label one of the paths "else."

  • 8/13/2019 Canny Surveys

    52/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 43 | P a g e

    Synchronization

    A synchronization bar helps illustrate parallel transitions. Synchronization is also called forking

    and joining.

  • 8/13/2019 Canny Surveys

    53/91

  • 8/13/2019 Canny Surveys

    54/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 45 | P a g e

    Figure 4.6 FILL SURVEY ACTIVITY DIAGRAM

  • 8/13/2019 Canny Surveys

    55/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 46 | P a g e

    Figure 4.7 CREATE SURVEY ACTIVITY DIAGRAM

  • 8/13/2019 Canny Surveys

    56/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 47 | P a g e

    4.11 SEQUENCE DIAGRAMSBasic Sequence Diagram Symbols and Notations

    Class roles

    Class roles describe the way an object will behave in context. Use the UML object symbol to

    illustrate class roles, but don't list object attributes.

    Activation

    Activation boxes represent the time an object needs to complete a task.

    Messages

    Messages are arrows that represent communication between objects. Use half-arrowed lines to

    represent asynchronous messages. Asynchronous messages are sent from an object that will not

    wait for a response from the receiver before continuing its tasks.

  • 8/13/2019 Canny Surveys

    57/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 48 | P a g e

    Various message types for Sequence and Collaboration diagrams

    Lifelines

    Lifelines are vertical dashed lines that indicate the object's presence over time.

    Destroying Objects

    Objects can be terminated early using an arrow labeled ">" that points to an X.

  • 8/13/2019 Canny Surveys

    58/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 49 | P a g e

    Loops

    A repetition or loop within a sequence diagram is depicted as a rectangle. Place the condition for

    exiting the loop at the bottom left corner in square brackets [ ].

  • 8/13/2019 Canny Surveys

    59/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 50 | P a g e

    Figure 4.8 ADMIN SEQUENCE DIAGRAM

  • 8/13/2019 Canny Surveys

    60/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 51 | P a g e

    Figure 4.9 AUDIENCE FUNCTIOANLITIES SEQUENCE DIAGRAM

  • 8/13/2019 Canny Surveys

    61/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 52 | P a g e

    Figure 4.10 DECISION COMMITTEE SEQUENCE DIAGRAM

  • 8/13/2019 Canny Surveys

    62/91

  • 8/13/2019 Canny Surveys

    63/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 54 | P a g e

    Figure 4.12 AUDIENCE FUNCTIONS SEQUENCE DIAGRAM

  • 8/13/2019 Canny Surveys

    64/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 55 | P a g e

    Figure 4.13 ROLE CHANGE REQUEST SCENARIO DIAGRAM

  • 8/13/2019 Canny Surveys

    65/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 56 | P a g e

    Figure 4.14 SURVEYS FILL UP SEQUENCE DIAGRAM

  • 8/13/2019 Canny Surveys

    66/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 57 | P a g e

    4.12 DATA MODELLINGThe section talks about the way the data is distributed and how the database is formed.

    It talks about the following two concepts.

    4.12.1 Data Dictionary

    1. Table name: Survey_explorer

    Column name Data type Description Allows nulls

    Survey_id Integer survey identifier

    number

    No

    Creation_date Date when the survey is

    created

    No

    LastEdited_date Date When the survey

    was last modified

    No

    LastEntry_date date When the survey

    was sent for

    configuration

    No

    Open_date Date When the survey is

    active

    No

    Close_date date When the survey

    will no longer be

    active

    No

  • 8/13/2019 Canny Surveys

    67/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 58 | P a g e

    Survey_Title Varchar(15) What the survey is

    about

    Yes

    Survey_URL varChar(25) Way to access the

    site

    No

    ThankyouMessage varChar message Yes

    AccessPassword varChar(20) Password fr filling

    up

    No

    AllowMultipleSubmissions boolean option Yes

    Activate boolean Live for

    configuration

    No

    Reactivate boolean Passive surveys

    again can be made

    live

    Yes

    Survey_language varChar(20) Language

    prepferences

    Yes

    2. Survey_layout_mode

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Sur_layout mode id integer Specifying to a No

  • 8/13/2019 Canny Surveys

    68/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 59 | P a g e

    particular type

    Sur_description Varchar(50) description Yes

    3. Survey_samples

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Survey_type Varchar(10) Survey category No

    Survey_descriptions Varchar(50) description Yes

    Survey_description Varchar(50) description Yes

    4. Survey_group

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Survey_group varChar(10) Survey group detail No

    Survey_title Survey name Survey title name Yes

    Survey_file size Integer Survey file size

    value

    No

  • 8/13/2019 Canny Surveys

    69/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 60 | P a g e

    Survey_groupID Integer Groups having

    same type of

    survey

    No

    5. Survey_email details

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Email from varChar(20) Notification about

    new surveys

    No

    Email_to varChar(20) Targeted audience

    email id

    No

    Email_sub Varchar(20) Details about

    survey

    Yes

    6. Survey_entry Quota

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Max_entries Integer Maximum allowed

    entries

    No

    Entry count Integer Total number of

    entries

    Yes

  • 8/13/2019 Canny Surveys

    70/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 61 | P a g e

    Max reached

    message

    VarChar(50) Appropriate

    message

    Yes

    7. Survey_page OptionsColumn_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Page_number Integer Survey page

    number detail

    Yes

    Randomize_questions Boolean Shuffle questions Yes

    Enables_SubmitButton Boolean When survey

    finished

    No

    Disable_SubmitButton Boolean Survey yet

    incomplete

    No

    Condition VarChar(50) Checking

    condition

    No

    Disable_Back Button Boolean Limited time limit Yes

    8. Survey_setup_audience

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

  • 8/13/2019 Canny Surveys

    71/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 62 | P a g e

    User_id Integer User id of email No

    Email_id Integer Primary email

    address registered

    Yes

    Request_Date Date Email notification

    sent

    No

    Anonymous_entry VarChar(50) confidentiality Yes

    9. Survey_results

    Column_name Data_type description Allows null

    Survey_id Integer survey identifier

    number

    No

    Condition_id Integer Pre-default

    conditions

    No

    Question_id Integer Type of survey

    question

    No

    Answer_id Integer Type of survey

    answer

    No

    Thankyou message VarChar(50) Message Yes

    Result VarChar(50) Type of result No

    Score Integer Result analysis of

    surveys

    No

    10.Survey_layout

  • 8/13/2019 Canny Surveys

    72/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 63 | P a g e

    Column_name Data_type Description Allows null

    Survey_id Integer survey identifier

    number

    No

    Sur_header VarChar(50) Details about

    survey

    Yes

    Sur_footer VarChar(50) Details about

    creator

    Yes

    Sur_css VarChar(50) Design details No

    11.Survey_configure

    Column_name Data_type Description Allows null

    Survey_id Integer survey identifier

    number

    No

    Sur_name varChar(30) Survey name No

    Sur_from varChar(20) Decision making

    committee address

    No

    Sur_Accept Boolean Approve or deny Yes

    12.Survey_deconfigure

    Column_name Data_type Description Allows null

  • 8/13/2019 Canny Surveys

    73/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 64 | P a g e

    Survey_id Integer survey identifier

    number

    No

    Survey_name varChar(30) Survey name No

    Survey_from varChar(20) Decision making

    committee address

    No

    Survey_Exp date Date When the survey

    should be take off

    No

    Survey_reconfigure boolean Again put the

    survey live

    No

    13.C_user

    Column_name Data_type Description Allows null

    User_id Integer User id of status No

    User_name Varchar(20) User name No

    password Varchar(20) User password No

    firstname Varchar(20) First name detail No

    Email Varchar(20) Professional email

    address

    No

    Contact_Number Integer Contact number No

    creationDate Date Date of creating or

    updating profile

    No

    14.User_details

  • 8/13/2019 Canny Surveys

    74/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 65 | P a g e

    Column_name Data_type Description Allows null

    U_id Integer Username No

    U_phone no Integer User phone number No

    U_email id varChar(20) User email id No

    U_email id_no Integer Primary email Yes

    15.C_user_answers

    Column_name Data_type description Allows null

    U_id Integer User id No

    User_answer_type Varchar(20) Filled up responses

    from user

    No

    User_entry_date Date When user fills up

    a survey

    No

    16.C_userRole

    Column_name Data_type description Allows null

    U_id Integer User identification No

    Role_id Integer Role identification No

    Sur_access Boolean Grant filling up a

    survey

    No

  • 8/13/2019 Canny Surveys

    75/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 66 | P a g e

    17.Questions_explorer

    Column_name Data_type description Allows null

    Question_id Integer Type of question No

    Survey_id Integer Survey

    identification

    number

    No

    Library_id Integer Question id

    number

    No

    Columns_no Integer Total number of

    options allowed

    No

    Question_text Varchar(70) Description about

    question

    No

    Display_order Varchar(20) Show possible

    orders

    No

    Min_Select_required Integer Minimum possible

    of participants

    Yes

    Max_select_allowed Integer Max limit allowed Yes

    Rating_enabled Boolean Enable ratings Yes

    Time_enabled Boolean Time based

    surveys

    Yes

    Random_qs_enabled Boolean Randomize surveys Yes

    Page_no Integer Display page

    number

    Yes

  • 8/13/2019 Canny Surveys

    76/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 67 | P a g e

    Help_text Varchar(20) Show help quote No

    Alias Varchar(20) Another name Yes

    Question_grp_id Integer Group id No

    Show_help_text Varchar(20) Help message Yes

    18.Questions_group

    Column_name Data_type description Allows null

    Group_id Integer Question group id No

    Group_name Varchar(20) Survey group name No

    parentGroupID Integer Number of the

    suvey group

    containing

    questions

    Yes

    Display_result Varchar(20) Show results No

    19. Skip_logic_ruleColumn_name Data_type description Allows null

    Skip_logic_rule_id Integer Condition id No

    Skip_question_id Integer Question id to be

    skipped

    No

    Condition_operator VarChar(20) Checking pre

    defined condition

    No

  • 8/13/2019 Canny Surveys

    77/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 68 | P a g e

    Answer_id Integer Answer choice No

    Score Integer Votes allocated No

    Score_max Integer Maximum votes to

    a answer

    No

    20.Question_section_options

    Column_name Data_type description Allows null

    Qs_id Integer Type of question No

    repeatableSectionModeID Boolean Allows repetition Yes

    Add_section Varchar(20) Add some other

    part

    Yes

    Delete_section Varchar(20) Delete some other

    part

    Yes

    Update_section Varchar(20) Modify some

    other part

    Yes

    Customize_Section Varchar(20) Change some

    other part

    Yes

    21. Answers

    Column_name Data_type description Allows null

    Answer_id Integer Answer type and

    option

    No

  • 8/13/2019 Canny Surveys

    78/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 69 | P a g e

    Question_id Integer Question type No

    Answer_type_id Integer Possible answer

    form

    No

    answer_text Varchar(20) Description about

    answer

    No

    Answer_rate_part Boolean Enables rating Yes

    Display_order Varchar(20) Shows order Yes

    Default_txt Varchar(20) Default message to

    be displayed

    Yes

    Score_points Integer Answers No

    answerID_text Varchar(20) Show possible

    answer options

    Yes

    Answer_alias Varchar(20)

  • 8/13/2019 Canny Surveys

    79/91

  • 8/13/2019 Canny Surveys

    80/91

  • 8/13/2019 Canny Surveys

    81/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 72 | P a g e

    Manage the system

    3. Decision Committee moduleThe module is basically concerned with creating a survey and sending it for configuration

    request. The module deals with sub modules like create Survey module, copy survey module,

    survey design module, survey organize module.

    The major functionalities covered here are

    Create a survey Organize surveys Copy existing surveys Manage survey templates Preview up a survey waiting to be configured Edit a survey Set survey parameters and configuration request.

    4.14 SELECTION OF SOFTWARE AND HARDWARE JUSTIFICATION

    Firstly designing the application inopen sourcehas the following advantages.

    1. Security

    The more the people can see a set of code and test it, the more likely any flaws will be caught

    and fixed quickly.

    2. Quality

    As there are countless developers and users working to improve the security of open source

    software, so are there just as many innovating new features and enhancements to those products.

    In general, open source software gets closest to what users want because those users can have a

    hand in making it so

  • 8/13/2019 Canny Surveys

    82/91

    Canny Surveys SYSTEM ANALYSIS

    AIT (IT) 73 | P a g e

    3. Customizability.

    Business users can take a peace of open source software and tweak it to suit their needs. Its like

    modifying application to suit to their needs.

    4. Flexibility

    Open source software is typically much less resource-intensive, meaning that you can run it well

    even on older hardware. It's up to you--not some vendor--to decide when it's time to upgrade.

    Besides all this it has major advantages such as try before you buy, cost, stability, support

    options, Freedom etc.

    Java follows the principle Write once, run anywhere. We have

    chosen to use Java because of Javas stability, in addition, to Sun Microsystems and IBMs

    reliable, online technical support and other open source development framework for Java such

    as Hibernate, Spring, Strutsand etc.

  • 8/13/2019 Canny Surveys

    83/91

  • 8/13/2019 Canny Surveys

    84/91

    Canny Surveys SYSTEM DESIGN

    AIT (IT) 74 | P a g e

    5.1 TABLE RELAIONSHIP DIAGRAM

    Survey_explorer

    survey_id

    creation_date

    lastedited_date

    lastEntry_date

    open_date

    close_date

    survey_title

    thankyou messageaccess password

    allow multiple submissions

    activate

    reactivate

    survey_language

    survey_guid

    Survey_layout

    Survey_id

    survey_header

    survey_footer

    survey_css

    survey_entry quota

    survey_id

    max entries

    entry count

    Max reached message

    survey_group

    survey_id

    survey_group

    survey_title

    survey_filesize

    survey_groupid

    survey_send via email

    survey_id

    email from

    email toemail subject

    survey_setup audience

    survey id

    user id

    email id

    request dateanonymous entry

    survey_configure

    survey_id

    survey_name

    survey_from

    survey_Accept

    survey_deconfigure

    survey_id

    survey_name

    survey_from

    survey_exp date

    survey_deconfiguresurvey_re configure

    survey_results

    condition_id

    survey_id

    question_id

    answer_id

    thankyou message

    result

    score

    survey_pageOptions

    surveyId

    pageNumber

    RandomizeQuestions

    EnableSubmit button

    disavle submit button

    condition

    didisable back button

    survey_samples

    surveyid

    surveytype

    surveyQuestions

    surveyDescription

    Survey_layout_mode

    survey_id

    survey_layout mode ID

    survey_description

    c_user1

    user_id

    username

    password

    firstname

    email

    creationDate

    c_userrole1

    user_id

    role_id

    survey_access

    user_details1

    u_id

    u_phone no

    u_emailID

    u_emailID_no

    c_user_answers1

    User_id

    user_AnswerType

    user_answersEntered Date

    Questions_explorer1

    question_id

    survey_id

    library_id

    columns_no

    question_text

    display_order

    min_selected_req

    max_selection_allowed

    rating_enabled

    time_enabledrandom_questions_enabled

    page_no

    help_text

    alias(search name)

    question_groupID

    show_help_text

    Questions_group1

    group_id

    group_name

    parentGroup_id

    display_result

    skip_logic_rule1

    skip_logic_rule_id

    skip_question_id

    condition_operator

    answer_id

    score

    score_max

    question_section_options1

    question_id

    repeatableSectionModeID

    add_section

    delete_Section

    update_section

    customize_section

    answers1

    answer_id

    question_id

    answer_type_id

    answer_textanswer_rate_part

    display_order

    default_text

    score_points

    answerID_text

    answer_alias

    Figure 5.1 TABLE RELATIONSHIP DIAGRAM

  • 8/13/2019 Canny Surveys

    85/91

    Canny Surveys SYSTEM DESIGN

    AIT (IT) 75 | P a g e

    5.2 State Transition/UML Diagram

    Figure 5.2 HOME PAGE STATE TRANSITION DIAGRAM

  • 8/13/2019 Canny Surveys

    86/91

    Canny Surveys SYSTEM DESIGN

    AIT (IT) 76 | P a g e

    Figure 5.3 ADMIN PAGE STATE TRANSITION DIAGRAM

  • 8/13/2019 Canny Surveys

    87/91

    Canny Surveys SYSTEM REQUIREMENTS STUDY

    AIT (IT) 18 | P a g e

    CHAPTER-3

    SYSTEM REQUIREMENTS STUDY

    IN THIS CHAPTER

    USER CHARACTERISTICS... HARDWARE AND SOFTWARE REQUIREMENTS...

    CONSTRAINTS... ASSUMPTIONS AND DEPENDENCIES

  • 8/13/2019 Canny Surveys

    88/91

    Canny Surveys SYSTEM REQUIREMENTS STUDY

    AIT (IT) 19 | P a g e

    SYSTEM REQUIREMENTS SERVICES

    3.1 USER CHARACTERISTICS

    Analyzing user characteristics is an important aspect of any project. It allows us to clearly

    define and focus on who the end user are for the project. Also, it allows us to check the progress

    of the project to ensure that we are still developing the system for the end users.

    User classification:

    1. Audience: Can fill up surveys Record responses Re change his response Ask for special rights to allow him create surveys View survey results

    2. Decision committee: Can create surveys Can edit survey templates Can create surveys from templates Can copy old surveys

    3. Admin: Manages the system Allows role change requests Configures/De configure/Reconfigure a Survey Generates reports Can fill up surveys

  • 8/13/2019 Canny Surveys

    89/91

    Canny Surveys SYSTEM REQUIREMENTS STUDY

    AIT (IT) 20 | P a g e

    Figure 3.1 MODULE ARCHITETURE

    3.2HARDWARE AND SOFTWARE REQUIREMENTS (MINIMUMREQUIREMENTS TO RUN YOUR SYSTEM)

    Software Requirements:

    The system can run at any client machine which has a browser.

    The system was designed in the following software specifications.

    Front End : JSP pages, jasper pages, jQuery Middleware: Servlets Back End : ORACLE Operating System: Any OS except DOS.

  • 8/13/2019 Canny Surveys

    90/91

    Canny Surveys SYSTEM REQUIREMENTS STUDY

    AIT (IT) 21 | P a g e

    At Server Side:

    The following system requirements should be met.

    Minimum 100 MB free space on the server. Apache tomcat server Oracle database. (Disadvantage of using a Type-4 JDBC driver.) An LDAP connection for connecting with all the employees so as to manage

    employee groups easily.

    Hardware Requirements:

    Any Pentium Processor. 128RAM Monitor Mouse Keyboard 56 kbps modem 32 Bit system bus

    3.3 CONSTRAINTS

    The constraints of the project enhance on that other matters the project is

    dependent on. Given below is a list of the same.

    3.1 Interfaces to Other Applications

    The application shall depend on the LDAP Connection on which it is going to be configured

    with. The application is an independent application and it requires the LDAP connection for

    maintaining all the employees associated with the firm.

    3.2 Parallel Operations

  • 8/13/2019 Canny Surveys

    91/91

    Canny Surveys SYSTEM REQUIREMENTS STUDY

    The application can have multiple operations, where one user may be creating a survey while at

    the same time from the survey explorer page a survey can be filled simultaneously.

    3.4 ASSUMPTIONS AND DEPENDENCIES

    3.4.1Operating system:

    Any Operating System can be used to run this application. The only need is the Operating

    System should have web browser to run it.

    3.4.2 EndUser characteristics:

    Employee should have some basic knowledge about the application how to use it. More over the

    application is user friendly aiding to people involved with management decision makers.

    3.4.3 Company Employee:

    Currently the system is just limited to the company. So any member who is on the companys

    LDAP can only access the application.