Sei sulla pagina 1di 91

A Project Report on

Canny Surveys

Prepared By:
Ghiya Parth (Information Technology, 09/IT/021) Group-023

Guided By:Mrs. Misba Shaikh Mr. Vipin Bardia At Computer Engineering & Information Technology Department AHMEDABAD INSTITUTE OF TECHNOLOGY Ahmedabad-380060

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):


Mrs. Misba Shaikh
Lecturer CE/IT Department Ahmedabad Institute of Technology

Project Guide (External):


Mr. Vipin Bardia
Jr. Consultant CIGNEX Datamatics

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 of Ahmedabad Institute Of Technology under the Gujarat Technological University, 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
Asst. Prof / Lecturer CE/IT Dept. AIT, Ahmedabad.

Prof. Satyadev Vyas


Head of Dept. CE/IT Dept. AIT,Ahmedabad.

AHMEDABAD INSTITUTE OF TECHNOLOGY


NR. VASANTNAGAR TOWNSHIP, GOTA - OGNAJ ROAD AHMEDABAD 382481 NOV- 2012

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

CANDIDATES DECLARATION

This is to certify that 1) The project comprise my original work towards degree of bachelor of engineering 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)

I|P age

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 7th Semester of B.E. I was selected as the intern at CIGNEX Datamatics for internship. I heartily thank Mr Peter Pereira who believed in my abilities and gave me a chance that would shape my future. During my training period I had Mr Vipin Bardia as 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


II | 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.

III | P a g e

LIST OF ABBREVIATIONS

Name JSP J2EE IDE HTTP CS SRS GUI PDF XML CSS AJAX JS SRM RTF ODT CSV DOM

Abbreviations Java Server Pages Java 2 Platform Enterprise Edition Integrated Development Environment Hyper Text Transfer Protocol Canny Surveys System Requirement Specification Graphical User Interface Portable Document Format eXtended Mark-up language Cascading Style Sheet Asynchronous JavaScript And XML JavaScript Software Reuse Model Rich Text File Online Dictionary and Thesaurus Comma Separated Value Document Object Model

IV | P a g e

LIST OF TABLES

Table No 2.1 2.2 2.3 2.4 4.1 4.2

Table Description Milestone deliverables Project Scheduling Risk Identification Risk Analysis Event Response Table Class Diagram Access Modifiers

Page No 10 11 13 16 31 35

V|P a ge

LIST OF FIGURES

Figure Figure Description No Risk Management 2.1 3.1 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 5.1 5.2 5.3 Module Architecture Class Diagram Audience Use Case Decision Committee Use Case Admin Use Case Admin Activity Diagram Fill Survey Activity Diagram Create Survey Activity Diagram Admin Sequence Diagram Audience Functionalities Sequence Diagram Decision Committee Sequence Diagram Audience Scenario Sequence Diagram Audience Functionalities Sequence Diagram Role Change Request Scenario Diagram Surveys Fill up Sequence Diagram E-R Diagram Table Relationship Diagram Home Page State Transition Diagram Admin Page State Transition Diagram

Page No 12 20 36 38 39 40 44 45 46 50 51 52 53 54 55 56 69 74 75 76

VI | 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 to achieve 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.

VII | P a g e

Contents
Candidates Declaration.......... I Acknowledgement.. II Abstract. III List of Abbreviations.....IV List of Tables..... V List Of Figures...VI Company Profile...........VII
Chapter 1 1 Introduction

1.1 Project Summary.. 1.2 Purpose......... 1.3 Scope........ 1.4 Objective..... 1.5 Technology And Literature Review....

2 2 3 3 4

Chapter 2

2 System Management

2.1 Project Planning.. 7 2.1.1 Project Development Approach And Justification................ 7 2.1.2 Milestones And Deliverables............................................................ 11 2.2 Project Scheduling.. 15 2.3 Risk Management.. 12

Chapter 3 3. System Requirement's study

