Smart Brand: Supervisor: Sir Tahir Awan

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 27

PUCIT

Punjab University College of Information


Technology

Group members:

Muhammad Azeem BSEF14A527


Nishaf Naeem BSEF14A531
Muhammad Usman BSEF14A520
Umer Sani BSEF14A501
Amna Maqsood BSEF14A539

Supervisor: Sir Tahir Awan

First Deliverable
Version 1.0

Smart Brand

© Punjab University College of Information Technology, University Of The Punjab.


1
TABLE OF CONTENTS

1 INTRODUCTION............................................................................................................3
1.1 PROJECT/PRODUCT FEASIBILITY REPORT..............................................................3
1.1.1 Technical Feasibility.........................................................................................3
1.1.2 Operational Feasibility.....................................................................................3
1.1.3 Economic Feasibility.........................................................................................3
1.1.4 Schedule Feasibility..........................................................................................3
1.1.5 Specification Feasibility....................................................................................4
1.1.6 Information Feasibility.....................................................................................4
1.1.7 Motivational Feasibility....................................................................................4
1.1.8 Legal & Ethical Feasibility..............................................................................4
1.2 PROJECT/PRODUCT SCOPE......................................................................................4
1.3 PROJECT/PRODUCT COSTING..................................................................................5
1.4 CPM - CRITICAL PATH METHOD............................................................................8
1.5 INTRODUCTION TO TEAM MEMBER AND THEIR SKILL SET..................................12
1.6 GANTT CHART.........................................................................................................13
1.7 TOOLS AND TECHNOLOGY WITH REASONING.......................................................14
1.8 VISION DOCUMENT.................................................................................................16
1.9 Risk List…………………………………………………………………………..16
1.10 Introduction……………………………………………………………………..18
1.10.1 Systems Specifications..................................................................................19
1.10.2 Identifying External Entities.......................................................................20
1.10.3 Context Level Data Flow Diagram..............................................................21
1.10.4 Capture "shall" Statements.........................................................................23
1.10.5 Allocate Requirements..................................................................................24
1.10.6 Prioritize Requirements...............................................................................25
1.10.7 Requirements Trace-ability Matrix.............................................................26
1.10.8 High Level Use Case Diagram.....................................................................27

© Punjab University College of Information Technology, University Of The Punjab.


2
1-Introduction
With the growing technology, everyone nowadays wants everything accessible on their
smartphones. As we know that when a discount comes on any brand, most people are not
aware about them. Keeping all these things in mind, we are going to develop an app for
our users that will inform them about the latest discount updates on any store near their
location. The app will inform each user about discounts on different brands and will also
inform the user about the shops near him/her where he can go and avail that discount.

1.1 Product Feasibility Report

1.1.1 Technical Feasibility


The product will be developed in a cross platform framework so everyone gets benefit
from this system. This product will be uploaded on App Store of Apple and Play Store of
Android and it will be free for the users. Database will be managed on regularly basis. We
have all technical persons with different expertise that are needed to create this product.

1.1.2 Operational Feasibility


As time is passing by, people are becoming more addicted to brands. So whenever a sale
or discount or new arrivals come on any brand, Some people might not be aware of it as
there isn’t any single platform build right now that is providing this facility. So, we are
confident that this product will be a success, as it is providing the main services that the
brand addicted people need.

1.1.3 Economic Feasibility


Talking about cost estimate of this project we are not going to pay any labor to
developers as we are going to implement it on its own. We have enough of the resources
need to develop this application. We will only bear cost of server for the start for hosting
our database.
Benefits are however greater than cost once it will be fully operational we will get benefit
from this game by deploying it on play store and Apple application store.

1.1.4 Schedule Feasibility


We are a team of five members. We are going to develop the product in an iterative
manner.
Firstly we are going to build the front-end and this work will be equally divided among
the members of our group and the deadline for each work will be defined by our group
leader. We will have different meetings for discussions of the problems or about the next
phase. By means of this, I am really sure that we will be able to complete the product and
deploy it within time.

1.1.5 Specification Feasibility

