Online Puppy Documentation N PDF
Online Puppy Documentation N PDF
1.INTRODUCTION
The Online Puppy Emporium is an innovative web-based platform designed to facilitate
the direct sale of puppies between sellers and buyers. Unlike traditional puppy-selling
websites that involve intermediaries, this platform allows users to engage directly with
sellers, ensuring a more streamlined and cost-effective adoption process. By removing
middlemen, the website offers high-quality puppies at competitive prices, thereby
enhancing the overall user experience. The platform consists of three main modules:
User, Admin, and Seller. Each module plays a vital role in maintaining the functionality
and security of the website. The admin module ensures that only genuine sellers and
puppies are allowed on the platform, while the Seller module facilitates the listing and
selling of puppies. Users can easily navigate the site, register, and purchase their desired
puppies without unnecessary complications.
2.SYSTEM ANALYSIS
System analysis is a step-by-step process used to identify, develop, or acquire the software
necessary to control the processing of specific applications. It is an ongoing activity
throughout the stages of system development. System analysis involves gathering and
interpreting facts, diagnosing problems, and utilizing the collected information to improve
the system. It traces the outputs of an organization by following the various processes that
input data goes through within the organization. This process includes gathering
information using structured tools for analysis. A thorough study is conducted through
various techniques such as interviews, questionnaires, and other methods to collect data for
effective analysis.
In the current marketplace, puppy sales often occur through physical stores or classified
advertisements, making the process tedious and time-consuming for both buyers and
sellers. Many platforms do not guarantee the authenticity of sellers, leading to potential
fraud and health concerns for the puppies.
• Lack of Verification:
• Presence of Intermediaries:
• Manual Processes:
o Many aspects of puppy sales are still handled manually, which can result
in slower response times and delayed order processing.
• Higher Costs:
o Users often have limited control over interactions with sellers, making it
harder to ask questions or make specific requests.
• No Direct Communication:
ADVANTAGES
Customer requirements
• A user-friendly interface for browsing and purchasing puppies.
Business Requirements
The business requirement for the Online Puppy Emporium is to create a scalable,
secure, and efficient platform that facilitates direct transactions between certified sellers
and buyers, ensuring high-quality puppies are available at competitive prices without
intermediaries.
User Requirements
Users should be able to search and filter puppies by breed, price, and
location.
Users need access to detailed information about each puppy, including health
status and breeder details.
Functional Requirements
Functional Requirement defines what a system is supposed to do. They can perform the
following functionalities:
Users must be able to register, log in, and manage their profiles.
Sellers must submit ID proof and puppy details for admin approval.
The system should facilitate direct messaging between users and sellers.
Admin must have the ability to monitor and remove fraudulent posts or sellers.
Users should receive order confirmation and tracking updates. 2.3.1 Hardware
HTML
content on the internet. It enables developers to define the layout of a webpage by using
a variety of elements such as headings, paragraphs, links, images, and lists. HTML
provides the semantic structure necessary for browsers to interpret and render web
pages, ensuring that users can easily navigate and interact with the content.
Additionally, HTML works seamlessly with CSS (Cascading Style Sheets) for styling
and JavaScript for interactivity, creating a dynamic user experience. Its role in SEO
(Search Engine Optimization) is also critical, as properly structured HTML can
improve a site's visibility and ranking on search engines. Overall, HTML remains an
essential skill for front-end developers, forming the basis for more complex web
applications and designs.
CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the
presentation of a document written in a markup language. Although most often used to
set the visual style of web pages and user interfaces written in HTML and XHTML, the
language can be applied to any XML document, including plain XML, SVG, and XUL,
and is applicable to rendering in speech, or on other media.
Along with HTML and JavaScript, CSS is a cornerstone technology used by most
websites to create visually engaging webpages, user interfaces for web applications, and
user interfaces for many mobile applications.
CSS is designed primarily to enable the separation of document content from document
presentation, including aspects such as layout, colors, and fonts. This separation can
improve content accessibility, provide more flexibility, and offer greater control in
specifying presentation characteristics. It enables multiple HTML pages to share the
same formatting by specifying styles in a single stylesheet.
PHP
PHP is a server-side scripting language designed for web development but also used as
a general-purpose programming language. Originally created by Rasmus Lerdorf in
1994, the PHP reference implementation is now produced by The PHP Group. PHP
originally stood for Personal Home Page, but it now stands for the recursive backronym
PHP: Hypertext Preprocessors.
PHP code may be embedded into HTML code, or it can be used in combination with
various web template systems, web content management systems, and web frameworks.
PHP code is usually processed by a PHP interpreter implemented as a module in the
web server or as a Common Gateway Interface (CGI) executable. The web server
combines the results of the interpreted and executed PHP code, which may be any type
of data, including images, with the generated web page. PHP code may also be executed
with a command-line interface (CLI) and can be used to implement standalone
graphical applications.
MYSQL
MySQL databases are data containers used to store and manage information. Users may
manage MySQL databases using included command-line tools or install MySQL
Workbench, a GUI-based tool available as a separate download. Many third-party GUI
tools are also available for MySQL management.
A feasibility study is an evaluation and analysis of the potential of the proposed project
which is based on extensive investigation and research to give full comfort to the
decision makers. Feasibility studies aim to objectively and rationally uncover the
strength and weakness of existing business of proposed venture, opportunities and
threats as presented by the environment, the resources required to carry through, and
ultimately the process for success.
In its simplest terms, the two criteria to judge feasibility are cost required and value to
attain. As such, a well-designed feasibility study should provide a historical background
of the business or project, description of the product or service, accounting statements,
details of the operations and management, marketing research and policies, financial
data, legal requirements and tax obligations.
Technical feasibility
Economic feasibility
Operational feasibility
Behavioural feasibility
Technical Feasibility
The technical feasibility centres on the existing system and what extent it can
support the proposed addition. The technical feasibility assessment is focused on
gaining an understanding of the present technical resources of the organization
and their applicability to the expected needs of the proposed system. The
minimum requirements of the system are met by average users. The developer
system has a modest technical requirement as only minimal or null changes are
required for implementing the system.
Normally associated with the technical feasibility includes:
Development risk
Resource availability
Technology
The proposed system can work without any additional hardware or software
support other than the computer system and networks. So, I analysed that the
proposed system is much more technically feasible than other systems when
comparing with the benefits of the new system.
Economic Feasibility
Economic feasibility analysis is also known as cost/benefit analysis. The purpose
of the economic feasibility assessment is to determine the positive economic
benefits to the organization that the proposed system will provide. The proposed
system reduces the operating cost in terms of time by automating the process.
This system is economically feasible.
Operational Feasibility
Operational feasibility is a measure of how well a proposed system solves the
problems, and takes advantage of the opportunities identified during scope
definition and how it satisfies the requirements identified in the requirements
analysis phase of system development.
Behavioural Feasibility
People are inherently resistant to changes and computer is known for facilitating the
changes. An estimate should be made to how strongly the users react towards the
development of the system. The proposed system consumes less time. Thus, the
people are made to engage in some other important work.
A data flow diagram (DFD) is a graphical representation of the "flow" of data through
an information system. It differs from the flowchart as it shows the data flow instead of
the control flow of the program. A data flow diagram can also be used for the
visualization of data processing (structured design).
Data flow diagrams were invented by Larry Constantine, the original developer of
structured design, based on Martin and Estrin's "data flow graph" model of
computation.
Data flow diagrams (DFDs) are one of the three essential perspectives of Structured
System Analysis and Design Method SSADM. The sponsor of a project and the end
users will need to be briefed and consulted throughout all stages of a system's evolution.
With a data flow diagram, users are able to visualize how the system will operate, what
the system will accomplish, and how the system will be implemented. The old system’s
data flow diagrams can be drawn up and compared with the new system’s data flow
diagrams to draw comparisons to implement a more efficient system. Data flow
diagrams can be used to provide the end users with a physical idea of where the data
will originate, and where it will go.
Developing a data flow diagram helps in identifying the transaction data in the data
model. There are different notations to draw data flow diagrams, defining different
visual representation for process, data stores, data flow, and external entities. The first
step is to draw a data flow diagram (DFD). A DFD, also known as "bubble chart," has
the purpose of clarifying system requirements and identifying major transformation that
will become program in system design. So, it is starting point of the design phase that
functionally decomposes the requirements specification down to the lowest level of
details. DFD consists of series of bubbles joined by lines. The bubbles represent data
transformation and the lines represent data flow in the system.
DFD Symbols
LEVEL 0
LEVEL 1 – Admin
LEVEL 1 – Owner
LEVEL 1 -User
3.SYSTEM DESIGN
The quality of input data directly determines the accuracy and reliability of the Online
Puppy Emporium system output. Proper input design ensures that reliable and precise
results are generated, preventing erroneous information from disrupting the system's
performance. A well-planned input design also ensures smooth and efficient interaction
between users, sellers, and the admin.
In the Online Puppy Emporium, most inputs are sourced from users, sellers, and the
admin, and all data is stored in the database. To ensure efficient processing, it is
essential to gather accurate data such as personal information, ID proofs, puppy details,
and transactional data, organized according to the platform's requirements.
Admin
• The admin verifies and manages the registration of sellers and their listed
puppies.
• Admin inputs include approving or rejecting seller accounts and puppy listings.
• The admin also handles the removal of fraudulent sellers and posts from the
platform.
Seller
• They also input puppy details such as breed, age, health status, vaccination
records, price, and photos.
• Sellers update their listings and manage order status by providing shipping and
delivery updates.
• Additionally, sellers can upload promotional content or special offers for their
puppies.
User
• When purchasing a puppy, users select their desired breed, quantity (if
applicable), and provide delivery preferences.
• Users can also input feedback or complaints, which are forwarded to the admin
for resolution.
One of the key features of the Online Puppy Emporium is the quality of the output it
provides to users, sellers, and administrators. Output refers to the information displayed
through the platform, such as puppy listings, order confirmations, registration
approvals, and complaint statuses. Clear and accurate output ensures that users have a
seamless experience, while poor output could discourage engagement with the
platform. Therefore, the output must deliver relevant, real-time information to all
stakeholders.
In the Online Puppy Emporium, the system is judged primarily by its output, such as
accurate puppy availability, order tracking, and seller approvals. The platform
integrates regular feedback from users to continuously improve output quality, making
the experience more efficient and satisfactory.
Admin
• The admin receives output regarding the status of sellers and puppy listings,
showing whether they have been approved or rejected.
• The system provides the admin with complaint details and the ability to track
and respond to each query.
• The admin dashboard shows data on overall transactions, active users, and
recent activity on the platform.
Seller
• Sellers receive output confirming whether their registration and puppy listings
have been approved or rejected by the admin.
• They can view real-time updates on orders placed for their listed puppies and
monitor payment statuses.
User
• Users can view detailed puppy listings, including breed, age, price, and seller
information.
• They receive order confirmations and real-time updates on their order status,
including shipment and delivery tracking.
• The system provides users with notifications about the approval of their
registration and any responses from the admin to complaints or inquiries.
1.tbl_admin
Primary Key admin_id
Description: This table stores information about the admin.
2.tbl_district
Primary Key district_id
Description: This table shows the information about the details of district.
3.tbl_place
Primary Key place_id
Foreign Key district_id
Description: This table shows the information about the details of place.
4.tbl_user
5.tbl_category
Primary Key category_id
Description: This table shows the information about category of puppy.
6.tbl_owner
Primary Key owner_id
Description: This table shows the information about the details of Owner.
7.tbl_puppy
Primary Key puppy_id
Foreign Key color_id,category_id
Description: This table shows the information about the details of puppy.
8.tbl_gallery
Primary key gallery_id
Foreign key puppy_id
9.tbl_request
Primary Key request_id
Foreign Key user_id,puppy_id
Description: This table shows the information about the status and information of the
request.
10.tbl_complaint
Primary Key compalint_id
Foreign Key user_id
Description: This table shows the information about the details of Complaint.
11.tbl_chat
Primary Key chat_id
Foreign Key request_id
Description: This table shows the information about the details of chat.
12.tbl_feedback
Primary key feedback_id
Description: This table shows the information about the details of feedback.
Testing is the process of examining the software to compare the actual behaviour with
that of the excepted behaviour. The major goal of software testing is to demonstrate that
faults are not present. In order to achieve this goal, the tester executes the program with
the intent of finding errors. Though testing cannot show absence of errors but by not
showing their presence it is considered that these are not present. System testing is
defined as the process by which one detects the defects in the software. Any software
development organization or team has to perform several processes. Software testing is
one among them. It is the final opportunity of any programmer to detect and rectify any
defects that may have appeared during the software development stage. Testing is a
process of testing a program with the explicit intention of finding errors that makes the
program fail. In short system testing and quality assurance is a review in software
products and related documentation for completion, correctness, reliability and
maintainability. System testing is the first stage of implementation, which is aimed at
ensuring that the system works accurately and efficiently before live operation
commences. Testing is vital to the success of the system. System testing makes a logical
assumption that if all the parts of the system are correct and the goal will be
successfully achieved. A series of testing are performed for the proposed system before
the proposed system is ready for user acceptance testing.
Unit testing
Integration testing
Validation
Output testing
Acceptance testing
System testing not only validates the software but also ensures that all system components
work together as expected. This process verifies that all modules have been integrated
properly and that the system’s overall performance and functionality meet the required
standards. Through validation tests, the interaction between modules is thoroughly
examined to confirm they collaborate smoothly and fulfil the system's overall functional
requirements.
a. Unit Testing
Unit testing involves evaluating each screen of the software individually, treating
each as a separate object. The focus is placed on testing individual modules
independently to uncover errors in isolation, which helps in identifying issues in the
code and logic. This process has proven to be effective in detecting faults at the
module level.
For each module, multiple test cases are created and executed. The goal is to ensure
that the module operates according to the defined requirements and produces the
desired results. During these tests, the module's input and output parameters are
closely monitored.
In unit testing:
Verifying that the module interface functions properly to ensure seamless data
flow into and out of the program.
Ensuring that boundary conditions are handled correctly by the module,
particularly at the limits of data processing or restriction points.
Testing all control paths to confirm that every possible route through the control
structures has been executed at least once.
Checking how the system handles error paths, ensuring that errors are managed
properly.
b. Integration Testing
Once unit-tested modules are ready, they are combined into a larger structure as per
the design. This testing follows an incremental integration approach, progressively
combining modules and checking their interactions.
Modules are tested individually before being integrated. The integration process
follows a bottom-up approach, where smaller components are integrated first,
followed by larger ones. This method ensures that any errors identified during the
combination of modules are corrected in a systematic manner. Special attention is
paid to verifying that data and control flows between modules function properly.
The entire system is built and tested in small segments to make it easier to detect
and fix any errors. These incremental tests ensure that key elements such as user
interaction, data manipulation, and database management are working effectively,
leading to successful overall system performance.
c. Validation Testing
Validation testing ensures the software has been assembled error-free and functions
as expected. It is considered successful only when the software behaves as intended
under realistic conditions. This phase includes both alpha and beta testing. During
validation, data is tested for accuracy, ensuring that only valid inputs are accepted
and invalid ones are correctly rejected. Entering incorrect values triggers error
handling, helping to identify and rectify any mistakes.
For instance, in CareRation, various verification steps ensure that errors are
minimized by preventing incorrect entries. These validation checks are performed
meticulously, ensuring the system is error-free.
d. Output Testing
In this project, the output format displayed on the screen was found to meet the
user’s requirements, based on the system’s design. Printed outputs also matched the
expected criteria. No errors were found in the outputs during testing, making the
system userfriendly and easy to navigate. Smart builders handled output testing,
ensuring all elements were functioning correctly.
e. Acceptance Testing
The implementation is the final stage, and it is an important phase. It involves the invalid
programming system testing, user training, and the operational running of the developed
proposed system that constitutes the application subsystems. A major task of preparing for
implementation is the education of users, which should really have been taken place much
earlier in the project when they were involved in the investigation and design work. During
the implementation phase, the system actually takes physical shape. In order to develop a
system, implemented planning is very essential.
The implementation phase of the software development is concerned with translating design
specification into source code. The user tests the developed system, and changes are made
according to their needs. Our system has been successfully implemented.
Before implementation, several tests have been conducted to ensure that no errors are
encountered during the operation. The implementation phase ends with an evaluation of the
system after placing it into operation for a period of time.
The process of putting the developed system into actual use is called system
implementation. This includes all those activities that take place to convert from the old
system to the new system. The system can be implemented only after testing is done and is
found to be working to specifications. The implementation stage is a system’s project in its
own right.
• Careful planning.
In the case of this project, all the screens are designed first. For making it to be executable,
codes are written on each screen and perform the implementation by creating the database
and connecting it to the server. After that, the system is checked, whether it performs all the
transactions correctly. Then databases are cleared and made to be usable to the technicians.
Implementation Plans
The following are the steps involved in the implementation plan of "CareRation":
Security
Integrity
Privacy
Confidentiality
SYSTEM SECURITY refers to the technical innovations and procedures applied to the
hardware and operation systems to protect against deliberate or accidental damage from
a defined threat.
DATA SECURITY is the protection of data from loss, disclosure, modification and
destruction.
appropriate physical security and safety against external threats such as eavesdropping
and wiretapping.
PRIVACY defines the rights of the user or organizations to determine what information
they are willing to share with or accept from others and how the organization can be
protected against unwelcome, unfair or excessive dissemination of information about it.
ensure that only valid data is entered, and only valid operations are performed on the
system.
CLIENT-SIDE VALIDATION
Various client-side validations are used to ensure on the client side that only valid data
is entered. Client-side validation saves server time and load to handle invalid data.
Some checks imposed are:
Forms cannot be submitted without filling up the mandatory data so that manual
mistakes of submitting empty fields that are mandatory can be sorted out at the
client side to save the server time and load.
Tab-indexes are set according to the need and taking into account the ease of
user while working with the system.
SERVER-SIDE VALIDATION
Some checks cannot be applied at client side. Server-side checks are necessary to
save the system from failing and intimating the user that some invalid operation
has been performed or the performed operation is restricted. Some of the server-
side checks imposed is:
Server-side constraint has been imposed to check for the validity of primary key
and
foreign key. A primary key value cannot be duplicated. Any attempt to duplicate
the primary value results into a message intimating the user about those values
through the forms using foreign key can be updated only of the existing foreign
key values.
User is intimating through appropriate messages about the successful operations
or exceptions occurring at server side.
Various Access Control Mechanisms have been built so that one user may not
agitate
6. MAINTENANCE
Software maintenance is the modification of a software product after delivery to correct
faults, to improve performance or other attributes. Maintenance is the ease with which a
program can be corrected if any error is encountered, adapted if its environment
changes, or enhanced if the customer desires a change in requirements. Maintenance
follows conversations to extend that changes are necessary to maintain satisfactory
operations relative to changes in the user’s environment.
CATEGORIES OF MAINTENANCE
a. Corrective Maintenance
Corrective maintenance is the most commonly used maintenance approach, but it
is easy to see its limitations. When equipment fails, it often leads to downtime in
production and sometimes damages other parts. In most cases, this is expensive.
Also, if the equipment needs to be replaced, the cost of replacing it alone can be
substantial. The reliability of systems maintained by this type of maintenance is
unknown and cannot be measured. Corrective maintenance is possible since the
consequences of failure or wearing out are not significant and the cost of this
maintenance is not great.
b. Perfective Maintenance
Modification of a software product after delivery to improve performance or
maintainability. This term is used to describe changes undertaken to expand the
existing requirements of the system. A successful piece of software tends to be
subjected to a succession of changes resulting in an increase in its requirements.
This is based on the premise that as the software becomes useful, the user
experiment with new cases beyond the scope for which it was initially developed.
Expansion in requirements can take the form of enhancement of existing system
functionality and improvement in computational efficiency.
c. Adaptive Maintenance
d. Preventive Maintenance
The Online Puppy Emporium has significant potential for future enhancements to
improve user experience, accessibility, and functionality. One promising direction is the
development of a mobile application, allowing users to browse and purchase puppies
conveniently on their smartphones. Additionally, implementing advanced search and
filter options, such as age, size, and temperament, will help users find puppies that best
meet their preferences. A real-time chat feature could be introduced to allow buyers and
sellers to communicate instantly, fostering trust and making the purchase process faster
and more personalized.
8. CONCLUSION
The proposed Online Puppy Emporium Project is a very effective plus efficient GUI-
based component. This software is well tested: it works properly to meet the user
requirements as described in the project. Currently the system is web-based giving all
the required user result details.
9. BIBLIOGRAPHY
1. Software Engineering: A Practitioner’s Approach. 8th Edition. New York:
McGraw-Hill Education, 2014. – Pressman, R.
2. Web Enabled Commercial Applications Development Using HTML,
JavaScript, DHTML, and PHP. 4th Edition. BPB Publications, 2010. – Bayross,
I.
3. Fundamentals of Database Systems. 7th Edition. Pearson, 2016. – Elmasri, R.,
and Navathe, S.
4. Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5. 5th
Edition. O'Reilly Media, 2018. – Nixon, R.
5. JavaScript: The Definitive Guide. 7th Edition. O'Reilly Media, 2020. –
Flanagan, D.
6. MySQL Crash Course. 2nd Edition. Addison-Wesley Professional, 2020. –
Forta, B.
7. Bootstrap and Web Themes. Retrieved from
[https://themes.getbootstrap.com](https://themes.getbootstrap.com) – The
Bootstrap Themes Library
8. W3Schools – PHP Tutorial. Retrieved from
[https://www.w3schools.com/php/](https://www.w3schools.com/php/) –
W3Schools
10. APPENDIX
10.1 SCREENSHOTS
Homepage
Login
Approve/Reject Shops
Complaint Registration
Stock entry
Order Approval