0% found this document useful (0 votes)
16 views36 pages

Analysis

This document provides an analysis report for a senior design project called BidIt, which aims to develop an auction platform mobile application. It describes the proposed system in detail, including an overview of functionality, requirements, constraints, system models, and considerations.

Uploaded by

kiprop jacob
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)
16 views36 pages

Analysis

This document provides an analysis report for a senior design project called BidIt, which aims to develop an auction platform mobile application. It describes the proposed system in detail, including an overview of functionality, requirements, constraints, system models, and considerations.

Uploaded by

kiprop jacob
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/ 36

Bilkent University

Senior Design Project

Project short-name: BidIt

Analysis Report

Efe Eroğlu, Muhammet Kamil Gök, Ahmet Serdar Gürbüz, Rumeysa Özaydın, Hasan Yıldırım

Supervisor: Uğur Doğrusöz


Jury Members: Çiğdem Gündüz-Demir and Can Alkan

Progress Report
November 21, 2020

This report is submitted to the Department of Computer Engineering of Bilkent University in partial fulfillment
of the requirements of the Senior Design Project course CS491/2.
1.Introduction 4

2.Current System 5

3.Proposed System 5
3.1 Overview 5
3.2 Functional Requirements 6
3.3 Non-Functional Requirements 7
3.3.1 Reliability 7
3.3.2 Usability 7
3.3.3 Extendibility 7
3.3.4 Compatibility 7
3.3.5 Security 7
3.4 Pseudo Requirements 8
3.4.1 Language Constraints 8
3.4.2 Economic Constraints 8
3.4.3 Implementation Constraints 8
3.4.4 Social Constraints 8
3.4.5 Ethical Constraints 8
3.4.6 Timeline Constraints 9
3.4.7 Sustainability Constraints 9
3.4.8 Professional and Ethical Constraints 9
3.5 System Models 10
3.5.1 Scenarios 10
3.5.2 Use Case Model 20
3.5.3 Object and Class Model 22
3.5.4 Dynamic Model 22
3.5.4.1 State Diagram 22
3.5.4.2 Sequence Diagram 23
3.5.4.2.1 Sequence Diagram for Bidding a Product 23
3.5.4.2.2 Sequence Diagram for Payment 23
3.5.4.3 Activity Diagram 25
3.5.5 User Interface 26

4. Other Analysis Elements 28


4.1 Consideration of Various Factors 28
4.1.1 Public Health Considerations 28
4.1.3 Public Welfare Considerations 28
4.1.4 Global Scale Considerations 28
4.1.5 Environmental Considerations 29
4.1.6 Cultural Considerations 29
4.1.7 Social Considerations 29
4.2 Risks and Alternatives 30
4.3 Project Plan 31
4.3.1 Project Goals 31
4.3.2 Work Packages 31
4.3.2 Project Plan 33
4.4 Ensuring Proper Team-work 33
4.5 Ethics and Professional Responsibilities 34
4.5 New Knowledge and Learning Strategies 34

5.Glossary 35

6. References 36
1.Introduction
Auction is a process of buying or selling products based on biddings. It is a good
alternative for fixed-price selling mechanisms. The word comes from Latin word “augere”
which means “to increase” [1]. One of the most common forms of auction is open ascending
price auction where participants bid openly and every bid must be higher than the previous
bid. As long as there are at least two bidders, the auction continues. The other form is the
sealed-bid first-price auction where bidders submit their bids privately in sealed envelopes
and the highest bidder wins [1]. The popular goods taking place in auctions are antiques and
rare collectibles.

When it comes to online auctions, some conditions mentioned above change. The
time is limited and the highest bidder at the end of the time buys the product. Also,
nowadays, auctions do not have to be about antiques or rare objects. People can sell their
second-handed products to get rid of them which makes it reasonable to have a
marketplace in order to meet the demands of these people.

Online shopping is very in demand these days. Either it is a brand new product or a
second-hand product. We aim to introduce a bidding system for these online shopping
platforms. Our platform, BidIt, will be an easy to use auction platform where users can buy
and sell products online.

