Sem 7 Minor Project Android App
Short Description
CS branch Semester 6, MInor Project An Android Application...
Description
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) ii) iii) iv) v)
It is very time consuming. Website does not notify students with latest updates in timetable or syllabus. There is no such application designed for cellphones. The website is not compatible with all web browser so it wastes a lot of time. 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) ii) iii)
User Friendly. Time efficient. Facility of notifications has been provided.
CHAPTER - 2 1
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
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
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 ? ).
3.2 TEAM ORGANIZATION Table 3.2.1
4
ACTIVITY ANALYSIS
ROLE ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava
DESIGNING
ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava
CODING
ShubhamLahoti,SourabhSethiya,VibhorSilawat,UjjawalShrivastava
CHAPTER - 4 SYSTEM ANALYSIS 5
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.
4.2 PROCESS MODEL USED 4.2.1 SELECT MODEL
6
Model selected for our project is Iterative Incremental model.
Fig 4.2.1.1: Iterative Incremental Model
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. 7
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.
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 8
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.
Fig 5.1: Context Level DFD
9
Fig 5.2:Level 1 DFD
10
Fig 5.3:Level 2 DFD
CHAPTER - 6
11
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
12
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 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. 13
Fig. 6.1.1.1: Use Case Diagram
14
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,
ii)
and the first letter is capitalized. The middle part contains the attributes of the class. They are left-aligned and
iii)
the first letter is lowercase. 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.
15
Fig.6.1.2.1: Class Diagram
6.1.3 ACTIVITY DIAGRAM 16
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.
17
Fig.6.1.3.1: Activity Diagram (STUDENT) 18
Fig.6.1.3.2: Activity Diagram (ADMIN)
19
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
20
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
21
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
22
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.
23
6.2.1 Syllabus Database
6.2.2 Timetable Database
24
6.2.3 Scheme Database
25
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 crossplatform 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 26
Java is a general-purpose computer programming language that is concurrent, classbased, 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
27
CHAPTER - 8 IMPLEMENTATION 8.1 GUI AND DISCUSSIONS 8.1.1 FORMS LAYOUTS
28
8.1.1.1 Form Layout 29
8.1.2 REPORT LAYOUT
30
31
32
8.1.2.1 Report Layout
33
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.
34
35
TEST CASE DESIGN Test case id
Unit to test
Precond itions
Input test data
Steps to be executed
Expected result
Actual result
1
Test if the user has entered username, password during register but wrong password during re enter password Test if user is able to login successfully
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 registration 2) 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
The login user must belong to one of the categories of the user
1) Enter username, password and select user 2)Click login
User must successfull y login to the complaint registration page
User successfu lly gets login to the web page
Test with valid username and empty password
The login user must belong to one of the categories of the user
Correct username and correct password and selection of user field 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.
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.
Test if the user has entered username, password during register but wrong password during re enter password Test with empty semester and valid branch name
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 registration 2) click submit
Proper error must be displayed and user should be asked to register again.
Error message is not displayed but access to the next page is also not granted Error message is not displayed but access to the next page is also not granted The user gets the message that the password is invalid
The user must be viewed a desired result of time table syllabus or
Empty semester and valid branch name
1) Enter branch name and semester 2)click submit 36
Proper error must be displayed and user should be asked to enter the
2
3
4
5
6
Error message is not displayed but access to the next page is
CHAPTER - 10 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 37
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
ii. iii.
important improvement to the software Also the provision for any notification can be a vital improvement to the project The speed matters a lot so our next target will be to improve the speed of the
iv.
software To make the project more attractive, an efficient gui is also our next and most important for enhancement.
10.3 LIMITATIONS i. ii. iii.
It does not show the notification when new data enter. It does not show result as rgpv site. Zoom function does not work while viewing image.
38
View more...
Comments