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

Final Report1 -

The internship report submitted by Barasiya Krishna Shaileshbhai details his experience in iOS app development at Lahagora Pvt Ltd, focusing on building scalable eCommerce applications using SwiftUI and Firebase. The report includes acknowledgments, an abstract summarizing the work done, and a structured overview of the company's operations and the internship process. It highlights the development of user-friendly applications with features like product listings, cart management, and secure user authentication.

Uploaded by

manavdesai7990
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)
18 views

Final Report1 -

The internship report submitted by Barasiya Krishna Shaileshbhai details his experience in iOS app development at Lahagora Pvt Ltd, focusing on building scalable eCommerce applications using SwiftUI and Firebase. The report includes acknowledgments, an abstract summarizing the work done, and a structured overview of the company's operations and the internship process. It highlights the development of user-friendly applications with features like product listings, cart management, and secure user authentication.

Uploaded by

manavdesai7990
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/ 53

INTERNSHIP ON IOS DEVELOPMENT

INTERNSHIP REPORT

Submitted by

BARASIYA KRISHNA SHAILESHBHAI

2128020601005

In partial fulfillment for the award of the degree of

BACHELOR OF TECHNOLOGY

in

Computer Engineering

Bhagwan Mahavir Collage of Engineering & Technology, Surat

Bhagwan Mahavir University, Surat

[April, 2024-25]
Bhagwan Mahavir Collage of Engineering & Technology
BMEF Campus, VIP road Bharthana Vesu, Surat,
Gujarat 395007 India

CERTIFICATE

This is to certify that the internship report submitted with the internship

entitled Internship on IOS App Development has been carried out by Mr.

Krishna Shaileshbhai Barasiya under my guidance in partial fulfilment for the

degree of Bachelor of Engineering in Computer Engineering, 8th Semester of

Bhagwan Mahavir University, Surat during the academic year 2024 – 25.

Prof. Rauki Yadav

External Guide Head of the Department

Prof. Vandana Patel

Internal Guide External Examiner


Bhagwan Mahavir Collage of Engineering & Technology
BMEF Campus, VIP road Bharthana Vesu, Surat,
Gujarat 395007 India

DECLARATION

I declare that the Internship report submitted along with the Internship entitled

Internship on IOS Development submitted in partial fulfillment for the degree

of Bachelor of Engineering in Computer Engineering to Bhagwan Mahavir

University, Surat, is a bonafide record of original internship work carried out

by me at Bhagwan Mahavir Collage of Engineering & Technology. Lahagora

pvt ltd. under the supervision of Prof. Vandana Patel and that no part of this

report has been directly copied from any students report or taken from any

other source, without providing due reference.

Name of the Student Signature of Student

Barasiya Krishna Shailehbhai


ACKNOWLEDGMENT

I express my deep sense of gratitude to [CompanyMentor Name] for their kind

cooperation and valuable guidance throughout the process of my work.

A special thanks to [Company Mentore name] for their guidance and encouragement

in carrying out this internship. I would also like to express my gratitude to the officials and

another staff member of Lahagora pvt ltd. who rendered their help during the period of

my internship.

The thanks to Prof. Vandana Patel and Head of Department Prof. Rauki Yadav, with

other faculty members of the Computer Engineering department, Bhagwan Mahavir

College of Engineering & Technology, who always helped me by giving fruitful

suggestions, support, and encouragement which not only helped me in preparing this work

but also in having a better insight in this field.

Lastly, I also extend my thanks and appreciation to my family members, my friends, and

my classmates who have played a very important role in helping and strengthening me.

Barasiya Krishna Shaileshbhai

2128020601005

i
ABSTRACT

During my internship as an iOS developer, I specialized in building modern, scalable, and


user-friendly mobile applications using SwiftUI and Firebase Cloud services. My primary
focus was on developing eCommerce applications, gaining hands-on experience in both
frontend UI/UX implementation and backend integration.Developed fully functional
eCommerce iOS applications featuring product listings, cart management, order tracking,
and secure user authentication.Utilized SwiftUI for creating dynamic, responsive, and
interactive user interfaces following Apple’s latest design guidelines.Integrated Firebase
services including Cloud Firestore, Firebase Authentication, and Firebase Storage for
seamless backend operations such as real-time data synchronization, user login, and media
storage.Implemented advanced features like push notifications, payment gateway
integration, and search functionality to enhance user experience and app functionality
Focused on writing clean, modular, and reusable Swift code, following MVVM architecture
for better maintainability and scalability.

ii
List of Figures

Fig 1.1 Organization Chart ................................................................................................... 1


Fig 2.1 Schematic layout of manufacturing ......................................................................... 3
Fig 3.1 Internship Scheduling Chart .................................................................................. 16
Fig 5.1 Use Case................................................................................................................. 22
Fig 5.2 Sequence Diagram of User ..................................................................................... 23
Fig 5.3 Activity Diagram.................................................................................................... 24
Fig 5.4 Class Diagram ........................................................................................................ 25
Fig 5.5 DFD........................................................................................................................ 26
Fig 6.1 Home Page ............................................................................................................. 31
Fig 6.2 Login Page ............................................................................................................. 32
Fig 6.3 Signup Page ........................................................................................................... 32
Fig 6.4 Forgot Password .................................................................................................... 33
Fig 6.5 HomePage Data Loading ....................................................................................... 33
Fig 6.6 New Arrive Page .................................................................................................... 34
Fig 6.7 Product Page .......................................................................................................... 35
Fig 6.8 Add to Cart Page .................................................................................................... 36
Fig 6.9 Favorites Page ........................................................................................................ 37
Fig 6.10 Profile Section ..................................................................................................... 37
Fig 6.11 Order Show In Profile Page Fig........................................................................... 38
Fig 6.12 Continue Order Confirm Page ............................................................................. 38
Fig 6.13 Add Address Page ............................................................................................... 39
Fig 6.14 Address Detail pagee ........................................................................................... 39
Fig 6.15 Payment Process Page ......................................................................................... 40
Fig 6.16 Empty Cart Page .................................................................................................. 40
Fig 7.1 Work Desk ............................................................................................................. 43
Fig 7.2 Working ................................................................................................................. 44
Fig 7.3 Project Discussion .................................................................................................. 44
Fig 7.4 Working Area......................................................................................................... 45

