0% found this document useful (0 votes)
9 views

Book Store 5

Uploaded by

Best Team
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Book Store 5

Uploaded by

Best Team
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

Contents

Contents .................................................................................................................................................................................................... 2
List of Figures ................................................................................................................................................................................................ 3
Figure 1: Screenshot of the Slack Group ........................................................................................................................................................... 3
Figure 2: GitHub Repository Screenshot ....................................................................................................................................................... 3
Figure 3: YouTube Channel Screenshot ........................................................................................................................................................ 3
Figure 4: Video Thumbnail or Screenshot ..................................................................................................................................................... 3
Figure 5: Gantt Chart..................................................................................................................................................................................... 3
Figure 6: Use Case Diagram .......................................................................................................................................................................... 3
Figure 7: Sequence diagram.......................................................................................................................................................................... 3
1: Abstract ..................................................................................................................................................................................................... 4

3. problem statements.................................................................................................................................................................................. 5
5. What is Agile? ......................................................................................................................................................................... 6
6. Why do we use Agile in project?............................................................................................................................................. 7
7. Why we use agile models? ...................................................................................................................................................... 8
8. What is the Waterfall Model?................................................................................................................................................. 8
9. Why choose Agile over Waterfall?.......................................................................................................................................... 8
10. Functional Requirements: ....................................................................................................................................................................... 9
12. Slack ...................................................................................................................................................................................................... 28
13. GitHub ................................................................................................................................................................................................... 29
14. YouTube ................................................................................................................................................................................ 30
15. Gantt chart ............................................................................................................................................................................ 31
We use Mermaidv10.6.1 Live Editor for creating Gantt chart. ................................................................................................................... 31

Conclusion ....................................................................................................................................................................................................... 32

2
List of Figures

Figure 1: Screenshot of the Slack Group

Figure 2: GitHub Repository Screenshot

Figure 3: YouTube Channel Screenshot

Figure 4: Video Thumbnail or Screenshot

Figure 5: Gantt Chart

Figure 6: Use Case Diagram

Figure 7: Sequence diagram

3
1: Abstract

• The project titled "Creating a Book Store Website" is a collaborative effort by team
members Yousf Jawhar Saeed, Mohammad Amin Sleman, and Sahar Hadi Qasim.
The primary objective is to design a captivating homepage that immediately grabs
the attention of visitors, possibly through a slideshow of notable book covers. The
homepage will prominently feature popular titles to entice visitors. Emphasis is
placed on user-friendliness, ensuring ease of navigation and straightforward access
to product categories. Books will be organized by genres such as "Mystery,"
"Romance," and "Science Fiction" for easy browsing. A search functionality will be
incorporated to facilitate users in finding books based on various criteria. Each
product page will have clear titles, detailed descriptions, and high- quality images.
The website will also introduce the bookstore staff with bios and personal
statements. A contact section will provide a form and essential contact details. In
conclusion, the website aims to encapsulate the essence of reading, highlighting its
magic and urging visitors to delve into the offered selection.

2. Book store keywords:

• Adventure: A story that involves exciting and sometimes dangerous experiences.

• Mystery: A story that involves a puzzle or a crime to be solved.

• Romance: A story that involves love and relationships.

4
• Fantasy: A story that involves magic, supernatural elements, or imaginary worlds.

• Science Fiction: A story that involves futuristic or scientific concepts.

• Horror: A story that is intended to scare or frighten the reader.

• Drama: A story that is serious and often deals with difficult emotions or situations.

• Comedy: A story that is intended to be humorous and make the reader laugh.

3. problem statements.

• "Existing online bookstore platforms often suffer from inadequate user


personalization, leading to suboptimal book recommendations and decreased user
engagement."

•"Security concerns among online shoppers have heightened, with many bookstore
websites lacking transparent and robust security measures, potentially deterring
potential buyers."

4. Related Work (Literature Review) on Bookstore websites

