Sem 7 Minor Project Android App

49
CHAPTER - 1 PROBLEM STUDY 1.1 INTRODUCTION TO EXISTING SYSTEM The current system is cumbersome provides the syllabus, time table and scheme on website and student has to visit the website every time. Student has to go to website very time and download it. 1.2 LIMITATION OF CURRENT SYSTEM The existing system has following limitations: i) It is very time consuming. ii) Website does not notify students with latest updates in timetable or syllabus. iii) There is no such application designed for cellphones. iv) The website is not compatible with all web browser so it wastes a lot of time. v) There is no provision of getting notifications of syllabus,scheme and time table on the go. 1.3 OBJECTIVES The various limitations of the existing system can be overcome by automating the system.The proposed system can provide following advantages: 1

description

CS branch Semester 6, MInor Project An Android Application

Transcript of Sem 7 Minor Project Android App

Page 1: Sem 7 Minor Project Android App

CHAPTER - 1

PROBLEM STUDY

1.1 INTRODUCTION TO EXISTING SYSTEM

The current system is cumbersome provides the syllabus, time table and scheme on

website and student has to visit the website every time. Student has to go to website

very time and download it.

1.2 LIMITATION OF CURRENT SYSTEM

The existing system has following limitations:

i) It is very time consuming.

ii) Website does not notify students with latest updates in timetable or syllabus.

iii) There is no such application designed for cellphones.

iv) The website is not compatible with all web browser so it wastes a lot of time.

v) There is no provision of getting notifications of syllabus,scheme and time table

on the go.

1.3 OBJECTIVES

The various limitations of the existing system can be overcome by automating the

system.The proposed system can provide following advantages:

i) User Friendly.

ii) Time efficient.

iii) Facility of notifications has been provided.

1

Page 2: Sem 7 Minor Project Android App

CHAPTER - 2

FEASIBILITY STUDY

The feasibility study is an evaluation and analysis of the potential of a proposed project.

It is based on extensive investigation and research to support process of decision

making.Feasibility study aims to objectively and rationaly uncover the strengths and

weaknesses of an existing business. In its simplest terms ,the two criteria to judge

feasibility are cost required and value to be attained.

Our Student Mobile Application is Technically Feasible as we are able to provide

notification of syllabus,time table and scheme within series of steps and is time

utilising.Here we are also providing with various operation like add,update and delete

which meet user requirement. The project is Technically Feasible because there exists

technology which can be used to develop the project and a lot of features can be added

to make it advance.

2

Page 3: Sem 7 Minor Project Android App

CHAPTER - 3

PROJECT PLANNING

Project planning is part of project management, which relates to the use of

schedulessuch as gantt charts to plan and subsequently report progress within the

project environment. Initially, the project scope is defined and the appropriate methods

for completing the project are determined.

3.1 PROJECT RESOURCES (HARDWARE AND SOFTWARE

REQUIREMENTS)

HARDWARE REQUIREMENTS

Operating System:MS windows 8 and 8.1

Processors: 64-bit, 4 cores for small deployments (fewer than 1,000 users)

Hard disk: 500 GB

Ram: 4 GB

SOFTWARE REQUIREMENTS

Database:Ms Access

Programming language:Android,Java

3

Page 4: Sem 7 Minor Project Android App

FUNCTIONAL REQUIREMENTS

i) Functional requirements describe system behaviours

ii) Priority : rank order the features wanted in importance

iii) Criticality : how essential is each requirement to the overall system ?

iv) Risks : when might a requirement not be satisfied ?

v) What can be done to reduce risk ?

vi) Input : Admin is giving input.(time table, syllabus)

NON-FUNCTIONAL REQUIREMENTS

i) Physical environmen(equipment locations, multiple sites, etc.).

ii) Project cost (equipment location(How to measure cost)?

iii) User & human factors (who are the users, their skill level etc.).

iv) Performance (how well is system functioning,what is it's efficiency).

v) Documentation.

vi) Resources (finding, physical space).

vii)Security (backup, firewall,can it prevent intrusion ? ).

4

Page 5: Sem 7 Minor Project Android App

3.2 TEAM ORGANIZATION

Table 3.2.1

ACTIVITY ROLE

ANALYSIS ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava

DESIGNING ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava

CODING ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava

5

Page 6: Sem 7 Minor Project Android App

CHAPTER - 4

SYSTEM ANALYSIS