© Punjab University College of Information Technology, University Of The Punjab.


3
We have spent around 3 weeks in order to find out the requirements from both, the user-
end and also from the brand-ends. We had a talk with different user about how would
they like this application to be build. For brands, we have build requirements by our own
experience. Now we have enough requirements to start this product and we are refining
the requirements more and more. After we start building this product, new requirements
might come with respect to users and brands also. But till now we have enough clear
requirements to start this project.

1.1.6 Information Feasibility


Providing reliable information is also necessary for gaining a customer’s trust and since
gaining trust is
our top priority so the information provided on our system will only be provided after
proper authentication. We will make sure that the information provided to the customer is
useful, meaningful and 100 percent reliable. We will provide our users enough of the
information about how to use this application and also we will show them tips so they
can enjoy the application properly. Our Developers have sound knowledge of this
application so they will develop it in such a way that we will provide a demo at the start
of the application where user will be given a quick tour of the application and also we
will show him small tips about the application.

1.1.7 Motivational Feasibility


Providing the customers with proper information about different features of our system is
also
important. The user interface of our application will be simple, user friendly and will be
provided with such features that will not only motivate the user but also guide him
through the interaction process. While developing the application, the different types of
users will be kept in mind.

1.1.8 Legal & Ethical Feasibility


We have made sure that our system is legally and ethically correct and secure. No such
action has been
taken or no such feature has been used that would be cause of any infringements or
liabilities. We will give our privacy policies to user to make our intentions and concerns
clear. The Brands will be enrolled with their permission. Our policies and all other things
will be clearly defined in the start to all the brands.

1.2-Product Scope
We are building a SmartBrand application for both IOS and Android which will provide a
user a single platform where he can visit all the brands and see the discounts and sales on
the brands. We are going to build this application in such a way that if you don’t have
your Internet on, still you will get notifications about the brands near you.

© Punjab University College of Information Technology, University Of The Punjab.


4
Sometimes this happens that you are traveling and you don’t know that there are sales
and discounts on the brands that you are passing by. So, now you don’t need to worry
about that. Whenever such a brand comes, you will be notified about the discount and the
details of the brand on the phone. By clicking on the notification, our application will
take the user to a page where you can see the Google maps link and also further details
about discount. Brands will have two options for inserting the discounts. Whether they
can do this manually by themselves or they can provide us link to their website and we
will scrape the discount offers for them.

This application is especially for the brands addicted person so they can remain up-to-
date with their brands and now they will never miss any sale or discount offers or if the
new arrivals come.

1.3 Project/Product Costing


Project costing is an important factor in the planning phase. In project costing we estimate about the total
budget of the project which tell us that our project is economically feasible or not.

1.3.1 Project Cost Estimation by Function Point Analysis


External Inputs: is an elementary process in which data crosses the boundary from
outside to inside.
 Login form data will be used to validate the user(for both users)
 Update form data will be taken from database to show the data(for both users)
 In Notification panel, extract data from database for checks or to notify user
about brand location and sales(for both users).
 In Notification panel, extract data from database for checks or to notify user
about new arrivals(for both users).
 n Notification panel, extract data from database for checks or to notify user
about their manual and automated scraping module settings(for brands only).
 Extract data ,stored by scrapers, from database and use it to show the user brand
information.
 Show brands which are in our registered list of brands(which are willing to
advertise their brands).
 Some data will be extracted by interacting with google api to find location.

External Outputs: is an elementary process in which data crosses the boundary from
inside to outside.
 Signup form data submitted with signup form to create user(for both users).
 Update form data to update the user profile data(for both users).
 Manual information entered by brand about sales and arrivals.
 Automated option for Brands, where they will input the url of their Brand
website to enable automatic scraping of their website.

© Punjab University College of Information Technology, University Of The Punjab.


5
 Save Brand advertisement posts.
 Location search by google api from local database.

External Inquiries: an elementary process with both input and output components that
result in data retrieval from one or more internal logical files and external interface files.
EQs can contain business data, control data and rules based data.
 Drop Down List (a listing of brands customers by name)
 A screen full of customer address information
 Send total price of advertising brand to brands

