canny surveys
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.