This report explains the details of the proposed system in terms of System Overview,
Requirements, Constraints, and Similar Products to further explain the purpose and the
innovativeness of the project.
2.Current System
Currently, there is a website called eBay [2]. On eBay, users can buy and sell their
products with a bidding system online. However, it is not being used in Turkey. Firstly, our
design and target audience will be different. Our aim is to make people in Turkey adapt to
an online shopping system based on bidding. Also, BidIt will have extra features that are not
offered on eBay. We will make predictions about the price and the categorization for
helping the seller to choose the most appropriate price and the category.

3.Proposed System
3.1 Overview
In our senior project, BidIt, we aim to develop an easy-to-use auction platform
where users can sell their products. It will be a mobile application that is cross-platform
adaptable for both Android and iOS. We will have two different use cases for users which
give them an option to buy and sell. For selling items, users will define their items by writing
a caption and adding images. For categorization, the best-suited category will be suggested
by using the image and the description of the item but the user can manually change the
category specification later. Users can select the time for their advert by determining the
publish time and the length of the advert. Users are not allowed to remove the product
from the marketplace after it got a bid or bought. Users will define an initial start price
where other users can bid to buy this item and the highest bidder at the end of the auction
can buy the item. Also, users can optionally define a buy now price where other users can
buy the item instantaneously. When publishing an item, the platform will suggest optional
pricing for the item from the description. This platform will automatically take the payment
from the auction winner, and after the consolation of both buyers and sellers for the
transaction, the seller will receive the payment. Buyers can review the sellers. Users can not
bid on their own adverts in any manner. Users will get notifications about the auction dates,
prices, etc. about their interested items and subscriptions. When a user is out-bidded, the
user will be informed with a notification instantly.
3.2 Functional Requirements
These following functions will be available for the users.

● Users can sell their products by indicating their caption, description and images.
They will also initialize the start price and optionally a buy-now price. The expiration
time of an advertisement will be indicated by the user and it can be at most 15 days.

● Users can bid on the items to join the auction for the product or use the buy-now
option to acquire the item directly.

● Users can rate previously interacted users.

● Users can monitor other user's reviews.

● Users can search for an item by name or category.

● Users can have different lists. They can add an item to personalize their lists.

● Users can browse the marketplace for the currently open sales.

● BidIt will notify buyers when someone out-bid their bid. Also, sellers will be notified
when someone bids their product.

● Users can see the previously sold products of any user.

● BidIt will estimate the price by using previous related items for an item so that users
can roughly have an understanding of the price of their items before publishing their
advertisements .

● Users can purchase an item with their own credit cards or virtual payments.

● BidIt will automatically categorize the product. The category subtree of the product
will be generated automatically according to the title and the image.

● BidIt will do the authentication of the users provided their usernames and
passwords.

● Users can report other users due to neglect of the term of usage of the app.
● Users can update their account information

● Users can delete their accounts

3.3 Non-Functional Requirements


In the following subsections, the non-functional requirements are divided into
subsections as reliability, usability, extensibility, compatibility and security.

3.3.1 Reliability

● The application must not randomly crash. It must be able to recover quickly from any
errors that occur during application usage.

3.3.2 Usability

● The BidIt application should have a user-friendly interface that will allow all types of
users to be able to easily adapt.

3.3.3 Extendibility

● Design of the application should be written following the Object Oriented


Programming paradigms in order to add new functionalities easily.
● The storage in the system should be designed in a way that it can be extended.

3.3.4 Compatibility

● The application will be cross-platform and it will be adaptable for Android and iOS.

3.3.5 Security

● Personal data of the user such as name, surname, and phone number must be
protected by the application to maintain security.
● The money transactions are all covered with an API.
3.4 Pseudo Requirements
3.4.1 Language Constraints

● Our application will support both Turkish and English languages.

3.4.2 Economic Constraints

● The webpage is on the Github domain which is free to use.