3.1 User Characteristics.. 3.2 Hardware And Software Requirements...... 3.3 Constraints... 3.1 Interfaces to other application 3.2 Parallel Operations 3.3 Assumptions and Dependencies
Chapter 4

19 20 21 21 22 22

System Analysis

4.1 Study Of Current System 4.2 Problems and Weakness Of Current System..................... 4.3 Requirements of New System. 4.3.1 User Requirements. 4.3.2System Requirements. 4.4 Feasibility Studies.. 4.4.1 Does the system Contribute to the overall development of the organization.?............................................................................................................... 4.4.2 Can the System be implemented using current technology and within the given cost and schedule constraints?.............................................................................. 4.4.3 Can the system be integrated with the other system which is already in place.?............................................................................................................................ 4.5 Requirements Validation.. 4.6 Activities in the New System. 4.7 Features of the New System.. 4.8 Class Diagram... 4.9 System Activity.......................... 4.10 Activity Diagrams....................................... 4.11 Sequence Diagrams ...................... 4.12 Data Modeling..................... 4.12.1 Data Dictionary. 4.12.2 E-R Diagram 4.13 Main Modules Of The New System 4.14 Selection Of Software And Hardware Justification.....................

24 24 25 25 26 26 28 29 29 29 31 33 35 37 41 47 57 57 69 70 71

Chapter 5 5. System Design

5.1 Table Relationship Diagram... 5.2 State Transition UML Diagram..

74 75

Canny Surveys

INTRODUCTION

CHAPTER-1 INTRODUCTION

IN THIS CHAPTER
PROJECT SUMMARY.... PURPOSE..... SCOPE. OBJECTIVE. TECHNOLOGY AND LITERATURE REVIEW....

AIT (IT)

1|Page

Canny Surveys

INTRODUCTION

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.

AIT (IT)

2|Page

Canny Surveys

INTRODUCTION

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

AIT (IT)

3|Page

Canny Surveys

INTRODUCTION

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 of NETBEANS IDE.

AIT (IT)

4|Page

Canny Surveys

INTRODUCTION

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, or JRE, 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 plugin. 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. JQuery is 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.

JasperReports is 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.

AIT (IT)

5|Page

Canny Surveys

PROJECT MANAGEMENT

CHAPTER-2 SYSTEM MANAGEMENT

IN THIS CHAPTER
PROJECT PLANNING PROJECT SCHEDULING... RISK MANAGEMENT

AIT (IT)

6|P a ge

Canny Surveys

PROJECT MANAGEMENT

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.1 PROJECT PLANNING

2.1.1 Project Development Approach and Justification

The 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 system 2. major subsystems of an application 3. Modules or objects. 4. Functions

Advantages occurring from this software reuse are 1. Increasing system reliability 2. Reduced overall project risk due to less uncertainty in cost estimates 3. 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 user interface and error handling procedures. 5. Reduction in software development time.
AIT (IT) 7|P a ge

Canny Surveys

PROJECT MANAGEMENT

Requirements
Detail design of the remaining components Design of Architecture

Coding of remaining components and unit testing Components specifications Integration

Search for reusable components. Delivery

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
AIT (IT) 8|P a ge

Canny Surveys

PROJECT MANAGEMENT

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. Portability 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.
AIT (IT) 9|P a ge

Canny Surveys

PROJECT MANAGEMENT

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 Chart
Main milestones/phases shown on higher chart, and sub-milestones for each phase on charts below

Table 2.1 MILESTONE DELIVERABLES

MILESTONES Analysis Design Development Testing

Responsibility To analyze similar existing software in market To design a unique software To develop a software with minimal complexities. To test each and every modules of software and finding out bugs

months 0 1 2 2

days 15 0 0 0

Deployment

To deploy a software on a particular domain.

AIT (IT)

10 | P a g e

Canny Surveys

PROJECT MANAGEMENT

