0% found this document useful (0 votes)
19 views34 pages

Iub Report 2.0

The document is an undergraduate internship report by Farhan Sajid, submitted for a Bachelor of Science in Computer Science at Independent University, Bangladesh. It details the SparkMart project, which aims to enhance user experience in e-commerce by addressing common issues such as browsing difficulties and payment problems. The report includes acknowledgments, objectives, methodologies, and insights gained during the internship, emphasizing the importance of user-centric features and the application of academic knowledge in a practical setting.

Uploaded by

Maruf Hasan Rion
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)
19 views34 pages

Iub Report 2.0

The document is an undergraduate internship report by Farhan Sajid, submitted for a Bachelor of Science in Computer Science at Independent University, Bangladesh. It details the SparkMart project, which aims to enhance user experience in e-commerce by addressing common issues such as browsing difficulties and payment problems. The report includes acknowledgments, objectives, methodologies, and insights gained during the internship, emphasizing the importance of user-centric features and the application of academic knowledge in a practical setting.

Uploaded by

Maruf Hasan Rion
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/ 34

An Undergraduate Internship Project on SparkMart

By

Farhan Sajid

Student ID: 1931269

Spring, 2024

Supervisor:

Md.Asif Bin Khaled


Lecturer
Department of Computer Science & Engineering
Independent University, Bangladesh

May 3, 2024

Dissertation submitted in partial fulfillment for the degree of


Bachelor of Science in Computer Science

Department of Computer Science & Engineering

Independent University, Bangladesh


Attestation

This is to confirm that Farhan Sajid(1931269) has submitted the report as a part of
the requirements for the Degree of Computer Science and Engineering from Independent
University, Bangladesh (IUB). This report has been completed under the supervision of
Mr.Md.Asif Bin Khaled who was the supervisor. All the work is original and the content
provided has been cited properly in compliance with the academic regulations.

Signature Date

Farhan Sajid

Name

i
Acknowledgement

I am grateful to HireMeFast LLC as they have provided me the opportunity to com-


plete my internship. I want to thank my supervisor Md.Asif Bin Khaled sir for his
guidance during this internship period.
I also want to express my gratitude towards my team lead at the company who
has guided me regarding everything and helped me to understand the workflow of the
industry. The welcoming nature of the team has helped me to seek assistance from them
without any hesitation whenever it was required.
Lastly, I want to thank the Department of CSE for providing us with intensive training
before the internship to make sure that we can thrive in the industry.

ii
Letter of Transmittal

Md.Asif Bin Khaled


Lecturer
Department of Computer Science and Engineering
School of Engineering and Computer Science
Independent University, Bangladesh

Subject:Internship Report Submission


Dear Sir,
With due respect, I would like to state that I am submitting my internship report.
I have worked sincerely to make sure that the content of this report is informative and
easily understandable. I have written this report using the knowledge I have gained in
my academic curriculum as well as industry practices. It would be helpful if you could
kindly provide your valuable insights.
Sincerely,
Farhan Sajid
ID: 1931269
Department of Computer Science and Engineering
Independent University, Bangladesh

iii
Evaluation Committee

.....................................................................
Signature
.....................................................................
Name
.....................................................................
Supervisor

.....................................................................
Signature
.....................................................................
Name
.....................................................................
Internal Examiner

.....................................................................
Signature
.....................................................................
Name
.....................................................................
External Examiner

.....................................................................
Signature
.....................................................................
Name
.....................................................................
Convener

iv
Abstract

SparkMart aims to solve issues that are commonly faced by the users. Starting from
browsing experience to scalability of the website, we acknowledged the needs of the users
and made sure that the website is appealing. Customers can filter products, maintain a
wishlist, add products to cart, etc. The admin can upload products based on brand and
category and also introduce vouchers. Customers can have multiple shipping addresses
and also their own choice of delivery method (pickup or shipping). Customers can also
have personalized recommendations.

As per the users of e-commerce websites, they are not fully satisfied with the brows-
ing experience. Sometimes there are issues regarding payment, or even when browning
the list of products, they often do not find the complete information based on which
they can make a purchase. Since the number of e-commerce platforms is increasing, it
is important to acknowledge the needs of the users. It is important to add features that
would enhance their experience. These features might include having multiple views of
the product, filtering products, rating the vendors, etc.