Files: a user identifiable group of logically related data that resides entirely
within the application boundary and is maintained through External Inputs.
 File that contains the navigation information.
 File having the information about local database connectivity and root.
 Information setting file of IOS and Android settings

External Interfaces: a user identifiable group of logically related data that is used
for reference purposes only.
 Google API
 Collected documentation regarding the current system, if such a system
(either automated or manual) exits.

1. No. of Inputs: 12
2. No. of Outputs: 6
3. No. of Inquiries: 3
4. No. of Files: 3
5. No of External Interfaces: 2

Measurement Simple Average Complex Count FP Count


Parameters
No. of Inputs 3 x 10 4x0 6x2 12 42

No. of Outputs 4x4 5x0 7x2 6 30

No. of 3x0 4x0 6x3 3 18


Inquiries

No. of Files 7x1 10 x 2 15 x 0 3 27

No. of 5x0 7x1 10 x 1 2 17


External
Interfaces

© Punjab University College of Information Technology, University Of The Punjab.


6
Count Total: 134

Global Factors:

Data Communication 5

Data Distributed Processing 4

Performance 5
Heavily Used Configuration 5
Transaction Rate 3
Online Data Entry 2
End User Efficiency 5
On-Line Update 3
Complex Processing 4
Reusability 4
Installation Ease 2
Operational Ease 2
Multiple Sites 1
Facilitate Change 4
Total = ∑Fi 49

Calculate Function Point:


FP est. = Count Total * [0.65 + 0.01 * (Fi)]
= 134 * [0.65 + 0.01 * (49)]
= 134 *[1.14]
FP est. = 152.76
For our Project

Productivity = 100 LOC/pm


Labor Rate = 15,000 per month
For 8 months = 15,000* 8
Total labor rate = 120,000

Cost/FP = Labor Rate / productivity


= 120,000/100
= 1200/FP

Effort = FP est. / productivity


= 152.76 / 100
= 1.5276 pm

Total Project Cost = FP est. * (Cost/FP)

© Punjab University College of Information Technology, University Of The Punjab.


7
= 152.76 * (1200)
= 183,312 Pkr

Adding other costs:


License fee = 2000
Developer registration fee = 2500/ developer
2 * 2500
= 5000

Total cosqq1 t = total project cost + license fee + registration fee


= 183,312 + 2000+5000
= 190,312

1.4 CPM - Critical Path Method


CPM provides the following benefits:

 Provides a graphical view of the project.


 Predicts the time required to complete the project.
 Shows which activities are critical to maintaining the schedule and which are not.

1. Individual Activities
From the work breakdown structure, a listing can be made of all the activities in the project. This list of
activities for sky mania is as follows

A – Requirement Gathering
B – Define Scope
C- Feasibility Study
D- Object Oriented Analysis of Application/platform
E- Define Risk list
F- Design Use Cases
G- Screen Design
H- Graphical Design
I- Technical Architecture
j- Data flow Architecture
K- Front-end Architecture
L- Back-end Architecture
M- Design Local Database
N- Design Server Side Database
O- Implement User interface of User sight
P-Implement User Interface of Brand sight
Q-Implement User Panel
R-Implement Brand Panel
S-Components Integration
T-Design Scrapers Structure
U-Implement Scrapers
V-Verify Test Cases
W-Test Execution &report

2. Determine the Sequence of the Activities

© Punjab University College of Information Technology, University Of The Punjab.


8
There are some activities which can be done in parallel otherwise most of the activities are dependent on
each other also we have limited no of developers so we will go step by step for their completion

3. Draw the Network Diagram

4. Estimate Activity Completion Time


The time required to complete each activity can be estimated using past experience or the estimates of
knowledgeable persons. CPM is a deterministic model that does not take into account variation in the
completion time, so only one number is used for an activity's time estimate.

Activity Immediate Predecessor Duration (Weeks)

A None 1

B A 1

C A,B 1

D None 1

E C 1

© Punjab University College of Information Technology, University Of The Punjab.


9
F C 1

G F 1

H F 1

I F 1