2.2 PROJECT SCHEDULING


This is basically the approach which I have followed

Table 2.2 PROJECT SCHEDULING

Research & Development: Analysis: Gathering Information Determining Requirements 2 weeks

Defining Scope

Designing: Database Design Design Modules Design Input Screen 2 weeks

Construction: Coding : Generating the Database Module 2 months Coding the Input pages Report Generation

Testing: Unit Testing Integration Testing System Testing 1 week

AIT (IT)

11 | P a g e

Canny Surveys Methods Documentation Work Total Duration 1 week

PROJECT MANAGEMENT

2 months & 6 weeks

2.3 RISK MANAGEMENT


Risk 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

AIT (IT)

12 | P a g e

Canny Surveys

PROJECT MANAGEMENT

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 Technology

Risk Type Business

Description 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.

AIT (IT)

13 | P a g e

Canny Surveys

PROJECT MANAGEMENT

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 to decide 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. 1. 2. 3.

Risk Probability Very Low (< 10 %) Low (10 25 %) Moderate (50 75%)

Effect Insignificant Tolerable Serious

AIT (IT)

14 | P a g e

Canny Surveys

PROJECT MANAGEMENT

4. 5.

High (50 75 %) Very High (> 75 %)

Catastrophic 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.

AIT (IT)

15 | P a g e

Canny Surveys

PROJECT MANAGEMENT

Also proper test cases can be made for risk planning. Table 2.4 Risk Analysis Risk Incorrect results will be produced Test Factor Correctness Explanation 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 Processing cannot be reconstructed Audit trail File integrity Data entered will remain unaltered Saves the supporting evidential matter to substantiate the processing Continuity of processing will be lost Service provided to users will degrade to an unacceptable level Security of the system will be compromised Access control Service levels Continuity of processing Ensure backup recovery in case of system failure Desired services should be available within an acceptable time frame The system should be secured against unintentional and unauthorized users The system will not give correct results for an extended period of time System will be difficult to use Ease of use Reliability The system should continue to function correctly for a long period of time. Effort required to learn, operate data, interpret output should be small Programs will not be
AIT (IT)

Maintainability

Effort to locate and fix a


16 | P a g e

Canny Surveys

PROJECT MANAGEMENT

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 System will be difficult to operate

Performance

The amount of resources used by the system should be small

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.

AIT (IT)

17 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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.

AIT (IT)

23 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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 of emails/users to be configured for the survey. No control on the application, every feature to be used as per the external tools specifications. The account expires after certain time. All the data related to server vanishes when this happens.

AIT (IT)

24 | P a g e

Canny Surveys

SYSTEM ANALYSIS

We may end up sharing sensitive information with external application by organization specific survey. The application cannot be hosted at companys end. We may have to depend on the format the external application provides. It is difficult to configure our format for the reports. Accuracy of the results is dubious. It may so happen that some particular people of the targeted audience may get kicked out of the survey group. Some specific requirements to be met as per the external tool, without which the tool wont work.

4.3 REQUIREMENTS OF NEW SYSTEM


4.3.1 User Requirements.
In comparison to the old system the following user requirements aroused. Being a web application its ease to host the application in CIGNEX environment. The application will be configurable. It will be able to configure as many surveys as per need arises. It will provide a role based access to the survey application. The different roles provided are configuring a survey, adding a new survey, filling a survey etc. The survey will be time based. The admin will have the power to configure a survey in such a way that it will be live for certain time period only. The admin will be able to generate various reports from the survey. The reports can be graphical or of pure data. The application design should prevent the search engine from indexing a survey which would limit the survey for the specified audience only, resulting in an accurate result. The application should have a method for handling surveys, survey templates, and sample survey questions.
AIT (IT) 25 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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 STUDY
The 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:
AIT (IT) 26 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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.

AIT (IT)

27 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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 from users? 2. 3. Are current business methods acceptable to the user? 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.

AIT (IT)