iii
List of Tables

Table 3.1 1st Week Work Plan .............................................................................................. 8


Table 3.2 2nd Week Work Plan............................................................................................. 8
Table 3.3 3rd Week Work Plan ............................................................................................. 9
Table 3.4 4th Week Work Plan ............................................................................................. 9
Table 3.5 5th Week Work Plan ........................................................................................... 10
Table 3.6 6th Week Work Plan ........................................................................................... 10
Table 3.7 7th Week Work Plan ........................................................................................... 11
Table 3.8 8th Week Work Plan ........................................................................................... 11
Table 3.9 9th Week Work Plan ........................................................................................... 12
Table 3.10 10th Week Work Plan ....................................................................................... 12
Table 3.11 11th Week Work Plan ....................................................................................... 13
Table 3.12 12th Week Work Plan ....................................................................................... 13
Table 3.13 13th Week Work Plan ....................................................................................... 14
Table 3.13 14th Week Work Plan ....................................................................................... 14
Table 3.13 15th Week Work Plan ....................................................................................... 15
Table 3.13 16th Week Work Plan ....................................................................................... 15
Table 4.1 Hardware Requirement ...................................................................................... 19
Table 4.2 Software Requirement ....................................................................................... 19
Table 7.1 Dates of Continuous Evaluation......................................................................... 45

iv
Abbreviations

API Application Programming Interface


UI User Interface
OS Operating System
IDE Integrated Development Environment
OOP Object Oriented Programming
JSON JavaScript Object Notation
SwiftUI Swift User Interface
FireBase FireBase for data cloud
Stripe API Stripe For Payment
HTTP Hyper Text Transfer Protocol
MFA Multi Factor Authentication
URL Uniform Resource Locator
R&D Research and Development
GB Gigabyte
RAM Random Access Memory

v
Table of Contents

ACKNOWLEDGEMENT..................................................................................................... I
ABSTRACT ......................................................................................................................... II
LIST OF FIGURES............................................................................................................. III
LIST OF TABLES .............................................................................................................. IV
ABBREVIATION ................................................................................................................ V
LIST OF CONTENTS ........................................................................................................VI
CHAPTER 1 OVERVIEW OF THE COMPANY .......................................................... 1
1.1 HISTORY ................................................................................................................... 1
1.2 DIFFERENT PRODUCTS ......................................................................................... 1
1.3 ORGANIZATION CHART ....................................................................................... 1
CHAPTER 2 OVERVIEW OF DIFFERENT PLANT .................................................. 2
2.1 WORK BEING CARRIED OUT IN EACH DEPARTMENT .................................. 2
2.2 SPECIFICATION OF EQUIPMENT USED IN DIFFERENT DEPARTMENT ...... 3
2.3 SCHEMATIC LAYOUT TO SHOW SEQUENCE OF OPERATION FOR
MANUFACTURING END PRODUCT .......................................................................... 3
2.4 DESCRIPTION OF EACH STAGE OF PRODUCTION .......................................... 4
CHAPTER 3 INTRODUCTION TO INTERNSHIP AND INTERNSHIP
MANAGEMENT ................................................................................................................ 5
3.1 INTERNSHIP SUMMARY ....................................................................................... 5
3.2 PURPOSE................................................................................................................... 5
3.3 OBJECTIVE ............................................................................................................... 5
3.4 SCOPE........................................................................................................................ 6
3.5 TECHNOLOGY AND LITERATURE REVIEW ..................................................... 6
3.6 INTERNSHIP PLANNING ....................................................................................... 7
3.6.1 Internship Efforts and Time ................................................................................. 7
3.6.2 Role and Responsibilities ..................................................................................... 7
3.6.3 Grope Dependencies ............................................................................................ 7
3.6.4 Plan of Work ........................................................................................................ 8
3.7 INTERNSHIP SCHEDULING ................................................................................ 16
CHAPTER 4 SYSTEM ANALYSIS ............................................................................... 17
4.1 STUDY OF CURRENT SYSTEM .......................................................................... 17
4.2 PROBLEM AND WEAKNESS OF CURRENT SYSTEM .................................... 17

4.3 REQUIREMENTS OF NEW SYSTEM .................................................................. 17

4.4 SYSTEM FEASIBILITY ......................................................................................... 18


vi
Table of Contents

4.4.1 Does the system contribute to the overall objectives of the organization? ........ 18
4.4.2 Can the system be implemented using the current technology and within the
given cost and schedule constraints? .......................................................................... 18
4.4.3 Can the system be integrated with other systems which are already in place? 18
4.5 ACTIVITY IN NEW SYSTEM ............................................................................... 18
4.6 FEATURE OF NEW SYSTEM ............................................................................... 18
4.7 MAIN MODULE OF NEW SYSTEM..................................................................... 18
4.8 SELECTION OF HARDWARE / SOFTWARE AND JUSTIFICATION .............. 19
CHAPTER 5 SYSTEM DESIGN ................................................................................... 20
5.1 SYSTEM DESIGN AND METHODOLOGY ......................................................... 20
5.2 UML DIAGRAMS ................................................................................................... 22
5.2.1 Use Case Diagrams ............................................................................................ 22
5.2.2 Sequence Diagrams............................................................................................ 23
5.2.3 Activity Diagrams .............................................................................................. 24
5.2.4 Class Diagrams .................................................................................................. 25
5.2.5 Data Flow Diagrams .......................................................................................... 26
CHAPTER 6 IMPLEMENTATION .............................................................................. 27
6.1 IMPLEMENTATION PLATFORM / ENVIRONMENT ........................................ 27
6.2 TECHNOLOGY ....................................................................................................... 27
6.3 CODE IMPLEMENTATION .................................................................................. 28
6.4 OUTCOMES ............................................................................................................ 31
6.5 RESULT ANALYSIS .............................................................................................. 41
CHAPTER 7 CONCLUSION AND DISCUSSION ...................................................... 42
7.1 OVERALL ANALYSIS OF INTERNSHIP............................................................. 42
7.2 PHOTOGRAPH AND DATE OF SURPRISE VISIT BY INSTITUTE MENTOR
....................................................................................................................................... 43
7.3 DATES OF CONTINUOUS EVALUATION .......................................................... 45
7.4 PROBLEM ENCOUNTERED AND POSSIBLE SOLUTION ............................... 46
7.5 SUMMARY OF INTERNSHIP ............................................................................... 47

7.6 LIMITATION AND FUTURE ENHANCEMENT ................................................. 47


REFERENCES ................................................................................................................. 48

vii
1010206801 Overview of the Company

CHAPTER 1 OVERVIEW OF THE COMPANY

1.1 HISTORY

• Company Name: Lahagora


• Type: IT Services
• Expertise: Mobile Application, Website and OTT Solution
• Website: https://lahagora.com/
• Address: 409, Exiito Commercial Hub Jahangirpura, Surat - 395005.
• Lahagora pvt ltd. is a privately held company founded in 2021. The company was
founded by Mr. Harikrushn Dhanani The company started with App development
as its main product. Currently, the company has many different products in the
market including Web Applications, Mobile Applications and OTT Solutions.

1.2 DIFFERENT PRODUCTS

Products of Company:
• Multiple OTT Streaming & Solutions
• Multiple Web Application
• Custom & Public App Development

1.3 ORGANIZATION CHART

Fig 1.1 Organization Chart

Bhagwan Mahavir University 1 BMCET, Surat


1010206801 Overview of Different Plant

CHAPTER 2 OVERVIEW OF DIFFERENT PLANT


2.1 WORK BEING CARRIED OUT IN EACH DEPARTMENT

• Project Manager: The project manager manages all the projects of all departments.
The project manager defines the scope of the project, manages resources and cost
of the project, documents the process of the project, manages the risk, and performs
the quality assurance.

• Web Department: In Lahagora pvt ltd. web department works on Python, Django,
PHP, Laravel, Node, MERN, etc. They maintain the different products of a
company’s clients. The web department also maintains the Databases on the server
and works on the Back-end and Front-end of new ongoing projects.

• App Department: The Android department works on the android application


development using Java, Kotlin and Flutter. And The IOS Department on the ios
application development using SwiftUI, Flutter, ReactNative. This department also
maintains the application of the company’s clients and performs the testing of the
new apps on different devices with different API levels.

• OTT Department: The OTT department used to work on Streaming the different
user interfaces of web applications. Also Develop OTT application.

• Quality Assurance Department: The Quality Assurance department ensures that


the software passes all checks before its release to the public. They oversee every
phase of design, development, testing and delivery to verify if the product meets the
quality standards and requirements, and they work with a team and report to a
manager.

Bhagwan Mahavir University 2 BMCET, Surat


1010206801 Overview of Different Plant

2.2 SPECIFICATION OF EQUIPMENT USED IN DIFFERENT

DEPARTMENT

• Web and Application Department:


o Personal computer, Laptop, and Mobile
o Servers
o IDE

2.3 SCHEMATIC LAYOUT TO SHOW SEQUENCE OF OPERATION

FOR MANUFACTURING END PRODUCT

Fig 2.1 Schematic layout of manufacturing

Bhagwan Mahavir University 3 BMCET, Surat


1010206801 Overview of Different Plant

2.4 DESCRIPTION OF EACH STAGE OF PRODUCTION

1. Requirement Analysis: Requirement analysis is the first stage of production in


which all the information relevant to the product is collected. The information
domain, function, and behavioral requirements of the system are understood.

2. Design: Design focuses on Data structure, Software architecture, Interface


representation, and Algorithm details. The requirements are represented in an easily
understandable form and using which implementation can be done effectively and
efficiently.

3. Development/Coding: In development stage design is translated into machine-


readable form. If the design is done with sufficient details, then coding can be done
effectivity.

4. Testing: Testing begins when development is done. During the testing the logical
internals of the software is tested and ensures execution of all the paths and
functional behaviors.

5. Deployment: In this phase, the product is deployed in the user’s work environment.

6. Review: After deployment of the product, the last step is taking a review from the
user and if the user suggests any changes or wants to add a new module the product
again went into another increment.

Bhagwan Mahavir University 4 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

CHAPTER 3 INTRODUCTION TO INTERNSHIP AND

INTERNSHIP MANAGEMENT

3.1 INTERNSHIP SUMMARY

I completed my internship in the iOS Development Department at Lahagora Pvt.