J F 1

K J 1

L F 1

M L 2

N L 2

O K 3

P L 3

Q M,N,P 8

R M,N,P 8

S Q,R 2

T Q,R 1

U S 2

V S 1

W S OR U 1

5. The Critical Path


The critical path is the longest-duration path through the network. The significance of the critical path is
that the activities that lie on it cannot be delayed without delaying the project. Because of its impact on
the entire project, critical path analysis is an important aspect of project planning.

ES: earliest start time: the earliest time at which the activity can start given that its precedent
activities must be completed first. This is calculated through forward pass in network diagram.
ES (K)= max [EF (J): J is an immediate predecessor of K]

EF: earliest finish time: equal to the earliest start time for the activity plus the time required to
complete the activity.
EF (K) = ES (K) + Dur (K)

LF: latest finish time: the latest time at which the activity can be completed without delaying the
project. This is calculated through backward pass in network diagram.

© Punjab University College of Information Technology, University Of The Punjab.


10
LF (K) = min [LS (J): J is a successor of K]

LS: latest start time: equal to the latest finish time minus the time required to complete the
activity. This is calculated through backward pass in network diagram.
LS (K)= LF(K) – Dur (K)

TS: Total slack: the time that the completion of an activity can be delayed without delaying the
end of the project
TS (K) = LS (K) – ES (K)

FS: Free Slack: the time that an activity can be delayed without delaying both the start of any
succeeding activity and the end of the project.
FS (K) = min [ES (J): J is successor of K] – EF (K)

Activity Duration ES EF LS LF TS FS
(Weeks)
A 1 0 1 0 1 0 0

B 1 1 2 1 2 0 0

C 1 2 3 2 3 0 0

D 1 0 1 3 4 3 3

E 1 3 4 4 5 1 1

F 1 3 4 4 5 1 1

G 1 4 5 7 8 3 3

H 1 4 5 7 8 3 3

I 1 4 5 7 8 3 3

J 1 4 5 7 8 3 3

K 1 5 6 6 7 1 1

L 1 4 5 7 8 3 3

M 2 5 7 5 8 0 0

N 2 5 7 5 8 0 0

O 3 5 9 5 8 0 0

P 3 5 8 5 8 0 0

Q 8 8 16 8 16 0 0

© Punjab University College of Information Technology, University Of The Punjab.


11
R 8 8 16 8 16 0 0

S 2 16 18 16 18 0 0

T 1 16 17 17 18 1 1

U 2 18 20 18 20 0 0

V 2 18 20 18 20 0 0

W 3 20 23 20 23 0 0

The critical path is:


A->B->C->F->J->L->P->R->U->Q

1.5 Introduction to Team member and their skill set


Team member who are going to work on SmartBrand are listed below:

Muhammad Azeem Ullah (Team Leader)


His technical skills related to this project include
 C#,JAVA,PYTHON,Automation PLC
 .Net Framework,MVC,Wordpress,Laravel
 Node JS,Web Scraping
 UI/UX
Apart from this he have leadership skills and have already lead many term projects. He will make sure
that user will have good experience using this Application.
.

Nishaf Naeem Chaudhary(Team Member)

His technical skills related to this project include


 C++, Java,PYTHON,C#,Web Scraping and Automation.
 .NET Framework, Django, MVC
 Requirement engineering

Apart from this he has good analytic skills. He will be working on development, requirement
engineering and designing. he have convincing powers. He will be working on development part.
Umer Sani(Team Member)

His technical skills related to this project include


 Java,PYTHON,C#,Ruby,PHP,Angular JS
 .NET FRAMEWORD,MVC,Unity,Wordpress,Django
 Graphic Designing

© Punjab University College of Information Technology, University Of The Punjab.


12
Apart from this he has good analytic skills. He will be working on development, requirement
engineering and designing. he have convincing powers. He will be working on development part.

Muhammad Usman(Team Member)

His technical skills related to this project include


 C++,Ruby,Objective C,Java,C#,PYTHON
 .NET FRAMEWORD,Spring MVC
 Automation Web

