Nothing Special   »   [go: up one dir, main page]

Team Blackbook

Download as pdf or txt
Download as pdf or txt
You are on page 1of 82

MAHARASHTRA STATE BOARD OF

TECHNICAL EDUCATION (MUMBAI)


A
PROJECT REPORT
ON

“CharityLink: NGO Collaboration Welfare Portal’’


SUBMITTED BY
ABHIMAN JAVRE
SHIVAM SHIRSATH
SHABDAJ MESHRAM
NILESH PATIL

UNDER THE GUIDANCE OF

Prof. Rashmi Deshpande

DEPARTMENT OF COMPUTER ENGINEERING


SANDIP POLYTECHNIC, NASHIK
(2023-2024)
SANDIP FOUNDATION’S
SANDIP POLYTECHNIC, NASHIK
A/P: Mahiravani – 422213, Tal &Dist: Nashik
Website: http://www.sandipfoundation.org
E-mail: principal@sandippolytechnic.org Tel: (02594) 22571/72/73

Certificate
This is to certify that the project report entitled “CharityLink: NGO
Collaboration Welfare Portal” has been successfully completed by:

A. Abhiman Javre
B. Shivam Shirsath
C. Shabdaj Meshram
D. Nilesh Patil

as partial fulfilment of Diploma course in Computer Engineering under the


Maharashtra State Board of Technical Education, Mumbai during the
academic year 2023-2024.
The said work has been assessed by us and we are satisfied that the
same is up to the standard envisaged for the level of the course. And that
the said work may be presented to the external examiner.

Prof. Rashmi Deshpande Prof. V.B. Ohal


PROJECT GUIDE HOD

(Name & Sign of External Examiner) Prof. P.M. Dharmadhikari


PRINCIPAL
ACKNOWLEDGEMENT

With deep sense of gratitude, we would like to thanks all the people who have lit
our path with their kind guidance. We are very grateful to these intellectuals who did their
best to help during our project work.
It is our proud privilege to express deep sense of gratitude to, Prof. P.M.
Dharmadhikari, Principal of Sandip Polytechnic, Nashik, for his comments and kind
permission to complete this project. We remain indebted to Prof. V.B. Ohal, H.O.D
Computer Engineering Department for their timely suggestion and valuable guidance.
The special gratitude goes my guide Prof. Rashmi Deshpande and staff members,
technical staff members of Computer Engineering Department for their expensive,
excellent and precious guidance in completion of this work. We thank to all the colleagues
for their appreciable help for our working project.
With various industry owners or lab technicians to help, it has been our endeavor to
throughout our work to cover the entire project work.
We are also thankful to our parents who providing their wishful support for our
project completion successfully.
And lastly we thanks to our all friends and the people who are directly or indirectly
related to our project work.

ABHIMAN JAVRE
SHIVAM SHIRSATH
SHABDAJ MESHRAM
NILESH PATIL
add
INDEX

Page
Chapter No. Particular
No.
Abstract 1
1 Preamble 2
1.1 Introduction 2
1.2 Review of Literature 3
1.3 Problem Statement 4
1.4 Proposed System 5

1.4.1 Feasibility Study 6

2 System Architecture 8
2.1 Methodology 8
2.2 Modules 10

3 Software Requirement Specification 11


3.1 Requirements of System 11
3.1.1 Minimum specification requirement 11
3.1.2 Recommended specification requirement 11
3.2 Data Requirement 12
3.3 Functional Requirement 12
3.4 External Requirement 13

4 System Modeling 14
4.1 Dataflow Diagrams 15
4.2 UML Diagram 18

5 Implementation Details 23
5.1 Implementation 23
5.2 Language Used 23
5.3 Platform Used 26
5.4 Time & Cost 28

6 Coding 30

7 Testing 44
7.1 Unit Testing 44
7.2 Integration Testing 44
7.3 Validation Testing 45
7.4 GUI Testing 45
7.5 Test Cases and Results 46

8 Conclusion
8.1 Advantages

9 Future Scope

10 References

11 Appendix A
11.1 SCREENSHOTS
FIGURE INDEX

Page
Figure No. Particular
No.
2.1 Waterfall Model of Software Development 08
4.1.1 Level 0 DFD 15
4.1.2 Level 1 DFD 15
4.1.3 Level 2 DFD 16
4.2.1 Sequential diagram 19
4.2.2 Use Case Diagram 21
4.2.3 Activity Diagram 22
11.1.1 Index Page 51
11.1.2 Admin Login Page 52
11.1.3 User Login Page 53
11.1.4 NGO Login Page 53
11.1.5 Admin Dashboard 54
11.1.6 NGO Dashboard 54
11.1.7 User Dashboard 55
11.1.8 DATABASE TABLE’S 59

TABLE INDEX

Page
Table No. Particular
No.
7.3.1 TEST CASE FOR LOGIN PAGE
7.3.2 TEST CASE FOR CUSTOMER LOGIN
7.3.3 TEST CASE FOR CUSTOMER LOGIN ATTEMPT
7.3.4 TEST CASE FOR CUSTOMIZE PERFUME PAGE
7.3.5 TEST CASE FOR VENDOR LOGIN
7.2.6 TEST CASE FOR VENDOR LOGIN ATTEMPT
7.2.7 TEST CASE FOR VENDOR APPROVE ORDER
7.2.8 TEST CASE FOR VENDOR DELETE ORDER
7.2.9 TEST CASE FOR DELETE VENDOR ACCOUNT
7.2.10 TEST CASE FOR CUSTOMER DELETE ACCOUNT
7.2.11 TEST CASE FOR CUSTOMER CHATBOX
7.2.12 TEST CASE CUSTOMER LOGOUT
ABSTRACT

We have Designed a Web portal for Connecting NGO’S that is very usefulplatform for
needy people for fastest help. Such Needy people will visit our web portal and ask for help. Our
Motive is to connect the different NGO’s and ask them to work together. In our web portal there
will be 3 modules which will work. 1st module is of admin, 2nd is of NGO module, 3rd module
is for user. So, by this project we can do collaboration of different NGOs and ask them to work
together for the help of society. As many people do not get help as early as possible because the
NGO will be in their different work so if more than 1 NGO will be at one platform then user
can get help from NGO so we have created this web platform same as social media.

KEYWORDS: Admin, NGO, User, C h a r i t y Donation, Chatbox.

Department of Computer Engineering, Sandip Polytechnic, Nashik 1


CHAPTER 1: PREMABLE

1.1 INTRODUCTION

In a world characterized through numerous social demanding situations, the


function of Non-Governmental Organizations (NGOs) in addressing the needs of the inclined and
marginalized cannot be overstated. However, the effectiveness of man or woman NGOs often faces
constraints due to the compartmentalized nature in their operations and the wonderful cognizance
areas each enterprise pursues. Recognizing the capacity for synergy and stepped forward
efficiency, we present a groundbreaking web portal designed to foster collaboration amongst
NGOs, thereby amplifying their collective impact on society. Our innovative platform serves as a
dynamic bridge connecting NGOs, administrators, and users.

Unlike conventional processes, in which NGOs operate in isolation, our net portal
establishes a cohesive atmosphere that facilitates seamless communiqué and collaboration
amongst agencies with shared targets. The net portal consists of 3 interconnected modules: the
executive module, the NGO module, and the user module. The administrative module serves
because the manipulate center, overseeing the platform's functionality and ensuring a harmonious
collaboration between taking part NGOs. The NGO module offers a devoted space for businesses
to exhibit their know-how, tasks, and regions of consciousness, fostering surroundings conducive
to mutual know-how and collaboration. Finally, the person module empowers people in need to
connect with multiple NGOs concurrently, ensuring a quicker and greater powerful response to
their requests.

The motivation at the back of this venture stems from the realization that timely
help is frequently hindered through the fragmented nature of NGO operations. By bringing
multiple NGOs onto a shared platform, we purpose to take away the ones silos and create a virtual
region in which companies can pool property, percentage information, and together cope with the
multifaceted demanding situations faced by means of society. In essence, our net portal mirrors
the shape of social media systems, facilitating verbal exchange, records sharing, and collaboration
on a committed place designed mainly for the social welfare zone.

Department of Computer Engineering, Sandip Polytechnic, Nashik 2


Through this revolutionary approach, we aspire to create a greater agile and responsive
community of NGOs, in the end improving the speed and overall performance with which they
deal with the urgent needs of those they goal to serve. This studies paper delves into the format,
implementation, and capability impact of our collaborative net portal, exploring the challenges
addressed, technological intricacies concerned, and the wider implications for the landscape of
social welfare.

As we navigate the complexities of the NGO sector, we envision our platform as a


catalyst for splendid trade, fostering a united the front towards societal demanding situations thru
better collaboration and collective movement. Charity link-NGO collaboration in welfare portal
development is a promising avenue for promoting social change and addressing social issues. The
benefits of this collaboration are significant, but the challenges must be addressed to ensure the
effectiveness and sustainability of the welfare portals. This abstract highlight the need for a more
holistic and strategic approach to charity link-NGO collaboration in welfare portal development,
and calls for further research and action in this area.

1.2 REVIEW OF LITERATURE

This chapter comprises of the literature review and theoretical background of the
project. The literature review deals basically with related project written by other researchers, the
difficulties they encountered, limitations and modifications that should be made.The panorama of
non-profit agencies (NGOs) has witnessed a transformative shift in latest years, with an increasing
emphasis on leveraging digital structures to decorate collaboration, verbal exchange, and general
effectiveness. This literature overview pursuits to provide a complete overview of current studies,
frameworks, and technology related to the development and implementation of internet portals
designed for connecting NGOs, in particular in the context of social welfare initiatives.

1. The need for collaboration amongst NGOs to address complicated social issues has been a
recurring theme in scholarly discourse. Studies through Smith et al. (2017) and Johnson
and Williams (2019) emphasize the potential effect of collaborative efforts, highlighting

Department of Computer Engineering, Sandip Polytechnic, Nashik 3


the blessings of shared assets, knowhow trade, and coordinated motion. These findings lay
the foundation for expertise the underlying ideas that inform our collaborative web portal.

2. Recognizing the barriers to effective collaboration is crucial for the success of any
collaborative platform. Research by Thomas and Rodriguez (2016) and Kumar et al. (2021)
identifies challenges such as information silos, varying organizational structures, and
concerns related to data security. Our literature review synthesizes these challenges to
inform the design considerations and functionalities of our web portal.

3. Drawing inspiration from the success of social media platforms, studies by Jones and
Brown (2018) and Williams et al. (2019) highlight the benefits of adopting a social media
model for NGO collaboration. The concept of interconnected modules mirroring social
media functionalities becomes a key aspect of our web portal design, promoting ease of
use, accessibility, and familiarity.

4. Evaluation of the impact and effectiveness of collaborative platforms is an integral aspect


of understanding their potential. Works by Chen et al. (2017) and Kim and Lee (2022)
provide insights into methodologies for assessing the success of such initiatives, guiding
our research in developing metrics to measure the societal impact of the NGO collaboration
facilitated by our web portal.

1.3 PROBLEM STATEMENT

Charity link-NGO collaboration through the development of welfare portals has


emerged as a promising solution to address this issue. However, challenges such as a lack of
funding and resources, communication and coordination issues, and concerns regarding
intellectual property and data privacy hinder the effectiveness and sustainability of these portals.
To overcome these challenges, a holistic and strategic approach is needed, including clear
partnership agreements, a governance structure, and a participatory and inclusive approach to
design and implementation. By addressing these challenges, charity link-NGO collaboration can
promote social change and address social issues more effectively and sustainably.

Department of Computer Engineering, Sandip Polytechnic, Nashik 4


1.4 PROPOSED SYSTEM

The proposed system for the Charity Link-NGO Collaboration Welfare Portal aims
to provide a platform for charitable organizations (Charity Link) and non-governmental
organizations (NGOs) to collaborate on social welfare initiatives while ensuring data privacy and
security for users, promoting accessibility and inclusivity for underserved communities, and
facilitating resource mobilization efforts.Users will be required to register and provide basic
information such as name, email address, and password. Upon registration, users will be
authenticated through email verification.Each user will have a personalized dashboard that
displays their profile information, recent activities on the portal, notifications about upcoming
events or initiatives they can participate in or support.

Users will be able to search for specific NGOs or Charity Links based on location,
type of initiative, or other criteria.Users will be able to communicate with other users or
organizations through messaging or discussion forums, and collaborate on joint initiatives.Users
will be able to create fundraising campaigns, set donation goals, and manage donations
received.The system will implement robust data privacy and security measures to protect user data
and prevent unauthorized access. This will include encryption of sensitive data, secure storage of
user data, and regular backups.The system will be designed to be accessible and inclusive for users
with disabilities or belonging to marginalized communities.

This will include support for assistive technologies such as screen readers, and the
provision of resources and information in multiple languages.The system will enable users to track
progress towards their goals through robust analytics and reporting features. This will include the
generation of impact reports that can be shared with stakeholders or funding agencies.The
proposed system for the Charity Link-NGO Collaboration Welfare Portal aims to provide a
comprehensive platform for charitable organizations and NGOs to collaborate on social welfare
initiatives, while ensuring data privacy and security, promoting accessibility and inclusivity, and
facilitating resource mobilization efforts.

Department of Computer Engineering, Sandip Polytechnic, Nashik 5


1.4.1 FEASTABLE STUDY

Analysis is the process of finding the best solution to the problem. System analysis
is the process by which we learn about the existing problems, define objects and requirements and
evaluates the solutions. It is the way of thinking about the organization and the problem it involves,
a set of technologies that helps in solving these problems. Feasibility study plays an important role
in system analysis which gives the target for design and development.

Feasibility Study

A key part of the preliminary investigation that reviews anticipated costs and
benefits and recommends a course of action based on operational, technical, economic, and time
factors. The purpose of the study is to determine if the systems request should proceed further.

• Technical Feasibility: The system being developed is economic. It is cost effective in the
sense that it has eliminated the registered work completely. The system is also time
effective because the calculations are automated which are made at the end of the paper or
as per the student requirement. The result obtained contains fewer errors and are highly
accurate as the data is required.

• Economic feasibility: The technical requirement for the system is economic and it does
not use any other additional Hardware and software.

• Behavioural Feasibility: The system working is quite easy to use and learn due to its
simple but attractive interface. User requires no special training for operating the system.

Analysis

Technical Analysis The performance of the system can be increased if the technical
analysis is done well. The systems hardware requirements must be taken into consideration. The
software must go hand in hand with the hard ware else the efficiency of the system deteriorates

Department of Computer Engineering, Sandip Polytechnic, Nashik 6


• Changes to bring in the system: All changes should be in positive direction, there will
be increased level of efficiency and better customerservice.

• Required skills: Platforms tools used this project are widely used.

• Acceptability: The structure of the system is kept feasible enough so that there should not
be any problem from the users point of view

Department of Computer Engineering, Sandip Polytechnic, Nashik 7


CHAPTER 2: SYSTEM ARCHITECTURE

2.1 METHODOLOGY

In this model we used waterfall model for development of the web application.

Waterfall Model:

SLDC Model:
1. Planning:
It is performed by the senior members of the team with inputs from the customer, the sales
department, market surveys and domain experts. This information is then used to plan the

Department of Computer Engineering, Sandip Polytechnic, Nashik 8


basic project approach and to conduct product feasibility study in the economical,
operational and technical areas. Planning for the quality assurance requirements and
identification of the risks associated with the project is also done in the planning stage

2. Defining:
Next step is to clearly define and document the product requirements and get them
approved from the customer or the market analysts.

3. Designing:
Based on the requirements specified in SRS, usually more than one design approach for
the product architecture is proposed and documented. This is reviewed by all the important
stakeholders and based on various parameters as risk assessment, product robustness,
design modularity, budget and time constraints, the best design approach is selected for the
product. A design approach clearly defines all the architectural modules of the product

4. Building:
The actual development starts and the product is built. The programming code is generated.
If the design is performed in a detailed and organized manner, code generation can be
accomplished without much hassle. The programming language is chosen with respect to
the type of software being developed.

5. Testing:
This stage is usually a subset of all the stages as in the modern SDLC models, the testing
activities are mostly involved in all the stages of SDLC. However, this stage refers to the
testing only stage of the product where product defects are reported, tracked, fixed and
retested, until the product reaches the quality standards defined in the SRS.

6. Deployment:
Once the product is tested and ready to be deployed it is released formally.

Department of Computer Engineering, Sandip Polytechnic, Nashik 9


2.2 MODULES

• Admin:
a. Login (Email, Password)
b. View NGO List
c. Accept//Reject NGO request (verify document)
d. View all data of users
e. Transaction history

• NGO:
a. Registration
b. Login
c. View fund request of user
d. View other NGO list
e. Message other NGO/ Contact other NGO’s
f. Donate money/funds

• Users:
a. Register
b. Login
c. Request funds (NGO’s)
d. Request other things(food/cloths)
e. Donate
a) Fund (Money)
b) Anything

Department of Computer Engineering, Sandip Polytechnic, Nashik 10


CHAPTER 3: SOFTWARE REQUIREMENT
SPECIFICATION

3.1 SYSTEM REQUIREMENT


3.1.1 MINIMUM SPECIFICATION REQUIREMENT
Windows Mac requirements Linux requirements
requirements
Operating system Windows 7 macOS Sierra 10.12 64-bit Ubuntu
9.04
Debian 8,
Fedora Linux 24

Intel requirement AMD ryzen


requiement
Processor Intel Pentium 4 Ryzen 3 1300
Memory 2 GB minimum
Screen resolution 1280x1024
Internet Required
connection

3.1.2 RECOMMENDED SPECIFICATION REQUIREMNET


Windows Mac requirements Linux requirements
requirements
Operating Windows 7 macOS 12 (Monterey) 64-bit
system Ubuntu 18.04.1 LTS
Debian 11
Fedora Linux 32

Intel requirements AMD ryzen


requirements
Processor Intel 10 Ryzen 7 1700
Memory 8 GB recommended
Screen 1920x1024
resolution

Department of Computer Engineering, Sandip Polytechnic, Nashik 11


3.2 DATA REQUIREMENTT

To run this application we need Eclipse IDE, Apache Tomcat, XAMPP


Server, MySQL, Java Lang, HTML, JavaScript, CSS in laptop.

3.3 FUNCTIONAL REQUIREMENT


1. REQ-1: Users should be able to create accounts, providing essential information about
their organizations. Secure authentication mechanisms should be implemented to
protect user accounts.
2. REQ-2: Charities and NGOs should have the ability to create detailed profiles,
including information about their mission, projects, geographical focus, and areas of
expertise.
3. REQ-3: Provide a personalized dashboard for each user that displays relevant
information, notifications, collaboration opportunities, and updates.
4. REQ-4: Implement a centralized space where charities and NGOs can discover
potential partners, initiate discussions, and explore collaboration opportunities.
5. REQ-5: Enable the sharing of various resources, including funds, volunteers, and
materials, through a secure and transparent platform.
6. REQ-6: Tools for initiating, managing, and tracking joint projects. This includes
features for setting project goals, defining milestones, assigning tasks, and tracking
progress.
7. REQ-7: Integrated communication channels such as messaging systems, discussion
forums, and video conferencing to facilitate real-time communication and
collaboration among users.
8. REQ-8: A repository for sharing best practices, research findings, and success stories.
Allow users to contribute and access valuable knowledge related to their field.
9. REQ-9: Transparent reporting tools that allow charities and NGOs to showcase the
impact of donations. Provide donors with real-time updates on how their contributions
are making a difference.
10. REQ-10: Modules and resources for training and capacity building. This includes e-
learning materials, webinars, and workshops to enhance the skills and knowledge of