● Github will be used for Version Control and code sharing which is free to use.
● Free APIs will be used.
● Open-source libraries will be used.

3.4.3 Implementation Constraints

● The application will be working on mobile operating systems which are Android and
IOS.
● Client-Server model will be used as application structure.
● React Native will be used in order to provide cross-platform application
development.
● Version control will be sustained via Git and the source code will be hosted on
Github.
● Ebay Taxonomy API is planned to be utilized for automatic categorization, taxonomy
of the product [3].
● Object Oriented Design principles will be adapted in the design steps and
appropriate design patterns will be used as necessary.
● Sign in with Facebook authentications can be used to spend less time in registration
according to the users preferences [4].

3.4.4 Social Constraints

● The application can be used by anyone who has a smartphone.

3.4.5 Ethical Constraints

● The personal information of users will not be shared.


● User data will be encrypted.
● Code of Ethics [5] will be followed.
● Any external software or library used will be properly referenced.

3.4.6 Timeline Constraints

Development of our product will be parallel with the following schedule [6],

● Project Specifications: ​Monday, October 12, 2020


● Analysis Report: ​Monday, November 9, 2020
● High-Level Design Report: ​Monday, December 21, 2020
● Low-Level Design Report: ​Monday, February 8, 2021
● Final Report: ​Friday, April 30, 2021

3.4.7 Sustainability Constraints

● We will closely follow and consider user feedback in order to improve the product.
● Bugs will be followed and updated from the initial release until the deadline.

3.4.8 Professional and Ethical Constraints

Code of Ethics proposed by National Society of Professional Engineers [5] will be


followed during the implementation,

● Since the users have to sign up in order to sell or bid the products, we need to keep
their usernames and passwords. In order to manage this in a safe manner, we are
going to store the hash values of the passwords in our database. Also, the personal
information of the users such as phone number, name, and surname will not be
shared by other users or third parties without getting permission.
● The camera or storage permission will be needed when a buyer is uploading or
taking pictures of the products. Before accessing the phone’s camera and storage,
required permissions will be taken from users.

.
3.5 System Models

3.5.1 Scenarios

Scenario 1 Sign Up

Actor Client

Entry Conditions: 1- Client opens the app and clicks on the Sign Up button.

Exit Conditions: 1- Clients can turn back to the main page of the app by the back
button.
2- After Client Sign Up , the app redirects the client to the sign
in page.
3- Client fills the username and password then sign in.

Main Flow of Events: 1- Clients give their information that the app needs, then sign
up for the app.

Alternative Flow of Events: 1- Clients can go back to the main page.


2- Clients can exit the app.

Scenario 2 Sign In

Actor Client

Entry Conditions: 1- Actor opens the app and clicks on the Sign In button.

Exit Conditions: 1- Actor can turn back to the main page of the app by the back
button.
2- After Sign In , the app redirects the client to the home page.

Main Flow of Events: 1-Clients fill the username and password area and sign in the
app.

Alternative Flow of Events: 1- Clients can go back to the main page.


2- Clients can exit the app.
Scenario 3 Forgot Password

Actor Client

Entry Conditions: 1-Clients clicks on the Forgot Password button.

Exit Conditions: 1- Actor can turn back to the main page of the app by the back
button.
2- After Sign In , the app redirects the client to the home page.

Main Flow of Events: 1- Client enters the mail addresses that have already entered
while sign up, then the app resets the password and leads the
client to entering a new one.

Alternative Flow of Events: 1- Client remembers its password.

Scenario 4 Logout

Actor Client

Entry Conditions: 1- Client clicks on the Logout button.

Exit Conditions: 1- Client logged out.

Main Flow of Events: 1- Client logout from the app.

Scenario 5 View Products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.

Exit Conditions: 1-Client presses the back button to exit the app.

Main Flow of Events: 1-Clients see the products that are listed on the home page.
Scenario 6 View Products to be Sold

Actor Client

Entry Conditions: 1- Client login to the app.


2- Client presses the profile page.
3- Client sees items pressing the sell tab in profile.