Apart from this he has good analytic skills. He will be working on development, requirement
engineering and designing. he have convincing powers. He will be working on development part.

Amna Maqsood(Team Member)

Her technical skills related to this project include


 Java,PYTHON,C#,PHP
 .NET FRAMEWORD,DJANGO,
 Graphic Designing

Apart from this he has good analytic skills. He will be working on development, requirement
engineering and designing. he have convincing powers. He will be working on development part.

1.6 Gantt chart

© Punjab University College of Information Technology, University Of The Punjab.


13
1.7 Tools and Technologies with Reasoning.

Tools & Technology Reasoning

Xamarin Xamarin provides across-platform implementations of the Common


Language Infrastructure (CLI) and Common Language Specifications (often
called Microsoft .NET).With a C#-shared codebase, we can use Xamarin
tools to write native Android, iOS, and Windows apps with native user
interfaces and share code across multiple platforms. By using this we will
develop only one application for all platforms.

Xamarin.Forms Xamarin.Forms is a cross-platform UI toolkit that will allows us to easily create


native user interface layouts that can be shared across Android, iOS, and
Windows Phone. By using this we don’t have to make separate UI for each
platform.

XAML XAML is a declarative markup language that can be used to define user
interfaces. The user interface is defined in an XML file using the XAML syntax,
while runtime behavior is defined in a separate code-behind file. XAML allows us
to define user interfaces in Xamarin.Forms applications using markup rather than
code. XAML is never required in a Xamarin.Forms program but it is tool able, and
is often more visually coherent and more succinct than equivalent code.

C# We will develop backend of our application in c# because it allows us to use a


familiar syntax and sophisticated features like Generics, LINQ and the Parallel
Task Library. Moreover we all are well familiar with c#.

SQLite Xamarin.Forms supports database-driven applications using the SQLite database


engine, which makes it possible to load and save objects in shared code.

© Punjab University College of Information Technology, University Of The Punjab.


14
Integrated Development We are much familiar with Visual Studio can leverage existing skills and increase
Environment (Visual Studio) productivity by developing for Xamarin with Visual Studio. Visual Studio support
also means that applications sharing code between iOS, Android, Mac, and
Windows can be developed in the same IDE.

Code management (Team Team Foundation is a set of tools and technologies that enable us to collaborate
Foundation Server) and coordinate our efforts on building a product or completing a project. Team
Foundation enhances our communication, tracks work status, supports team
roles, enacts the team process, and integrates team tools. By using TFS whenever
we develop each feature we can easily generate builds and can do testing.

Microsoft Test manager Microsoft Test Manager can be used to organize your test plans, we can manage
test cases, and run manual tests. In Test Manager one of us will do the testing of
application and assigned bug to developer who developed that feature and
developer will fix that bug and mark it fix and tester will again test it and marked
verified .

1.8 Vision Document


Introduction:
With the growing technology, everyone nowadays wants everything accessible on their
smartphones. As we know that when a discount comes on any brand, most people are not
aware about them. Keeping all these things in mind, we are going to develop an app for
our users that will inform them about the latest discount updates on any store near their
location. The app will inform each user about discounts on different brands and will also
inform the user about the shops near him/her where he can go and avail that discount.
Scope:
This software application is basically an Android/IOS/Windows application which is
built to turn all the luxury brands garments/shoes and sales information in a particular
form that will help the customers to be up-to-date according to their interests. If a person
is travelling one place to the another and is near a brand shop where some garments/shoes
are on a discount sale, this system will notify him about that discount and it will also
notify him about the location of that shop also. Basically, this application shows the user
about that discount sale item image and description. This software application will also
promote new brand shops and will advertise them on our platform. We will try to cover
all the popular brands over the Pakistan.
Overview:
The basic overview or the base line of the project is to provide easy way to let the people
know about the promotions of the brands they like and to help them easily locate the
outlets of brands around them where they are.
Constraints:

© Punjab University College of Information Technology, University Of The Punjab.


15
Time is the major constraint in the development of our project we will try to manage this
constraint as possible as we can.