Department of Computer Engineering, Sandip Polytechnic, Nashik 12


individuals within the sector.
11. REQ-11: Features that enable charities and NGOs to connect on a global scale. This
may include language support, international collaboration tools, and a global directory
of organizations.

3.4 EXTERNAL REQUIREMNET


No External Requirement

Department of Computer Engineering, Sandip Polytechnic, Nashik 13


CHAPTER 4: SYSTEM MODELING

4.1 DATA FLOW DIAGRAM


Data objects represented by labeled arrows and transformation are represented by
circles also called as bubbles. DFD is presented in a hierarchical fashion i.e. the first data flow
model represents the system as a whole. Subsequent DFD refine the context diagram (level 0
DFD), providing increasing details with each subsequent level. The DFD enables the software
engineer to develop models of the information domain & functional domain at the same time. As
the DFD is refined into greater levels of details, the analyst performs an implicit functional
decomposition of the system.

At the same time, the DFD refinement results in a corresponding refinement of the
data as it moves through the process that embody the applications. A context-level DFD for the
system the primary external entities produce information for use by the system and consume
information generated by the system. The labeled arrow represents data objects or object hierarchy

The context diagram is the most abstract data flow representation of a system. It
represents the entire system as a single bubble and. The various external entities with which the
system interacts and the data flows occurring between the system and the external entities are also
represented. The name context diagram is well justified because it represents the context in which
the system is to exist i.e. The external entities (users) that would interact with the system and
specific data items they would be receiving from the system.

Department of Computer Engineering, Sandip Polytechnic, Nashik 14


2. DFD – level 1

Department of Computer Engineering, Sandip Polytechnic, Nashik 15


3. DFD – Level 2

Department of Computer Engineering, Sandip Polytechnic, Nashik 16


4.2 ER DIAGRAM

Department of Computer Engineering, Sandip Polytechnic, Nashik 17


4.3 UML DIAGRAM

Unified Modelling Language (UML) is a standardized modelling language


used to design a software-based system model. UML includes a set of graphical diagrams.
There are two broad categories of diagrams as:
1. Sequential diagram
2. Behavioral diagram

1. Sequential diagram:
A sequential diagram is a type of interaction diagram in UML (Unified
Modeling Language) that illustrates the interactions between objects or components in a
system over time. It is also known as a sequence diagram or event diagram.

Sequential diagrams are used to visualize the flow of messages or events


between objects in a system, and to show the order in which these interactions occur. The
vertical axis represents time, and the horizontal axis represents the objects or components
involved in the interactions.

Each object is represented by a box, and the messages or events exchanged


between objects are represented by arrows that point from the sender to the receiver. The
arrows can also be labeled with messages or method calls to indicate the specific
interactions that are occurring.

A Sequence Diagram is an interaction diagram that emphasis the time


ordering of messages; a collaboration diagram is an interaction diagram that emphasizes
the structural organization of the objects that send and receive messages. Sequence
diagrams and collaboration diagrams are isomorphic, meaning that you can take one and
transform it into the other. Sequence diagram and collaboration diagram are called
INTERACTION DIAGRAMS.

Department of Computer Engineering, Sandip Polytechnic, Nashik 18


An interaction diagram shows an interaction, consisting of set of objects
and their relationship including the messages that may be dispatched among them. A
sequence diagram is an introduction that empathizes the time ordering of messages.
Graphically a sequence diagram is a table that shows objects arranged along the X-axis
and messages ordered in increasing time along the Y-axis.

Department of Computer Engineering, Sandip Polytechnic, Nashik 19


2. Behavioral diagram:

These diagrams are used to represent dynamic aspects of the system. UML has
The following five types of behavioral diagrams :
i. Use case diagram
ii. Activity diagram

i. Use case diagram:


A use case diagram in the Unified Modeling Language (UML) is a type of
behavioral diagram defined by and created from a use-case analysis. its purpose is to
present a graphical overview of the functionality provided by a system in terms of
actors, their goals (represented as use cases), and any dependencies between those use
cases. Use case diagrams are formally included in two modeling languages defined by
the MG, the unified modeling language (UML) and the systems modeling language.

A Use case is a description of set of sequence of actions Graphically it is


rendered as an ellipse with solid line including only its name. Use case diagram is a
behavioral diagram that shows a set of use cases and actors and their relationship. It is
an association between the use cases and actors. An actor represents a real-world
object. Use case diagrams model behavior within a system and helps the developers
understand of what the user require. The stick man represents what’s called an actor.

Use case diagram can be useful for getting an overall view of the system and
clarifying who can do and more importantly what they can’t do. Use case diagram
consists of use cases and actors and shows the interaction between the use case and
actors
• The purpose is to show the interactions between the use case and actor.
• To represent the system requirements from user’s perspective.
• An actor could be the end-user of the system or an external system

Department of Computer Engineering, Sandip Polytechnic, Nashik 20


ii. Activity diagram

Activity diagram are the flowcharts, showing the flow of control from activity to
activity. Activity diagrams represent the business and operational work flows of a system.

An activity diagram is a type of behavior diagram in UML (Unified Modeling


Language) that illustrates the flow of activities or actions within a system. It provides a graphical
representation of the steps involved in a process or workflow and the order in which those steps
occur.

Activity diagrams consist of nodes, edges, and swim lanes. Nodes represent the
activities or actions within the system, while edges represent the flow of control between the
activities. Swim lanes represent different actors or groups involved in the process.

Department of Computer Engineering, Sandip Polytechnic, Nashik 21


Department of Computer Engineering, Sandip Polytechnic, Nashik 22
CHAPTER 5: IMPLEMENTATION DETAILS

5.1 IMPLEMENTATION

The challenging part was to decide which language should we use as it is


important element to code our program. So, as we are making a web application and
we need to validate all 3 different login form as well as other user input fields. Thus,
this led us to implement PHP and JavaScript. Other than validation to make the website
more intrusive and have a dynamic, for this we have used CSS and Bootstrap. At last,
or out backbone, we have used html which is a markup language.