28 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.4.2 Can the system be implemented using the current technology and within the given cost 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.5 REQUIREMENTS 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 certain functions. 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

AIT (IT)

29 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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

Realism Check: Using knowledge of existing technology the requirement should be checked 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 system meets 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.

AIT (IT)

30 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.6 ACTVITIES IN THE NEW SYSTEM


The following is the event-response table of the system. An event is some change or activity that takes place in the user's environment that stimulates a response from the software system (McMenamin and Palmer 1984; Wiley 2000). An event-response table (event table or an event list) lists all such events and the behavior the system is expected to exhibit in reaction to each event. The event-response table records information at the user-requirements level. If the table defines and labels every possible combination of event, state, and response (including exception conditions), the table can also serve as part of the functional requirements for that portion of the system. However, the analyst must supply additional functional and nonfunctional requirements in the SRS. TABLE 4.1: EVENT RESPONSE TABLE

Event Audience

Trigger Log

Source in Audience home page

Activity

Response

Destination Audience home page

Validate user Valid/invalid name password and user-name, password notifications

logs in to the request system

Create survey

a Create survey Audience request home page

Check if role Access is allocated granted

Create or survey

a page access

access denied or notifications Send configuration request On survey Create survey page a On completion survey configuration for

denied page Admin home page.

creation completion

of creating a waiting survey approval

AIT (IT)

31 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Fill a survey

On

clicking Audience home page

Check active surveys available

if Show a list of Survey unfilled are active surveys. Role change Admin home role request page approval for explorer page

fill up survey

Change role

Audience

Audience

Display current

asks for other home page survey rights

and available accepted roles

Change survey responses

On edit

clicking Survey survey explorer page

Show up and option

filled Re-fill a filled Survey surveys up survey edit explorer page

responses

Audience logs out

Log request

out Audience home page

Log request

out Save activity Main page performed by the user the Survey explorer page

parameters Edit a survey On template clicking Create survey page

a Check if role Display is allocated available

change survey template

templates for modifying in Admin home Validate user Valid-invalid page. name password and login notifications all Approve deny or Survey the explorer page waiting to be filled Admin home page

Admin in

logs Log request

Configure survey

a On

clicking Admin home Showing page the

configuration requests

configuration survey requests

configuration requests

Set targeted audience

up On send

clicking Amin home Showing survey page

all Set

up

a of Audience email page


32 | P a g e

the members group of company the targeted audience

for filling up

inbox

AIT (IT)

Canny Surveys

SYSTEM ANALYSIS

Role change On requests the

clicking Admin home Showing role page role

all Approve

or Audience the home notifying them about or page

change deny change requests

change requests

requests

approval denying Report generation On clicking Admin home Display a page active surveys all Generate specific Audience home

analyze survey

page

reports based showing the on need statistics up Survey

Re-configure/ De-configure a survey

On

clicking Admin home Display page surveys

all Set

configure

surveys as per explorer active/passive surveys. page.

4.7 FEATURES OF THE NEW SYSTEM The 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.
AIT (IT)

Textbox Short text Textbox Numeric Format Validation Textbox Email Format Validation Essay Long text Multiple text fields Table of text fields Checkbox Table of checkboxes Radio button Table of radio buttons
33 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Drop-down menu Tables of dropdown menus Ranking - Table format Ranking - Drag & Drop Ranking - Top X# of items Ranking Stars 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 report formats 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 less tedious. 4. The application shall prevent the search engine from indexing a survey which would limit the 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 be distributed as per group needs. 6. The application shall have export option. It shall write to a variety of targets such as pdf, html, Microsoft excel, RTF or XML files. 7. The application shall have role based and time based access to surveys. Once a time limit expires no one can configure that survey except admin. 8. The application shall stand true to companys goal that is to reduce the total amount of ownership by adopting open source technologies.

AIT (IT)