Problem Statement:
The problem of In our society trend of wearing branded stuff
is increases rapidly therefor the number of
brands also increases due to this demand, so
brands do offers promotions to the their
customers regularly to compete their
competitors but people who like to do
shopping from brands sometimes not get
updated about promotions so our main focus
is to let them know about the promotions of
the brands they like.
Affects Keep people update about the discounts on
brand shops near them.
Provide all brands a platform where they
can come and advertise their deals, discount
etc.

The impact There is no specific platform of to let the


people know about promotions of brands
except advertisement but this application
will keep people updated about promotions
without any effort.
A successful solution We will solve this problem making mobile
application in xamarin using c# and
database will be handle by using SQLite

Stakeholder summary:
Name Description Responsibilities
Project Members Team building the whole To maintain triple
project constraints (Time, Cost,
Scope)
Sir Tahir Awan is the The project must complete
Project supervisors motivator and supervisor of in time and all project
this project requirements must meet.
Users Brands & Local people Get facilitate through our
application

© Punjab University College of Information Technology, University Of The Punjab.


16
1.9 Risk List
Following is the brief discretion of the risks in the development of the proposed mobile
application.
Risk related to the Requirement Engineering:
 Requirement change rate is unpredictable.
 The change in requirements changes the scope of the proposal and the
application.
 Customer fails to understand the impact of requirements changes.

Risk related to the Project Management Office:


 The guidance from the project management office is insufficient.
 Primary or secondary supervisor does not render facilities or unavailable.
 The project office does not allow undertaking the project on any bases Risk
Risk related to the scope management:
 The scope of the project is not clearly understood by any of the developing team,
supervisory staff or project management office.
 The scope of the project is distributed due to the requirement change or due to the
dropped requirements.
 The scope of the product defines in the proposal is not achievable in normal
circumstances.

Risk related to the supervisory staff:


 Supervisory staff is either not available or is unable to render the facility on any
basis.
 The scope of the project moves out from the specialization of the supervisor.
 The resource personal requirements for performing the supervisory activities are
not available.
Risk related to the team members:
 The resource person in the team is not available due to any reason.
 Lack of team Management Corporation can be a high risk.
 New task may cause unseen problems.
 The time required to develop the software is underestimated.
Risk related to the System:
 Estimated cost is low.
 Size estimate may differ from actual size.
 Security risk.
 Tools & requirements are incompatible.
 Development tools do not provide planned productivity.

1.10 Introduction:
Whenever you want to buy something you have to spend a lot of time searching for it
and when you find some objects related to what you require you have a hard time in
making decision. SmartBrand is an android application that allows any brand to post an

© Punjab University College of Information Technology, University Of The Punjab.


17
advertisement according to their brand sales and new arrivals instead of searching
through a lot of brands pages. The user gets a notification when there is sale discount and
new arrivals on nearest brand items. The user can also subscribe the favorites number of
brands. The main idea of our application is to enhance the purchasing power of our
citizens. This app will update the user with latest sales of brands on all types of stuffs.
SmartBrand can be accessed from anywhere anytime as long as you have an internet
connection and with active GPRS. This app will update the user with respect to location.

1.10.1 System Specifications:


The following are the clauses that must be included while describing the system
specifications.
Introduction
“SmartBrand” provides the facility to brands and users. The brands who want to
advertise their sale on products have to sign up on our app. Server will allow them to post
about the sales on items. When any brand upload its advertisement then server will accept
its request, the promotions can be uploaded to user side. After that user has to sign up to
our app, then he/she can view those brands promotions for which he/she subscribed. It
gives us more facilities to user like he/she can buy the items on lesser rates and will make
him/herself update with latest sales, price comparison, best match for wish item,
minimum cost best products, best reviews etc.
Existing System
Currently there are no applications that have been built on “SmartBrand”
idea. However “Food panda” is another app which is used to make orders of near your
location. But this app will not update the user with the discounts on food items. You can
just order the food. The uniqueness of our application is that it updates the user locally
with new promotions of brands. Brands have no need to pay a lot of money on the
advertisements of their sales. We will provide them with all the facilities of advertisement
on one platform.
Scope of the System
The scope of the project can be divided into following phases:
Phase 1: Analysis and Design:
 Analyze the requirements for SmartBrand.
 Division of the architecture into small components or modules to specify the