5.2 LANGUAGE USED

FRONT-END: -

HTML:
Hypertext Markup Language (HTML) is the standard markup language for
documents designed to be displayed in a Desktop browser. It can be assisted by technologies such
as Cascading Style Sheets (CSS) and scripting languages such as JavaScript. Desktop browsers
receive HTML documents from a Desktop server or from local storage and render the documents
into multimedia Desktop pages.

HTML describes the structure of a Desktop page semantically and originally


included cues for the appearance of the document.HTML elements are the building blocks of
HTML pages. With HTML constructs, images and other objects such as interactive forms may be
embedded into the rendered page.

HTML provides a means to create structured documents by denoting structural


semantics for text such as headings, paragraphs, lists, links, quotes and other items. HTML
elements are delineated by tags, written using angle brackets. Tags such as <img /> and <input />
directly introduce content into the page. Other tags such as <p> surround and provide information
about document text and may include other tags as sub-elements. Browsers do not display the
HTML tags, but use them to interpret the content of the page.

Department of Computer Engineering, Sandip Polytechnic, Nashik 23


HTML can embed programs written in a scripting language such as JavaScript,
which affects the behavior and content of Desktop pages. Inclusion of CSS defines the look and
layout of content. The World Wide Desktop Consortium (W3C), former maintainer of the HTML
and current maintainer of the CSS standards, has encouraged the use of CSS over explicit
presentational HTML since 1997.HTML is used to create and save Desktop document. E.g.
Notepad/Notepad++

CSS:
Cascading Style Sheets (CSS) is a style sheet language used for describing the
presentation of a document written in a markup language like HTML.CSS is a cornerstone
technology of the World-Wide Desktop, alongside HTML and JavaScript.

CSS is designed to enable the separation of presentation and content, including


layout, colors, and fonts. This separation can improve content accessibility, provide more
flexibility and control in the specification of presentation characteristics, enable multiple Desktop
pages to share formatting by specifying the relevant CSS in a separate .css file, and reduce
complexity and repetition in the structural content.

CSS information can be provided from various sources. These sources can be the
Desktop browser, the user and the author. The information from the author can be further classified
into inline, media type, importance, selector specificity, rule order, inheritance and property
definition. CSS style information can be in a separate document or it can be embedded into an
HTML document. Multiple style sheets can be imported.

Different styles can be applied depending on the output device being used; for
example, the screen version can be quite different from the printed version, so that authors can
tailor the presentation appropriately for each medium. The style sheet with the highest priority
controls the content display. Declarations not set in the highest priority source are passed on to a
source of lower priority, such as the user agent style. The process is called cascading. One of the
goals of CSS is to allow users greater control over presentation. Someone who finds red italic
headings difficult to read may apply a different style sheet.

Department of Computer Engineering, Sandip Polytechnic, Nashik 24


Depending on the browser and the Desktop site, a user may choose from various
style sheets provided by the designers, or may remove all added styles and view the site using the
browser's default styling, or may override just the red italic heading style without altering other
attributes.CSS: (Cascading Style Sheets) Create attractive Layout.

JavaScript:
JavaScript is a versatile and dynamic programming language that plays a pivotal
role in shaping the interactive elements of the modern web. Developed in the mid-1990s,
JavaScript has evolved into a key player in web development, enabling developers to create
dynamic, engaging, and responsive user interfaces.

It is primarily executed on the client side, allowing browsers to interpret and


execute the code, enhancing the overall user experience. With its lightweight syntax and flexibility,
JavaScript is well-suited for a variety of applications, from simple scripts to complex, feature-rich
web applications. One of its standout features is its ability to interact seamlessly with HTML and
CSS, providing a comprehensive and integrated approach to building interactive web pages.

As the backbone of numerous frameworks and libraries, such as React, Angular,


and Vue.js, JavaScript continues to be a driving force in the constantly evolving landscape of web
development, empowering developers to craft innovative and dynamic digital experiences.

BACK-END: -
Java Language:
Java is an object oriented, robust programming language. (Dot) java is the extension
given to the java file. When compiled it is converted automatically into (Dot) class format.
Compiler than compiles the source code and then converts it into (Dot) class extension. This file
now consists of byte code that is fed to the Java Virtual Machine (JVM). As this JVM can run on
any machines such as Linux, Windows, Unix with the byte code format of our source code. Hence
Java language is called as platform independent i.e. it follows WORA (Write Once Run Anywhere)
Architecture.

Department of Computer Engineering, Sandip Polytechnic, Nashik 25


MySQL :
MySQL is an open-source relational database management system (RDBMS)
based on Structured Query Language (SQL). It is one part of the very popular LAMP platform
consisting of Linux, Apache, My SQL, and PHP. Currently My SQL is owned by Oracle. My SQL
database is available on most important OS platforms. It runs on BSD Unix, Linux, Windows, or
Mac OS. Wikipedia and YouTube use My SQL. These sites manage millions of queries each day.
My SQL comes in two versions: My SQL server system and My SQL embedded system. MySQL
is a database, widely used for accessing querying, updating, and managing data in databases.

5.3 PLATFORM USED


Web Browser
A web browser serves as the gateway for running HTML, CSS, and JavaScript
code, bringing static web pages to life and facilitating dynamic, interactive user experiences. These
three technologies form the foundation of modern web development. HTML (Hypertext Markup
Language) structures the content, CSS (Cascading Style Sheets) styles and formats the
presentation, while JavaScript adds dynamic behavior to the static web pages. Browsers like
Google Chrome, Mozilla Firefox, Microsoft Edge, and Safari play a crucial role in interpreting
and rendering this code, ensuring compatibility and consistency across diverse platforms.

Each browser employs a rendering engine to interpret and display web content, and
they continually evolve to support the latest web standards and technologies. Browser developer
tools provide insights into the structure and behavior of web pages, aiding developers in debugging
and optimizing their code. The competition among browsers has fueled innovation, leading to
faster rendering speeds, improved security features, and enhanced support for emerging web
standards.

As users interact with the internet on a daily basis, the choice of a web browser can
significantly impact their online experience. Developers, in turn, strive to create web applications
that not only function seamlessly across different browsers but also take advantage of specific
features to provide an optimal user experience. In the ever-evolving landscape of web
development, the browser remains a critical component, acting as a conduit for the execution and

Department of Computer Engineering, Sandip Polytechnic, Nashik 26


presentation of HTML, CSS, and JavaScript code.

Eclipse IDE Software