System analysis is a problem solving technique that decomposes a system into its

component pieces for the purpose of studying how well those component parts work

and interact to accomplish their purpose. System analysis is used in every field where

there is a work of developing something.

4.1 INFORMATION GATHERING

We gathered information from the existing system. We also consulted all those people

who are involved in the complete process.

4.1.1 ONLINE/ONSITE OBSERVATION

We visited RGPV student portal and we found it is very tedious to go through the time

table, syllabus and scheme every time we open the website due to heavy server traffic.

So it’s a time consuming process.

6

Page 7: Sem 7 Minor Project Android App

4.2 PROCESS MODEL USED

4.2.1 SELECT MODEL

Model selected for our project is Iterative Incremental model.

Fig 4.2.1.1: Iterative Incremental Model

7

Page 8: Sem 7 Minor Project Android App

4.2.2 ADVANTAGES OF SELECTED MODEL

In iterative model we are building and improving the product step by step, hence

we can track the defects at early stages.

In iterative model we can get the reliable user feedback.

In this model phases are processed and completed one at a time. Phases do not

overlap.

Issues, challenges & risks identified from each increment can be utilized/applied

to the next increment.

Easier to manage risk because risky pieces are identified and handled during it’d

iteration.

This model is simple and easy to understand and use.

8

Page 9: Sem 7 Minor Project Android App

CHAPTER - 5

STRUCTURED SYSTEM ANALYSIS (DFD)

Data Flow Diagrams are directed graphs. The arcs represent data and the nodes

represent process that transforms the data. A process can be for the decomposed to a

more detailed DFD which shows the sub processes and data flows within it. The sub

processes can in turn be decomposed further with another set of DFDs until their

functions can be easily understood. You build a DFD at the very beginning of your

business process modelling in order to model the functions your system has to carry out

and the interaction between those functions together with focusing on data exchanges

between processes. You can associate data with conceptual, logical, and physical data

models and object-oriented models.

9

Page 10: Sem 7 Minor Project Android App

Fig 5.1: Context Level DFD

10

Page 11: Sem 7 Minor Project Android App

Fig 5.2:Level 1 DFD

11

Page 12: Sem 7 Minor Project Android App

Fig 5.3:Level 2 DFD

CHAPTER - 6

12

Page 13: Sem 7 Minor Project Android App

SYSTEM DESIGN

Systems design is the process of defining the architecture, components, modules,

interfaces, and data for a system to satisfy specified requirements. Systems design could

be seen as the application of systems theory to product development.

6.1 UML DIAGRAM

Any complex system is best understood by making some kind of diagrams or pictures.

These diagrams have a better impact on our understanding. So if we look around then

we will realize that the diagrams are not a new concept but it is used widely in different

form in different industries. We prepare UML diagrams to understand a system in better

and simple way. A single diagram is not enough to cover all aspects of the system. So

UML defines various kinds of diagrams to cover most of the aspects of a system.

Diagrams are generally made in an incremental and iterative way. There are two broad

categories of diagrams and then are again divided into sub-categories:

i) Structural Diagrams

ii) Behavioural Diagrams

Structural Diagrams: The structural diagrams represent the static aspect of the system.

These static aspects represent those parts of a diagram which forms the main structure

and therefore stable.

The four structural diagrams are:

i) Class diagram

ii) Object diagram

iii) Component diagram

iv) Deployment diagram

Behavioural Diagrams: Any system can have two aspects, static and dynamic. So a

model is considered as complete then both the aspects are covered fully. Behavioural

13

Page 14: Sem 7 Minor Project Android App

diagrams basically capture the dynamic aspect of a system. Dynamic aspect can be

further described as the changing/moving parts of a system.

UML has the following five types of behavioural diagrams:

Use case diagram

Sequence diagram

Collaboration diagram

State chart diagram

Activity diagram

6.1.1 USE CASE DIAGRAM

Use case diagrams are a set of use cases, actors and their relationships. They represent

the use case view of a system. So use case diagram is used to describe the relationships

among the functionalities and their internal/external controllers. These controllers are

known as actors. Use case diagrams are used to gather the requirements of a system

including internal and external influences. These requirements are mostly design

requirements. So when a system is analyzed to gather its functionalities use cases are

prepared and actors are identified. Now when the initial task is complete use case

diagrams are modelled to present the outside view. So in brief, the purposes of use case

