Sie sind auf Seite 1von 6


Team Members:
Nischit Prasad Nhuchhe Pradhan (15103011)
Shyam Pandya (15103002)
Divyendu Shekhar (15103007)

Elmo is a software system that helps general people find people at a professional
level. The users are supposed to register their companies (eg:- shop, school, college,
office) so that general mass is able to find them, get their details, address, contact
information etc. in one single place. It is the “Google” for companies. There are two
types of clients : Elmob and Polo.

Elmob is the one creates and manages a company. She is able to create companies
(more than one), create posts and maintains the integrity and information of the
company. She provides all of the content and information of the
company/organization to the system such as description of the company, contact
information (email, phone number, web page), working hours, address etc. Elmob is
able to subscribe to various plan which help in promoting the company (helpful for
Functions/capabilities :-
- create companies (one or more)
- create posts for the company such as job openings, discounts, sales, events etc.
- edit/update information of the post and company
- subscribe to plans for post promotion.

Polo refers to the general mass looking for information. They browse the app/website
for the information regarding a specific company. The system is supposed to give out
results such as directions to the branch office, contact information (email, phone
numbers, web page), opening hours, a short description of the company. Polo is the
normal everyday user and does not need to have an account to use the app but is
recommended to have one. Account holders will have the additional privileges such
as being able to like, comment and favorite posts and companies, add companies to
their profile for faster access, get access to recommended section which is a function
of the history, views, post liking, sharing and favorites.
Functions/capabilities :-
- search for companies, get their details, address, work information, opening/closing
- able to favorite/follow companies, add to their personal profile (eg:- ‘xyz’ trusts
‘abc’ electrician)
- share, comment, rate, like posts
- rate companies and posts
- add companies/posts to their profile
- recommend posts to others
- filter posts and company according to location, category etc.

What is a company?
A company is an entity created by Elmob. It may refer to a physical
company/organization (usually the case) or an abstract e-company. Polo is first
supposed to create an account which is then used to creating a company. The account
holds a list of companies he has create. The account is used to modify and update
records of the company.
Every company has a base category used to define the company and the type of
services it provides. However, the posts it creates may have different categories and
When registering the following informations must be provided :-
- company name and logo
- basic category of company
- motto of company
- short description of the company
- established date and working hours
- full address of the company ( can be picked from Google Map provided )
- contact information: link to web page, email, phone number
- link to privacy policy and other legal information

What is a post?
Elmob is able to create notice/ads which are used to provide information to Polo,
share thought/idea, show a notice, inform, get attention, entertain or simply publicize
the company. It is a mode of communication between Elmob and Polo. Eg, job
openings, discount offers, opening of admission, change of post in company or any
other changes, events in the company.
All of the posts have a certain priority level and are shown in the newsfeed of Polo
according to it. The priority level will be a function of post time, subscription to
featured post, rating of the company. There can be global posts and local posts. The
global posts are shown to every user despite their location. Local posts are shown as
according to the location of the user (state, country). The settings can be changes by
the user by applying filters. Global posts cannot be hidden by applying filters.
It is of two forms i.e card/banner and article form. The card/banner will be shown to
the user as a briefing of the post. It is what the user sees first. The card/banner will
lead to a more detailed article.
Characteristics of a post :-
- card/banner shows brief information which leads to a detailed article
- card/banner content: image, text
- article shows detailed information about the post
- article content: image, text, video, links
- contains company name, logo, post date, number of likes, shares, views

Types of posts

 Featured post
These posts are shown in the featured section which is the first page shown when the
app/website opens. Featured posts are paid posts with various subscription levels. The
posts are shown in the order of their priority function.
- Global post is one of the featured post which is shown to every user despite their
location and filter options..
- Banner posts in one of th featured post which is shown on every page. Multiple
posts are shown by scrolling.

 General post
These posts are shown in the recommended and fresh sections and posts are affected
by filters and location. These posts do not require subscription to any plans.
Recommended page contains posts according to the previous search records and
views. The post is shown in the order of the level of priority as a function of rating of
the company, number of views, shares and time of post.
Fresh section contains new posts ordered by the time they were created. The post is
ordered by the time of post alone i.e. newer posts are shown at the top.

How is it shown?
The structure of the application/web page is as follows :-

 Search bar
This is used to search of any post or company. All of the posts and companies are
accessible form here. It is not affected by filters and the result is shown as a function
of priority.

 View Page
All articles and posts are shown in the page. This is the page where the user interacts
the most.
This contains three tabs
-featured page: displays all of the featured posts.
-recommended page: displays posts recommend by the system observation.
-fresh page: displays all of the latest posts.

 Drawer
This is accessible by swiping from the left side of the screen. It contains profile
details option, basic navigation options, settings/customization options, filter option
and tag options. These options are used to set filters, view profile, log into Elmob
mode to create posts, access terms and conditions of the application etc. Tags are
most popularly viewed categories. This is a more accessible search button.

Database Structure
The structure described is only for reference and visualization and is not a final
model. Changes will be made with progress development process as per requirement.
The following are the entities to be made with its subsequent attributes.

Elmob - short description

- elmob id/username (primary key) - full description
- password - image
- video
Company - post date
- company name (primary key)
- elmob id (from Elmob) Post Priority
- logo image - post id (foreign key)
- category - priority level
- motto - featured level
- description - expiry date
- established date
- open time Like
- close time - post id (foreign primary key)
- Address (from Company) - elmob id (from Elmob) / company
- web page name (from Company)
- email
- phone number Comment
- privacy policy - comment id (primary key)
- post id (from Post)
Address - elmob id (from Elmob) / company
- company name (foreign primary name (from Company)
key)(from Company) - title
- street name - detail
- city
- postal code History
- state - elmob id (foreign key primay key)
- country - post id (from Post)
- date stamp
- post id (primary key)
- company name (from Company)
- title Data Flow Diagram
- category
Technology stack

 Front End :
android app:
Language: Java
Environment: Android
web site:
Language: HTML,CSS,
Environment: Wordpress

 Back end :
Language: Python
Environment: Pycharm
Framework: Flask
Database :
Language: MYSQL
Environment: Integrated into

1. android development
2. mysql database documentation:
3. python documentation:
4. technical/programming help: