0% found this document useful (0 votes)
10 views61 pages

Sr. No. Title Page No

Download as doc, pdf, or txt
Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1/ 61

lOMoARcPSD|40602229

TABLE OF CONTENTS

Sr. No. Title Page No.


1 Introduction 07-08
1.1 Background 09
1.2 Objectives 09
1.3 Purpose, Scope and Applicability 10
1.4 Achievements 11
1.5 Organization of Report 11
2 Survey of Technology 12
2.1 Frontend features 13
2.2 Backend Features 13
2.3 Justification 13
3 Requirement and Analysis 14
3.1 Problem Definition 15
3.2 Requirement Specification 15
3.3 Planning and Scheduling 15
3.4 Software and Hardware Requirement 16
3.5 Preliminary Project Descrition 16
3.5 Gantt Chart 17
4 System Design 18
4.1 Data Flow Diagram 24
4.2 Use Case Diagram 28
4.4 Activity Diagram 35
4.5 Sequence Diagram 41
4.6 Class Diagram 46
5 Implementation and Testing 48
5.1 Implementation Approaches 49
5.2 Code Efficiency 50
5.3 Testing Approach 52
5.4 Modification and Improvements 54
5.5 Test Cases 55
6 Result and Discussion 57
7 Cost Benefit Analysis 65
8 Conclusion 68

5|Page

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

8.1 Significance of the system 69


8.2 Limitations of the system 70
8.3 Future scope of the project 70
9 References 71

6|Page

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Chapter 1
1. Introduction
This Complaint management system wants to respond to the challenges of our time, such as
those regarding Sustainability and quality of life. This is achieved for example by improving
the efficiency ofurban operations and services, as well as its competitiveness. And to ensure
that the city meets the needs of present and of future generations, in terms of economic,
social and environmental issues. In short, a city should be a good place to live with the best
possible quality of life and with the most efficient use of resources. Here, people exchange
information and work together on projects. In addition, cities are sustainable and they are
economical with energy, water, raw materials, food and financial resources. Third, cities
should encourage their residents, businesses and city services to invent new ways of
organizing. sharing communicating and producing Furthermore, a city is only really smart
when it involves its residents and companies in its projects. Finally, a city works on
simplifying things: Everyone would rather have simple, transparent (public) service. This
project will give positive success. In direction including climate changes In India we have an
indirect communication between the government and public. For getting a problem solved
within our nearby areas we have to visit the government offices which wouldrequire a whole
day or else bribe the officers to get the problem solved which can be actuallysolved in a very
short period of time. A common man faces many problems related to governance in his daily
life. The main purpose of our Complaint Management project is to help the public facing
such problems and knowing the region where the problem has occurred and getting their
problems solved online without going to the officer regularly until the problem is solved. In
accordance this study initiates an integrated and networked system, with the focus on its
ability to solve the problems such as Water supply,Pot Holes in road, Street light, Garbage
cleaning. This will minimize time as well as money to go to an office for complaint
registration Three related concepts are encompassed by the general scope of People's Comer.
The first applicable to the replacement of personal visit to the office and registering
complaints on paper, the second relates to a complementary electronic strategy for the
handling of a customer's complaint and the third surrounds the process of taking actions by
the government bodies against the complaints registered by the citizens. The user can click
the picture of the venue of complaint and upload the same. Also, the address of complaint
location will be tracked automatically using GPS and Google maps, thus reducing user's
overhead of typing the address. Html, Java is used to develop the project.
1.1 Background:
The only motive for this project to improve the city. Complaint Management System project w e
also can as (CMS), this project is for Mahim's people so this help to contact with fire brigades, road
constructor and the other works regarding issues in surrounding
society. This website will be easy to use.50 that then user can understand easily to use
site and solve their problem. There will be providing address according to the
problems. Complaint Management system will help to clean the city, safety of city,
quality of city, standards of city. This project can help so many problems. Website will
be asked for your info for example name, user-id, and password so that user can save
their data, this project will bemaking on PHP, ASP.net, HTML/CSS and this is wireless
technologies. This will also call as informational website. The quality of website will
be good enough. And number of people can use it to their ease and have their
complaints resolved on this portal

1.2 Objectives:
Development of clean, and ease in cities is as step in that direction in the approach to the
smart citiesmission, the objectives is to promote cities that provide core infrastructure
and give a decent quality of life to citizens, a clean and sustainable environment and
application of "instant" solutions. The concept of fast, easy living city, means different
things to different people, changes from city to city and country to country. It depends
on the willingness tochange and reform, the level of growth.

1. This will help in society, their problems and to clean the city.
2. Infrastructure and provide its citizens a decent quality of life, a clean and
sustainable environment and application of smart solutions
1.3 Purpose, Scope, Applicability:

1.3.1 Purpose :-
This project provides better sanitation and other modern facilities for developing this
cities Its main motive to enhance the lifestyle of the people so that they can enjoy
better living standards. The use of modern technology to bring this change. Many
cities are struggling because of these small, bigger problems.to adjust with unplanned
development plans, the fast increasing gap between poor and rich is also matter
concer.so the basic idea of this scheme is quite clear if it is implemented in righteous
way the it will bring great positive change in our society

1.3.2 Scope :-
Everywhere we see that people talking about complaint management and its
advantages and disadvantages. On other side we see that 8 years back people were
talking only about smart phones but now a days fast, easy living Cities are in trend and
other smart products also. Wecan say that through parallel technological developments
globally the concept of smart cities is on boom and rising day by day.

1.3.3 Applicability :-
• This website is for the person who having problems in surrounding society. We can
say that it's part of city, because it will help us to clean the city and safety of city.
• People can also contact with workers.
• People can save their time and money through this website.
• This website will be easy to use.
• Complaint Management System will be successful project to develop the environment.

lOMoARcPSD|40602229

1.4 Achievements :-
Project ensures that it will benefit to everyone. A key feature of this system is that they
create efficiency. Well - designed technology tool scan benefit government agencies
the environment and resident. Smart city can improve the efficiency of city services by
eliminating redundancies, finding ways to save money and streamlining workers
responsibilities. The result can provide higher quality services at lower cost.it will also
help people they are in trouble example electricity problem, water problem, road
problem etc. they can inform the problems and then this website will help you to solve
the problem, and this is big opportunity to develop the city and also a unique idea. This
will improve our living standards the main motive of this project to clean and neat the
city as soon as possible.

1.5 Organization of project :-


In the introduction chapter an overview of the project is documented the survey report is as follows,
website is useful
according to survey of report on project Mahim city, CMS for city purpose to clean the
ople want to
city and CMS can be worldwide. Some pe upgrade facilities more and put some more
hat it is good and perfect idea to develop the city. People are satisfied with
ideas .people also believe t
this project al so society doesn' have any issues or problems regarding this project, people can use this
simultaneously at the same time. So this is clear according to survey that the project will behelpful for
city and this will clean the city, develop the city.
Chapter 2
2.1Front end Features-
* Login.
* Register.
* Change password.
* User Dashboard: Water, Fire, Electricity, Garbage, Security, Potholes or
any other road inconveniences.

2.2Back end Features-


* Database.
* Area/ Location.
* Registrations.
* Complaint type.

2.3Justification of selection of platform:


A database is your best choice for storing data in your web application, and the MySQL
database server has always been the most popular choice among PHP developers. It's
supported by almost any hosting company offering PHP, which makes it easy to get
started with, and you can even download and install it on your own computer, for testing
purposes. MySQL uses the SQL (Structured Query Language) programming language to
work with the data, and PHP interacts with MySQL by simply passing SQL code through
a set of MySQL functions to the MySQL server, which then returns a result that PHP can
interpret. It can seem a bit of a task to have to work with a second language to interact
with databases, but fortunately SQL is a fairly simple language, which looks a lot like the
English language and we will provide you with some good SQL examples, allowing you
to do the most common tasks, we need some common test data, which you will need to
add to a database for which you have access to. The easiest way to do this is to use one of
the many MySQL tools, with the most popular one being PhpMyAdmin, which is
installed on most servers offering PHP and MySQL. If you don't have access to
phpMyAdmin, you can install it, use one of the many downloadable applications or use
the MySQL prompt. Whatever you choose, you should execute the following SQL code
against your database. In phpMyAdmin, this is done by clicking the button labelled
"SOL"
Chapter 3

Requirements and Analysis

3.1 Problem statement:


In cities website they are giving information about cities that how to clean the cities, how to
maintain the cities here we in this website we giving the proper solution of problems. Effecient
and fast resolving of complaints can improve the efficiency of city services by eliminating
redundancies, finding ways to save money and streamline workers' responsibilities. The result can
provide higher-quality services at lower cost. In the existing system the people must go to the
office for any kind of help. The users can post their problems but cannot get the details of the
problems and some other services. This system doesn't have much popularity and is not user
friendly.

3.2 Requirements Specification:


The production of the website is new and altered product foe functioning the task of a
user. It is necessary clean action for the user to be more trustworthy for this website. The
website lay outs functional and non-functional requirements. The Eliciting requirements,
the charter of the project business process documentation, and stakeholder interviews.
Analyzing the requirement determining whether the stated requirements are clear,
complete, consistent and unambiguous, and resolving any apparent conflicts. Recording
Requirements could be documented in various forms, usually including a summary list
and may include natural language documents, use cases, user stories, process
specifications and a variety of models including data models.

3.3 : Planning and Scheduling:


1) Sketching out a plan
2) Define Start and End dimension of a project
3) Design a system model for reference
4) Allocate time for each task, include buffer time for any risks or uncertainties.
5) Start coding and try to meet as many dimensions stated as possible
6) Testing
7) If time is left, try and add more features.
8) If time is not left, count the shortfalls, and try improving the next time.
9) Conclude the project.

.
lOMoARcPSD|40602229
3.4.1 Software Requirements:
• PHP and HTML5 to create software.
• My SQL for back-end to store the data.
• Java script.

3.4.2 Hardware Requirements:


A computer with windows 10 or higher operating system. Personal computer with
following minimal specification: RAM: 256/512 MB Hard disk: 80 GB Memory: This
software, when run, resides in the random access memory (RAM) of a computer. This
website uses 4GB RAM. Memory requirements are defined after considering demands
of the application, operating system, supporting software and files, and other running
processes. Secondary storage: This website uses hard-disk storage. Hard-disk
requirements vary, depending on the size of software installation, temporary files
created and maintained while installing or running the software, and possible use of
swap space (if RAM is insufficient).

3.5 Preliminary Product Description:

Online Complaint Management System provides an online way of solving the


problems faced by the public by saving time and eradicate corruption, and the ability of
providing many of the reports on the system, and add to Facilitate the process of
submitting a complaint. It is committed to earn the trust of all our user's and to achieve
customer satisfaction. The effectiveness in compliance, and continual improvement of
quality system shall be driven by the process approach, it strives for optimal utilization
of resources to complete project within budget and schedule. This website has three
logins where the first login is for the user one who wants to know a basic knowledge
about architecture, the second login is for architectures who wants to design plan,
practice architect plans or want to learn about arch and the third login is for the
customers or viewers who wants to know about the Complaint Management System
and wants to contact or wants to design their homes. The website is actionable, testable
and measurable related to clean city needs and defined to a level of detail sufficient for
website users.
3.6 Gantt Chart

Complaint Management System


07-Jul 26-Aug 15-Oct 04-Dec 23-Jan 14-Feb

Complaint
management system

Submission of topics

Topic Approval

Planning

Introduction

Survey of technology
Requirement and
Analysis
System Design

Coding
Implementation and
Testing
lOMoARcPSD|40602229

CHAPTER 4

10
lOMoARcPSD|40602229

System Design
UML Diagrams :
• What is UML?
- UML stands for Unified Modelling Language.
- UML is popular for its diagrammatic notations.

- We all know that UML is for visualizing, specifying, constructing and


documenting the components of software and non-software systems.

- Hence, visualization is the most important part which needs to be


understood and remembered.
- Efficient and appropriate use of notations is very important for making a
complete and meaningful model.
- The model is useless, unless its purpose is depicted properly.
Hence, learning notations should be emphasized from the very beginning.

Different notations are available for things and relationships.

UML diagrams are made using the notations of things and relationships.

Extensibility is another important feature which makes UML more powerful and flexible.

• Why Do We Use UML?


A complex enterprise application with many collaborators will require a solid
foundation of planning and clear, concise communication among team members as the
project progresses.

Visualizing user interactions, processes, and the structure of the system you're trying
to build will help save time down the line and make sure everyone on the team is on
the same page

• What are the Types of UML Diagrams?


1. Entity Relationship Diagrams.
2. Class diagrams

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


11
lOMoARcPSD|40602229

3. Use Case Diagrams.


4. Sequence Diagrams.
5. Activity Diagrams.

❖ ENTITY RELATIONSHIP DIAGRAM :-

• What is an Entity Relationship Diagram (ERD)?

- An ERD shows the relationships of entity sets stored in a DB.


- An entity in this context is a component of data. In other words, ER
diagrams illustrate the logical structure of databases.
- At first glance an entity relationship diagram looks very much like a flowchart.
- It is the specialized symbols, and the meanings of those symbols, that make it unique.

• Common Entity Relationship Diagram Symbols :


- An ER diagram is a means of visualizing how the information a system produces
is related.
- There are five main components of an ERD :

Entities :