34 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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. Associations 2. 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 diagrams including the activity, sequence, and state chart diagrams refer to the classes modeled and documented on the class diagram

AIT (IT)

35 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Admin -ID -email_id -first_name -last_name -username -password +doConfigure() +setUpGroupsOfAudience() +handleRoleChangeRequests() +handleSurveyConfigurations() +generateSurveyReports() +exportSurveyReports() *

-handles

Creates -creationDate -surveyCategory -surveyFillupTimePeriod +createNew() +createFromTemplate() +createByCopy()

CignexEmployees -ID -email_id -first_name -last_name -survey_role -username -password -lastSurveyFilled +doRegister() +doLogin() +doLogout() +doRequestForChangePassword() +doFillSurveys() +doEditSurveyResponses() +doViewFilledSurveys()

Fills * -first_Filled -last_Filled +doFill() +editResponses() +saveResponses()

-Configures

Surveys +surveyId : int +questionType : char +surveyCreationDate : int +surveyTerminationDate : int -surveyCategory : char +surveyPriority : int -surveyReportType : char -surveyExportOptionType : char +surveyAnswerCollector() +surveyReportMaker() +surveyAnalyzer() +surveyResultExport()

Audience -changeOfRoleRequest()

DecisionCommitee -lastSurveyCreated +createSurvey() +reviewSurvey() +organizeSurvey() +sendSurveyConfigurationRequest() +previewSurveys()

ActiveSurveys +surveyId : Surveys +surveyDate : Surveys +surveyTimeSpecified : Surveys +SurveyConfigure()

PassiveSurveys +surveyId : Surveys +surveyTimeSpecified : Surveys +surveyDate : Surveys +surveyDeConfigure() +surveyReConfigure()

FIGURE 4.1: CLASS DIAGRAM

AIT (IT)

36 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.9 SYSTEM ACTIVITY (USE CASE)


A use case diagram depicts actors, use cases, and the relationships among them. Use case is 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:

AIT (IT)

37 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.2 AUDIENCE USE CASE

AIT (IT)

38 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.3 DECISION COMMITTEE USECASE

AIT (IT)

39 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.4 ADMIN USECASE


AIT (IT) 40 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.10

ACTIVITY DIAGRAMS

Basic 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.

AIT (IT)

41 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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."

AIT (IT)

42 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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

AIT (IT)

43 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.5 ADMIN ACTIVITY DIAGRAM

AIT (IT)

44 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.6 FILL SURVEY ACTIVITY DIAGRAM

AIT (IT)

45 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.7 CREATE SURVEY ACTIVITY DIAGRAM


AIT (IT) 46 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.11

SEQUENCE DIAGRAMS

Basic 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.

AIT (IT)

47 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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 "<< destroy >>" that points to an X.

AIT (IT)

48 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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 [ ].

AIT (IT)

49 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.8 ADMIN SEQUENCE DIAGRAM

AIT (IT)

50 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.9 AUDIENCE FUNCTIOANLITIES SEQUENCE DIAGRAM

AIT (IT)

51 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.10 DECISION COMMITTEE SEQUENCE DIAGRAM

AIT (IT)

52 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.11 AUDIENCE SCENARIO SEQUENCE DIAGRAM

AIT (IT)

53 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.12 AUDIENCE FUNCTIONS SEQUENCE DIAGRAM

AIT (IT)

54 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.13 ROLE CHANGE REQUEST SCENARIO DIAGRAM

AIT (IT)

55 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Figure 4.14 SURVEYS FILL UP SEQUENCE DIAGRAM

AIT (IT)

56 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.12

DATA MODELLING

The 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 Survey_id

Data type Integer

Description survey number

Allows nulls

identifier No

Creation_date

Date

when the survey is No created

LastEdited_date

Date

When the survey No was last modified

LastEntry_date

date

When the survey No was sent for

configuration Open_date Date When the survey is No active Close_date date When the survey No will no longer be active

AIT (IT)