I would also like to add that the internship experience has helped me in gaining
valuable knowledge which I believe would help me tremendously in my professional career
from now on. I have also gained soft skills which would assist me in future.

v
Contents

Attestation i

Acknowledgement ii

Letter of Transmittal iii

Evaluation Committee iv

Abstract v

1 Introduction 1
1.1 Overview/Background of the Work . . . . . . . . . . . . . . . . . . . . . 1
1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Scopes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 Literature Review 3
2.1 Relationship with Undergraduate Studies . . . . . . . . . . . . . . . . . . 3
2.2 Related works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 Project Management & Financing 5


3.1 Work Breakdown Structure . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Process/Activity wise Time Distribution . . . . . . . . . . . . . . . . . . 5
3.3 Gantt Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4 Process/Activity wise Resource Allocation . . . . . . . . . . . . . . . . . 6
3.5 Estimated Costing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 Methodology 8

5 Body of the Project 9


5.1 Work Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.2 System Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2.1 Six Element Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2.2 Feasibility Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 10

vi
CONTENTS CONTENTS

5.2.3 Problem Solution Analysis . . . . . . . . . . . . . . . . . . . . . . 10


5.3 System Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3.1 Rich Picture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3.2 UML Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3.3 Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . 15
5.3.4 Non-Functional Requirements . . . . . . . . . . . . . . . . . . . . 16
5.4 Product Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.4.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

6 Results & Analysis 17

7 Project as Engineering Problem Analysis 18


7.1 Sustainability of the Project/Work . . . . . . . . . . . . . . . . . . . . . 18
7.2 Social and Environmental Effects and Analysis . . . . . . . . . . . . . . . 18
7.3 Addressing Ethics and Ethical Issues . . . . . . . . . . . . . . . . . . . . 20

8 Lesson Learned 21
8.1 Problems Faced During this Period . . . . . . . . . . . . . . . . . . . . . 21
8.2 Solution of those Problems . . . . . . . . . . . . . . . . . . . . . . . . . . 22

9 Future Work & Conclusion 23


9.1 Future Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
9.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Bibliography 24

Page vii of 24
List of Figures

3.1 WBS of Sparkmart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5


3.2 Time Allocation of Sparkmart . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3 Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

5.1 6 Element Analysis of Sparkmart . . . . . . . . . . . . . . . . . . . . . . 10


5.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3 UML 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.4 Signup Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.5 Reset Password Process . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.6 Browse Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

viii
List of Tables

3.1 Resource allocation per task . . . . . . . . . . . . . . . . . . . . . . . . . 7


3.2 Estimated Cost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

ix
Chapter 1

Introduction

1.1 Overview/Background of the Work


As per users, they are not fully satisfied with the browsing experience. Sometimes
there are issues regarding payment, or even when browning the list of products, they often
do not find the complete information based on which they can make a purchase. Since
the number of e-commerce platforms is increasing, it is important to acknowledge the
needs of the users. It is important to add features that would enhance their experience.
These features might include having multiple views of the product, filtering products,
rating the vendors, etc.

1.2 Objectives
The objective is to build a project with a code-base that is easily customizable. Mi-
croservices architecture has been used so that features can be added or removed as per
the requirements of the client.

• Easy to navigate UI.

• Customizable UI.

• Customizable Requirements.

• Reuse modules of code as needed.

• Browsing the latest products first.

1.3 Scopes
The project is easily customizable, so more features like AI can also be implemented
as per the client’s requirements.

1
1.3. SCOPES CHAPTER 1. INTRODUCTION

• Reset Password through email

– Secure as users reset their password through email.

• Viewing latest products:

– Users can easily keep up to the trend.

• Sign up:

– Strong passwords required so more secure.

• Filter Products by brand/category:

– Users can choose the brand or category of products they want to view.

• Product Details:

– Users can view the details of a product.

• Uploading Products/Brands/Categories:

– Admin uploads the products, brands, and categories.

Page 2 of 24
Chapter 2

Literature Review

2.1 Relationship with Undergraduate Studies


The theoretical knowledge I acquired from undergraduate studies has helped me in
carrying out my work in the industry. While gaining problem solving skills with the help of
programming courses to learn how a website works including the frontend and backend,
I could carry out the tasks that were assigned to me. Moreover, since we had group
projects in most of the courses, it helped me to acquire teamwork and communication
which actually helped me in the workplace since I had to work in teams.
Additionally, the project based courses also made me interested in this field. The
courses that are relevant to the project I worked on during my internship were:

• CSE309(Web Applications and Internet): In this course, we were taught


the frontend of a website and also the backend. For frontend, HTML, CSS, and
JavaScript were taught and for backend, we were taught PHP.

• CSE303 (Database Management):DBMS helped to understand how the fron-


tend and backend of a website is connected and also how the database is managed
for a website.

• CSE307 (System Analysis and Design): The main objective is to teach us how
a system works and how to document a system for each of the software development
processes. I could relate to the terms and the documentation used in the industry
since those were taught in the course. Moreover, it helped me to understand the
process of software development and how each phase is carried out.

• CSE203 (Data Structure):By learning how to store data in different formats to


optimize the code, this course has helped me to code more efficiently.

3
2.2. RELATED WORKS CHAPTER 2. LITERATURE REVIEW

2.2 Related works


Some of the works based on e-commerce website using Django are discussed below:

• E-commerce Website using Django Framework: In this research, a website


was built using Django as the backend and HTML, JavaScript for front-end. Each
of the work has been described with the purpose while considering the needs of the
customers.[1].

• E-commerce Website: In this paper, the trends of an e-commerce website were


analyzed while also analyzing how using frameworks such as Django were impacting
on the projects.[2]

• Analysis and Development of E-Commerce Web Application: Web Appli-


cation: Using client-server architecture, this paper has worked on an e-commerce
project and analyzed the website. They have also used API to make the user
experience better. [3]

Page 4 of 24
Chapter 3

Project Management & Financing

3.1 Work Breakdown Structure


It is a helpful diagram which is used to divide a large project into smaller modules.
Additionally, it also helps in understanding the time and budget of the project. :

Figure 3.1: WBS of Sparkmart

3.2 Process/Activity wise Time Distribution


The time allocated to complete each phase or process of the project refers to the
process wise time distribution. In SparkMart, the processes are - requirement analysis,
product development, testing and deployment.

5
3.3. GANTT CHART CHAPTER 3. PROJECT MANAGEMENT & FINANCING

Figure 3.2: Time Allocation of Sparkmart

3.3 Gantt Chart


It is a vital tool for project management as it has the full idea about the timing of
each of the tasks of a project. The time limit is maintained and in each sprint, what has
been achieved is discussed.

Figure 3.3: Chart

3.4 Process/Activity wise Resource Allocation


It keeps track of the resources allotted to each project development activity as well
as the time required to complete it. The figure below shows the amount of time required
for each task during the course of a 23-day sprint, as well as the percentage of total work
that each task requires in 23 days. It has been noted that deployment uses the least
amount of resources while development uses the most percentage

Page 6 of 24
3.5. ESTIMATED COSTING
CHAPTER 3. PROJECT MANAGEMENT & FINANCING

Task Time/days Work(%)


Requirements 5 21.7
Code development 13 56.5
Testing 2 8.70
Deployment 2 8.70
Total 23 100
Table 3.1: Resource allocation per task

3.5 Estimated Costing


Estimated costing is thoroughly reviewed. However, it should be noted that the actual
cost is only accessible by the higher authorities of the company due to the policy.

Resources Approx. Cost(estimated)


Internet 15000
UI/UX Designer 35000
Front-end Development 50000
Back-end Development 65000
Equipments 120000
Others 10000
Total 295000
Table 3.2: Estimated Cost

Page 7 of 24
Chapter 4

Methodology

Methodology refers to the process of carrying out a project based on its timeline in an
organized way. To achieve the goals of a project, there are certain policies to be followed.
Each organization uses different methodologies such as SDLC, Agile, Waterfall, etc to
achieve their goals.
Agile methodology is followed by HireMeFastLLC. Each project is broken down into
modules and the feedback from stakeholders is prioritized. Meetings are carried out twice
a week so that teams can brainstorm to meet the needs of the project. Each sprint has
an output which is met in the next sprint meeting. Initially, the first sprint is about
understanding the requirements, documenting them and finding out which technologies
to use. In the second sprint, teams are assigned for each module based on their expertise.
From this point onwards, the sprints consist of finalizing if each member has completed
their tasks and if there were problems then those are discussed and solved. Once the
project is completed, the quality assurance team and the software testing team work
together to find any bugs or issues on the code and if those are found, then in the next
sprint, the problems are discussed so that the development team can solve them. The
team lead also goes through the code to ensure that it is efficient and before deploying
a project. The target is to make sure that the system does not have any bugs and is in
alignment with the requirements.

