Vous êtes sur la page 1sur 11

Table of Contents

1. Introduction
1.1 Objective of the project
1.2 Description of the project
1.3 Scope of the project
1.3.1 Use Case Model (If applicable)

2. System Description
2.1 Customer/User Profiles
2.2 Assumptions and Dependencies (If applicable)
2.3 Functional Requirements
2.4 Non-Functional Requirements

3. Design
3.1 Data Flow Diagram

4. Scheduling and Estimates


Introduction

In modern time, everyone is so busy that they require something that saves their time.
People use various applications for accessing different services to acquire their needs. There are
various websites and mobile applications for this purpose and the one which takes the less time for
solving the user’s query wins the race. At this particular situation every organization wants its users to
stick with them and to achieve this every company is finding the solution to provide everything at one
place. Every company is investing in the latest technology of mobile and web application for the same
purpose.

This also implies with our own university. Lovely Professional University is a very big university, it
requires a medium rather management for creating the connection among students. There are many
students that requires multipurpose application where they can access everything under one roof.
Imagine an application where students can access all the related stuffs with a single login, whether
they want to download the ppt’s or they want to interact with their mates and ask questions, a place
where they can report in the community if something has been lost or a module where they can sell or
buy second hand books. They can also see the latest domain specific trends which will keep them
updated with the technology.

The project is not only limited to mobile application but we are providing a web interface for it also so
that a user can access the application either from his laptop or from his smartphone.

1.1 Objective of the Project

The main objective behind this project is to make a multipurpose application for the students of
Lovely Professional University where they can download the notes, can ask their queries and share
their ideas with the LPU community, can report the lost item and can sell or buy the second hand
books. There is one more feature in which based on User’s distance from Block the approximate
travel time will be calculated.

By implementing this project, we were able to explore a variety of different engineering challenges,
including software programming, database designing, web server logic design, and other aspects. This
project provided great insights to the challenges of software engineering and development.
1.2 Description of the project

This project is based on firebase, android studio, php, material design and other fundamental
components. In this we are using Firebase as a back end for saving all the user’s data as well as to
manage the data. The users can register and then login to their account where they can choose
between different modules for what they are seeking. For example, if a user wants to download notes
he will be redirected to that module. In total, our project has six modules namely notes provider, ask
query, lost and found, books sell and buy, domain specific trends and travel time calculator. It also
consists of an admin panel where an admin can manage the users.

1.3 Scope of the project


A multipurpose application under one roof is the need of the hour. In every university, students
always get suffered in exam times because they don’t have study material with them. They lack in
knowledge because no one is there to solve their doubts. Many students can’t afford heavy price
books, so they have to get themselves suffered by roaming here and there in search of good quality
second hand books. Many of them just don’t want to waste their time by visiting to different sites for
various works. It will be very great and time saver for them if all these things can be done in a single
application.

These are the situation that a student will always face in his or her life. One cannot ignore these
situations. The application provided by us is the one stop solution for all these problems. As per the
University concerns, it will be very great solution for connecting the students to promote helping,
sharing and caring.
1.3.1 Use Case Model

Fig. – Use case model of the Application


1. System Description

2.1 Customer/ User Profiles


There are major 2 User Profiles which can be implemented in our system.

1. Admin

2. Students

Admin
In this part admin has all the access to the database of the system only he can update,
modify and delete the data. Admin will be managing the queries the most asked
questions will be on the top of the page. Students can ask for any help to admin through
an email.

Students

Students can see the data they can download the notes but they don’t have any access to
the database of the system. In the application there is a feature of lost and found where
student can place the things they have found in the university and there is also a feature of
selling books in which student can sell their old books.

2.2 Assumptions and Dependencies


In the early stages of a project, there are assumptions about the product that
we believe to be true based on knowledge, experience, or current information.
Typically, these include:

o Assumptions about the user (for example, X% of users will see enough value
in the product to become regular users).

o Technical assumptions (for example, technical requirement A will work on the


latest operating system)

o Business assumptions (for example, we can develop the product within a


proposed time frame)
2.3 Functional Dependencies