Ltd., where I worked extensively with SwiftUI to develop modern, responsive iOS
applications. During this internship, I had the opportunity to work on a dedicated project
that allowed me to apply my technical skills in a real-world environment. The team of
CrawlApps Technologies has helped me a lot in enhancing my skills. They provide me
with pre-made templates and hands-on practical to learn. I was also a partof a testing
team as I have also performed unit testing and functional testing of the web application.

Gained practical experience in SwiftUI for building clean, interactive, and user-
friendly interfaces teamwork. Integrated Firebase Authentication, Cloud Firestore,
and Firebase Storage for secure and scalable backend solutions. Followed MVVM
architecture to ensure the application was well-structured, modular, and easy to
maintain. Learned to collaborate within a professional software development team,
following agile practices and code review processes

3.2 PURPOSE

An internship provides unique opportunities for learning outside of an academic


setting. An internship can give us an authentic experience that helps us in identifying
career goals, and it also gives us workplace experience before actually entering the
workforce.

3.3 OBJECTIVE

• The main objective of internship is to gain experience in a particular field. However,


people can benefit from internship in order to receive industrial experience and
develop their skill.

Bhagwan Mahavir University 5 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

• An objective for this position should emphasize the skill you already possess in the
area and our interest in learning more. The objective of a app intern is to utilizehis
skills and experience in a way that he can secure a challenging and rewarding
position as a web developer in the industry.

3.4 SCOPE

Application development is a thriving field, with an increasing demand for skilled


professionals. Several factors contribute to the expanding scope of App development
careers. Firstly, the open-source nature of App technologies allows for widespread
innovation and collaboration. Additionally, App development offers a high return on
investment, making it an attractive career path for those with limited resources.

3.5 TECHNOLOGY AND LITERATURE REVIEW

• Technology
SwiftUI is Apple’s modern framework for developing user interfaces across all its
platforms, including iOS, macOS, watchOS, and tvOS. Unlike the older UIKit
framework, SwiftUI uses a declarative syntax where developers describe what the user
interface should look like and how it should behave, rather than managing the flow of
views and state manually. SwiftUI provides a faster, simpler, and more intuitive way to
build UI components using the Swift programming language. It introduces concepts
like Views, State management, and Modifiers. Views are the basic building blocks of
an interface, while State management tools like @State, @ObservedObject, and
@EnvironmentObject help track and update data within and across views. SwiftUI also

supports modern architectural patterns like MVVM (Model-View-ViewModel), which


improves code organization and maintainability by separating the data, business logic,
and UI layers
Firebase is a comprehensive backend-as-a-service platform provided by Google,
commonly used for mobile and web applications. In iOS development, Firebase offers
a range of services including Firebase Authentication, Cloud Firestore, Firebase
Storage, and Firebase Cloud Messaging. Firebase Authentication allows developers to
implement secure user login and registration systems

Bhagwan Mahavir University 6 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

3.6 INTERNSHIP PLANNING

3.6.1 Internship Effort and Time

Total duration of internship was three Sixteen Weeks from 23th December 2024 to
12th April 2025. The internship was five days a week and the daily timing of the
internship was nine hours a day. In the day of inter, I have to start with taking the task
from the Team Leader and then I have to start implementing it and if necessary, I have
to perform functional and unit testing of the application, and at the end of the day I have
to submit all the tasks completed by me to Team Leader along with daily task report.

3.6.2 Role and Responsibilities

As a App development intern, my responsibilities are working on a given task after


completion of the task taking a review from the Team leader and if there are any changes
then modifying the application.

Other than that, there are other responsibilities of writing good and low complexity
code, performing functional testing and stress testing on the different devices with
different rate limits, and also submitting daily work reports.

3.6.3 Group Dependencies

Dependencies in project management deal with managing and scheduling project


tasks and executing a task in a proper sequence as they depend on another task. If task
B requires the completion of task A, then we can say that task B depends on task A.

In Lahagora pvt ltd. different departments work on the different parts of a project.
As project development starts from the Project Management group as they perform the
Analysis of the project and generates the Cost estimation and Time Scheduling of the
Project, after that it goes to the Graphic design department to develop UI, and then the
Development department takes the project and starts the development, and at the end,
the project is tested by Testing team. So here all the groups depend on each other
at some level while developing the project.

Bhagwan Mahavir University 7 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

3.6.4 Plan of Work

Table 3.1 1st Week Work Plan

Date Day Topic

Training [First Day]


23/12/2024 Monday

24/12/2024 Tuesday Basics Of SwiftUI.

1st
WEEK 25/12/2024 Wednesday Holiday

26/12/2024 Thursday The Knowledge of Firebase.

27/12/2024 Friday Setup The XCode for Project.

Table 3.2 2nd Week Work Plan

Date Day Topic


Finalize app requirements & feature list.
30/12/2024 Monday

Analyze UI/UX wireframes (Figma/Sketch)


31/12/2024 Tuesday

2nd
Holidy
WEEK 01/01/2025 Wednesday

List product categories, cart flow, user profile


02/01/2025 Thursday requirements

Setup Xcode project using SwiftUI


03/01/2025 Friday

Bhagwan Mahavir University 8 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.3 3rd Week Work Plan

Date Day Topic


Integrate Firebase Cloud: Authentication
(Email/Google/Apple), Firestore Database, Firebase
06/01/2025 Monday
Storage (for images), Firebase Analytic

Implement MVVM architecture


07/01/2025 Tuesday

Create reusable SwiftUI components


3rd 08/01/2025 Wednesday
WEEK
Setup Firebase project rules & indexes
09/01/2025 Thursday

Test Firebase auth & Firestore connections


10/01/2025 Friday

Table 3.4 4th Week Work Plan

Date Day Topic

13/01/2025 Monday Design collections for Products, Orders, Users,


Categories

14/01/2025 Tuesday Secure the database with proper read/write


permissions
4th
WEEK 15/01/2025 Wednesday Create folders for Views, ViewModels,
Models, Services

16/01/2025 Thursday Cards, buttons, text fields, alerts using SwiftUI

Populate dummy products and display them in the


17/01/2025 Friday app

Bhagwan Mahavir University 9 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.5 5th Week Work Plan

Date Day Topic

Build SwiftUI forms for authentication


20/01/2025 Monday

Hook forms with Firebase Auth methods


21/01/2025 Tuesday

5th
Integrate Sign in with Apple, Google SDK
WEEK 22/01/2025 Wednesday
Save user details post-registration
Use LazyVGrid or List to display products
23/01/2025 Thursday

Fetch products and display in real-time


24/01/2025 Friday

Table 3.6 6th Week Work Plan

Date Day Topic

Use Firestore queries with filters


27/01/2024 Monday
Use Combine to debounce search
28/01/2024 Tuesday
queries
6th
WEEK 29/01/2024 Wednesday Use TabView with paging
style

Show selected products, quantities, total price


30/01/2024 Thursday

Update or remove cart items


31/01/2024 Friday

Bhagwan Mahavir University 10 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.7 7th Week Work Plan

Date Day Topic


03/02/2025 Real-time total with Combine or computed
Monday properties

CRUD operations on addresses (saved in Firestore)


04/02/2025 Tuesday
Integrate Stripe SDK or Apple Pay
7th
WEEK 05/02/2025 Wednesday Show order summary and place order button

Save order info (user, items, payment, status)


06/02/2025 Thursday

List past orders pulled from Firestore


07/02/2025 Friday

Table 3.8 8th Week Work Plan

Date Day Topic


10/02/2025 Show individual order status and details
Monday

Add previous order items to cart


11/02/2025 Tuesday

8th
Configure push notifications
WEEK 12/02/2025 Wednesday

13/02/2025 Thursday JSON, Building RESTful APIs, Filtering Models,


Working with Images

Triggered by Firestore updates


14/02/2025 Friday

Bhagwan Mahavir University 11 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.9 9th Week Work Plan

Date Day Topic


Send test notifications from Firebase Console
17/02/2024 Monday

View, edit, and update user info


18/02/2024 Tuesday

9th
WEEK Integrate with Firebase Auth
19/02/2024 Wednesday

Use Firebase Storage to store images


Thursday

20/02/2024

ImagePicker using UIKit+SwiftUI bridge


21/02/2024 Friday

Table 3.10 10th Week Work Plan

Date Day Topic

Update local cart model


24/02/2025 Monday Persist cart items per user

List of cart items, update quantity


25/02/2025 Tuesday
10th Combine item prices
WEEK
Swipe to delete
26/02/2025 Wednesday
Save addresses to Firestore

Show order summary


27/02/2025 Thursday
Save order details

Add/remove products to wishlist


28/02/2025 Friday
Save wishlist items under user

Bhagwan Mahavir University 12 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.11 11th Week Work Plan

Date Day Topic

Display saved products


03/03/2025 Monday
Toggle wishlist state
Move item directly to cart
11th 04/03/2025 Tuesday
Ensure smooth operation
WEEK
List past orders
05/03/2025 Wednesday

Items, total, address, status


06/03/2025 Thursday

Simulate status changes


07/03/2025 Friday
Status change triggers

Table 3.12 12th Week Work Plan

Date Day Topic

Manually via Firebase Console


10/03/2025 Monday
View, edit name, phone
11/03/2025 Tuesday

12th Firebase Auth password change


12/03/2025 Wednesday
WEEK
Firebase Storage integration
13/03/2025 Thursday

Fetch URLs from Firestore


14/03/2025 Friday

Bhagwan Mahavir University 13 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.13 13th Week Work Plan

Date Day Topic

Clear local session, go to login


17/03/2025 Monday

End-to-end validation
18/03/2025 Tuesday

13th Smooth transitions and error handling


19/03/2025 Wednesday
WEEK

Track events: add to cart, checkout


20/03/2025 Thursday

Set up custom events


21/03/2025 Friday

Table 3.14 14th Week Work Plan

Date Day Topic

Improve speed and reduce costs


24/03/2025 Monday Test UI responsiveness

Prompt for updates


25/03/2025 Tuesday
14th
WEEK 26/03/2025 Wednesday Icons, screenshots

List past orders


27/03/2025 Thursday

28/03/2025 Friday Improve app accessibility features

Bhagwan Mahavir University 14 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

Table 3.15 15th Week Work Plan

Date Day Topic

Test wishlist functionality


31/03/2025 Monday

01/04/2025 Tuesday Implement app analytics & crash reporting


Implement image caching for faster loading
15th Improve app loading time
02/04/2025 Wednesday
WEEK
03/04/2025 Thursday Strengthen Firestore security rules

04/04/2025 Friday Conduct unit tests for all core features

Table 3.16 16th Week Work Plan

Date Day Topic


07/04/2025 Monday End-to-end validation
Clear local session

Smooth transitions and error handling


08/04/2025 Tuesday
16th
Track events: add to cart, checkout
WEEK 09/04/2025 Wednesday

Set up custom events


10/04/2025 Thursday

11/04/2025 Friday Implementation of password encryption, Used


AJAX to decrypt password on the go.

12/04/2025 Saturday Submit The Project With Code

Bhagwan Mahavir University 15 BMCET, Surat


1010206801 Introduction to Internship and Internship Management

3.7 INTERNSHIP SCHEDULING