The digital transformation has significantly impacted the book-buying experience.


Online bookstores,which emerged prominently in the late 1990s, revolutionized the
traditional book shopping paradig(Baym, 2010).

5
Key aspects that have been the focus of research include:

•User Experience (UX): Chaffey and Ellis-Chadwick (2019) stress the importance of an intuitive
interface, with efficient search capabilities and a seamless checkout process for online bookstores.

•Personalization and Recommendations: Algorithms that analyze user behavior to suggest books
enhance the shopping experience (Li & Karahanna, 2015).

•Digital Integration: The rise of e-books and audiobooks in online stores caters to diverse reader
preferences (Thompson, 2013).
•Security and Privacy: Ensuring robust security measures and clear privacy policies is pivotal for
online bookstores (Ho & Wu, 2019).
In essence, online bookstore platforms should prioritize user experience, personalization, digital
integration, and security to remain competitive.

References:

• Baym, N. K. (2010). Personal connections in the digital age. Polity.


• Chaffey, D., & Ellis-Chadwick, F. (2019). Digital marketing. Pearson UK.
• Li, X., & Karahanna, E. (2015). Online recommendation systems in
a B2C e-commerce context. Journal of Association for Information Systems, 16(2).
• Thompson, J. B. (2013). Merchants of culture: The publishing business in the twenty-first century.
John Wiley & Sons.
•Ho, S. Y., & Wu, W. (2019). Continuance intention of online bookstore consumers. Information
Systems and e-Business Management, 17(2).

5. What is Agile?

Agile model believes that every project needs to be handled differently and the existing
methods need to be tailored to best suit the project requirements. In Agile, the tasks are

6
divided to time boxes (small time frames) to deliver specific features for a release.
Iterative approach is taken and working software build is delivered after each iteration. Each
build is incremental in terms of features; the final build holds all the features required by the
customer.

6. Why do we use Agile in project?

Agile development is important because it helps to ensure that development teams complete
projects on time and within budget. It also helps to improve communication between the
development team and the product owner. Additionally, Agile development methodology can
7
help reduce the risks associated with complex projects. It allows for development teams to
make changes quickly and easily without affecting the overall project timeline.

7. Why we use agile models?

Because one advantage of agile methodology is that when companies take the time on the
front end to plan a project using agile techniques, they can estimate the cost of a project to
determine whether they should continue. Agile follows an iterative process where projects are
divided into sprints of a shorter span. Unlike the traditional approach, less time is spent on
upfront planning and prioritization as agile is more flexible in changes and specifications
developments. The Agile approach is incremental, Agile allows for modifications in project
development needs.

Comparing Agile with the Waterfall Model:

8. What is the Waterfall Model?

The Waterfall model is a traditional software development methodology where the project moves
through a linear and sequential approach, with each phase needing to be completed before moving
on to the next one. Starting from requirement analysis, proceeding to design, then to coding, testing,
and finally maintenance - the Waterfall model follows a strict progression of steps, one flowing
directly into the next.

9. Why choose Agile over Waterfall?

•Flexibility vs. Rigidity: While the Waterfall model is systematic and structured,
it can be rigid. Once a phase is complete, it's difficult to go back and make changes.
Agile, on the other hand, is flexible, allowing for changes to be made even in the
development phase without disturbing the overall project timeline.

8
•Feedback and Iteration: In Agile, feedback is received after every iteration,
allowing for continuous improvement. In Waterfall,
feedback is usually reserved until the very end,
which can result in costly and time-consuming revisions if issues are found.

•Risk Management: Agile's iterative nature allows for risks to be identified and
addressed more frequently, reducing the chances of a project going off track.
In Waterfall, since the entire project is assessed at the end, there's a higher risk of the
project not meeting the desired requirements or going over budget.

•Customer Engagement: Agile involves frequent communication with stakeholders and


often requires their participation in the development process.
This ensures the final product aligns with customer needs. In the Waterfall model, the
customer is typically only involved at the beginning and end of the development
process.

•Time to Market: Agile allows for a working version of the software to be available
earlier in the process, allowing for faster deployment if necessary.
With Waterfall, the complete software is only available at the end of the lifecycle.
In conclusion, while both Agile and Waterfall have their advantages, Agile offers a more
flexible and adaptive approach, especially beneficial for projects where requirements
may change or evolve. It promotes collaboration, continuous feedback, and can lead to
a quicker time to market. However, it's important to note that the best methodology
often depends on the specific needs of the project and the organization.

10. Functional Requirements:

• User Registration: Users should be able to register, creating a personal account with a
unique username and password.
• Search Functionality: Users must be able to search for books by title, author, genre, or ISBN.
• Book Details: Clicking on a book should display its details like cover image, synopsis, author,
reviews, and price.
9
• Shopping Cart: Users can add books to their cart and proceed to purchase.
• Payment Integration: Securely process user payments using credit cards, digital wallets,
or bank transfers.
• Order History and Tracking: Users can view their past orders and track shipments.
• Recommendation System: Offer book suggestions based on a user's browsing and purchase history.

Non-functional Requirements:
• Responsiveness: The website should be fully responsive, adapting to various devices like desktops,
tablets, and mobiles.
• Load Time: Web pages should load in under 3 seconds, ensuring a smooth user experience.
• Security: Data, especially payment details, must be encrypted. The platform should be protected
against potential threats and attacks.
• Scalability: The website should handle traffic spikes, especially during sales or promotional events.
• Backup and Recovery: Regular backups of the website data should be maintained,
with a clear recovery plan in case of data loss.
• User-Friendly Interface: The design should be intuitive, ensuring ease of navigation for all
users, irrespective of their tech proficiency.

11. Use Case 1: Browsing and Searching for Books

Primary Actor: Customer

Goal: To find and view details of books they are interested in.

10
Main Steps:

1.Access Website: The customer accesses the bookstore website.

2.Search for Books: The customer uses the search bar to find books by title, author, or ISBN.

3.Browse Categories: Alternatively, the customer browses through different categories and genres.

4.View Book Details: On selecting a book, the customer views its details, including synopsis, author information, price,

and user reviews.

Extensions/Exceptions:

If a search yields no results, suggest alternative titles or authors.

Offer recommendations based on browsing history.

Use Case 2: Purchasing Books

Primary Actor: Customer

Goal: To successfully purchase one or more books.

Main Steps:

1.Select Books: The customer adds chosen books to their shopping cart.

2.Review Cart: The customer reviews their cart, making any adjustments if necessary (like changing quantity).

3.Checkout: The customer proceeds to checkout.


11
4.Enter Shipping Information: The customer provides shipping details.

5.Payment: The customer selects a payment method and enters payment details.

6.Confirm Purchase: The customer reviews all details and confirms the purchase.

7.Receive Confirmation: The customer receives an order confirmation and a receipt by email.

Extensions/Exceptions:

If payment fails, prompt the customer to try a different payment method.

Provide an option to save shipping and payment information for future purchases.

Use Case 3: Managing User Account

Primary Actor: Customer

Goal: To manage personal account settings and view order history.

Main Steps:

1.Log In: The customer logs into their account.

2.View/Edit Profile: The customer views or edits their profile information.

3.Change Password: The customer updates their account password.


12
4.View Order History: The customer accesses their past orders and tracks current orders.

5.Manage Payment Methods: The customer adds or removes payment methods.

6.Log Out: The customer logs out of their account.

Extensions/Exceptions:

If the customer forgets their password, provide a secure process to reset it.

Notify the customer of any changes or updates to their account via email.

Use case diagram

This is our Use case diagram for our book store project

13
Sequence Diagram

This is our Sequence Diagram for our bookstore project


14
Link:

https://showme.redstarplugin.com/d/d:UbsVfnj6

15
Design

Design, in the context of software and system development, refers to the process of defining the
architecture, components, interfaces, and other characteristics of a system or component. It is a
broad term that encompasses everything from user interface design to software architecture and
database design. The goal of design is to create a blueprint or a plan for what is to be built, ensuring
that the final product meets user needs and is feasible to develop within constraints like time,
budget, and technology.

Wireframe

A wireframe is a low-fidelity way of presenting a design. It's primarily used in the early stages of
website or application design. Wireframes are like the blueprints of a building, but for digital
interfaces. They provide a visual guide that represents the skeletal framework of a website or app.
Key characteristics include:
• Simplicity: They often consist of simple lines and shapes, representing elements like buttons,
images, and text blocks.
• Focus on Functionality: Wireframes are used to layout elements and functionality on a page
and demonstrate how users will interact with the interface.
• Lack of Stylistic Elements: They usually lack typographic style, color, or graphics, as the main
focus is on behavior, spacing, and prioritization of content.

16
This is our Wireframe for book store

Login and registration page

17
Main page

18
Categories

19
Card and checkout page

20
Entity-Relationship Diagram (ERD)

An Entity-Relationship Diagram (ERD) is a visual representation of the relationships between entities


(such as tables) in a database. It's an essential part of database design and is used to model the data
structures and their interactions. Key aspects include:
• Entities: These are objects or concepts, often corresponding to database tables, that store
data. In an ERD, they are typically represented as rectangles.
• Relationships: These illustrate how entities interact with each other. They are usually shown
as lines connecting entities.
• Attributes: Details about the entities, represented as ovals connected to their respective
entities.
ERDs help in understanding the data requirements and how data elements interrelate, which is
crucial for creating a well-structured and efficient database.

21
This is our ERD

Link: https://app.creately.com/d/Kj9pQ8Loux9/edit

22
Architecture Diagram

An architecture diagram is a conceptual blueprint that defines the structure and behavior of a
system. It provides a visual representation of the system's components, their relationships, and how
they interact with each other. These diagrams are used in software engineering for planning and
conveying the architecture of software systems. Key features include:
• Components: Represent different parts of the system, such as databases, servers, clients, and
other processing units.
• Connectors: Show how components interact with each other, such as through APIs, data
flows, or message passing.
• Layers: Often, these diagrams are organized in layers, indicating different levels of abstraction
or different responsibilities (e.g., presentation layer, business logic layer, data access layer).
Architecture diagrams are crucial for ensuring that all stakeholders have a common understanding of
the system's structure and can be used to identify potential issues and dependencies early in the
development process.

23
This is our architecture diagram
Link: https://showme.redstarplugin.com/d/d:yzPoWzbM

24
Overview of Various Programming Languages

The realm of programming languages is vast and diverse, each language designed with specific purposes and
strengths. Common languages include Python, known for its simplicity and versatility, ideal for beginners and widely
used in data science and machine learning. Java, with its object-oriented approach, finds extensive use in enterprise-
level applications and Android app development. JavaScript, a staple for web development, runs on both client and
server sides, making web pages interactive. C++ offers a blend of high performance and efficiency, widely used in
software development, game development, and real-time systems. PHP, primarily used for server-side scripting, is a
cornerstone in web development, powering platforms like WordPress.
In contrast, languages like Swift and Kotlin are pivotal in mobile app development for iOS and Android, respectively.
Each language possesses unique features and libraries, shaping the landscape of software development across
various domains.

Choice of Programming Language for the Project


For the bookstore website project, PHP is selected as the primary programming language, particularly due to its
robustness and suitability for web development. PHP's seamless integration with HTML and databases like MySQL
makes it an excellent choice for dynamic website development. Its vast array of frameworks, such as Laravel,
facilitates rapid development, ensuring efficient handling of complex functionalities like user authentication, session
management, and database operations.
Additionally, the use of JavaScript enhances the user experience by enabling interactive features on the website.
JavaScript frameworks like React or Vue.js can be employed to create a responsive and engaging frontend. The
combination of PHP and JavaScript provides a powerful duo for creating a feature-rich, scalable, and user-friendly
online bookstore.