diagrams can be as follows:

i) Used to gather requirements of a system

ii) Used to get an outside view of a system.

iii) Identify external and internal factors influencing the system.

14

Page 15: Sem 7 Minor Project Android App

Fig. 6.1.1.1: Use Case Diagram

15

Page 16: Sem 7 Minor Project Android App

6.1.2 CLASS DIAGRAM

In software engineering, a class diagram in the Unified Modelling Language (UML) is

a type of static structure diagram that describes the structure of a system by showing

the system's classes, their attributes, operations (or methods), and the relationships

among objects. In the diagram, classes are represented with boxes which contain three

parts:

i) The top part contains the name of the class. It is printed in bold and centred,

and the first letter is capitalized.

ii) The middle part contains the attributes of the class. They are left-aligned and

the first letter is lowercase.

iii) The bottom part contains the methods the class can execute. They are also

left-aligned and the first letter is lowercase.

In the design of a system, a number of classes are identified and grouped together in a

class diagram which helps to determine the static relations between those objects.

16

Page 17: Sem 7 Minor Project Android App

Fig.6.1.2.1: Class Diagram

6.1.3 ACTIVITY DIAGRAM

17

Page 18: Sem 7 Minor Project Android App

Activity diagram is another important diagram in UML to describe dynamic aspects of

the system. Activity diagram is basically a flow chart to represent the flow form one

activity to another activity. The activity can be described as an operation of the system.

So the control flow is drawn from one operation to another. This flow can be

sequential, branched or concurrent. Activity diagrams deals with all type of flow

control by using different elements like fork, join etc. Activity is a particular operation

of the system. Activity diagrams are not only used for visualizing dynamic nature of a

system but they are also used to construct the executable system by using forward and

reverse engineering techniques. The only missing thing in activity diagram is the

message part. It does not show any message flow from one activity to another. Activity

diagram is some time considered as the flow chart. Although the diagrams looks like a

flow chart but it is not. It shows different flow like parallel, branched, concurrent and

single.

18

Page 19: Sem 7 Minor Project Android App

Fig.6.1.3.1: Activity Diagram (STUDENT)

19

Page 20: Sem 7 Minor Project Android App

Fig.6.1.3.2: Activity Diagram (ADMIN)

20

Page 21: Sem 7 Minor Project Android App

6.1.4 SEQUENCE DIAGRAM

A Sequence diagram is an interaction diagram that shows how processes operate with

one another and what is their order. It is a construct of a Message Sequence Chart.

A sequence diagram shows object interactions arranged in time sequence. Object

interactions usually begin at the top of a diagram and end at the bottom. In a sequence

diagram, object interaction occurs through messages on the vertical and horizontal

dimensions and is designated by horizontal arrows and message names. The initial

sequence diagram message begins at the top and is located on the diagram's left side.

Subsequent messages are added just below previous messages. Sequence diagram

messages may be subdivided by type, based on functionality. 

A lifeline, which indicates a role, is represented by a named rectangular box with

adashed line descending from the centre of the diagram's bottom edge. Lifeline boxes

represent participating sequence object instances. Blank instance names represent

anonymous instances.

6.1.4.1 Sequence Diagram

21

Page 22: Sem 7 Minor Project Android App

6.1.5 STATE CHART

A state diagram is a type of diagram used in computer science and related fields to

describe the behaviour of systems. State diagrams require that the system described is

composed of a finite number of states; sometimes, this is indeed the case, while at other

times this is a reasonable abstraction. Many forms of state diagrams exist, which differ

slightly and have different semantics.

Fig.6.1.5.1 State Chart

22

Page 23: Sem 7 Minor Project Android App

6.1.6 COLLABORATION DIAGRAM

A collaboration diagram is a type of visual presentation that shows how various

software objects interact with each other within an overall IT architecture and how users

can benefit from this collaboration. A collaboration diagram often comes in the form of

a visual chart that resembles a flow chart. It can show, at a glance, how a single piece of

software complements other parts of a greater system.

Fig.6.1.6.1:Collaboration Diagram

23

Page 24: Sem 7 Minor Project Android App

6.2 DATABASE DESIGN

The Database of the project is maintained in Ms Access. In Ms Access we have created

4 tables which are Register Table, Syllabus Table, Scheme Table and Time table Table.

Student will register and username and password of student will come in Register

Table. So Register Table maintains the record of student who are registered. In Syllabus