Android Dependencies
o Local library module dependency :
This declares a dependency on an android library module name “mylibrary”
(this must match the library name defined with an include: in your settings.gradle
When you build your app, the build system compiles the library module and
packages and the resulting compiled contents in the APK.
o Local binary dependency :
Gradle declares dependencies on JAR files inside your project’s Gradle declares
dependencies on Jar files inside your project’s module_name/libs/directory.
o After opening the application or web page user will get two options of login
and signup. If he already a user he can directly login by filling the credentials if
not he can sign up by filing the form.

o Firebase will be used to store data and fetch the data which will be done with
internet connection only.

o There is a function for asking a query if any student face any problem he can
ask for a solution in the query module.

o Student can sell their old books if anyone wanted the book he/she can buy the
book by contacting the owner of the book.

2.4 Non- Functional Dependencies


Operating Constraints
List any run-time constraints. This could include system resources, people, needed
software.

Performance Requirement
Requirements about resources required, response time, transaction rates, throughput,
benchmark specifications or anything else having to do with performance.

Platform Constraints

Discuss the target platform. Be as specific or general as the user requires. If the user
doesn't care, there are still platform constraints.
Modifiability
Requirements about the effort required to make changes in the software. Often, the
measurement is personnel effort (person- months).
Backup for Failure
All the data is to be stored on a local data unit inside the environment which will give a
detailed analysis using Analytics Software. User can back up the data to its own storage
server or save it to a separate local storage device.

Security
One or more requirements about protection of your system and its data. The measurement
can be expressed in a variety of ways (effort, skill level, time) to break into the
system. Do not discuss solutions (e.g. passwords) in a requirements document.

2. Design
2.1 Data Flow Diagram
DFD of User Panel.

DFD of Admin Panel.

3. Scheduling and Estimates

Scheduling

Project scheduling is a mechanism to communicate what tasks need to get done and which
organizational resources will be allocated to complete those tasks in what timeframe. A project
schedule is a document collecting all the work needed to deliver the project on time.

Project scheduling is so as to organize and complete your projects in a timely, quality and financially
responsible manner, you need to schedule projects carefully. Effective project scheduling plays a crucial
role in ensuring project success. To keep projects on track, set realistic time frames, assign resources
appropriately and manage quality to decrease product errors. This typically results in reduced costs and
increased customer satisfaction.

First break down the project into several single components like project requirement, implementation,
testing and etc., this way it will be easy to manage the project and allocate the time for each
component so as when to complete it. Try to complete the individual component within allocated
time. Also, set a goal and deadline date for your project.

Scheduling
14-Feb 26-Mar 5-May 14-Jun 24-Jul 2-Sep

Project Kick Off 3-Mar 5

Gathering Project Requirements 18-Apr 8

Gathering Components 7-Jun 9

Testing Components 18-Jun 3

Implementation 28-Jun 17

Hardware Development 28-Jun 18

Software Development 10-Jul 26

Testing 6-Aug 24

Review and Fix Bugs 1-Sep 24

Gathering
Review and Software Hardware Implementati Testing Gathering Project Kick
Testing Project
Fix Bugs Development Development on Components Components Off
Requirements
Start Date 1-Sep 6-Aug 10-Jul 28-Jun 28-Jun 18-Jun 7-Jun 18-Apr 3-Mar
Duration 24 24 26 18 17 3 9 8 5

Fig: Gantt Chart for Notes provider and Education Application

Estimates

Estimation is the process of finding an estimate, or approximation, which is a value that can be used
for some purpose even if input data may be incomplete, uncertain, or unstable.

Estimation determines how much money, effort, resources, and time it will take to build a specific
system or product. Estimation is based on −

 Past Data/Past Experience

 Available Documents/Knowledge
 Assumptions

 Identified Risks

The Project Estimation Approach that is widely used is Decomposition Technique. Decomposition
techniques take a divide and conquer approach. Size, Effort and Cost estimation are performed in a
stepwise manner by breaking down a Project into major Functions or related Software Engineering
Activities.

Step 1 − Understand the scope of the android project to be built.

Step 2 − Generate an estimate of the project size.

 Start with the statement of scope.

 Decompose the project into components that can each be estimated individually.

 Calculate the size of each components.

 Derive effort and cost estimates by applying the size values to your baseline productivity
metrics.

 Combine components estimates to produce an overall estimate for the entire project.

Step 3 − Generate an estimate of the effort and cost. You can arrive at the effort and cost estimates
by breaking down a project into related software engineering activities.

 Identify the sequence of activities that need to be performed for the project to be completed.

 Divide activities into tasks that can be measured.

 Estimate the effort (in person hours/days) required to complete each task.

 Combine effort estimates of tasks of activity to produce an estimate for the activity.

 Obtain cost units (i.e., cost/unit effort) for each activity from the database.

 Compute the total effort and cost for each activity.

 Combine effort and cost estimates for each activity to produce an overall effort and cost
estimate for the entire project.

Step 4 − Reconcile estimates: Compare the resulting values from Step 3 to those obtained from Step
2. If both sets of estimates agree, then your numbers are highly reliable. Otherwise, if widely
divergent estimates occur conduct further investigation concerning whether −

 The scope of the project is not adequately understood or has been misinterpreted.

 The function and/or activity breakdown is not accurate.


 Historical data used for the estimation techniques is inappropriate for the application, or
obsolete, or has been misapplied.

Step 5 − Determine the cause of divergence and then reconcile the estimates.

Setup Goal and Deadline for your project. A goal milestone defines how long the assignment should
take. It is typically measured from start date of your project. A deadline milestone defines the amount
of time the project may take before it is late. The deadline is also measured from when the step or
case begins.

Estimated Goal: 6 Months

Estimated Deadline: 7 Months

Vous aimerez peut-être aussi