0% found this document useful (0 votes)
0 views12 pages

Development Process

The Smart Market application is an Android marketplace developed for the BICT2406 Mini Project, featuring user registration, product browsing, ratings, and a shopping cart, utilizing Firebase for authentication and data storage. The development followed an incremental approach, including stages like planning, UI design, feature implementation, and testing. The project successfully demonstrates modern Android development practices and meets the specified functional requirements.

Uploaded by

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

Development Process

The Smart Market application is an Android marketplace developed for the BICT2406 Mini Project, featuring user registration, product browsing, ratings, and a shopping cart, utilizing Firebase for authentication and data storage. The development followed an incremental approach, including stages like planning, UI design, feature implementation, and testing. The project successfully demonstrates modern Android development practices and meets the specified functional requirements.

Uploaded by

matupiwilfred12
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

DEVELOPMENT PROCESS

Smart Market – Android Marketplace Application

1. Introduction
The Smart Market application was developed as part of the BICT2406 Mini Project. The aim
of the project was to build a modern Android marketplace application where users can
register, log in, browse products, view product details, like and rate products, add products to
a shopping cart, and simulate the checkout process. Firebase services were used to provide
secure authentication and cloud-based product storage.

2. Development Methodology
The project followed an incremental development approach. Each feature was designed,
implemented, tested, and improved before moving to the next feature. This approach made it
easier to identify and fix errors during development.
The development process consisted of the following stages:
1. Planning
2. Project Setup
3. User Interface Design
4. Firebase Integration
5. Feature Implementation
6. Testing
7. Bug Fixing
8. Deployment

3. Project Planning
Before writing any code, the project requirements were studied carefully. The team identified
all the required features and designed the application structure.
The following requirements were identified:
 User Authentication
 Product Browsing
 Product Details
 Product Rating
 Like Functionality
 Shopping Cart
 Checkout
 Firebase Firestore Database
The application screens were also planned before development began.

4. Project Setup

The development environment was prepared using:


 Android Studio
 Kotlin Programming Language
 Jetpack Compose
 Firebase Authentication
 Firebase Firestore
 Git
 GitHub
A new Android Studio project named Smart Market was created using the Empty Activity
template with Jetpack Compose.

5. User Interface Design


The application's user interface was designed using Jetpack Compose.
The following screens were created:
 Splash Screen
 Login Screen
 Registration Screen
 Home Screen
 Product Details Screen
 Shopping Cart Screen
 Checkout Screen
Material Design components were used to produce a clean, responsive, and user-friendly
interface.

6. Firebase Authentication
Firebase Authentication was integrated to manage user accounts securely.
The following features were implemented:
 User Registration
 User Login
 User Logout
User credentials are validated before allowing access to the application.
7. Firebase Firestore Integration
Firebase Firestore was connected to the application to store product information.
Each product contains:
 Product Name
 Price
 Description
 Category
 Image
 Rating
The application retrieves product information from Firestore and displays it on the Home
Screen.

8. Product Browsing
The Home Screen displays all available products retrieved from Firebase.
Each product card contains:
 Product Image
 Product Name
 Product Price
 Product Rating
 Like Button
Users can browse products by scrolling through the product list.
9. Product Details
When a product is selected, the application opens a Product Details screen displaying:
 Product Image
 Product Description
 Product Price
 Product Rating
 Add to Cart Button
 Buy Button
This allows users to view complete information before purchasing

10. Product Rating


A product rating system was implemented.
Users can rate products using a five-star rating system.
The selected rating is stored and displayed together with the product information.
11. Like Functionality
Users can like and unlike products.
The like button allows customers to mark products they are interested in.
12. Shopping Cart
A shopping cart feature was implemented to allow users to manage their purchases.
Users can:
 Add products to the cart
 Remove products from the cart
 View the total cost
 Update cart contents
The total price is automatically calculated.

13. Checkout
A checkout page was created to simulate the purchasing process.
The checkout screen displays:
 Selected products
 Total amount
 Payment confirmation
The application simulates a success payment method.
14. Testing
Each feature was tested after implementation.
Testing included:
 Registration
 Login
 Product loading
 Product details
 Shopping cart operations
 Checkout process
 Firebase connectivity
Errors discovered during testing were corrected before proceeding to the next stage.

15. Bug Fixing


Several issues were encountered during development, including:
 Gradle configuration errors
 Firebase connection issues
 Layout adjustments
 Navigation problems
 Build errors
These problems were resolved through debugging, updating project configurations, and
testing each component individually.

16. Version Control


Git was used for version control throughout development.
The project repository was uploaded to GitHub to enable backup, collaboration, and
submission.
17. Challenges Encountered
Some of the challenges experienced during development included:
 Configuring Firebase services
 Resolving Gradle dependency conflicts
 Connecting the application to Firestore
 Managing application state in Jetpack Compose
 Testing the application across different devices
These challenges were overcome through debugging, documentation review, and repeated
testing.

18. Conclusion
The Smart Market application was successfully developed as an Android marketplace
application using Kotlin and Jetpack Compose. The application implements user
authentication, product browsing, product details, ratings, likes, shopping cart management,
and checkout functionality while using Firebase Authentication and Firestore for backend
services. The project demonstrates the application of modern Android development practices
and satisfies the functional requirements specified in the assignment.

You might also like