Exit Conditions: 1- Client presses the back button to exit the app.
2- Client turns back to home page with click turn back.

Main Flow of Events: 1- Client login the app then press the profile page to see own
products that selling

Scenario 7 View Client Profile

Actor Client

Entry Conditions: 1- Client login to the app.


2- Client presses the profile page.

Exit Conditions: 1- Client presses the back button to exit the app.
2- Client turns back to home page with click turn back.

Main Flow of Events: 1-Client login the app then click on profile button to see profile.

Alternative Flow of Events: 1- Client login to the app.


2- Client presses one of the products.
3-Client presses profile picture on products description

Scenario 8 View Product Description

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client selects a product to see further details.

Exit Conditions: 1- Client presses the back button to exit the app.
2- Client turns back to home page with click turn back.

Main Flow of Events: 1- Client login to the app then click on one products to see its
description.

Alternative Flow of Events: 1- User filters the products then finds a specific products.
2- User enters the message part then presses one message,
then pressing the profile that message parts person to enter its
profile, then see its products.
Scenario 9 Filter Products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can filter products with some options like category and
current price, to see specific one.

Exit Conditions: 1-Client press back button to exit app.


2- Client turns back to home page with click turn back.

Main Flow of Events: 1-Client login the app then filter the products to see desired
products on the page.

Alternative Flow of Events: 1- Client searches with a keyword in products.

Scenario 10 View Notifications

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press on notification button to see them.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login app and press notification button to see its
notifications.

Scenario 11 View Messages

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press on messages button.
3-Client press one of the messages to see.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login app and press the messages button then click
one of the messages to see it.
Scenario 12 View Main Screen

Actor Client

Entry Conditions: 1-Client opens the app.

Exit Conditions: 1-Client press back button to exit app.

Main Flow of Events: 1-Client opens the app.

Alternative Flow of Events: 1- Client logout the app.

Scenario 13 Share Products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.
3- Clients press the share button to share products with social
media.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client logins to the app then, in the product page with the
share button client choose a product and share it.

Scenario 14 View Favorite Products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press on profile button
3-Client press the favorites to see products.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login the app then press the profile button, in profile
pressing favorites button to see products.
Scenario 15 Add Products to Favorites

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.
3- Click on add favorite button to add favorites

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login to the app then click on one product to see the
products, then click add favorite button the add.

Alternative Flow of Events: 1- User filters the products then finds a specific product.
2- User enters the message part then presses one message,
then pressing the profile that message parts person to enter its
profile, then see its products.

Scenario 16 Report Products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.
3- Click on report products button
4- Select specific reasons to report products then click report.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login app then opens a product , if the product is not
appropriate for clients, can report it with reason.
Scenario 17 Add Products to Sell

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press the profile button
3- Client press the add products button
4- Client upload photos and fill the product description then
click the sell button.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1-Client login to the app then go to the profile, with the add
products button user can create a new products page to sell the
products.

Scenario 18 Send Message to Product Seller Client

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.
3-Client enter an product
4- Clients click on the send message button for talk.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login to the app then click on one product to see its
description.

Alternative Flow of Events: 1- User can enter message part then press one message, then
can continue talk

Scenario 19 Edit Product

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press the profile button
3- Client presses the desired products to edit.
4- Client upload or delete photos and fill the products
description again then click update button.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.
Main Flow of Events: 1-Client login to the app then go to the profile, then click on
one product to edit.

Scenario 20 Make bid to an Product

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client can see randomly distributed products on the home
page or can filter it to see specific one.
3-Make a bid to an product

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client login to the app then click on one product to see it,
then make a bid.

Scenario 21 Contact With Help Center Support

Actor Client

Entry Conditions: 1-Client click on Help Center Button


2- Client press create new ticket button
3- Fill the information that the app needs then create a button
to send a support ticket to the system.

Exit Conditions: 1-Client press back button to exit app.

Main Flow of Events: 1- Clients can create tickets for problems in the app.