57 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Survey_Title

Varchar(15)

What the survey is Yes about

Survey_URL

varChar(25)

Way to access the No site

ThankyouMessage AccessPassword

varChar varChar(20)

message

Yes

Password fr filling No up

AllowMultipleSubmissions boolean Activate boolean

option Live configuration

Yes for No

Reactivate

boolean

Passive

surveys Yes

again can be made live Survey_language varChar(20) Language prepferences Yes

2. Survey_layout_mode

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Sur_layout mode id

integer

Specifying

to

a No

AIT (IT)

58 | P a g e

Canny Surveys

SYSTEM ANALYSIS

particular type Sur_description Varchar(50) description Yes

3. Survey_samples

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Survey_type Survey_descriptions Survey_description

Varchar(10) Varchar(50) Varchar(50)

Survey category description description

No Yes Yes

4. Survey_group

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Survey_group Survey_title Survey_file size

varChar(10) Survey name Integer

Survey group detail Survey title name Survey value file

No Yes

size No

AIT (IT)

59 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Survey_groupID

Integer

Groups same survey

having No type of

5. Survey_email details

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Email from

varChar(20)

Notification about No new surveys

Email_to

varChar(20)

Targeted audience No email id

Email_sub

Varchar(20)

Details survey

about Yes

6. Survey_entry Quota

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Max_entries

Integer

Maximum allowed No entries

Entry count

Integer

Total number entries

of Yes

AIT (IT)

60 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Max message

reached VarChar(50)

Appropriate message

Yes

7. Survey_page Options

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Page_number

Integer

Survey number detail

page Yes

Randomize_questions

Boolean

Shuffle questions When finished

Yes

Enables_SubmitButton Boolean

survey No

Disable_SubmitButton

Boolean

Survey incomplete

yet No

Condition

VarChar(50)

Checking condition

No

Disable_Back Button

Boolean

Limited time limit

Yes

8. Survey_setup_audience

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

AIT (IT)

61 | P a g e

Canny Surveys

SYSTEM ANALYSIS

User_id Email_id

Integer Integer

User id of email Primary

No

email Yes

address registered Request_Date Date Email notification No sent Anonymous_entry VarChar(50) confidentiality Yes

9. Survey_results

Column_name Survey_id

Data_type Integer

description survey number

Allows null

identifier No

Condition_id

Integer

Pre-default conditions

No

Question_id

Integer

Type

of

survey No

question Answer_id Integer Type answer Thankyou message Result Score VarChar(50) VarChar(50) Integer Message Type of result Yes No of survey No

Result analysis of No surveys

10. Survey_layout
AIT (IT) 62 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Column_name Survey_id

Data_type Integer

Description survey number

Allows null

identifier No

Sur_header

VarChar(50)

Details survey

about Yes

Sur_footer

VarChar(50)

Details creator

about Yes

Sur_css

VarChar(50)

Design details

No

11. Survey_configure

Column_name Survey_id

Data_type Integer

Description survey number

Allows null

identifier No

Sur_name Sur_from

varChar(30) varChar(20)

Survey name Decision

No

making No

committee address Sur_Accept Boolean Approve or deny Yes

12. Survey_deconfigure

Column_name

Data_type

Description

Allows null

AIT (IT)

63 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Survey_id

Integer

survey number

identifier No

Survey_name Survey_from

varChar(30) varChar(20)

Survey name Decision

No

making No

committee address Survey_Exp date Date When the survey No should be take off Survey_reconfigure boolean Again put the No

survey live

13. C_user

Column_name User_id User_name password firstname Email

Data_type Integer Varchar(20) Varchar(20) Varchar(20) Varchar(20)

Description User id of status User name User password First name detail

Allows null No No No No

Professional email No address

Contact_Number creationDate

Integer Date

Contact number

No

Date of creating or No updating profile

14. User_details

AIT (IT)

64 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Column_name U_id U_phone no U_email id U_email id_no