Fig 3.1 Internship Scheduling Chart

Bhagwan Mahavir University 16 BMCET, Surat


1010206801 System Analysis

CHAPTER 4 SYSTEM ANALYSIS

4.1 STUDY OF CURRENT SYSTEM


Google Password Manager is a convenient tool offered by Google to securely store and
manage passwords for various online accounts. Integrated into the Google ecosystem,
it allows users to generate strong passwords, autofill login credentials, and sync
passwords across devices seamlessly. With features like two-factor authentication and
encryption, it ensures robust security measures to safeguard user data. Additionally, it
provides insights into password strength and alerts users about compromised
passwords, enhancing overall account protection. Google Password Manager
simplifies the often-cumbersome task of password management, offering users peace
of mind and efficient control over their online security.

4.2 PROBLEM AND WEAKNESS OF CURRENT SYSTEM


While Google Password Manager offers convenience, it also poses certain problems
and weaknesses. One notable concern is its reliance on a single Google account,
making it vulnerable to potential breaches if that account is compromised.
Additionally, its integration solely within the Google ecosystem may limit
compatibility with non-Google services. Despite encryption measures, centralized
storage of passwords raises security risks, as any breach could expose multiple
accounts. Moreover, some users may prefer more advanced features and
customization options not provided by Google Password Manager. These limitations
underscore the importance of considering alternative password management solutions
for comprehensive security needs.

4.3 REQUIREMENTS OF NEW SYSTEM


A stand-alone password management system would give user a freedom to store and
retrieve passwords of different websites/accounts without getting involved in any
specific ecosystem. Users can retrieve the password at anytime and anywhere by just
logging into our system. All passwords are being stored after successful encryption.
Our system also provides 2FA for logging in into our system, providing more security.
Good UI & UX helps better user experience.

Bhagwan Mahavir University 17 BMCET, Surat


1010206801 System Analysis

4.4 SYSTEM FEASIBILITY

4.4.1 Does the system contribute to the overall objective of the organization?

Currently, the system is implemented as a stand-alone system, so it is not


contributing to the overall objective of the organization. But in future organization can
use this system as product.

4.4.2 Can the system be implemented using the current technology and within the

given cost and schedule constraints?

Yes, System can be implemented using the current technology and within the given
cost and schedule constraints.

4.4.3 Can the system be integrated with other system which are already in place?

The system cannot be integrated with other systems as a system is developed as


stand-alone application, without exposing any APIs for integration.

4.5 ACTIVITY IN NEW SYSTEM


The main activity of the Password management system is to store and retrieve
passwords of different accounts/websites. This web-app also has some other activities
like activating 2FA using several TOTP based apps. It notifies users on each
authentication activity, providing better security.

4.6 FEATURE OF NEW SYSTEM


The main feature of the Password management system is to store and retrieve
passwords of different accounts/websites. This web-app also has some other features
like logging all the activity logs such as login, password create, update, delete etc. It
also has a feature of notifying users on each authentication activity, providing better
security.

4.7 MAIN MODULE OF NEW SYSTEM


Since this is a application, it requires support for backend as well as frontend to work
perfectly. I have used relational database to store data such as user data, sites data,
password data etc. SwiftUI Main Module of the system defines the user dashboard
where they can create, save and retrieve passwords.

Bhagwan Mahavir University 18 BMCET, Surat


1010206801 System Analysis

4.8 SELECTION OF HARDWARE/SOFTWARE AND

JUSTIFICATION

Hardware Require

Component Minimum Recommended


macOS Ventura / Monterey Latest MacBook Pro
MAC Computer capable (M1/M2/M3 chip) or Mac
Mini with at least 16GB RAM

RAM 8GB 16GB or Higher

Stroage 50GB Free Disk Space 100GB+ Free Disk Space

Display 1280×800 Resolution Retina Display

Table 4.1 Hardware Requirement

Software Require

Category Software/Tool Version/Notes


Operating System macOS Ventura / Monterey or newer
IDE (Development) Xcode 15.0+
Programming Language Swift 5.9+
Package Management Swift Package Manager(SPM) Built-in with Xcode
CocoaPods Latest(if needed)
Design Tool Figma Latest
API Testing Postman Latest

Version Control Git + Github Latest

Table 4.2 Software Requirement

Bhagwan Mahavir University 19 BMCET, Surat


1010206801 System Design

CHAPTER 5 SYSTEM DESIGN

5.1 SYSTEM DESIGN AND METHODOLOGY

System is designed using an Agile Methodology. Agile methodology is iterative in


nature which gives developer a flexibility to make changes as require in the any part of
the software.

Agile Methodology

Agile software development refers to a group of software development


methodologies based on iterative development, where requirements and solutions
evolve through collaboration between self-organizing cross-functional teams. Agile
methods or Agile processes generally promote a disciplined project management
process that encourages frequent inspection and adaptation, a leadership philosophy that
encourages teamwork, self-organization and accountability, a set of engineering best
practices intended to allow for rapid delivery of high-quality software, and a business
approach that aligns development with customer needs and company goals.

Product Backlog

The Product Backlog is a prioritized list of all the features, enhancements, bug fixes, technical
tasks, and changes needed to develop and improve a product. It acts as the central source of
requirements for the development team, maintained and regularly updated by the Product Owner.
Items in the product backlog are written as user stories or tasks, ordered by importance and value
to the end user. As the project progresses, new items can be added, priorities can shift, and details
can be refined based on feedback and project needs. In Agile development, the product backlog
helps ensure that the most valuable and relevant work is always addressed first. DATABASE
DESIGN

As I have worked with both Relation and Non-Relational Database. Relational