design with the functionalities performed.

Phase 2: Implementation:
 Develop the interface of application
 Develop databases (User, Brand) for the application.
 Maintain consistency of components with the repository.

Phase 3: Integration and Testing:


 Develop test plans for testing the complete project.
 Unit testing of each component.
 Test the complete scenario of the application.
 Perform application testing.
© Punjab University College of Information Technology, University Of The Punjab.
18
Summary of Requirements (Initial Requirements)
1) Post an Ad
The very first requirement of application is to signup via android application. The
Brand will post its advertisements for the sale on products that it wants to give to
customers.

2) Subscribe (subscription for brands)


The person who wants to see all the promotions of the brands has to subscribe for
those brands separately. The user will see the sale on the particular product of
specific brand.
3) Database Management
The system will be able to manage a list of the upcoming ads and subscription. Login
and signup status will be maintained if user is registered. Reminder time and date
will be kept to delete the post after sale expiration. Post or advertisement is deleted
manually or automated.
4) Security Authentication
Security and privacy will be maintained between user and brand profiles. Ad brand’s
profile will be maintained in order to maintain its records of ads.

5) Site Map
We will also provide the site map facility to the users. In which they can see that in
which area or region he application is most widely used.

6) Automation
System will automate the data from the official websites of brands by scraping the
data about latest promotions update.

1.10.2 Identifying External Entities


The identification of the external entities will be based on the information contained in
your Abstract. This identification is done after two phases.
The Identification of External Entities is done in two phases.
a. Over Specify Entities from Abstract
On the basis of the Abstract, we identify the following entities from our project:
 Buyer
 Seller
 Visitor
 Administrator
 Account
 Product
 Favorite List
 SMS Notification

© Punjab University College of Information Technology, University Of The Punjab.


19
 Ad
 Post
 Comment

b. Perform Refinement
After over specifying the entities, we refine them on the basis of our business logic. For
example, in SmartBrand we found the following entities more related to our business
logic;
 Brand
 User
 Administrator (server)

1.10.3 Context Level Data Flow Diagram


Context level data flow diagram contains only one process, representing the entire
system. The process is given the number zero and all external entities are shown on the
context diagram as well as major data flow to and from them.
The main entities of our system are administrator, brand and user. All of them have some
activities that are specifically related to them. The relation between these activities and
the system is shown as follows:
 System
 Brand
 User
 Administrator
 Database

© Punjab University College of Information Technology, University Of The Punjab.


20
© Punjab University College of Information Technology, University Of The Punjab.
21
1.10.4 Capture "shall" Statements
Identify “shall” statements, as they would be all functional requirements.
No External entity Initial Requirements

1 User Shall download app from store

2 User Shall create account for app

3 User Shall subscribe for at least one brand

4 User Shall click the bell icon for notification

5 User Shall stay online

6 User Shall activate his GPRS

7 Brand Shall create its account for app

8 Brand Shall upload/update/delete its advertisement

9 Administrator Shall accept/reject the request for advertisement

10 Administrator Shall control the database

11 System Shall provide user friendly interface

12 System Shall communicate with central database to verify the User


account

13 System Shall control advertisements automatically after specific


time

14 System Shall notify the user to activate his GPRS for the starting of
app

1.10.5 Allocate Requirements


Allocate the requirements in the use cases.
No Initial Requirements Use Case Name

© Punjab University College of Information Technology, University Of The Punjab.


22
1 User Shall download app from store UC_download

2 User Shall create account for app UC_Register

3 User Shall subscribe for at least one brand UC_Subsribe

4 User Shall click the bell icon for notification UC_Notification

5 User Shall connect with internet/GPRS UC_Connectivity

6 Brand Shall create its account for app UC_Brand_Registration

7 Brand Shall upload/update/delete its UC_Brand_Activity


advertisement

8 Administrator Shall accept/reject the UC_Administrator_control


request for advertisement