Alternative Flow of Events: 1- Clients can create tickets also while login to the app and go
to the profile part then click the support button.

Scenario 22 Verify Account

Actor Client

Entry Conditions: 1-Client Sign Up then the system sends verification code to
email.
2- Client enters code to app.

Exit Conditions: 1-Client press back button to exit app.

Main Flow of Events: 1-Client successfully signs up then the system sends a
verification code to make the client verified.

Alternative Flow of Events: 1-Client can verify its account with another app like facebook or
phone number.

Scenario 23 Delete Products That In Won Sell List

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client press the profile button
3- Client presses the desired product to edit.
4- Client press delete product.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1-Client login to the app then go to the profile, then click on
one product to delete.

Alternative Flow of Events: 1-Client login to the app.


2-Client press the profile button
3- Client presses the desired products to delete.
4- Client press delete button.

Scenario 24 Make Comment a Client Profile for an products

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client buy a product.
3-Client complete the payment and get the product.
4-Client go to bought products page
5- Clients make comments about the product.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1-Client buys a product and gets feedback about the product
and seller.
Scenario 25 Search Product

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client write keyword to search bar then click search button.

Exit Conditions: 1-Client press back button to exit app.

Main Flow of Events: 1-Clients see the products that are listed on the home page
with the selected keyword contained.

Scenario 26 Confirm Order

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client wants to buy a product and click on the product.
3- Client makes bids on a product.
4- Client won the auction and confirmed the order.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Client wants to buy one product and make a bid, then if won
the auction it confirms the order.

Scenario 27 Make Payment

Actor Client

Entry Conditions: 1-Client login to the app.


2-Client wants to buy a product and click on the product.
3- Client makes bids on a product.
4- Client won the auction and confirmed the order.
5-Client makes payment for a product.

Exit Conditions: 1-Client press back button to exit app.


2- Clients can turn back to home page with click turn back.

Main Flow of Events: 1- Clients want to buy one item and make a bid, then if they
won the auction it confirms the order,lastly make payment for
the item.
3.5.2 Use Case Model

Figure 1: Use Case User Account


Figure 2: Use Case Client Operations
3.5.3 Object and Class Model

Figure 3: Object and Class Model

3.5.4 Dynamic Model

3.5.4.1 State Diagram

Figure 4:State Diagram


3.5.4.2 Sequence Diagram

3.5.4.2.1 Sequence Diagram for Bidding a Product

Figure 5: Bidding Sequence Diagram

Users list all the products with the chosen parameters by getting data from the database. After
selecting a specific product, the user can bid a price for the chosen product. Then, the current price
of the product is updated via ProductController.
3.5.4.2.2 Sequence Diagram for Payment

Figure 6: Payment Sequence Diagram

When the auction is over, the winning user is informed with a notification. Then, the user proceeds
to the payment by choosing the payment option. If the buyer has enough balance to buy the
product, balances of the buyer and the seller is updated and the payment is completed.
3.5.4.3 Activity Diagram

Figure 7: Activity Diagram


3.5.5 User Interface

Figure 8: Sign In & Up Page Figure 9: Login Page with Credentials

Figure 10: Sign Up Page Credentials Figure11: Main Page of Categories


Figure 12: Page for Making Bid for a Product Figure 13: Product List View Page

Figure 14: Making review for a product Figure 15: Adding specifications for selling a product
4. Other Analysis Elements

4.1 Consideration of Various Factors


The brief discussions about the various factors affecting the design phase of the
project can be found below in the subsections.

4.1.1 Public Health Considerations

The System will not have any feature that might affect the user’s health. Thus, BidIt will not
get affected by public health factors.

4.1.2 Public Safety Considerations


The system will store personal information about the user such as their names,
numbers, credit cards, address etc. The safety of this information will be considered. Also,
the platform will have a positive effect on public safety because before, some auctions were
being done in Facebook comments, which can be harmful to share delivery information with
other people.

4.1.3 Public Welfare Considerations


BidIt is a non-profit application which does not demand any kind of fees from user to
download and or requires any commission. Firstly, It will be a platform where users can find
affordable second-hand products. Secondly, users will be able to sell their unwanted
products and gain money. In addition, shopping and getting rid of the stuff that is no longer
needed have a positive effect on people’s happiness. Since public welfare is the collection of
happiness, fortune, and health, BidIt will aim to make the app so that it will affect all these
factors positively.

4.1.4 Global Scale Considerations


BidIt aims to make people in Turkey adapt and use a shopping system based on
bidding. Thus, BidIt will support Turkish language. It will also support English since it is a
global language. However, based on demand, other languages can be supported in the
future.
4.1.5 Environmental Considerations
The products being sold in BidIt will be mostly second-hand products. Producing new
products has a cost in terms of raw materials and energy. Thus, selling and buying
second-hand products is a sustainable alternative for the environment.

4.1.6 Cultural Considerations


BidIt won’t be affected by cultural factors, since the platform does not have any
feature that can affect cultures.

4.1.7 Social Considerations


BidIt will be affected by social constraints because it will be a platform where users
interact with each other. Thus, the idea was made such that BidIt will be in full service of the
society.

In the table below, the significance of each factor on a scale of 0 (none) to 10


(maximum) can be found:

Level

Public Health 0

Public Safety 8

Public Welfare 7

Global Scale 2

Environmental Factors 8

Cultural Factor 0

Social Factor 8
Table 1: Factors that have an effect on the design and their significance
4.2 Risks and Alternatives
There will be some implementation risks that could be crucial in the development
process. Foreseeing these risks and finding B plans that address these risks is a must for the
team. The risks and their alternative plans to overcome these risks can be found below.
● Database system might collapse. It is planned to take regular system backups and
start the backup database in the event of a collapse.
● Time may not be long enough to deliver all of the desired requirements. It is planned
to keep the significant requirements and remove minor features that have the least
impact on the user.
● Ebay Taxonomy API may crash. It is planned to inform users about the problem. It
will only affect the automatic categorization of the products.
● Team members might be unfamiliar with the technologies that are going to be used.
It is planned for all group members to spare some time to learn the technologies
beforehand.
● The initial design and architecture of the project might fail to hold the expectations.
It is planned to come up with a more suitable design and architecture in the next
phases.

The risks and their information can be found in the table below:

Risk Possibility of Effect Alternative Plan


Occurrence

Database collapse medium Not being able to reach Backup database


user data

Time Shortage medium A shortage in the Ensuring the implementation


number of features of significant requirements

API crash low Categorization service Inform user


won’t work

Unfamiliarity with the medium Time delay and more Using individual spare hours
technology workload to learning needed
technologies

Design and architecture medium Time delay and more Coming up with new design
inefficiency workload and architecture
Table 2: Risk and their information
4.3 Project Plan

4.3.1 Project Goals

● Proficiency in React Native will be achieved.


● High-Level Design Report will be written.
● Low-Level Design Report will be written.
● Database connection will be provided.
● A cross-platform application will be implemented.
● User Interface will be designed.
● An automatic categorization feature will be added.
● A price prediction feature will be added.
● Wallet system will be added.
● Final Report will be written.
● Presentation and Demo will be made.

4.3.2 Work Packages

WP# Work Title Leader Members Involved

WP1 Analysis and Rumeysa Özaydın Everybody


High-Level Design

WP2 Database Hasan Yıldırım Everybody

WP3 Low-Level Design Efe Eroğlu Everybody

WP4 Development-1 Ahmet Serdar Everybody


Gürbüz

WP5 Development-2 Muhammet Kamil Everybody


Gök
Table 3: Work Packages
Work Package 1
● Leader: Rumeysa Özaydın
● Milestone: React Native will be learned and third party libraries will be decided.
Skeleton of the app will be created. High Level Design Report will be written. A demo
of the project will be done.
● Deliverable: High-Level Design Report.
● Description: Currently, we are not qualified to work with React Native. We will focus
on that. In addition, the base of the program will be prepared in this work package.