Eclipse is a robust and widely-used integrated development environment (IDE) that
has become a cornerstone in the world of software development. Initially released in 2001, Eclipse
has grown into a versatile platform supporting multiple programming languages, including Java,
C++, and Python. What sets Eclipse apart is its extensibility and adaptability, thanks to a modular
architecture that allows developers to customize and enhance their development environment with
a wide range of plugins. This flexibility makes Eclipse an ideal choice for diverse projects and
industries, from enterprise-level applications to mobile and web development.

The Eclipse IDE offers a comprehensive set of tools, including code editors,
debugging capabilities, and version control integration, streamlining the development process and
enhancing productivity. Its user-friendly interface caters to both novice and experienced
developers, fostering a collaborative and efficient coding environment. Eclipse has also played a
significant role in fostering open-source collaboration, hosting numerous projects and initiatives
that contribute to the global development community.

As a testament to its enduring popularity, Eclipse continues to be a go-to choice for


developers worldwide, empowering them to create high-quality software with efficiency and ease.
Whether working on large-scale enterprise projects or individual coding tasks, Eclipse remains a
cornerstone in the toolkit of many software developers, embodying a commitment to innovation
and collaboration in the realm of software development.

XAMPP
XAMPP, an acronym for Cross-Platform (X), Apache (A), MySQL (M), PHP (P),
and Perl (P), is a widely-used open-source software package designed to facilitate the development
and testing of dynamic web applications. Created by Apache Friends, XAMPP provides a
convenient and comprehensive environment for developers to set up a local web server on their
computers. This package includes essential components such as the Apache HTTP Server, MySQL
database, PHP, and Perl, creating a seamless integration that allows users to emulate a web hosting

Department of Computer Engineering, Sandip Polytechnic, Nashik 27


environment on their own machines.

One of the key advantages of XAMPP is its cross-platform compatibility, making


it accessible for users on Windows, Linux, and macOS. This feature ensures a consistent
development environment across different operating systems, streamlining the web development
process. XAMPP is particularly favored by developers for its simplicity in installation and
configuration, offering a quick and efficient way to deploy a local server environment without the
need for complex manual setups.

Whether you are a novice developer looking to experiment with web technologies
or an experienced professional seeking a reliable local server solution, XAMPP remains a go-to
choose for its user-friendly interface, robust components, and widespread community support. It
serves as an invaluable tool for testing and refining web applications before deploying them to a
live server, contributing significantly to the efficiency and success of web development projects.

5.4 TIME & COST


Time Spend:

Phases Time
(Days)
Analysis 30
Design 40
Coding 70
Testing 40
Documentation 30
Maintenance 40
Total time 250
Days

The working days: 25 days *10 months= 250 days

The working hours per day: 2 hours


Total time span for development: 500 hours

Department of Computer Engineering, Sandip Polytechnic, Nashik 28


Cost:
Web Server cost = 3200 Rs/-
Domain Name cost = 800 Rs/-
So the total cost development of project will be around = 4000 Rs./-
Note: Small additional costs are not included.

Department of Computer Engineering, Sandip Polytechnic, Nashik 29


CHAPTER 6: CODING

admin_login.java
package charity.com;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class AdminLogin
*/
@WebServlet("/AdminLogin")
public class AdminLogin extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public AdminLogin() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

Department of Computer Engineering, Sandip Polytechnic, Nashik 30


// TODO Auto-generated method stub
doGet(request, response);
System.out.println("Hello");

String email=request.getParameter("Email");
String pass=request.getParameter("Password");
PrintWriter pw=response.getWriter();
if (email.equals("admin@gmail.com")&&pass.equals("admin"))
{
response.setContentType("text/html");
pw.println("<script type=\"text/javascript\">");
pw.println("alert('Login Successful');");
pw.println("</script>");
RequestDispatcher
rd=request.getRequestDispatcher("AdminDashboard.html");
rd.include(request, response);

}
else
{
response.setContentType("text/html");
pw.println("<script type=\"text/javascript\">");
pw.println("alert('Wrong email or password');");
pw.println("</script>");
RequestDispatcher rd=request.getRequestDispatcher("Adminlogin.html");
rd.include(request, response);

}
}

User_login.java

package charity.com;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;

Department of Computer Engineering, Sandip Polytechnic, Nashik 31


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class UserL
*/
@WebServlet("/UserL")
public class UserL extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public UserL() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
/* response.getWriter().append("Served at: ").append(request.getContextPath());
*/ }

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
String email,pwd;

email=request.getParameter("Email");
pwd=request.getParameter("Password");

Connection Con=ConnectionDB.getCon();

try{

Department of Computer Engineering, Sandip Polytechnic, Nashik 32


PreparedStatement ps=Con.prepareStatement("select*from user where
email=? and password=?");
PrintWriter pw=response.getWriter();
ps.setString(1,email);
ps.setString(2,pwd);

ResultSet rs=ps.executeQuery();

if(rs.next())
{
String Email=rs.getString("email");
UserInfo.setEmail(Email);
int Id=rs.getInt("id");
UserInfo.setId(Id);
String name=rs.getString("name");
UserInfo.setName(name);
String mobile=rs.getString("mobile");
UserInfo.setMobile(mobile);
response.setContentType("text/html");
pw.println("<script type=\"text/javascript\">");
pw.println("alert('Login Successful');");
pw.println("</script>");
RequestDispatcher
rd=request.getRequestDispatcher("UserDashboard.html");
rd.include(request, response);

}
else
{
response.setContentType("text/html");
pw.println("<script type=\"text/javascript\">");
pw.println("alert('Wrong User Credentials');");
pw.println("</script>");
RequestDispatcher rd=request.getRequestDispatcher("UserLogin.html");
rd.include(request, response);

}
catch(Exception e)
{
e.printStackTrace();
}

Department of Computer Engineering, Sandip Polytechnic, Nashik 33


}
}

Ngo_login.java

package charity.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class UserR
*/
@WebServlet("/UserR")
public class UserR extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public UserR() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/

Department of Computer Engineering, Sandip Polytechnic, Nashik 34


protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);

String name,mobno,email,pwd,address;

name=request.getParameter("Name");
mobno=request.getParameter("mono");
email=request.getParameter("Email");
pwd=request.getParameter("Password");
address=request.getParameter("Address");