- An entity is represented by rectangle. An entity is an object or concept


about which you want to store information.

Weak Entities :

- A weak entity is an entity that must defined by a foreign key relationship


with another entity as it cannot be uniquely identified by alone.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


12
lOMoARcPSD|40602229

Actions :
- Actions which are represented by diamond shapes, show
how two entities share information in the database.
- In some cases, entities can be self-linked.
- Forexample,employeescansuperviseotheremployees.

Attributes :

- Attribute which are represented by ovals.


- A key attribute is the unique, distinguishing characteristic of the entity.

- For example, an employee's social security number might be the employee's


key attribute.

A multivalued attribute can have more than one value. For example, an employee
entity can have multiple skill values.

A derived attribute is based on another attribute. For example, an employee's monthly


salary is based on the employee's annual salary.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


13
lOMoARcPSD|40602229

[Type here]

Connecting lines:

- Solid lines that connect attributes to show the relationships of entities in


the diagram.

Cardinality :

- It specifies how many instances of an entity relate to one instance of another entity.
- Ordinality is also closely linked to cardinality.

- While cardinality specifies the occurrences of a relationship,


ordinality describes the relationship as either mandatory or optional.

- In other words, cardinality specifies the maximum number of relationships


and ordinality specifies the absolute minimum number of relationships.

14
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

[Type here]

15
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

[Type here]

Fig. 4.2.2 DFD Diagram

16
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

USE CASE DIAGRAMS :-

• Actors :
- An actor portrays any entity (or entities) that perform certain roles in a given system.

- The different roles the actor represents are the actual business roles of users in a
given system.
- An actor in a use case diagram interacts with a use case.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


17
lOMoARcPSD|40602229

• Use Case :
- A use case in a use case diagram is a visual representation of a distinct
business functionality in a system.
- The key term here is "distinct business functionality”.
- To choose a business process as a likely candidate for modelling as a use case,
- you need to ensure that the business process is discrete in nature.

Use-Case

• SystemBoundary :
- A system boundary defines the scope of what a system will be.
- A system cannot have infinite functionality.
- So, it follows that use cases also need to have definitive limits defined.
- A system boundary of a use case diagram defines the limits of the system.
- The system boundary is shown as a rectangle spanning all the use cases in the system.

System

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


18
lOMoARcPSD|40602229

• Include :
- When a use case is depicted as using the functionality of another use case in
a diagram,

- This relationship between the use cases is named as an include relationship.


- Literally speaking, in an include relationship, a use case includes the functionality
- Described in another use case as a part of its business process flow.

- In this use case, Register <<includes>> Customer Authentication i.e. the


Web Customer
- Cannot Register without providing his/her authentication.
- It has to be done in order to complete the Registration.

• Extend :
- In an extend relationship between two use cases, the child use case adds
- to the existing functionality and characteristics of the parent use case.
- An extend relationship is depicted with a directed arrow having a dotted shaft,
- similar to the include relationship.
- In this case, Payment <<extends>> Credit Card, SOS and External Credit Cards.
This means that Credit Card, SOS and external Credit Cards give extra functionality toPayment
methods.Payment can be done using these methods and Payment depends on these source

19
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Fig. 4.2.3 Use Case Diagram

20
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

ACTIVITY DIAGRAMS :-

• What is an Activity Diagram?


- An activity diagram visually presents a series of actions or flow of control in a
system similar to a flowchart or a data flow diagram.
- Activity diagrams are often used in business process modeling.
- They can also describe the steps in a use case diagram.
- Activities modelled can be sequential and concurrent.
- In both cases an activity diagram will have a beginning and an end.

• Basic Activity Diagram Notations and Symbols :

21
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Initial State or Start Point :


A small filled circle followed by an arrow represents the initial action state or the start
point for any activity diagram
- For activity diagram using swimlanes, make sure the start point is placed in the
top left corner of the first column.

Activity or Action State :


- An action state represents the non-interruptible action of objects.
- You can draw an action state in Smart Draw using a rectangle with rounded corners.

Action Flow :

- Action flows, also called edges and paths, illustrate the transitions from one
action state to another.
- They are usually drawn with an arrowed line.

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.

22
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

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

Decisions and Branching :

- A diamond represents a decision with alternate paths.

- When an activity requires a decision prior to moving on to the next activity, add
a diamond between the two activities.
- The outgoing alternates should be labeled with a condition or guard expression.
- You can also label one of the paths "else."

Guards :

- In UML, guards are a statement written next to a decision diamond that must be
true before moving next to the next activity.

