class organizer using android technology
DESCRIPTION
Class Organizer Using Android TechnologyTRANSCRIPT
Class Organizer using Android Technology
A Software Engineering Project
Presented to
The Faculty of the College of the Computer Studies
La Salle University – Ozamiz City
In Partial Fulfilment of the Requirements for the
CS412 Software Engineering Course
By:
John Marc A. Delvo
Joriel B. Dioquino
Rommel C. Rosal Jr.
ABSTRACT
Since the mobile technology has advance, a lot of mobile applications were design and
developed. Such applications changed the way people work and the same time entertained.
Moreover, it employs gestures such as swiping, tapping and tilting with the aid of mobile built-in
components. Technically, as observe, teachers usually makes use of paper and pen in adding,
recording and assigning students to their respective chairs. The aim of this study is to introduce,
develop and implement a mobile class organizer for teachers using android technology.
CHAPTER 1
PROJECT OVERVIEW
INTRODUCTION
Development of technology has made a big difference in the society – from the
traditional ways of working to the high technology behaviour purposes. When drawn back in the
past, as well now, teachers followed the traditional way of checking and recording student
attendance as well as assigning students to their respective seats. But nowadays, gadgets were
made to make people’s work comes easier. Those gadgets include mobile phones, tablets and etc.
which contain applications.
A teacher’s job always begin with taking class attendance. It is much harder to check if
the teacher calls the name of the student one by one and much more work if there are changes to
be done in your attendance records. Moreover, it is hard to trace the absences, number of late and
excuse because of the attendance records are not organize well.
Class Organizer using Android Technology is a modernize student class record. The
primary user of this application are teachers, this can help them to easily check the attendance of
the students and can easily track their absences. This application is more comfortable than using
papers and pen to check student records.
Page | 1
Rationale
The purpose of the study is to introduce, develop and implement a Class Organizer using
android technology.
Project Objectives
The study aims to create a mobile class organizer which specifically aims to:
1. Lessen the use of papers in creating class attendance;
2. Introduce a new way of creating a class organizer as well as checking
Students’ attendance;
3. To keep track of attendance over time.
4. Implement a class organizer using Android Technology;
Significance of the Study
The research study is beneficial to the following:
Teachers. This study would help teacher’s makes their works become easier when
it comes to assigning student’s seat as well as checking student’s attendance.
Future Researcher(s). This study would serve as the basis for the future study.
Page | 2
Definition of Terms
Android – is a linux-based OS designed for mobile devices.
SDD – Software Design Description
SPMP – Software Project Management Plan
SDK – Software Development Kit
SRS – Software Requirement Specification
API – Application Programming Interface
SQLite – is an in-process library that implements a self-contained, server less, zero
configuration, transactional SQL database engine.
Page | 3
CHAPTER 2
PROJECT ANALYSIS AND DESIGN
Analysis Models (Software Paradigm Used)
Rapid Application Development Model
Figure 1. Diagram of Rapid Application Development Model
Class Organizer is based on the agile process modelling tool known as the Rapid
Application Development Model. This process puts importance on the design and construction of
system through the use of agile concepts and methodology. Subsequently Rapid Application
Page | 4
Development tools has been used in creating some android applications such as Basic4Andriod,
that is why for that object the researcher’s had made use of it.
During the design process, the following has been considered:
Requirements Analysis and Specification
Class Organizer Application is developed in an agile manner. Thus, it is essential that the
system’s performance and functionality requirements should be greatly analysed and checked as
to its data. The system’s functional requirement is to actively store student’s attendance using the
Android intents which will call necessary classes as the button ‘click’. Phone tapping here serves
as system’s performance requirement.
Implementation and Unit Testing
The components made up the system were composed in this phase. At this point,
developers are expected to gather and test possible components that would greatly satisfy the
qualifications and standards needed in developing the system. Criteria for a qualified component
are:
Page | 5
a. Programming language – it is important for the developers to be much familiar of the
programming language that he/she will be using in developing the system.
b. Quality of the result – it is the ability of a module to function in a way that it is
expected and would greatly please the expected output.
System Integration
Those selected components are integrated to the planned component framework such it
follows the implementation design of the system. In Class Organizer Application, the developers
integrated Application Programming Interface (API) for question generation using SQLite DB as
well as its Application Engine. The integration was done during the development of the
component.
Architectural Design
Figure 2. Class Organizer using Android Technology
Page | 6
ANDROID PHONE
DISPLAY CLASS LIST
CLASS MANAGER
APPLICATION ENGINE
GRAPHICS ENGINEDISPLAY
Figure 2 shows the process of the application. Once the user executes motion by tapping
the mobile phone, the android application’s usual environment monitors the recognized action.
The application will then display main activity of the application allowing the user to create,
delete or view a class. Once the user clicked his/her choice, the database of the application will
automatically save and retrieve data. When the user starts inputting or removing students data,
the application engine will processed the necessary activities and displays it on the class activity.
Page | 7
Activity Diagram
Figure 3. Add Class Activity Diagram of the Proposed Application.
Figure 3 describes the activities of the Add Class activity of the proposed application.
Page | 8
Figure 4. Edit Class Activity Diagram of the Proposed Application
Figure 4 describes the activities of the Edit Class activity of the proposed application.
Page | 9
Figure 5. Delete Class of the Proposed Application
Figure 5 describes the activities of the Delete Class of the proposed application.
Page | 10
Figure 6. Columns/Rows Activity Diagram of the Proposed Application
Figure 6 describes the activities of the Columns/Rows activity of the proposed application.
Page | 11
Figure 7. Add Student Activity Diagram of the Proposed Application
Figure 7 describes the activities of the Add Student activity of the proposed application.
Page | 12
Figure 8. Edit Student Activity Diagram of the Proposed Application
Figure 8 describes the activities of the Edit Student activity of the proposed application.
Page | 13
Figure 9. Delete Student Diagram of the Proposed Application
Figure 9 describes the activities of the Delete Student activity of the proposed application.
Page | 14
Figure 10 View Students Activity Diagram of the Proposed Application
Figure 5 describes the activities of the View Students activity of the proposed application.
Page | 15
Figure 11. Add Attendance Activity Diagram of the Proposed Application
Figure 11 describes the activities of the Add Attendance of the proposed application.
Page | 16
Figure 12. View Attendance Activity Diagram of the Proposed Application
Figure 12 describes the activities of the View Attendance activity of the proposed application.
Page | 17
Figure 13. View Attendance Activity Diagram of the Proposed Application
Figure 13 describes the activities of the View Attendance Activity of the proposed application.
Page | 18
Figure 14. Sort Activity Diagram of the Proposed Application
Figure 14 describes the activities of the Sort activity of the proposed application.
Page | 19
Class Diagram
Figure 15. Class Diagram of the Proposed Application
Figure 15 describes the class diagram of the proposed application with its corresponding classes
that composed the application itself.
Page | 20
Use Case Diagram
Figure 16. Use Case Diagram of the Proposed Application
Figure 16 describes the list of use case diagram of the proposed application with its
corresponding use cases
Page | 21
CHAPTER 3
SOFTWARE TESTING STRATEGIES AND TECHNIQUES
Testing Strategies
The software developer make use of Black Box Testing and Integration Testing as
its testing strategies. Black Box Testing is a kind of software testing that alludes the tests based
on from the software interface. It is a testing technique wherein testing of the system has been
thoroughly examined with little regard on the internal structure of the software and pretty much
focuses on the functionality of the software under test (SUT). This type of testing is based
entirely on the software requirements and specifications.
Testing Techniques
Integration Testing is a software testing technique in which software architecture
has been constructed while tests were conducted to find out errors which is associated with
interfacing. Data Communication among different modules is the focus for this kind of testing
technique. Moreover, as the software and hardware components were combined and tested, the
Page | 22
evaluation for the interaction between the user and the system itself was also observed. The
developer used this kind of testing technique to verify and ensure the system’s reliability.
Furthermore, the developer also made use of functional testing to make sure that the
functionality specified in the requirements specifications work. Under it, the advocate chose to
perform Usability Testing to evaluate the extent to which a user can learn to fully operate the
system or component. Testing was done by players who played and evaluated the application.
Application Engine
This module will receive the commands from the user by tapping on the mobile device
screen and perform its equivalent command for the game. Furthermore, the application engine is
the primary responsible of every activity called to perform as to its function.
Page | 23
CHAPTER 4
RESULTS AND OBSERVATIONS
The proponents conducted software survey last March 5-8, 2012 to evaluate each
functions of the system. The proponents asked some teachers and education students to test the
application. After testing, the proponents conducted a survey through questionnaires. The results
were interpreted and analysed to meet the system objectives and to gather necessary information
for the improvement of the system.
During the testing, the proponents made use of a Black Box Testing strategy specifically
Usability Testing under Functional Testing.
The purpose of Usability Testing is to evaluate the extent to which a user can learn to
operate, prepare inputs for, and interpret outputs of the system or component.
The proponents invited 100 respondents in any sexes:
Table
Respondents Type
Respondents Number of Respondents
Students 100
Page | 24
INTEGRATION TESTING
Objectives: Implement the Class Organizer using Android Technology
Expected Results: To actively view the created class generally stored on SQLite database.
Test: If the system would create class once the user finishes inputting the required information
on the Add Class button.
Result:
Figure 17. Add Class Interface
Page | 25
Observation: When the user finishes adding a class, the system automatically displays the created
class.
USABILITY TESTING (QUESTIONNAIRE)
Questions Rating
1. User Interface is user friendly 1 2 3 4 5
2. Application environment is easy to manipulate. 1 2 3 4 5
3. Inputted words were readable. 1 2 3 4 5
4. Buttons were working properly 1 2 3 4 5
5. Student attendance were save after checking the attendance. 1 2 3 4 5
6. Columns and Rows of the class can be modified. 1 2 3 4 5
7. The date and time is appropriate to the present date and time. 1 2 3 4 5
8. The colors assign were suitable for the attendance. 1 2 3 4 5
9. The name can be sorted according to their family names
alphabetically.
1 2 3 4 5
10. The data are save in the SQLite database and can easily retrieve. 1 2 3 4 5
Table 18. Participants Evaluation Results
Page | 26
Range Rating
0.0-1.99 Very Poor
2.0-2.99 Poor
3.0-3.99 Satisfactory
4.0-4.99 Very Satisfactory
5.0 Excellent
Page | 27
FUNCTIONAL TESTING
Test 1: If the system displays the Class List once the player clicks the application icon.
Result:
Figure 19. Class List Interface
Observation: The system can recognize the gesture done by the user since the application
interface pops out.
Page | 28
Test 2: If the system would display class interface once the user clicks a class in the class list.
Result:
Figure 20. Class Interface
Observation: The system would automatically display the class interface after the user chooses a
class in the class list.
Page | 29
Test 3. The system can automatically view the students list when the user taps the View Students
button.
Result:
Figure 21. View Student Interface
Observation: The system can display the student list of the class once the View Students button
is clicked.
Page | 30
Test 4. The system can automatically display the attendance records of the student.
Figure 22. Attendance List Interface
Observation: The system can display the attendance records once the View Attendance option is
clicked in the student list interface.
Page | 31
CHAPTER 5
SUMMARY OF FINDINGS, CONCLUSIONS AND RECOMMENDATION
Summary of Findings
After gathering and interpreting from the software engineering survey, the system’s
performance, usability and functionality were guaranteed through testing. The system was tested
using laptop with Intel® Core™ i5-4210U CPU @1.70GHz 2.40GHz, 4 GB RAM, and
Windows 8 operating system.
The proponents used Microsoft Windows 8 Operating System, Android System Development Kit
(SDK) Version 2.3.4 (Jellybean) and Eclipse Helios. Those are the minimum requirements in
developing the Android-based application.
In Integration Testing, the user can actively view the class stored in the SQLite database
depending on what class the user had chosen in the class list by simply tapping. In Functional
Testing, the system shows the functional interfaces proposed application.
Page | 32
Conclusion
Based on the results and observations, the proponents conclude that the system attained
its objectives and would surely help the user with their needs in terms of using the application.
The system:
1. Lessen the use of paper sheets in making class attendance.
2. Can directly edit student attendance as well as student name.
3. Columns and Rows can be modified.
4. Can save and retrieve data from SQLite database.
5. Attained the system objectives of the proposed application.
Recommendation
Class Organizer using Android Technology is designed to modernize the teacher’s way
of making class attendance sheet as well as checking the attendance, this application can only do
what the teachers usually do in checking the student attendance.
Page | 33
For future researchers who would like to conduct a related study, the researchers commend that:
1. The user could use and instruction or help button to guide them in using the
application.
2. Add more additional colors to the environment of the application such as background
and student chairs.
3. That could input quizzes and exam scores and storing it on the SQLite database and
will automatically calculate their grades.
4. Class Organizer could be link in the school student portal for submission of student
grades and attendance.
Page | 34
APPENDIX A
QUESTIONNAIRE ON CLASS ORGANIZER
We are conducting an evaluation study of the application “Class Organizer-an android-
based game”. Your voluntary participation is requested so we may learn more about the things
need to be changed regarding the application’s interface design. Our questionnaire will take
approximately 5 minutes. You have an option to either place your name on the questionnaire or
not. Again, your participation is voluntary and you may choose to not answer all questions on the
questionnaire even after signing the consent. If you are willing to participate, please answer and
sign this form.
Name (Optional): Date:
Direction: Answer the following and encircle the best answer of your choice.
1 – Very Poor 2 – Poor 3 – Satisfactory 4 – Very Satisfactory 5 - Excellent
Questions Rating
11. User Interface is user friendly 1 2 3 4 5
12. Application environment is easy to manipulate. 1 2 3 4 5
13. Inputted words were readable. 1 2 3 4 5
14. Buttons were working properly 1 2 3 4 5
15. Student attendance were save after checking the attendance. 1 2 3 4 5
16. Columns and Rows of the class can be modified. 1 2 3 4 5
17. The date and time is appropriate to the present date and time. 1 2 3 4 5
18. The colors assign were suitable for the attendance. 1 2 3 4 5
Page | 35
19. The name can be sorted according to their family names
alphabetically.
1 2 3 4 5
20. The data are save in the SQLite database and can easily retrieve. 1 2 3 4 5
Thank you for your participation.
Participant Signature
_____________________
APPENDIX B
Page | 36
SPMP
SOFTWARE PROJECT MANAGEMENT PLAN
OF
Class Organizer Using Android Technology
Preface
Page | 37
This document intends to develop a mobile application with the use of android
technology through specifying a project plan. It also provides a brief on how to build the project,
as well as the milestones and deliverables needed. Mr. Erbeth Gerald T. Delvo, the subject
adviser and other members of the panel are the particular audience of this project. The student
refers the SPMP as its guide document in developing the product.
Software Project Overview
Page | 38
A. Rationale
Purpose
The primary purpose of this plan is to direct the researchers on its actions and the
process that it may undergone on developing the application which features and android
technology on mobile.
Scope of Project Plan
The scope of Class Organizer is on the creation and implementation of a Class
Organizer using android technology on mobile phone.
Objectives:
Page | 39
1. Automatically save student attendance on the database of the
application;
2. Minimize the use of paper student attendance and make use of tapping;
3. Rows and Columns can be modified.
B. Project Assumption and Constraints
By the end of the semester, the researchers are expected to finish this project. The
basis of the researcher to complete its project will then be the commitment and guidance
of the subject adviser, as well as time management, financial support and effort of the
researcher itself.
C. Project Deliverable
Page | 40
List of project deliverable
Software Management Plan
Software Requirements Plan
Software Design Description
Software Testing Description
Software Chapter Documentation
Software Itself
D. Schedule & Budget Summary
a. Evolution of the Plan
This project management plan is a dynamic document in which it changes
as the development of the project improves step by step.
Page | 41
Due Date
Software Project Management Plan December 19, 2014
Software Requirements Specification January 5, 2015
Software Design Document February 26, 2015
Presentation March 16, 2015
Software Testing Description March, 16, 2015
Final Paper March 18, 2015
E. References
Pressman, R. (2010, &7th Edition). Software engineering: A Practitioner’s
Approach. New York: McGraw-Hill.
F. Operational Definition of Terms
Terms Description
SPMP Software Project Management Plan
SDD Software Design Document
SRS Software Requirement Specification
STD Software Testing Documentation
Deliverables Necessary things to be delivered
Page | 42
Project Organization
A. Interfaces
a. External Interface(s)
The external interface for this project will be the mobile user.
b. Internal Interfaces
The members of the group who are directly involved in the development of this
project was the internal interface of this project specifically John Marc A. Delvo as
the System Analyst, Joriel B. Dioquino as Project Developer and Rommel Rosal Jr. as
Project Designer.
c. Roles and Responsibilities
The project manager is the one responsible in managing the project. He is
the one who makes the different decisions that would basically benefit the project.
Prior to this, the system manager must hold on to the policy of communications
and modifications so that changes that may encounter in the near future may
happen in accordance to the work description.
Page | 43
Moreover, the system analyst is the one responsible on guiding the entire
development of the system. While performing its tasks, the system analyst must as
well ensure to match the objectives to the goals and requirements of the
organization. He as well must be clerical in terms of analysing, understanding and
implanting solutions to the problems. In general, it is necessary that the chosen
system analyst must possess a certain level of skills and responsible enough to
document and capture all the needed requirements in order to implement solutions
that will meet organization’s needs.
Furthermore, the system designer is the one responsible in designing the
components that made up the system and on monitoring the performance
measurement of the processes.
B. Managerial Process Plans
a. Start Up Plan
i. Estimation Plan
This software Project Management Plan is assumed to be completed on
December 19, 2015
ii. Staffing Plan
The project is estimated to consume the entire semester. The preliminary
measures for the requirements will be done by the system analyst and
designer. The remaining time of the semester will be spent by programmers in
developing the system.
Page | 44
iii. Resource Acquisition Plan
All of the hardware and software tools are already ready for the project.
The product will then be presented and released after the system is fully
developed.
iv. Project Staffing and Training Plan
The researcher doesn’t need additional staff to work on the project. But
the researchers are looking forward for tutorials related to this study. This
tutorials that can help the developers be knowledgeable enough to develop the
project.
b. Work Plan
i. Work Activities
Work activities structures are listed below:
Number Task Name Duration
1 Project Planning
1.1 Define & Develop System Requirements 1 day
1.2 Define Interface System Requirements 5 days
1.3 Prioritize & Integrate System
Requirements
2 days
1.4 Analyze System Functions 3 days
Page | 45
1.5 Develop System Architecture 3 days
2 Project Design
2.1 Perform Architecture Design 2 days
2.1.1 Design Software Components 3 days
2.2 Design Interfaces 4 days
2.2.1 Design Software Interfaces 4 days
2.3 Perform Detailed Design 3 days
2.3.1 Detail Design Software Interface 2 days
3 Establish Project Environment
3.1 Acquire & Test Software Components 15 days
3.2 Identify Communication Needs 1 day
3.3 Create Communication Plan 1 day
3.4 Establish Software Engineering
Workspace
1 day
4 Project Development
4.1 Develop Software Interface 20 days
4.1.1 Code Software Interface 20 days
Table. Work Activities Schedule
ii. Budget Allocation
Resources Requirement Amount
Bond Paper 1 Bundle 220.00
Document Printing Both colored and Plain Black 750.00
Page | 46
Android-powered
Smart Phone
with Android Version
(Jellybean)
8,000.00
Other Expenses 700.00
Table. Budget Allocation
c. Control Plan
i. Requirements Control Plan
Modifications may happen in Software Requirements Specifications
(document) shall be talk over with the instructor. After those modifications have
been substantiated, a revised version of SRS document shall be presented to the
instructor. Though, no modifications shall be made to the requirements once the
Software Design Document (SDD) is finished.
ii. Schedule Control Plan
If ever the work planned on section D is not followed due to other state of
affairs affecting the planned schedules, the developers will take the needed
adjustments in order to finish the project on time.
iii. Budget Control Plan
Page | 47
If financial shortages happen while the project is continuing, the
researchers will find ways and resources to be adequate the spare budget.
iv. Quality Control Plan
Planning and developing a software quality assertion following the
suggested standards is to be made in order to fund the product’s requirement.
v. Reporting Plan
The researchers will describe the project deliverables in section D. The
deliverables’ updates and variations will be reread and talk over together by the
researchers and the instructor. The project’s status report will be defended by the
researchers before the arranged defense.
vi. Metrics Collection Plan
None.
Page | 48
vii. Risk Management Plan
Risk: The proponents lacks technical skills and knowledge in handling the
necessary tools for the project.
Solution: The proponents shall double their time and effort in researching,
reading and understanding from online tutorials for extra knowledge to
implement those tools and methods in accordance to the project.
viii. Close Out Plan
At the end of the semester, comprehensive report of the
respondents, purpose and target that has been attained will be stated on the
document as part of the final documentation.
Technical Processes
A. Process Model
Page | 49
In this project the researcher is determined to use Rapid Application Development
Model. Subsequently the Rapid Application Model is a type of an incremental model, it lets the
researcher to develop the project in parallel at a short development cycle.
B. Methods, Tools and Techniques
Most of the Software Project Management Plan steps are applied in this project and all
revision steps will be shown in different versions of the project. There should be some minor and
major changes and the deliverables are expected to be finished at the end of the semester. The
programming language to be used for the entire program is Java and Database SQLite which is
supported by Android SDK. The program will be tested by using BlueStacks an Android
Emulator and the codes will be written and compiled in Eclipse IDE.
C. Infrastructure Plan
Resources Details/Specification
Laptop CPU : Intel Core i5 (2.40 GHz)
MEMORY : 4GB DDR3 Memory
STORAGE : 1TB HDD
O.S : Windows 8
Table. Infrastructure Plan
Page | 50
D. Product Acceptance Plan
The product testing will be witnessed by the researchers and instructor for final proposal
and approval, and the panellist will check the product to decide whether to accept or not.
Supporting Process Plans
A. Configuration Management Plan
Let us consider that the project deliverables can have changes. If there is a change
requirement after the instructor reviews the deliverable for the first time, it will be updated to a
new version. If the instructor the accepted the deliverable for the first time, for example SRS, the
baseline document will be SRS version 1.0. If changes come, the deliverable will be updated and
numbered with 1.1, 1.2, etc. and the next full distribution to the teacher again will be version 2.0,
etc.
B. Validation and Verification Plan
Validation and Verification Plan will be developed by the developers to check the quality
and assertion of the system.
C. Documentation Plan
This documentation is based on IEEE standards. The IEEE standard requires SPMP,
SRS, SDD and STD. These deliverables will be received by the instructor and to be reviewed.
Page | 51
Deliverable work products will be documented and delivered according to distribution list on the
scheduled dates.
D. Quality Assurance Plan
All deliverables should be ready by the following IEEE standard. The proponents should
follow the schedule properly so that the project plan should be finished in appropriate time to
make certain Quality Assurance.
E. Review and Audits
The researchers will conduct wide testing on the program, analyzing and understanding
every aspect of the codes to ensure that applying solutions can be made in less time and bugs will
be removed before hand.
F. Problem Resolution Plan
Any major problems met by the researchers should be reported directly to the instructor.
G. Subcontractor Management Plan
None.
Page | 52
H. Process Improvement Plan
In order for the proposed project to be successful, the researcher will manner series of
activities in accordance to business plan and respondents itself. To make the proposed project
successful, the group will constantly conduct the activities in accordance with the business plan
and the respondents.
Page | 53
APPENDIX C
Software Requirements Specifications (SRS)
Introduction
1.1 Purpose
This document provides the software requirement specification of the
functionalities and specifications of Class Organizer Android App.
1.2 Document Conventions
Class Organizer An application used to easily monitor
the attendance of the students. It is also
used as a seat plan.
API Application Programming Kit
SDK Software Development Kit
Page | 54
1.3 Intended Audience and Reading Suggestions
The faculty of the College of Computer Studies (CCS) are expected to be the
audiences of this document since they are the critics and panels of this subject and
also the teachers who will use the system. This document also serves as a reference
for the College of Computer Studies student researchers in the future.
1.4 Project Scope
The Class Organizer using Android Technology is using a standalone mobile
application which uses tone of gesture motion which basically focuses on tapping the
devices in using the application.
1.5 References
Pressman, R.S. (2014 8th Edition). “Software Engineering: A Practitioner’s
Approach.” New York McGraw-Hill
2 Overall Description
2.1 Product Perspective
The Class Organizer Application may help teacher in monitoring the students’
attendance.
2.2 Product Features
The Class Organizer Application has the following features:
•Stores Classes, Students, Attendance’ data using the Android SQLite database.
•Provides the user to change the Rows and Columns of the seat plan.
•Provides the user to freely choose where to put a student to their respective seats.
•Automatically sort the student by their last name.
Page | 55
2.3 User Classes and Characteristics
The users are classified in the following:
•Advanced end users:
Users that has the knowledge of Android programming and can modify the system by
creating a system related to this and use the features included, and maybe improve the
system by adding more features.
•Novice end users:
Users with no knowledge on Android programming and merely use the system as to
its purpose.
2.4 Operating Environment
The Class Organizer application runs only in an Android operating system with
versions 4.0 (Ice Cream Sandwich) or up. The system is written in Java programming
language and also with the use of SQLite as the database for Android systems.
2.5 Design and Implementation Constraints
The system constraints include:
•Device limitations
•Interfaces to other applications
•Reliability requirements
2.6 User Documentation
The user documents will be a separated document which has all the instructions of
how to use the system.
Page | 56
2.7 Assumptions and Dependencies
The project resources are the form of time, effort, money, and knowledge in making
the project deliverables.
3 System Features
3.1 Attendance
3.1.1 Description and Priority
This feature allows the user to set the attendance status of a student. This
feature is of high priority since this serves as the purpose of the system.
3.1.2 Stimulus/Response Sequences
When the user selects a student, an attendance dialog will appear. From
there, the user will be able to set the attendance status of the student.
3.1.3 Functional Requirements
The user will be required to have an Android operating system based
device and have this application installed. (REQ-1)
A Class Activity is needed for this feature to be accessed (REQ-2). Also a
Student Activity is needed.(REQ-3)
REQ – 1: Android Operating System based device.
REQ – 2: Class Activity
REQ – 3: Student Activity
Page | 57
4 External Interface Requirements
4.1 User Interfaces
The user will start the application process by selecting the application icon in the
Android application menu. The Class Activity screen will show. From there, the user
can add classes on clicking the menu. Once a class is created, you can now view your
seat plan and from there, you can add or modify students, set their attendance or view
their attendance.
4.2 Hardware Interfaces
The physical characteristics of the application consist of various mobile devices that
run the Android operating system version 4.0 (Ice Cream Sandwich) or higher.
Mobile devices contain different hardware specifications, and the application will
only require minimal hardware requirements to operate fully.
4.3 Software Interfaces
The application uses many different software interfaces. The Android operating
system is essential for the product to operate. Eclipse Android ADT is needed for the
development part of the project.
4.4 Communications Interfaces
Communication is not needed for this project since it is based locally.
5 Other Non-functional Requirements
5.1 Performance Requirements
This project needs to load in no more than 5 seconds and will have a slight lag during
certain operations though these lags are mostly not felt by the user.
Page | 58
5.2 Safety Requirements
This project has no effect whatsoever on the data loss or damage on the device.
5.3 Security Requirements
This project does not need any of the permissions that has been set by Android and
will not retrieve any personal data. Also, this product does not require internet
connection to operate.
5.4 Software Quality Attributes
Quality attributes that concern our product include: availability, maintainability,
portability, reliability, re-usability, robustness, testability, and usability. The product
is needed to be available to our users and be able to use the product in the manner it
was intended. Being a mobile device application, our product is already portable and
reusable. Reliability for our product to not crash or lag.
Page | 59
APPENDIX D
SOFTWARE DESIGN DESCRIPTION (SDD)
Introduction
A. Purpose
This Software Design Description (SDD) describes the structures of the Class
Organizer using Android Technology and how the requirements expressed in the
Software Requirements Specification (SRS) document are met.
This document will also serve as the blueprint of the software process.
The intended audiences of this document are:
Mr. Erbeth Gerald T. Delvo, Software Engineering subject advisor
John Marc A. Delvo, Class Organizer using Android Technology Developer.
Page | 60
Joriel B. Dioquino, Class Organizer using Android Technology Developer.
Rommel C. Rosal Jr., Class Organizer using Android Technology Developer.
B. Scope
The software described by this design description is the Class Organizer using
Android Technology. This document makes no assumptions about the systems
requirements and serves only as a communication device to describe how to implement
the requirements stated.
Revisions for this document will be implemented if further changes are needed.
C. Glossary
Term Description
SDD Software Design Description
SRS Software Requirements Specification
SDK Software Development Kit
Deliverables Any documents/software needs to be
delivered
Page | 61
D. References
Pressman, R.S. (2010 7th Edition). Software Engineering: A Practitioner’s
Approach. New York: McGraw-Hill.
E. Overview of the Document
This document dorms a comprehensive documentation package for the Class
Organizer system. It reflects the information found in the SRS of Class Organizer as well
as solution procedure, diagrams and descriptions of the components and functions are
also discussed.
I. Deployment Diagram
Figure. Deployment Diagram of Class Organizer Application.
Page | 62
<<device>>
Mobile Phone
{Prog Lang = Java}
{OS = 2.3.4 (Jellybean)}
{Database = SQLite}
II. Architectural Design
Rapid Application design creates a system that is in accordance to system
requirements in a short span of time. Since it is done in an agile manner, the
development process of Class Organizer using Android Technology will be
developed in a fast paced approach as it is build up immediately right after the design
was created.
Figure. Block Diagram of the Proposed Application Development
Figure. shows the process of the application. Once the user executes motion by tapping
the mobile phone, the android application’s usual environment monitors the recognized action.
The application will then display main activity of the application allowing the user to create,
delete or view a class. Once the user clicked his/her choice, the database of the application will
automatically save and retrieve data. When the user starts inputting or removing students data,
the application engine will processed the necessary activities and displays it on the class activity.
Page | 63
ANDROID PHONE
DISPLAY CLASS LIST
CLASS MANAGER
APPLICATION ENGINE
GRAPHICS ENGINEDISPLAY
III. Data Structure Design
The data structure design shows the database schema
IV. Use Case Realizations
This document follows use cases in order for the software to be elaborated and
emphasize.
Figure. Use Case Diagram of the Proposed Application.
V. Interface Design
Page | 64
Figure. Class List Interface
Figure. Class Interface
Page | 65
Figure. View Student Interface
Page | 66
Figure. Attendance List Interface
APPENDIX E
Recommended Requirements
Android – based smart phone
Storage Space of 1MB
Minimum memory capacity of 512MB
Android Version 4.0 (Ice Cream Sandwich) or higher
Software Installation Procedure
1. Copy the “ClassOrganizer.apk” file located at the bin folder.
2. Paste the copied file to your android device.
3. Locate the copied file on your android device using a file manager.
4. Once located, click the file to install.
5. If prompt, click “Install”.
Page | 67
6. Open the Class Organizer logo to run the program.
7. Click Options button in the top-right to show the menu.
8. Click “Add Class” to add classes.
9. Click on the created class to view the seat plan.
Page | 68
10. You can modify a class by holding down a selected class.
Page | 69
11. In the seat plan, press an empty seat to add a student.
Page | 70
12. Click a student to change the attendance.
13. Long click a student to modify or view their attendance.
Page | 71
14. Click “View Attendance” to view the student’s attendance.
15. Click Options button in the top-right to show the menu.
16. Click “View Students” to view existing students.
Page | 72
Page | 73
Page | 74