25
Online (Web-based) vs. Offline (Desktop) Software

Online, web-based software operates on a web server and is accessed via a web browser. This approach offers
significant advantages such as accessibility from any device with an internet connection, ease of updates and
maintenance, and often lower costs due to shared server resources. Web-based applications are inherently scalable
and can serve a broad user base with varying demands.
Offline, desktop software, on the other hand, is installed and runs on individual computers. This approach offers
benefits in terms of performance, as it leverages the computer's hardware, and security, as data is stored locally.
However, desktop applications face limitations in accessibility and higher costs in distribution and updating.

Choice of an Online Approach for the Project

For the bookstore website, an online, web-based approach is chosen. The primary rationale is accessibility; users can
access the bookstore from any device with internet connectivity, which is crucial for reaching a wider audience.
Additionally, the online model aligns well with the evolving consumer preference for digital platforms for shopping. It
also simplifies the process of updating book inventories and other content without requiring end-user intervention,
ensuring the bookstore always presents current and relevant information.

Concept of API in Software Development


APIs (Application Programming Interfaces) are sets of protocols and tools for building software applications. They act
as intermediaries, allowing different software programs to interact and exchange data. In web development, APIs play
a crucial role in enabling functionalities like payment processing, data retrieval from external sources, and integrating
third-party services. They define the methods and data formats that applications can use to communicate with each
other.

26
Utilization of APIs in the Project

In this bookstore project, APIs are extensively used. For instance, payment gateway integration is achieved through
APIs provided by service providers like PayPal or Stripe. These APIs handle complex processes like secure payment
processing, transaction authorization, and data encryption, ensuring a safe and smooth transaction experience for
users. Additionally, book information, including summaries, reviews, and ratings, could be fetched from external
sources using APIs, enriching the content on the website without manual data entry.

Introduction to the Bookstore Website Project

The "Creating a Book Store Website" project represents a venture into the ever-evolving world of e-commerce
and digital content. As the digital landscape reshapes how consumers interact with content, particularly books,
this project aims to establish an online platform that not only sells books but also creates an immersive and
engaging experience for book lovers. The project's cornerstone is the development of a user-friendly, visually
appealing website that serves as a portal to a vast array of books across various genres.
The website aims to encapsulate the essence of reading and the joy it brings. It will feature an intuitive interface,
easy navigation, and a personalized user experience. From the latest bestsellers to timeless classics, the website
will cater to diverse reader preferences, ensuring every visitor finds something that resonates with their reading
taste. The project is not just about selling books; it's about building a community of readers, fostering a
culture of knowledge and imagination.

27
12. Slack

This is a picture of our slack group.


we use slack for our community and for meetings.
This is our slack link:
https://n2122workspace.slack.com/archives/C05V7QS505D

28
13. GitHub

This is pictures and link of our account on GitHub, we use GitHub to


share our code together and provide access for all of us to edit the
code.
https://github.com/yousfjawhar/BookStore

29
14. YouTube

This is a screenshot of our YouTube and the link of our YouTube channel.
https://www.youtube.com/channel/UCxeA5DBU4LmnvUXihIxDVeA

this is a link for my video.


https://youtu.be/ZyAbnkxbEiM?si=TcbSz2vN7FzHWdTf

30
15. Gantt chart

We use Mermaidv10.6.1 Live Editor for creating


Gantt chart.

31
Conclusion
In summary, the bookstore website project stands as a testament to the fusion of technology and literature,
aiming to redefine the book-buying experience. By leveraging the right programming languages, embracing the
web-based approach, and utilizing APIs, the project is poised to deliver a platform that is not only functional and
efficient but also enriches the user's reading journey. The ultimate

32

You might also like