- These are not essential, but are useful when a specific answer, such as "Yes,
three labels are printed," is needed before moving forward.

23
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Synchronization :

- A fork node is used to split a single incoming flow into multiple concurrent flows.
- It is represented as a straight, slightly thicker line in an activity diagram.
- A join node joins multiple concurrent flows back into a single outgoing flow.
- A fork and join mode used together are often referred to as synchronization.

Time Event :

- This refers to an event that stops the flow for a time; an hourglass depicts it.

Merge Event :

- A merge event brings together multiple flows that are not concurrent.

24
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Sent and Received Signals :

- Signals represent how activities can be modified from outside the system.
- They usually appear in pairs of sent and received signals, because the state can't change
until a response is received, much like synchronous messages in a sequence diagram.

- For example, an authorization of payment is needed before an order can


be completed.

Interrupting Edge :

- An event, such as a cancellation, that interrupts the flow denoted with a lightning bolt.

Swimlanes :

- Swimlanes group related activities into one column.

25
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Final State or End Point :

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

26
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Fig. 4.2.4 Activity Diagram

27
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

SEQUENCE DIAGRAMS :-

• What is a Sequence Diagram?

- Sequence diagrams describe interactions among classes in terms of an exchange


of messages over time. They're also called event diagrams.

- A sequence diagram is a good way to visualize and validate various runtime


scenarios.

- These can help to predict how a system will behave and to discover responsibilities
a class may need to have in the process of modeling a new system.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


28
lOMoARcPSD|40602229

• Basic Sequence Diagram Notations :

Class Roles or Participants :


- 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 or Execution Occurrence :

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

- When an object is busy executing a process or waiting for a reply message, use a
thin gray rectangle placed vertically on its lifeline.

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.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


29
lOMoARcPSD|40602229

Lifelines:

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

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

Destroying Objects:

- Objects can be terminated early using an arrow labeled "<< destroy >>" that points
to an X.
- This object is removed from memory.

- When that object's lifeline ends, you can place an X at the end of its lifeline to
denote a destruction occurrence.

• Types of Messages in Sequence Diagrams :-

Synchronous Message :
- A synchronous message requires a response before the interaction can continue.
- It's usually drawn using a line with a solid arrowhead pointing from one object to another.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


30
lOMoARcPSD|40602229

AsynchronousMessage:
- Asynchronous messages don't need a reply for interaction to continue.

- Like synchronousmessages, they are drawn with an arrow connecting two lifelines;
however, the arrowhead is usually open and there's no return message depicted.

Reply or Return Message :

- A reply message is drawn with a dotted line and an open arrowhead pointing back to
the original lifeline.

Self-Message :

- A message an object sends to itself, usually shown as a U shaped arrow pointing


back to itself.

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


31
lOMoARcPSD|40602229

Create Message :

- This is a message that creates a new object. Similar to a return message, it's depicted with a dashed
line and an open arrowhead that points to the rectangle representing the object created.

Delete Message :
- This is a message that destroys an object. It can be shown by an arrow with an x at the end.

Found/LostMessage :
- A message sent from/to an unknown recipient, shown by an arrow from an endpoint to a lifeline.

32
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Fig. 4.2.5 Sequence Diagram

33
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

CLASS DIAGRAM :-
• What is a Class diagram?
- A class diagram is a static structural diagram.

- It describes the attributes, operations of the class, constraints imposed on


them and the relationships among objects.
- Classes are represented with boxes that contains three compartments.

KCTYIT004
Harshitaa Chatlani
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

• Visibility :

Use visibility markers to signify who can access the information contained within
a class.

- Private visibility, denoted with a - sign, hides information from anything outside
the class partition.
- Public visibility, denoted with a + sign, allows all other classes to view the
marked information.
- Protected visibility, denoted with a # sign, allows child classes to access
information they inherited from a parent class.

• Relationships :-

Inheritance :
- The subclasses inherit all the attributes and methods of the super class.
- Generalization is another name for inheritance or an "is a" relationship.

- It refers to a relationship between two classes where one class is a specialized


version of another.

- For example, Honda is a type of car. So the class Honda would have a
generalization relationship with the class car.

KCTYIT004
Harshitaa Chatlani
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Association :
- Association is just a relationship or a link between classes.
- There may be no dependency.

Aggregation :
- In aggregation when the container is destroyed, the contents are usually not destroyed.
- They still exist.

Composition :
- In composition, when the container is destroyed, the contents are also destroyed.

Dependency :

- Dependency is a directed relationship which is used to show that some


elements require, needs or depends on other class elements.