try{

Connection Con= ConnectionDB.getCon();


PreparedStatement ps2= Con.prepareStatement("insert into user values(?,?,?,?,?,?)");

ps2.setInt(1,0);
ps2.setString(2,name);
ps2.setString(3,mobno);
ps2.setString(4,email);
ps2.setString(5,pwd);
ps2.setString(6,address);
int i=ps2.executeUpdate();
if(i>0)
{
System.out.println("welcome");
response.sendRedirect("UserDashboard.html");
}
else{
System.out.println("Hi");
response.sendRedirect("UserRegistration.html");
}

}
catch(Exception e){

e.printStackTrace();

}
}

Department of Computer Engineering, Sandip Polytechnic, Nashik 35


Request_money.java

package charity.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class Requestmoney
*/
@WebServlet("/Requestmoney")
public class Requestmoney extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public Requestmoney() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);

Department of Computer Engineering, Sandip Polytechnic, Nashik 36


String money,accno,amount;

money=request.getParameter("moneyReq");
accno=request.getParameter("accno");
amount=request.getParameter("amount");

try{
Connection Con=ConnectionDB.getCon();
PreparedStatement ps2=Con.prepareStatement("insert into moneyrequest
values(?,?,?,?,?,?,?)");
ps2.setInt(1,0);
ps2.setString(2, UserInfo.getName());
ps2.setString(3, UserInfo.getMobile());
ps2.setString(4, UserInfo.getEmail());
ps2.setString(5, money);
ps2.setString(6, accno);
ps2.setString(7,amount);

int i=ps2.executeUpdate();
if(i>0)

{
System.out.println("Welcome");
response.sendRedirect("UserDashboard.html");
}

else{
System.out.println("Fail");
response.sendRedirect("RequestMoney.html");

catch(Exception e){
e.printStackTrace();

}
}

Department of Computer Engineering, Sandip Polytechnic, Nashik 37


Donate_money.java

package charity.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class MoneyDonate
*/
@WebServlet("/MoneyDonate")
public class MoneyDonate extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public MoneyDonate() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
String Name,email,accno;

Department of Computer Engineering, Sandip Polytechnic, Nashik 38


int amount;
/*Name=request.getParameter("name");*/
email=request.getParameter("email");
accno=request.getParameter("accno");
amount=Integer.parseInt(request.getParameter("fundamt"));

Connection Con=ConnectionDB.getCon();
try{
PreparedStatement ps2=Con.prepareStatement("insert into donatemoney
values(?,?,?,?,?,?)");
ps2.setInt(1,0);
/*ps2.setString(2,Name);*/
ps2.setString(2,email);
ps2.setString(3,accno);
ps2.setInt(4,amount);
ps2.setString(5, UserInfo.getName());
ps2.setString(6, UserInfo.getEmail());

int i=ps2.executeUpdate();
if(i>0)

{
System.out.println("Amount Transfer");
response.sendRedirect("Ngodashboard.html");
}

else{
System.out.println("Fail to Transfer");
response.sendRedirect("DonateMoney.html");

catch(Exception e){
e.printStackTrace();

Department of Computer Engineering, Sandip Polytechnic, Nashik 39


Request_foodclothes.java

package charity.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class Userfoodclothesdonate
*/
@WebServlet("/Userfoodclothesdonate")
public class Userfoodclothesdonate extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public Userfoodclothesdonate() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);

Department of Computer Engineering, Sandip Polytechnic, Nashik 40


String Name,email,Category,address,fundqty;

Name=request.getParameter("name");
email=request.getParameter("email");
address=request.getParameter("address");
Category=request.getParameter("category");
fundqty=request.getParameter("funqty");

Connection Con=ConnectionDB.getCon();
try{

PreparedStatement ps2=Con.prepareStatement("insert into donatefoodclothes


values(?,?,?,?,?,?,?,?)");
ps2.setInt(1,0);
ps2.setString(2,Name);
ps2.setString(3,email);
ps2.setString(4,address);
ps2.setString(5,Category);
ps2.setString(6,fundqty);
ps2.setString(7, UserInfo.getName());
ps2.setString(8, UserInfo.getEmail());

int i=ps2.executeUpdate();
if(i>0)

{
System.out.println("Dispatch");
response.sendRedirect("UserDashboard.html");
}

else{
System.out.println("Fail to Dispatch");
response.sendRedirect("UserFoodClothesDonate.html");

catch(Exception e){
e.printStackTrace();

Department of Computer Engineering, Sandip Polytechnic, Nashik 41


}

Donate_foodclothes.java

package charity.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class ClothesFoodDonate
*/
@WebServlet("/ClothesFoodDonate")
public class ClothesFoodDonate extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public ClothesFoodDonate() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub

Department of Computer Engineering, Sandip Polytechnic, Nashik 42


doGet(request, response);

String Name,email,Category,address,fundqty;

/*Name=request.getParameter("name");
*/ email=request.getParameter("email");
address=request.getParameter("address");
Category=request.getParameter("category");
fundqty=request.getParameter("funqty");

Connection Con=ConnectionDB.getCon();
try{

PreparedStatement ps2=Con.prepareStatement("insert into donatefoodclothes


values(?,?,?,?,?,?,?)");
ps2.setInt(1,0);
/*ps2.setString(2,Name);*/
ps2.setString(2,email);
ps2.setString(3,address);
ps2.setString(4,Category);
ps2.setString(5,fundqty);
ps2.setString(6, UserInfo.getName());
ps2.setString(7, UserInfo.getEmail());

int i=ps2.executeUpdate();
if(i>0)

{
System.out.println("Dispatch");
response.sendRedirect("Ngodashboard.html");
}

else{
System.out.println("Fail to Dispatch");
response.sendRedirect("FoodClothesDonate.html");

catch(Exception e){
e.printStackTrace();

}}

Department of Computer Engineering, Sandip Polytechnic, Nashik 43


CHAPTER 7: TESTING

7.1 UNIT TESTING


Unit testing, also known as component testing refers to tests that verify the
functionality of a specific section of code, usually at the function level. In an object-oriented
environment, this is usually at the class level, and the minimal unit tests include the constructors
and destructors. These types of tests are usually written by developers as they work on code (white-
box style), to ensure that the specific function is working as expected. One function might have
multiple tests, to catch corner cases or other branches in the code. Unit testing alone cannot verify
the functionality of a piece of software, but rather is used to assure that the building blocks the
software uses work independently of each other. In our project we will test following modules
separately.
Module for unit testing will be
• Pre-process Image.
• Image Decomposition.
• Feature Extraction.
• Object Recognition.
• Web Information retrieval.

7.2 INTEGRATION TESTING


Integration testing is any type of software testing that seeks to verify the interfaces
between components against a software design. Software components may be integrated in an
iterative way or altogether. Normally the former is considered a better practice since it allows
interface issues to be localized more quickly and fixed. Integration testing works to expose defects
in the interfaces and interaction between integrated components (modules).

Progressively larger groups of tested software components corresponding to


elements of the architectural design are integrated and tested until the software works as a system.

Department of Computer Engineering, Sandip Polytechnic, Nashik 44


To combine the modules below and combine test full system.
• Image Decomposition.
• Feature Extraction.
• Object Recognition.
• Web Information retrieval

7.3 VALIDATION TESTING


The process of evaluating software during the development process or at the end of
the development process to determine whether it satisfies specified business requirements.
Validation Testing ensures that the product actually meets the client's needs. It can also be denned
as to demonstrate that the product fulfills its intended use when deployed on appropriate
environment.

7.4 GUI TESTING


GUI testing is a process to test application's user interface and to detect if
application is functionally correct. GUI testing involves carrying set of tasks and comparing the
result of same with the expected output and ability to repeat same set of tasks multiple times with
different data input and same level of accuracy. GUI Testing includes how the application handles
keyboard and mouse events, how different GUI components like menu bars, toolbars, dialogs,
buttons, edit _elds, list controls, images etc. reacts to user input and whether or not it performs in
the desired manner. Implementing GUI testing for your application early in the software
development cycle speeds up development improves quality and reduces risks towards the end of
the cycle. GUI Testing can be performed both manually with a human tester or could be performed
automatically with use of a software program. To test whether .net and java GUI is properly
managed as per ow in use case diagram. To test all controls of In GUI testing check weather .Net
module GUI is been Working properly.

Department of Computer Engineering, Sandip Polytechnic, Nashik 45


7.5 TEST CASE

Department of Computer Engineering, Sandip Polytechnic, Nashik 46


CHAPTER 8: CONCLUSION

In conclusion, the Charity Link-NGO Collaboration Welfare Portal has the


potential to significantly impact the social sector by facilitating collaboration between NGOs and
charities. To maximize its potential, the platform should continue to expand its scope, enhance
technical capabilities, improve data security, increase funding, expand collaboration opportunities,
enhance communication channels, improve accessibility, and ensure sustainability. By
implementing these strategies, the platform can provide comprehensive services and features to
NGOs and charities, increase the potential impact of collaborations, and contribute to a more
effective and efficient social sector.

Department of Computer Engineering, Sandip Polytechnic, Nashik 47


ADVANTAGES

1. Increased visibility and reach: A charity link-ngo collaboration welfare portal provides
a centralized platform for NGOs to showcase their initiatives and connect with potential
donors and partners. This increases the visibility and reach of the initiatives and allows
them to attract more resources and support from various stakeholders in the community
and beyond.
2. Improved resource mobilization: A charity link-ngo collaboration welfare portal
facilitates resource mobilization efforts by providing a platform for NGOs to share
resources, collaborate on initiatives, and access funding opportunities. This helps
NGOs to maximize the impact of their resources and achieve their goals more
efficiently
3. Enhanced collaboration and partnership building: A charity link-ngo collaboration
welfare portal promotes collaboration and partnership building by providing a platform
for NGOs to connect with each other, share best practices, and learn from each other's
experiences. This helps NGOs to build stronger networks and partnerships, which can
lead to more effective and sustainable initiatives.
4. Better data management and analysis: A charity link-ngo collaboration welfare portal
allows NGOs to manage and analyze data related to their initiatives, such as donations,
resources, and outcomes. This helps NGOs to make more informed decisions and
improve the effectiveness and impact of their initiatives.
5. Increased transparency and accountability: A charity link-ngo collaboration welfare
portal promotes transparency and accountability by providing donors and stakeholders
with access to detailed information about NGOs and their initiatives, such as financial
reports, impact reports, and verification reports. This helps NGOs to build trust and
credibility with their stakeholders and demonstrate the effectiveness and impact of their
initiatives.

Department of Computer Engineering, Sandip Polytechnic, Nashik 48


CHAPTER 9: FUTURE SCOPE

To expand and improve the Charity Link-NGO Collaboration Welfare Portal,


several steps can be taken. The platform can increase its scope by partnering with more NGOs and
charities in different locations and areas of expertise, which will increase the number of
organizations that can benefit from collaboration and broaden the platform's reach. The platform
can enhance its technical capabilities by improving loading times, device compatibility, and
functionalities to improve user experience and attract more NGOs and charities.

Advanced security measures such as multi-factor authentication, encryption, and


regular security audits can be implemented to build trust in the platform and encourage more
organizations to share sensitive information. The platform can seek grants, corporate partnerships,
and individual donations to increase funding for maintenance, upgrades, and expansion. A
revenue-generating model, such as a subscription fee or fundraising campaigns, can be
implemented to ensure the platform's long-term viability and ability to provide comprehensive
services and features to NGOs and charities.

Department of Computer Engineering, Sandip Polytechnic, Nashik 49


CHAPTER 10: REFERENCES

Websites:
• GoFoundMe: https://ww.gofoundme.com/
• Kickstarter: https://www.kickstarter.com/
• Indiegogo: https://www.indiegogo.com/
• DonorsChoose: https://www.donorschoose.org/

Open-Source Donation Portal Projects:


• Charitable: WordPress donation plugin - https://www.wpcharitable.com/
• Handbid: Open-source auction platform - https://handbid.com/
• BenevoLent: Fundraising and donation website project - https://benevolent.ws/

Research Papers and Case Studies:


• Bassett, R., & Ahern, L. (2011). Online Fundraising and the Quest for Donor
Loyalty.
• Shang, J., & Muir, R. (2010). Effective Online Fundraising: Insights from
Research and Practice

Department of Computer Engineering, Sandip Polytechnic, Nashik 50


CHAPTER 11: APPENDIX A

11.1 SRCEEN SHOTS: -

Department of Computer Engineering, Sandip Polytechnic, Nashik 51


Department of Computer Engineering, Sandip Polytechnic, Nashik 52
Department of Computer Engineering, Sandip Polytechnic, Nashik 53
Department of Computer Engineering, Sandip Polytechnic, Nashik 54
Department of Computer Engineering, Sandip Polytechnic, Nashik 55
Department of Computer Engineering, Sandip Polytechnic, Nashik 56
Department of Computer Engineering, Sandip Polytechnic, Nashik 57
Department of Computer Engineering, Sandip Polytechnic, Nashik 58
Department of Computer Engineering, Sandip Polytechnic, Nashik 59

You might also like