Data_type Integer Integer varChar(20) Integer

Description Username User phone number User email id Primary email

Allows null No No No Yes

15. C_user_answers

Column_name U_id User_answer_type

Data_type Integer Varchar(20)

description User id

Allows null No

Filled up responses No from user

User_entry_date

Date

When user fills up No a survey

16. C_userRole

Column_name U_id Role_id Sur_access

Data_type Integer Integer Boolean

description User identification Role identification

Allows null No No

Grant filling up a No survey

AIT (IT)

65 | P a g e

Canny Surveys

SYSTEM ANALYSIS

17. Questions_explorer

Column_name Question_id Survey_id

Data_type Integer Integer

description Type of question Survey identification number

Allows null No No

Library_id

Integer

Question number

id No

Columns_no

Integer

Total number of No options allowed

Question_text

Varchar(70)

Description question

about No

Display_order

Varchar(20)

Show orders

possible No

Min_Select_required

Integer

Minimum possible Yes of participants

Max_select_allowed Rating_enabled Time_enabled

Integer Boolean Boolean

Max limit allowed Enable ratings Time surveys

Yes Yes

based Yes

Random_qs_enabled Page_no

Boolean Integer

Randomize surveys Display number

Yes

page Yes

AIT (IT)

66 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Help_text Alias Question_grp_id Show_help_text

Varchar(20) Varchar(20) Integer Varchar(20)

Show help quote Another name Group id Help message

No Yes No Yes

18. Questions_group

Column_name Group_id Group_name parentGroupID

Data_type Integer Varchar(20) Integer

description Question group id Survey group name Number suvey containing questions of

Allows null No No

the Yes group

Display_result

Varchar(20)

Show results

No

19. Skip_logic_rule Column_name Skip_logic_rule_id Skip_question_id Data_type Integer Integer description Condition id Allows null No

Question id to be No skipped

Condition_operator

VarChar(20)

Checking

pre No

defined condition

AIT (IT)

67 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Answer_id Score Score_max

Integer Integer Integer

Answer choice Votes allocated

No No

Maximum votes to No a answer

20. Question_section_options

Column_name Qs_id

Data_type Integer

description Type of question Allows repetition

Allows null No Yes

repeatableSectionModeID Boolean Add_section Varchar(20)

Add some other Yes part

Delete_section

Varchar(20)

Delete some other Yes part

Update_section

Varchar(20)

Modify other part

some Yes

Customize_Section

Varchar(20)

Change other part

some Yes

21. Answers

Column_name Answer_id

Data_type Integer

description

Allows null

Answer type and No option

AIT (IT)

68 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Question_id Answer_type_id

Integer Integer

Question type Possible form

No

answer No

answer_text

Varchar(20)

Description about No answer

Answer_rate_part Display_order Default_txt

Boolean Varchar(20) Varchar(20)

Enables rating Shows order

Yes Yes

Default message to Yes be displayed

Score_points answerID_text

Integer Varchar(20)

Answers Show

No possible Yes

answer options Answer_alias Varchar(20)

AIT (IT)

69 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.12.2 E-R Diagram

Figure 4.15 E-R DIAGRAM


AIT (IT) 70 | P a g e

Canny Surveys

SYSTEM ANALYSIS

4.13

MAIN MODULES OF THE NEW SYSTEM

The whole application is divided in to three modules based on roles. 1. Audience Module This module mainly is considered with the people who just have the right to fill up the survey. This module has also a sub module:-fill survey module. The audience module mainly deals with a new employee registering and his duties. The major functionalities covered here are A new user Registering A user getting some access role A user filling up a survey. A user editing his responses. A user specifying for change of role. A user editing his profile.

2. Admin Module This module mainly is for approval and management. The admin module consists of various sub modules such as configuration module, reports module. The admin manages both the decision committee and audience. The major functionalities covered here are configure up a survey Set up a targeted group of audience. Accept or deny the role change requests from other users. Generate reports for the decision committee. Export results if needed. Re set up a survey if needed De configures a survey if needed.
AIT (IT) 71 | P a g e