arshitaa Chatlani
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Constraint :Place constraints inside curly braces {}:

Multiplicity :
- It specifies the number of objects that are involved in that association.

0 - No instances
0…1 - No instances or one instance
1 - Exactly one instance
1…1 -Exactly one instance
0…* - Zero or more instances
* -Zero or more instances
1…* - One or more instances

KCTYIT004
Harshitaa Chatlani
Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)
lOMoARcPSD|40602229

Fig. 4.2.6 Class Diagram

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Fig. 4.2.8 Deployment Diagram

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

CHAPTER 5

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

5.1 IMPLEMENTATION APPROACHES

● A planned approach for a successful project is of utmost importance as the saying


goes like
● "Plans are of little importance, but planning is essential."
● The planning approach used in this project is AGILE METHODOLOG

AGILE METHODOLOGY

● Agile is a methodology of early delivering business value with less bureaucracy.


● It is a collection of software development methodology which works on an iterative
and incremental method building the software from the very initiation of the project
development instead of building all the software at once
● Agile discovers what the customer and how to build the code and change things along
the way.
● Agile works by breaking down the project into smaller chunks and then continuously
delivering them in short two weeks’ cycles called iterations.
● In an agile development process, solutions are obtained by self-organizing teams
which collaborate, discuss, and constantly strive to improve their working process and
become more effective in what they do.

STANDARDS USED IN THIS PROCESS

• Individuals and interactions over processes and tools


• Working hardware over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan

STEPS IN AGILE METHODOLOGY

1. We not only implement requirements during an iteration, we also fix defects


(disciplined agile teams, particularly working at scale, may have a parallel
testing effort during construction iterations where these defects are found)

2. Define the business opportunity: This includes exploring how the new functionality
will improve your organization's presence in the market, how it will impact
profitability, and how it will impact the people within your organization.

3. Assess the feasibility: During the Concept Phase you will want to do just enough
feasibility analysis to determine if it makes sense to invest in the potential project.
Depending on the situation you may choose to invest very little effort in
considering feasibility

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

4. Actively working with stakeholders to initially model the scope of the system: To
promote active stakeholder participation you should use inclusive tools, such as white
boards to do this modeling – our goal is to understand the problem and solution
domain, not to create mounds of documentation. The details of these requirements are
modeled on a just in time (JIT) basis in model storming sessions during the
development cycles.

5. Estimating the project: You'll need to put together an initial estimate for your agile
project based on the initial requirements, the initial architecture, and the skills of
your team. This estimate will evolve throughout the project.

5.2 CODE DETAILS AND CODE EFFICIENCY

5.2.1 CODE EFFICIENCY

➢ Optimization is a program transformation technique, which tries to improve the code


by making it consume less resources (i.e. CPU, Memory) and deliver high speed.

➢ In optimization, high-level general programming constructs are replaced by very


efficient low-level programming codes.

➢ A code optimizing process must follow the rules given below:

• The output code must not, in any way, change the meaning of the program.
• Optimization should increase the speed of the program and if possible, the program
should demand less number of resources.
• Optimization should itself be fast and should not delay the overall compiling process.
• Efforts for an optimized code can be made at various levels of compiling the process.
• At the beginning, users can change/rearrange the code or use better algorithms to
write the code.
• After generating intermediate code, the compiler can modify the intermediate code
by address calculations and improving loops.
• While producing the target machine code, the compiler can make use of memory
hierarchy and CPU registers.
• Optimization can be categorized broadly into two types: machine independent
and machine dependent.

MACHINE-INDEPENDENT OPTIMIZATION

In this optimization, the compiler takes in the intermediate code and transforms a
part of the code that does not involve any CPU registers and/or absolute memory
locations.

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

MACHINE-DEPENDENT OPTIMIZATION

This type of optimization is done after the target code has been generated and when the
code is transformed according to the target machine architecture. It involves CPU registers
and may have absolute memory references rather than relative references. Machine-
dependent optimizers put efforts to take maximum advantage of memory hierarchy.

BASIC BLOCK IDENTIFICATION

We may use the following algorithm to find the basic blocks in a program:

• Search header statements of all the basic blocks from where a basic block starts:
• First statement of a program.
• Statements that are target of any branch (conditional/unconditional).
• Statements that follow any branch statement.
• Header statements and the statements following them form a basic block.
• A basic block does not include any header statement of any other basic block.

CONTROL FLOW GRAPH

Basic blocks in a program can be represented by means of control flow graphs. A control
flow graph depicts how the program control is being passed among the blocks. It is a
useful tool that helps in optimization by help locating any unwanted loops in the program.