table three records are maintained which are branch, semester and image of syllabus. In

Time table table three records are maintained which are branch, semester and image of

Time table. In Scheme table three records are maintained which are branch, semester

and image of Scheme.

6.2.1 Syllabus Database

24

Page 25: Sem 7 Minor Project Android App

6.2.2 Timetable Database

25

Page 26: Sem 7 Minor Project Android App

6.2.3 Scheme Database

26

Page 27: Sem 7 Minor Project Android App

CHAPTER - 7

TECHNOLOGY USED

Android is a mobile operating system (OS) based on the Linux kernel and currently

developed by Google. With a user interface based on direct manipulation, Android is

designed primarily for touch screen mobile devices such as smart phones and tablet

computers, with specialized user interfaces for televisions (Android TV), cars (Android

Auto), and wrist watches (Android Wear). The OS uses touch inputs that loosely

correspond to real-world actions, like swiping, tapping, pinching, and reverse pinching

to manipulate on-screen objects, and a virtual keyboard. Despite being primarily

designed for touch screen input, it also has been used in game consoles, digital cameras,

regular PCs (e.g. the HP Slate 21) and other electronics.

In computer programming, Eclipse is an integrated development environment (IDE). It

contains a base workspace and an extensible plug-in system for customizing the

environment. Written mostly in Java, Eclipse can be used to develop applications. By

means of various plug-ins, Eclipse may also be used to develop applications in

other programminglanguages: Ada, ABAP, C, C++, COBOL, Fortran, Haskell, JavaScri

pt, Lasso, Lua, Natural, Perl, PHP, Prolog, Python, R, Ruby(including Ruby on

Rails framework), Scala, Clojure, Groovy, Scheme, and Erlang. It can also be used to

develop packages for the software Mathematica. Development environments include the

Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++ and

Eclipse PDT for PHP, among others.

Net Beans is a software development platform written in Java. The Net

Beans Platform allows applications to be developed from a set of modular software

components called modules. Applications based on the Net Beans Platform, including

the Net Beans integrated development environment (IDE), can be extended by third

party developers. The Net Beans IDE is primarily intended for development in Java, but

also supports other languages, in particular PHP, C/C++ and HTML5.NetBeans

is cross-platform and runs on Microsoft Windows, Mac OS X, Linux, Solaris and other

platforms supporting a compatible JVM.The Net Beans Team actively support the

product and seek feature suggestions from the wider community. Every release is

preceded by a time for Community testing and feedback

27

Page 28: Sem 7 Minor Project Android App

Java is a general-purpose computer programming language that is concurrent, class-

based, object-oriented, and specifically designed to have as few implementation

dependencies as possible. It is intended to let application developers "write once, run

anywhere" (WORA), meaning that compiled Java code can run on all platforms that

support Java without the need for recompilation. Java applications are typically

compiled to byte code that can run on any Java virtual machine (JVM) regardless of

computer. As of 2015, Java is one of the most popular programming languages in

use, particularly for client-server web applications, with a reported 9 million developers.

Java was originally developed by James Gosling at Sun Microsystems (which has since

been acquired by Oracle Corporation) and released in 1995 as a core component of Sun

Microsystems' Java platform. The language derives much of its syntax from C and C++,

but it has fewer low-level facilities than either of them.

The original and reference implementation Java compilers, virtual machines, and class

libraries were originally released by Sun under proprietary licences. As of May 2007, in

compliance with the specifications of the Java Community Process, Sun relicensed most

of its Java technologies under the GNU General Public License. Others have also

developed alternative implementations of these Sun technologies, such as the GNU

Compiler for Java (byte code compiler), GNU Class path (standard libraries), and Iced

Tea-Web (browser plug-in for applets).

Microsoft Access, also known as Microsoft Office Access, is a database management

system from Microsoft that combines the relational Microsoft Jet Database Engine with

a graphical user interface and software-development tools. It is a member of

the Microsoft Office suite of applications, included in the Professional and higher

editions or sold separately. Microsoft Access stores data in its own format based on the

Access Jet Database Engine. It can also import or link directly to data stored in other

applications and databases

28

Page 29: Sem 7 Minor Project Android App

CHAPTER - 8

IMPLEMENTATION

8.1 GUI AND DISCUSSIONS

8.1.1 FORMS LAYOUTS

29

Page 30: Sem 7 Minor Project Android App