Work Package 2
● Leader: Hasan Yıldırım
● Milestone: The infrastructure of the database is finished and the frontend and
backend are connected to each other.
● Deliverable: Small program that users can log in.
● Description: The Database creation will be based on the information flow. We will
gradually test the information being kept. The connection between frontend and
backend will be provided.

Work Package 3
● Leader: Efe Eroğlu
● Milestone: Low-Level Design Report is made and ready to be submitted.
● Deliverable: Low-Level Design Report.
● Description: The Low-Level Design will be completed and uploaded to the project
website.

Work Package 4
● Leader: Ahmet Serdar Gürbüz
● Milestone: The app is implemented and the user interface is written.
● Deliverable: Demo of BidIt.
● Description: The BidIt with its basic feature will be implemented.
Work Package 5
● Leader: Muhammet Kamil Gök
● Milestone: Price prediction, automatic categorization and wallet system will be
added. All tests of the application will be done. The entire project will be completed
with the Final Report.
● Deliverable: Final Report and Final app.
● Description: New features described will be added. The tests will prevent the
platform from working incorrectly. The final report and the app will be finished.

4.3.2 Project Plan

Figure 16 : Gantt Chart for project plan

4.4 Ensuring Proper Team-work


To ensure teamwork we will use three platforms. These platforms and the ways they
were used can be found below,
● Whatsapp: Whatsapp was used in order to select a day to arrange a video call
through Google Meets.
● Github: Github was used to set the project website. All team members have a Github
account. Everyone can access and contribute to the repository regarding the project
website. The same procedure will be followed throughout the semester for the
project. Branches will be used in order to work on different work packages at the
same time. The proper integration of these branches will be done.
● Google Meets: Google Meets was used firstly during the project selection stage.
Also, it is a good way to talk simultaneously with everyone.

Also, all members are assigned as a leader to a different work package. It is


important to have leadership skills and by doing this we aim to enhance these skills. The
roles of leaders will be empowering the members and maintaining good communication for
possible changes and updates. Also, ensuring the deadlines are met.

4.5 Ethics and Professional Responsibilities


As engineers, our most important responsibility is to follow proper ethical values
while building products. The National Society of Professional Engineers’ Code of Ethics will
be followed [5].
All required permissions will be taken from the user before using the application.
Also, the user data will not be shared with third-party companies.

4.5 New Knowledge and Learning Strategies


First of all, React Native is going to be used and it is important for each member to
be familiar with it by watching tutorials and some hands-on experience. Also, we aim to
develop our leadership skills by letting each group member be the leader in some phase of
the implementation.
Each group member is obligated to learn the subjects that are related to their
project in the workflow.
5.Glossary
API:​Application programming interface is an interface for the interaction between two systems.
Gantt Chart: ​It is a commonly used chart to show the activities against time in a project. The left of
the chart contains the list of the activities and the top line contains the time scale. The colored bars
show the start and end time of an activity.
6. References
[1] V. Krishna, ​Auction theory.​Amsterdam: Elsevier, 2010.

eBay​. [Online]. Available: https://www.ebay.com/. [Accessed: 21-Nov-2020].


[2] ​

[3] “Taxonomy API,” ​eBay Developers Program​. [Online]. Available:


https://developer.ebay.com/api-docs/commerce/taxonomy/overview.html. [Accessed:
11-Oct-2020].

[4] “Facebook Login: Developer Documentation,” ​Documentation - Facebook for Developers​.


[Online]. Available: https://developers.facebook.com/docs/facebook-login/. [Accessed:
11-Oct-2020].

[5] “Code of Ethics,” Code of Ethics | National Society of Professional Engineers.

[Online]. Available: https://www.nspe.org/resources/ethics/code-ethics. [Accessed:

10-Oct-2019].

CS491-2 Senior Design Project I-II.​[Online]. Available:


[6] ​

http://www.cs.bilkent.edu.tr/~cs4912/current/. [Accessed: 11-Oct-2020].

You might also like