DEAD-CODE ELIMINATION

Dead code is one or more than one code statements, which are:
• Either never executed or unreachable,
• Or if executed, their output is never used.
• Thus, dead code plays no role in any program operation and therefore it
can simply be eliminated.

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

5.3 TESTING APPROACH

5.3.1 UNIT TESTING

WHAT IS UNIT TESTING?

• Unit testing, a testing technique using which individual modules are tested to
determine if there are any issues by the developer himself. It is concerned with
functional correctness of the standalone modules.
• The main aim is to isolate each unit of the system to identify, analyze and fix the
defects.
• There are different methods that can be used for testing. This chapter briefly
describes the methods available.

BLACK-BOX TESTING

• The technique of testing without having any knowledge of the interior workings of
the application is called black-box testing. The tester is oblivious to the system
architecture and does not have access to the source code. Typically, while performing
a black-box test, a tester will interact with the system by providing inputs and
examining outputs without knowing how and where the inputs are worked upon.

WHITE-BOX TESTING (ADOPTED APPROACH)

• White-box testing is the detailed investigation of internal logic and structure of


the code. White-box testing is also called glass testing or open-box testing. In
order to perform white-box testing on an component, a tester needs to know the
internal workings of the code.
• The tester needs to have a look inside the source code and find out which unit/chunk
of the code is behaving inappropriately.

GREY-BOX TESTING

• Grey-box testing is a technique to test the developed software with having a limited
knowledge of the internal workings of an application. Mastering the domain of a system
always gives the tester an edge over someone with limited domain knowledge. Unlike
black-box testing, where the tester only tests the systems working; in grey-box testing,
the tester has access to architecture documents. Having this knowledge, a tester can
prepare better test data and test scenarios while making a test plan.

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

5.3.2 INTEGRATED TESTING

WHAT IS INTEGRATION TESTING?

● Upon completion of unit testing, the units or modules are to be integrated which
gives raise to integration testing. The purpose of integration testing is to verify the
functional, performance, and reliability between the modules that are integrated.

INTEGRATION STRATEGIES:

➢ Big-Bang Integration
➢ Top Down Integration
➢ Bottom Up Integration
➢ Hybrid Integration

5.3.3 BETA TESTING

WHAT IS BETA TESTING?

• Beta testing also known as user testing takes place at the end users site by the end
users to validate the usability, functionality, compatibility, and reliability testing.
• Beta testing adds value to the software development life cycle as it allows the "real"
customer an opportunity to provide inputs into the design, functionality, and usability
of a product. These inputs are not only critical to the success of the product but also
an investment into future products when the gathered data is managed effectively.
• There are number of factors that depends on the success of beta testing:
➢ Test Cost
➢ Number of Test Participants
➢ Shipping
➢ Duration of Test
➢ Demographic coverage

5.4 MODIFICATIONS AND IMPROVEMENT

• The developed application will replace traditional offline Complaint techniques- by


reducing the time and the gap between the government and citizens

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

5.5 Test cases

N Form Compone Test Procedur Input Expected Actual Output


o Name nt Name Conditi e Test Data Output
on
1 SignIn Email To To check Keep the Error Please fill out this
Address check if blank fields message field
and signin values are blank should be
Password form allowed displayed
field
To check Enter Error Invalid
for invalid message Credentials
Successful Username should be
Validation and/or displayed
Password
To check Enter all Success- Redirects
for Valid valid data fully accordingly
Data redirects
2 Register All the To To check Keep the Error Please fill out this
fields check if blank fields message field
Registr values are blank should be
ation allowed displayed
form
To check Enter Error Thee mail
for already message account is
duplicatio existing should be already
n of data data displayed registered
To check Enter a Error Password length
for password message must be
Password of length should be minimum of 8
Strength less than 8 displayed characters

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

To check Password Error Password must


if should not message contain a number
password contain a should be
contains number displayed
number
To check Email Error Email must be a
for valid should not message valid email
email be valid should be
displayed

To check Both Error Password does


confirm entered message not match
password passwords should be
matches should not displayed
entered match
password
To check Enter all Should Registered
for proper allow For successful.
Successful Details registrati
registratio on
n
3 Admin Username To To check Keep the Error Please fill out this
and check if blank fields message field
Password Admin values are blank should be
field login allowed displayed
To check Enter Error Please enter the
for invalid message correct username
Successful Username should be and password
Validation and/or displayed
Password
To check Enter all Success- Redirects
for Valid valid data fully accordingly
Data redirects

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

4 Admin All admin To check if To check if Perform Action Succesful


actions admin is action is the action should be
ableto performed performe d
performall
desired
actions

5 Complaint Uploading To check if To checkif Upload a Complaint Complaints


upload of user users are able complaints complaints s should uploa
complaints to upload gets be ded
their uploaded on uploaded successfully
complaints the on the
server server

6 Complaint Accessing To check is To check Access Complaint Com


s Access complaint user is if uploaded complai s should plain
s able to complaints nts be ts
followup are accessibl e gets
his/her accessible acce
complaints ssed

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Chapter 6

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Chapter 7

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

COST AND BENEFIT ANALYSIS

The main objective behind cost and benefit Analysis is to assess the feasibility to determine
whether the developed project has a reasonable chance of success. A Requirement of the
economic feasibility of the Project always requires a thorough cost benefit analysis.

DEVELOPING A COST BENEFIT ANALYSIS IS A 3 STEP PROCESS.

Step 1: Estimate the anticipated Development and Operational Cost.

Development Costs

Are Those That are incurred During the development of new system, it includes:
• System Analysis Time
• Programming Time
• User Time
• Possible Hardware Purchase Cost
• Possible Software Purchase Cost
• Possible Outside Service Cost (eg. System Integration)

OPERATIONAL COSTS

Are Those That are incurred After the system is put into Projection, it includes:
• Computer Cost
• Communication Cost
• Operation Staff Cost
• Incremental User Cost
• Maintenance Cost
• Server Side Application Cost

Step 2:

The Second step is to estimate the anticipated financial benefits. Financial benefits Are the
expected annual saving or increase in revenue derived from the installation of new system

Step 3:

In the Third Step, the Cost/Benefit Analysis is Calculated Based on Detailed Estimated
Costs and Benefits

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

The most frequent error that happens here Is Lack of thorough Definition of costs
and Benefits

COST EVALUATION

SERVER COST:

AWS ec2 free tier instance provides:

• 750 hours of compute each month


• 1 CPU core
• 1 GB ram
• 30 GB storage

Any extensive resources used will result in charges as per usage.


Estimate charges occurring = 1000 Rs

.
ANALYSIS, DESIGNING AND CODING COST:

Analysis, Designing and Coding = No. of people involved in Project * Charges per day
No. of people involved in Project = 1
Charges per day =100
No. of Days = 120

Analysis, Designing and Coding = 1 * 100 * 120 = 12,000 Rs.

TESTING AND MAINTENANCE COST:

Testing and Maintenance Cost = No. of hours * Charges per day * No. of Days
No. of Hours = 2
Charges per day = 50
No. of Days = 19
Testing and Maintenance Cost = 2 * 50 * 19 = 750 Rs.

Overall Cost = 13750 Rs

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

Chapter 8

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

8.1 CONCLUSION

8.1.1 SIGNIFICANCE OF THE SYSTEM:

➢ The project is a good personal complaint management system

➢ It can be used with friends and family for faster and easier complaints registration

➢ Use of a dedicated server allows for monitoring and controlling incoming and
outgoing network traffic and also enhancing server security and configurations

➢ Admin access to the web application makes it easy to manage it rather than
accessing the server to manage it

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

8.2 LIMITATIONS OF THE SYSTEM:

➢ Admin has access to files uploaded by users, which will concern users of
their privacy.

➢ Only one server is used at the moment with no backup servers to back up
the data. This raises the question of reliability.

➢ Users are only allowed to upload one file at a time

➢ No option for folder upload

➢ Overall security of the application can be improved.

8.2 FUTURE SCOPE OF THE PROJECT:

➢ Improving the overall security of the project will allow it to be


used commercially.

➢ Scaling the server resources will allow more people to use the application.

➢ Providing more features to allow users, manage their cloud storage efficiently.

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)


lOMoARcPSD|40602229

9- References
1. The Joy of PHP Programming: A Beginner's Guide - by Alan Forbes

2. PHP & MySQL Novice to Ninja - by Kevin Yank

3. Head First PHP & MySQL -- by Lynn Beighley & Michael Morrison

4. Learning PHP, MySQL, JavaScript, and CSS: A Step-by-Step Guide to Creating Dynamic Websites
- by Robin Nixon

5. PHP & MySQL Web Development - by Luke Welling & Laura Thompson

6. Murach's PHP & MySQL - by Joel Murach & Ray Harris.

7. Tutorials point/w3 school.

Harshitaa Chatlani
KCTY(IT)004

Downloaded by Siva Subramaniyan (rs.siva2006@gmail.com)

You might also like