Canny Surveys

SYSTEM ANALYSIS

Manage the system

3. Decision Committee module The 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 in open source has 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
AIT (IT) 72 | P a g e

Canny Surveys

SYSTEM ANALYSIS

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, Struts and etc.

AIT (IT)

73 | P a g e

Canny Surveys

SYSTEM DESIGN

Chapter-5 SYSTEM DESIGN

IN THIS CHAPTER
TABLE RELATIONSHIP DIAGRAM STATE TRANSITION DIAGRAM .............

AIT (IT)

73 | P a g e

Canny Surveys

SYSTEM DESIGN

5.1 TABLE RELAIONSHIP DIAGRAM


c_user_answers1 User_id user_AnswerType user_answersEntered Date survey_samples surveyid surveytype surveyQuestions surveyDescription survey_pageOptions surveyId pageNumber RandomizeQuestions EnableSubmit button disavle submit button condition didisable back button survey_results condition_id survey_id question_id answer_id thankyou message result score

user_details1 u_id u_phone no u_emailID u_emailID_no

Survey_layout_mode survey_id survey_layout mode ID survey_description

Survey_explorer survey_id creation_date lastedited_date lastEntry_date open_date close_date survey_title thankyou message access password allow multiple submissions activate reactivate survey_language survey_guid

Survey_layout Survey_id survey_header survey_footer survey_css

survey_group c_userrole1 user_id role_id survey_access survey_id survey_group survey_title survey_filesize survey_groupid survey_entry quota c_user1 user_id username password firstname email creationDate survey_id max entries entry count Max reached message

survey_configure survey_id survey_name survey_from survey_Accept

survey_deconfigure survey_setup audience survey_send via email survey_id email from email to email subject survey id user id email id request date anonymous entry survey_id survey_name survey_from survey_exp date survey_deconfigure survey_re configure

Questions_explorer1 question_id survey_id library_id columns_no question_text display_order min_selected_req max_selection_allowed rating_enabled time_enabled random_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

answers1 answer_id question_id answer_type_id answer_text answer_rate_part display_order default_text score_points answerID_text answer_alias

question_section_options1 question_id repeatableSectionModeID add_section delete_Section update_section customize_section

Figure 5.1 TABLE RELATIONSHIP DIAGRAM AIT (IT) 74 | P a g e

Canny Surveys

SYSTEM DESIGN

5.2 State Transition/UML Diagram

Figure 5.2 HOME PAGE STATE TRANSITION DIAGRAM AIT (IT) 75 | P a g e

Canny Surveys

SYSTEM DESIGN

Figure 5.3 ADMIN PAGE STATE TRANSITION DIAGRAM AIT (IT) 76 | P a g e

Canny Surveys

SYSTEM REQUIREMENTS STUDY

CHAPTER-3 SYSTEM REQUIREMENTS STUDY

IN THIS CHAPTER
USER CHARACTERISTICS... HARDWARE AND SOFTWARE REQUIREMENTS... CONSTRAINTS... ASSUMPTIONS AND DEPENDENCIES

AIT (IT)

18 | P a g e

Canny Surveys

SYSTEM REQUIREMENTS STUDY

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

AIT (IT)

19 | P a g e

Canny Surveys

SYSTEM REQUIREMENTS STUDY

Figure 3.1 MODULE ARCHITETURE

3.2 HARDWARE AND SOFTWARE REQUIREMENTS (MINIMUM REQUIREMENTS 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.

AIT (IT)

20 | P a g e

Canny Surveys

SYSTEM REQUIREMENTS STUDY

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

AIT (IT)

21 | P a g e

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.1 Operating 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 End User 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.

AIT (IT)

22 | P a g e

Potrebbero piacerti anche