databases store data in row and column format while non-relational database does not

Bhagwan Mahavir University 20 BMCET, Surat


1010206801 System Design

us the tabular format, instead it uses a storage model that is optimized for the specific
requirements of the type of data being stored.

Relational Database:

A relational database is a type of database. It uses a structure that allows us to


identify and access data in relation to another piece of data in the database. Often, data
in a relational database is organized into tables.

Tables can have hundreds, thousands, sometimes even millions of rows of data.
These rows are often called records. Tables can also have many columns of data.
Columns are labeled with a descriptive name and have a specific data type. Example of
relation databases are MySQL, PostgreSQL, SQLite and SQL Server.

Non-Relational Database:

Non-relational databases, also called NoSQL databases, the most popular being
MongoDB, Cassandra, Couchbase, HBase, Redis, and Neo4j. These databases are
usually grouped into four categories: Key-value stores, Graph stores, Column stores,
and Document stores. NoSQL databases are increasingly used in big data and real- time
web applications.

Bhagwan Mahavir University 21 BMCET, Surat


1010206801 System Design

5.2 UML DIAGRAMS

5.2.1 Use Case Diagram

Fig 5.1 Use Case

Bhagwan Mahavir University 22 BMCET, Surat


1010206801 System Design

5.2.2 Sequence Diagram

Fig 5.2 Sequence Diagram of User

Bhagwan Mahavir University 23 BMCET, Surat


1010206801 System Design

5.2.3 Activity Diagram

Fig 5.3 Activity Diagram

Bhagwan Mahavir University 24 BMCET, Surat


1010206801 System Design

5.2.4 Class Diagrams

Fig 5.4 Class Diagram

Bhagwan Mahavir University 25 BMCET, Surat


1010206801 System Design

5.2.5 Data Flow Diagrams

Fig 5.6 DFD

Bhagwan Mahavir University 26 BMCET, Surat


1010206801 Implementation

CHAPTER 6 IMPLEMENTATION

6.1 IMPLEMENTATION PLATFORM / ENVIRONMENT

The application was implemented for all the modern App Store using SwiftUI,
Multiple Library The platform used for implementation of application was XCode.

• Operating System: macOS


• Software/Integrated Development Environment: XCode
• Development Environment: SwiftUI

6.2 TECHNOLOGY

SwiftUI is Apple’s modern framework for developing user interfaces across all its platforms, including
iOS, macOS, watchOS, and tvOS. Unlike the older UIKit framework, SwiftUI uses a declarative syntax
where developers describe what the user interface should look like and how it should behave, rather than
managing the flow of views and state manually. SwiftUI provides a faster, simpler, and more intuitive
way to build UI components using the Swift programming language. It introduces concepts like Views,
State management, and Modifiers. Views are the basic building blocks of an interface, while State
management tools like @State, @ObservedObject, and @EnvironmentObject help track and update
data within and across views. SwiftUI also supports modern architectural patterns like MVVM (Model-
View-ViewModel), which improves code organization and maintainability by separating the data,
business logic, and UI layers.

Bhagwan Mahavir University 27 BMCET, Surat


1010206801 Implementation

6.3 CODE IMPLEMENTATION

Bhagwan Mahavir University 28 BMCET, Surat


1010206801 Implementation

6.4 OUTCOMES

All functions of the web application are working, there are multiple pages for
password management. Let’s discuss each function screen wise.

• Home Page

Fig 6.1 Home Page

Bhagwan Mahavir University 29 BMCET, Surat


1010206801 Implementation

• Login Page & Signup Page

Fig 6.2 Login Page Fig 6.3 Signup Page

Bhagwan Mahavir University 30 BMCET, Surat


1010206801 Implementation

• Forgot Password & HomePage Data Loading

Fig 6.4 Forgot Password Page Fig 6.5 Homepage Data Loading page

Bhagwan Mahavir University 31 BMCET, Surat


1010206801 Implementation

• New Arrive Page

Fig 6.6 New Arrive Page

• Product Page

Fig 6.7 Product Page

Bhagwan Mahavir University 32 BMCET, Surat


1010206801 Implementation

• Add to Cart Page

Fig 6.8 Add to Cart Page

• Favoites Page & Profile Section

Fig 6.9 Favorites Page Fig 6.10 Profile Section

Bhagwan Mahavir University 33 BMCET, Surat


1010206801 Implementation

• Order Show In Profile Page &Continue Order Confirm Page

Fig 6.11 Order Show In Profile Page Fig 6.12 Continue Order Confirm Page

• Add Address Page Or Address Deatail Page

Fig 6.13 Add Address Page Fig 6.14 Address Detail pagee

• Payment Process Page & Empty Cart Page

Fig 6.15 Payment Process Page Fig 6.16 Empty Cart Page

6.5 RESULT ANALYSIS


Bhagwan Mahavir University 34 BMCET, Surat
1010206801 Implementation

The application were tested at the during the implementation and at the end of the
implementation, the test results were positive and all the functionality of the application
were working perfectly, but in some case, we also find some miss behavioral of UI and
Flow of execution and that will be fixed in the future increments

Bhagwan Mahavir University 35 BMCET, Surat


1010206801 Conclusion and Discussion

CHAPTER 7 CONCLUSION AND DISCUSSION

7.1 OVERALL ANALYSIS OF INTERNSHIP

This internship allowed me to work in an industrial environment and be supervised


by experts. Throughout my time at Lahagora pvt ltd., the team has led me in every
possible way from the beginning to the end. While working on the practical
implementation I got support from both the Development team and the Testing team.
The program offered by Lahagora pvt ltd. was fully structured and scheduled, every
task had a complete description of learning and implementation with different
milestones to complete. After the completion of every functionality, I performed
Function and UI testing of the application, which gave me the experience of how
developer side testingis carried out.