9 Administrator Shall control the database UC_


Administrator_ControlDatabase

10 System Shall provide user friendly interface UC_System_Interface

11 System Shall communicate with central UC_System_Communication


database to verify the User account

12 System Shall delete advertisements UC_System_Control


automatically after specific time

13 System Shall notify the user to activate his UC_System_Notification


GPRS for the starting of app

1.10.6 Prioritize Requirements


Requirements must be prioritized as this will help achieve tasks easily. Rank them as
“highest, medium, and lowest”.
N Rank Initial Requirements Use Use Case Name
o Case Id

1 High User Shall download app UC_1 UC_download


from store

2 High User Shall create account UC_2 UC_Register


for app

3 mediu User Shall subscribe for at UC_3 UC_Subsribe

© Punjab University College of Information Technology, University Of The Punjab.


23
m least one brand

4 Low User Shall click the bell UC_4 UC_Notification


icon for notification

5 High User Shall connect with UC_5 UC_Connectivity


internet/GPRS

6 High Brand Shall create its UC_6 UC_Brand_Registration


account for app

7 mediu Brand Shall UC_7 UC_Brand_Activity


m upload/update/delete its
advertisement

8 High Administrator Shall UC_8 UC_Administrator_control


accept/reject the request
for advertisement

9 mediu Administrator Shall UC_9 UC_


m control the database Administrator_ControlDatabas
e

10 Low System Shall provide user UC_10 UC_System_Interface


friendly interface

11 mediu System Shall UC_11 UC_System_Communication


m communicate with central
database to verify the
User account

12 Low System Shall delete UC_12 UC_System_Control


advertisements
automatically after
specific time

13 High System Shall notify the UC_13 UC_System_Notification


user to activate his GPRS
for the starting of app

© Punjab University College of Information Technology, University Of The Punjab.


24
1.10.7 Requirements Trace-ability Matrix
The requirements trace-ability matrix is a table used to trace project life cycle activities and work products
to the project requirements.
N Buil Initial Requirements Category Use Case Name
o d

1 B3 User Shall download app Business UC_download


from store

2 B3 User Shall create account Functiona UC_Register


for app l

3 B3 User Shall subscribe for at Functiona UC_Subsribe


least one brand l

4 B3 User Shall click the bell icon Functiona UC_Notification


for notification l

5 B3 User Shall connect with Functiona UC_Connectivity


internet/GPRS l

6 B3 Brand Shall create its Functiona UC_Brand_Registration


account for app l

7 B3 Brand Shall Functiona UC_Brand_Activity


upload/update/delete its l
advertisement

8 B3 Administrator Shall Functiona UC_Administrator_control


accept/reject the request l
for advertisement

9 B3 Administrator Shall control Functiona UC_


the database l Administrator_ControlDatabas
e

10 B3 System Shall provide user Functiona UC_System_Interface


friendly interface l

11 B3 System Shall communicate Functiona UC_System_Communication


with central database to l
verify the User account

12 B2 System Shall delete Functiona UC_System_Control

© Punjab University College of Information Technology, University Of The Punjab.


25
advertisements l
automatically after specific
time

13 B3 System Shall notify the user Functiona UC_System_Notification


to activate his GPRS for the l
starting of app

1.10.8 High Level Use case Diagram


A use case is initiated by a user with a particular goal in mind, and completes
successfully when that goal is satisfied. It describes the sequence of interactions between
actors and the system necessary to deliver the service that satisfies the goal. It also
includes possible variants of this sequence, e.g., alternative sequences that may also
satisfy the goal, as well as sequences that may lead to failure to complete the service
because of exceptional behavior, error handling, etc. The system is treated as a “black
box”, and the interactions with system, including system responses, are as perceived from
outside the system.

Notification

Login

Subscribe list
User

View

View Location

Add Remove

Register
© Punjab University College of Information Technology, University Of The Punjab.
Administratio
Automate profile 26
n

Brand
Add
Delete
Manage
Modify
ApprovePromotion
Profile
Report
© Punjab University College of Information Technology, University Of The Punjab.
27

You might also like