8
Chapter 5

Body of the Project

5.1 Work Description


Working as a web developer, I participated in multiple projects related to full stack
development. The unique feature of SparkMart is that there is scope for the customer
to customize the project as per their requirements as the project is flexible. At first,
I worked on the general module team on some features and also on some features of
the customer module team. The features I did were - resetting the password of users
via email, organizing the product page, user account creation, user login, user account
management, and filtering products. I worked on both the frontend and backend for
these features. I also made the base template of the whole project.

9
5.2. SYSTEM ANALYSIS CHAPTER 5. BODY OF THE PROJECT

5.2 System Analysis


5.2.1 Six Element Analysis

Figure 5.1: 6 Element Analysis of Sparkmart

5.2.2 Feasibility Analysis


• Technical feasibility:It needs to be analyzed whether the technology can support
the requirements of the project. The technical team also needs to be familiar with
the technology.The technology must comply with the security requirements and
must allow scalability.

• Economic Feasibility:Whether the project is feasible economically needs to be


analyzed by doing a cost-benefit analysis.

5.2.3 Problem Solution Analysis


Existing issues were identified at first to carry out problem solution analysis. Resetting
passwords needed to be done in a more secure way, hence, the idea of an email system
for resetting passwords was introduced. Whenever the user wants to reset the password
of their account, they need to input their email and they will get a password reset link
via email from where they reset. Since, having one shipping address is a problem, having
multiple email addresses was introduced.

Page 10 of 24
5.3. SYSTEM DESIGN CHAPTER 5. BODY OF THE PROJECT

5.3 System Design


5.3.1 Rich Picture

Figure 5.2: Overview

5.3.2 UML Diagrams


UML diagrams are tools to represent the requirements of the project. It bridges the
gap between the development team and the system analysts.

Page 11 of 24
5.3. SYSTEM DESIGN CHAPTER 5. BODY OF THE PROJECT

Use case

Figure 5.3: UML 1

Page 12 of 24
5.3. SYSTEM DESIGN CHAPTER 5. BODY OF THE PROJECT

Activity diagrams

Figure 5.4: Signup Process

Page 13 of 24
5.3. SYSTEM DESIGN CHAPTER 5. BODY OF THE PROJECT

Figure 5.5: Reset Password Process

Page 14 of 24
5.3. SYSTEM DESIGN CHAPTER 5. BODY OF THE PROJECT

Figure 5.6: Browse Products

5.3.3 Functional Requirements


• Users must signup.

• Users must login.

• Users must be able to reset their passwords.

• Users must receive reset password email if they want to reset password.

• Users can browse the products on the website.

• Users can filter the products as per category.

• Users can filter products as per brand of the product.

Page 15 of 24
5.4. PRODUCT FEATURES CHAPTER 5. BODY OF THE PROJECT

• Users can view the product in detail on a page.

• Users can add multiple billing addresses.

• Admin can add/remove products to the website.

• Admin can add/remove brands.

• Admin can add/remove categories.

5.3.4 Non-Functional Requirements


• Performance:Must be capable of handling numerous user requests at the same
time and the website must be available all the time.

• Security: User credentials and information must be secure. The transactions must
be secure as well.

• Availability: The downtime must be as less.

• Usability: Must be easily navigateable for the users to have a smooth browsing
experience.

5.4 Product Features


5.4.1 Architecture
The architecture used in the project is microservices. Each module is divided into
parts. It helps in achieving the flexibility. HTML, CSS and Js implemented the front
end of the website. Django is used to implement the backend and for the database
management system, SQLite is used.

Page 16 of 24
Chapter 6

Results & Analysis

At first, the software quality assurance team goes through the code and output to en-
sure that the project is aligned with the requirements with a smooth browsing experience.
The software testing team then takes over the project and searches for any bugs. The
technical team communicates regularly with these two teams to ensure that the output of
the project is met. I did unit testing on each part of the codes I wrote and took approval
of my team lead for each output. The results I got were positive for the parts I worked
on. My team lead also made suggestions when it was necessary.

17
Chapter 7

Project as Engineering Problem


Analysis

7.1 Sustainability of the Project/Work


• Security
Since the website includes sensitive information, it was important to ensure that
the data was secure and the transactions were safe.

• Feedback
Feedback for each of the requirements were taken into consideration and problems
were solved to ensure the quality.

• Documentation
Each phase of the project was documented so that anyone who joined the team
later could easily catch up and it also helped the current members to understand
the project.

• Usability
The browsing experience of the user was considered a priority. Hence, the first
release was internally used by the employees of the company and their feedback
was taken into consideration.

7.2 Social and Environmental Effects and Analysis


• Time
As transactions are online, it saves the time of customers. Also, since they do not
have to travel anymore, it saves time to travel.

18
7.2. SOCIAL AND
CHAPTER
ENVIRONMENTAL
7. PROJECT EFFECTS
AS ENGINEERING
AND ANALYSIS
PROBLEM ANALYSIS

• Accessibility
Users can easily access the website anywhere at any time if they are challenged
physically. Also users who live at the outskirts of the city can easily access the
website.

• Limiting Greenhouse Emissions


As customers do not have to travel to shop, the greenhouse emission is reduced.

Page 19 of 24
7.3. ADDRESSING
CHAPTER
ETHICS
7. AND
PROJECT
ETHICAL
AS ENGINEERING
ISSUES PROBLEM ANALYSIS

7.3 Addressing Ethics and Ethical Issues


• Security of Data
Since this is an e-commerce website, it is a priority to maintain the security of the
customer’s data and online transactions are securely completed.

• Pricing of Products
Products should be priced fairly so that customers are retained.

• User Interface
An easy to understand interface is implemented so that it is easy to navigate the
page.

Page 20 of 24
Chapter 8

Lesson Learned

8.1 Problems Faced During this Period


• Experience
As I worked in the industry, I had to face many issues regarding the workflow of a
project.

• Knowledge
Since I did not have much knowledge about the Django framework, I faced some
challenges in understanding how the framework works.

• Documentation
As each part of the progress had to be documented, it was a challenge to be aligned
with the format used in the industry.

21
8.2. SOLUTION OF THOSE PROBLEMS CHAPTER 8. LESSON LEARNED

8.2 Solution of those Problems


• I cconsulted my team lead and the team members who are experienced to under-
stand the flow of the project and documented their knowledge I gained from them
to help myself.

• I self-learned using Youtube and also consulted my team lead to understand how
Django works and did some small tasks at first. Later on, I showed the code to my
team lead and got his review on how to make it more efficient.

• I learned how to document the project from my team members by reviewing the
documentation of their old projects.

Page 22 of 24
Chapter 9

Future Work & Conclusion

9.1 Future Works


Since, the project works as a generic project and can be customized as per the re-
quirements of the customer, there is a lot of scope. AI can be used to implement a virtual
trial system for the customers. Moreover, customers can be offered discounts based on
their cart process. Customized product recommendations can also be introduced.

9.2 Conclusion
Working as an intern, I have gained valuable experience and soft skills from the
company which would help me in my future career. Connecting my theoretical knowledge
to industry practices was a challenge but now I have learned how to work on real-life
projects. I got the opportunity to work with experienced people in the industry which
also helped me to maintain a professional network. The environment made me gain some
valuable soft skills.
In conclusion, this internship was a great opportunity to learn how the industry works
and gain a professional network which would help me in my career. I am honestly grateful
for having the opportunity.

23
Bibliography

[1] Ashok Chakravarthi Suryadevara , ”E-COMMERCE WEBSITE USING DJANGO


FRAMEWORK,” pp. 1-18, 2022.

[2] Manish Kumhar , Siddhesh Jondhale , Neel Doshi , Harsh Shukla , Nilam Parmar,
”Ecommerce Website ,” in International Journal for Research in Applied Science
Engineering Technology, ISSN: 2321-9653; IC Value: 45.98,Volume 10 Issue V May
2022, India.

[3] S. Tyagi, S. Yadav, U. Singhal and H. Chaudhary, ”Analysis and Development of E-


Commerce Web Application,” 2022 Fifth International Conference on Computational
Intelligence and Communication Technologies (CCICT), Sonepat, India, 2022, pp.
65-72.

24

You might also like