Overall, the internship was very beneficial as I have improved my technical and
practical knowledge along with the Business skills like Teamwork, Time management,
Leadership, and lot more.

Bhagwan Mahavir University 36 BMCET, Surat


1010206801 Conclusion and Discussion

7.2 PHOTOGRAPH AND DATE OF SURPRISE VISIT BY

INSTITUTE MENTOR

Fig 7.1 Work Desk

Bhagwan Mahavir University 37 BMCET, Surat


1010206801 Conclusion and Discussion

Fig 7.2 Working

Fig 7.3 Project Discussion

Bhagwan Mahavir University 38 BMCET, Surat


1010206801 Conclusion and Discussion

Fig 7.4 Working Area

7.3 DATES OF CONTINUOUS EVALUATION

Table 7.1 Dates of Continuous Evaluation

Continues Evaluation 1 17th March 2025

Continues Evaluation 2 15th April 2025

Bhagwan Mahavir University 39 BMCET, Surat


1010206801 Conclusion and Discussion

7.4 PROBLEM ENCOUNTERED AND POSSIBLE SOLUTIONS

Slow Data Loading and Image


Rendering

Problem:

Ecommerce app, displaying product lists and images quickly is crucial for a good user
experience. During development, fetching data from Firebase Firestore and product images
stored in Firebase Storage caused noticeable delays. This made the app feel slow, especially
on initial load or with slower internet connections. Images sometimes appeared after several
seconds, causing layout shifts and incomplete views.

Why It Happened:

• Large image file sizes


• Multiple simultaneous network requests
• No local caching implemented
• Firestore queries fetching unnecessary or unfiltered data

Possible Solutions:

• Use SwiftUI’s AsyncImage for loading images asynchronously.


• Implement a custom caching system or use libraries like Kingfisher to cache images
locally.
• Optimize Firestore queries by:
o Limiting fetched fields (.select())
o Adding pagination using .limit()
o Sorting and filtering data efficiently
• Apply lazy loading with LazyVStack or LazyVGrid to load content only when
visible.
• Display loading skeletons or progress indicators using shimmer effects to improve
perceived performance.

If user waits for 30-60 seconds after requesting QR code, then we can remind user to
refresh the page and get another QR code, but this would affect user experience.

Bhagwan Mahavir University 40 BMCET, Surat


1010206801 Conclusion and Discussion

7.5 SUMMARY OF INTERNSHIP

I successfully completed my internship at Lahagora Pvt. Ltd., where I worked as an iOS App
Developer specializing in SwiftUI. During the internship, I was involved in the complete
design and development of a fully functional eCommerce mobile application for the iOS
platform.

The internship provided me with valuable practical experience in areas such as SwiftUI user
interface design, Firebase integration, state management, authentication handling,
payment integration, and responsive layouts. I actively participated in applying Agile
methodology throughout the project, involving sprint planning, daily stand-ups, regular
reviews, and retrospectives.

Throughout the 16-week internship, I gained hands-on experience in handling real-world


problems, working with tools like Xcode, Firebase, and Git, and following industry practices
for app development, testing, and deployment. The experience enhanced my technical skills,
problem-solving ability, and understanding of the complete iOS development process within a
professional work environment.

This internship at Lahagora Pvt. Ltd. has significantly strengthened my foundation in mobile
app development and prepared me for future opportunities in the field of iOS app development.

7.6 LIMITATION AND FUTURE ENHANCEMENT


Limitations:
• The current version of the eCommerce app lacks multi-language support, which may limit
its usability for non-English speaking users.
• Offline functionality is limited — the app depends heavily on an active internet connection to
fetch product data, images, and user information from Firebase.
• Payment gateway integration is basic and relies on third-party SDKs without offering
multiple payment options like UPI or wallet integration.
• Product filtering and sorting features are minimal and can be further expanded for a better
shopping experience.
• The admin panel for managing products, orders, and users was not included in this project
phase.

Future Enhancements:
• Add multi-language support and localization to make the app accessible to a broader
audience.
• Implement offline caching and data storage features, so users can browse products and
manage their cart even without internet connectivity.
• Integrate multiple and more advanced payment methods such as Apple Pay, UPI, and in-
app wallets for greater flexibility.
• Enhance product filtering, sorting, and search functionality to improve user experience.
• Develop a dedicated admin management system for product inventory, order tracking, and
user management.
• Implement push notifications for order updates, promotions, and personalized offers to
improve user engagement.
• Plan for App Store deployment and continuous updates based on user feedback and platform
changes

Bhagwan Mahavir University 41 BMCET, Surat


1010206801 References

REFERENCES
1. Apple Developer Documentation
https://developer.apple.com/documentation/swiftui/
Official and most reliable source for learning and referencing SwiftUI, iOS APIs,
and development guides.
2. RayWenderlich.com
https://www.raywenderlich.com/ios/paths
Great tutorials and articles for beginner to advanced iOS and SwiftUI developers.
3. Hacking with Swift
https://www.hackingwithswift.com/
Hands-on Swift and SwiftUI projects, challenges, and practical guides.
4. Firebase Documentation
https://firebase.google.com/docs/ios/setup
For integrating authentication, real-time databases, Firestore, and cloud functions
into your iOS apps.
5. Swift by Sundell
https://www.swiftbysundell.com/
Detailed articles, podcasts, and resources focusing on Swift development

Bhagwan Mahavir University 42 BMCET, Surat

You might also like