8.1.1.1 Form Layout

30

Page 31: Sem 7 Minor Project Android App

8.1.2 REPORT LAYOUT

31

Page 32: Sem 7 Minor Project Android App

32

Page 33: Sem 7 Minor Project Android App

33

Page 34: Sem 7 Minor Project Android App

8.1.2.1 Report Layout

34

Page 35: Sem 7 Minor Project Android App

CHAPTER – 9

BLACK BOX TESTING:

Black-box testing is a method of software testing that examines the functionality of an

application without peering into its internal structures or workings. This method of test

can be applied on level of software testing: unit, integration, system and acceptance. It

typically comprises most if not all higher level testing, but can also dominate unit

testing as well.

WHITE BOX TESTING:

White-box testing also known as clear box testing, glass box testing is a method of

testing software that tests internal structures or workings of an application, as opposed

to its functionality. In white-box testing an internal perspective of the system, as well as

programming skills, are used to design test cases. The tester chooses inputs to exercise

paths through the code and determine the appropriate outputs. This is analogous to

testing nodes in a circuit, e.g. in-circuit testing.

White-box testing can be applied at the unit, integration and system levels of

the software testing process. Although traditional testers tended to think of white-box

testing as being done at the unit level, it is used for integration and system testing more

frequently today. It can test paths within a unit, paths between units during integration,

and between subsystems during a system–level test. Though this method of test design

can uncover many errors or problems, it has the potential to miss unimplemented parts

of the specification or missing requirements.

35

Page 36: Sem 7 Minor Project Android App

TEST CASE DESIGNTest

case idUnit to

testPrecond

itionsInput

test dataSteps to be executed

Expected result

Actual result

1 Test if the user has entered username, password duringregister but wrong password during re enter password

The user must be registered with their username and password

Correct username and password entered and wrong entry of re-enter password

1)Enter all the details of registration2) click submit

Proper error must be displayed and user should be asked to register again.

The user gets the message that the password is invalid

2 Test if user is able to login successfully

The login user must belong to one of the categories of the user

Correct username and correct password and selection of user field

1) Enter username, password and select user 2)Click login

User must successfully login to the complaint registration page

User successfully gets login to the web page

3 Test with valid username and empty password

The login user must belong to one of the categories of the user

Correct username and empty password and selection of user field

1) Enter username, no password in password field and select user 2)Click login

Proper error must be displayed and user should be asked to login again.

Error message is not displayed but access to the next page is also not granted

4 Test with empty username and valid password

The login user must belong to one of the categories of the user

Empty username and correct password and user

1) No username, correct password and select user 2)Click login

Proper error must be displayed and user should be asked to login again.

Error message is not displayed but access to the next page is also not granted

5 Test if the user has entered username, password duringregister but wrong password

The user must be registered with their username and password

Correct username and password entered and wrong entry of re-enter password

1)Enter all the details of registration2) click submit

Proper error must be displayed and user should be asked to register again.

The user gets the message that the password is invalid

36

Page 37: Sem 7 Minor Project Android App

during re enter password

6 Test with empty semester and valid branch name

The user must be viewed a desired result of time table syllabus or scheme.

Empty semester and valid branch name

1) Enter branch name and semester 2)click submit

Proper error must be displayed and user should be asked to enter the correct field.

Error message is not displayed but access to the next page is also not granted.

CHAPTER - 10

37

Page 38: Sem 7 Minor Project Android App

10.1 CONCLUSION

The project has been developed for the successful management of the activities at

Medicaps Institute of Technology and management. In this various information of each

student mainly syllabus, scheme, time table has been maintained efficiently. The system

has been thoroughly tested with sample of data and the performance of the system

proved to be efficient and extremely user friendly. The system is flexible and changes if

any can be made without much difficulty. Every step has been taken to make the

working of the project comfortable as possible for the user.

10.2 FUTURE ENHANCEMENT

We look forward the following changes in our system:-

i. There is not a facility to display the result in our software, this can be the most

important improvement to the software

ii. Also the provision for any notification can be a vital improvement to the project

iii. The speed matters a lot so our next target will be to improve the speed of the

software

iv. To make the project more attractive, an efficient gui is also our next and most

important for enhancement.

10.3 LIMITATIONS

i. It does not show the notification when new data enter.

ii. It does not show result as rgpv site.

iii. Zoom function does not work while viewing image.

38