Smart Campus Rough Report

Embed Size (px)

Citation preview

Smart Campus

CONTENTS1. Introduction 2. System study 2.1 Existing sys 2.2 Proposed sys 2.3 Configuration 2.4 Software requirement 2.5 Packages 2.6 System analysis 3. System design 3.1 Input design 3.2 Process design 3.3 Data flow diagram 3.4database design 4. System implementation 5. Testing 6. Conclusion 7. Bibliography 8. Appendix

Department of computer engineering, SOE

1

Smart Campus

CHAPTER-1 INTRODUCTIONSmart Campus is an application for android based phone which will serve the students with all the basics information as their academic records, co-curricular activities, and reference search from the collage library, and college map with faculty finder. Imagine a convenience when any workshop or competition is happening in the campus so just by updating the details on the single device it will be available to all the other devices which are running the Smart Campus application. Students can query the library database to get the status of a book, and if its not available, then the names of students who have been issued that book. Furthermore this application will try to help students to utilize the college resources as much as possible i.e. academic information in personalized manner, whats happening now in campus, where my faculty is are the other feature of this mobile application to name so.

Department of computer engineering, SOE

2

Smart Campus

1. PROBLEM DEFINITION The first step in the system study is to clearly identify the particular problem to be solved for the task to be accomplished and setting the system goals to be achieved. After determining the problems and requirements, the goals have been outlined. Initial investigation is the activity that determines whether the users requisition is valid and feasible. The first step in initial investigation is the problem definition. It includes the identification of the problem to be solved and the system goals to be achieved. The Application is developed only for the computer science students of the campus which gives it a constrains to reach out to mass but as the development path is followed this can be implemented to all the present departments with no pain system. Since the existing system is manual the data processing and certain report generation is time consuming. The information which are given by this application are either too dynamic or they cannot be implement by any manual work efficiently the benefit by this system is the resource updating in no time which means the data are distributed to all system without any significant delay.

Department of computer engineering, SOE

3

Smart Campus

CHAPTER 2 SYSTEM STUDYObjective of the system study is not to solve the problem; it is to acquire a sense of its scope. During the system study the problem definition is crystallized and the aspect of the problem to be included in the system is determined. Analysis is the detailed study of the various operations performed by a system .One aspect of the system analysis is defining the boundaries of the system and determining whether or not a candidate system should consider other related system. During the analysis data are collected on the available files, decision points and transaction handled by the present system. The analysis is breaking a problem into successively small parts for individual study. The functional structure of analysis assigns a group of analysts to serve a specific system. It is the first and foremost step in understanding the existing system properly. Once the existing system's operations, problems and shortcomings are known, the next step is known as system design and it is easy. Various methods are available for gathering information about the existing system. The various techniques used in the study of the present system are:

Observation Interviews Document References4

Department of computer engineering, SOE

Smart Campus

Discussions

2.1 EXISTING SYSTEM Existing system is the traditional campus Environment. Although this method is appropriate for certain subjects, there are limitations. A commonly cited disadvantage of not having a smart way to communicate in campus is whenever an event is being organized or and information has to circulated on a large scale ,such as whole campus the proper platform is needed which is very old fashioned in traditional system. In the traditional system is information has to written in a printed paper and circulated , the information about the faculty is very unreachable to the new students coming to the campus, the change of contact information is not reflected to all the proper places or the given information are so insufficient . The drawbacks of existing system are:

The existing system is manual oriented. It cannot be accessed at any time according to our convenience. More steps are required just to extract a small piece of information. No centralized updated information about the academic details available for the mobile device.

Difficult for students to get information about campus events. Difficult to find a proper buyer of a selling product.5

Department of computer engineering, SOE

Smart Campus

Workshop and seminars are untouched due to lack of advertisement. No hand help map for the campus. No interaction on the mobile platform amongst the campus students.

2.2 PROPOSED SYSTEM The proposed system is the automation of the existing manual system. The information through application is accessed by the student at anywhere in the world. It is more accessible, flexible and convenient in their point of time when they are available for any cocurricular activity across the campus; the information about the faculty also contains the dynamic mechanism which means the change in main system will reflect across all the connected systems in no time.

Advantages:

Easy & user friendly. Strain of circulation the information is less. Students from any place can access the information. Information, syllabus can be easily uploaded and downloaded.

2.3 CONFIGURATION In order to implement this application on device the API level should be minimum 8 i.e. the running firmware version should be minimum 2.2 (froyo). There should be sufficient memory to store data.Department of computer engineering, SOE 6

Smart Campus

2.3.1 Hardware Configuration The following requirements must be met in order to successfully develop and deploy the system across multiple platforms. Client Machine Operating System: Android version 2.2 (froyo) Device type: handset with GPS and Internet connectivity features. Server Machine Processor: Intel Pentium IV Processor 3.20GHz, 512K / 800MHz FSB Operating System: Microsoft Windows 2000 / XP / Linux Memory: 128MB (min) RAM Keyboard: Entry Level Quiet key Keyboard, PS/2 Mouse: PS/2, 2 button with scroll Monitor: 15 inch Monitor 2.4 Software Requirements Software used during Development Client MachineDepartment of computer engineering, SOE 7

Smart Campus

Java Run Time Environment (JRE 1.5) Eclipse Indigo (3.7.2) Eclipse JDT plug-in (included in most Eclipse IDE packages) JDK 5 or JDK 6 (JRE alone is not sufficient). Server Machine Apache server on Linux Php version 5.3 Database Server-MySQL Server5.0 2.5 PACKAGES Requirements:

Department of computer engineering, SOE

8

Smart Campus

Android Operation System Android is an operating system based on Linux with a Java programming interface. The Android Software Development Kit (Android SDK) provides all necessary tools to develop Android applications. This includes a compiler, debugger and a device emulator, as well as its own virtual machine to run Android programs. Android is currently primarily developed by Google. Android allows background processing, provides a rich user interface library, supports 2-D and 3-D graphics using the OpenGL libraries, access to the file system and provides an embedded SQLite database. Android applications consist of different components and can re-use components of other applications, if these applications declare their components as available. This leads to the concept of a task in Android; an application can re-use other Android components to archive a task.

LINUX Linux is an operating system that evolved from a kernel created by Linux Torvalds. To say that Linux is an operating systemDepartment of computer engineering, SOE 9

Smart Campus

means that its meant to be used as an alternative to other operating systems like MS-DOS. JAVA The primary motivation was the need for a platformindependent language that could be used to create software to be embedded in various consumer electronic devices, such as microwave ovens and remote controls. Java can be used to create two types of programs: applications and applets. The key that allows Java to solve both the security and the portability problems just described is that the output of a Java compiler is not executable code. MYSQL MYSQL is a data base management system. A database is a structured collection of data .It may be anything from a simple shopping list to picture gallery or the vast amount of s of information in a corporate network. To add access and process data stored in a computer data base, you need a data base management system such as MySQL Server.

MYSQL software is open source The MYSQL Database Server is very fast, reliable, and easy to use. Written in C and C++ MYSQL works in client/server or embedded system

Apache Web serverDepartment of computer engineering, SOE 10

Smart Campus

Apache Tomcat is a web container, or application server developed at the Apache Software Foundation (ASF). Tomcat implements the Java Servlet and the Java Server Pages (JSP) specifications from Sun Microsystems, providing an environment for Java code to run in cooperation with a web server. It adds tools for configuration and management but can also be configured by editing configuration files that are normally XML-formatted. Tomcat includes its own internal HTTP server.

CHAPTER-3 SYSTEM DESIGN3.1 Input DesignThe input design is way too simple, as the application gives a very neat user interface to provide the input to the application. The input modules are divided mainly on the basis of database they are usingDepartment of computer engineering, SOE 11

Smart Campus

1. Common for all the batches. 1. Faculty. 2. Workshop & Seminar. 3. Co-curricular. 4. Library. 5. Syllabus.

2. Specific for each semester. 1. Timetable 2. Exam details 3. Latest homework.

3.2 Process DesignProcess design plays an important role in project development. In order to understand the working procedure, process design is necessary. Data Flow Diagram and System Flow chart are the tools used for process design. System Flow Chart is a graphicalDepartment of computer engineering, SOE 12

Smart Campus

representation of the system showing the overall flow of control in processing at the job level; specifies what activities must be done to convert from a physical to logical model. 3.2.1. Data Flow Diagrams (DFD) Data Flow Diagram is the logical representation of the data flow of the project .In this section we explain in detail the class diagram, user case diagram and activity diagram. It also explains the block diagram of the different components of the project and how they are interrelated with each other. The block diagram was developed from top level to bottom level. The DFD is drawn using various symbols. It has a source and a destination. The process is represented using circles and source and destination are represented using squares. The data flow is represented using arrows. One reader can easily get the idea about the project through Data Flow Diagram. SYMBOLS USED IN DATA FLOW DIAGRAM 1) -Rectangle, which defines source / destination

2)

- Arrow, which shows dataflow.

Department of computer engineering, SOE

13

Smart Campus

3)

-Circle, which represent a process that transforms incoming data into outgoing flow.

4)

-Open rectangle, which shows a data store.

login

User

Entering into Smart Campus

LOGIN

success

Academics

Help me College map Co-curricular Faculty Library Department of computer engineering, SOE 14

Smart Campus

Registration

Student

Student_reg

Password

Fig. 3.2.1.1 DFD for Login process

Registration

Re-capcha Registration Password Email

Mobile

Fig. 3.2.1.2 DFD for First time online Registration

Department of computer engineering, SOE

15

Smart Campus

details

Online

Academics

Exam_scoreSmart Campus home

Help me

Data

Post faculty Co curicular New post

Faculty info

Map

Google map API

App frame

Fig. 3.2.1.3 DFD for app

Department of computer engineering, SOE

16

Smart Campus

3.3 Database DesignIt is the heart of any information system. It is the centralized master of basis information, which is available to any authorized person within the plant. A database should provide rapid retrieval of accurate and relevant information. The key element in this concept of an information system is that each section utilizes the same database in the satisfaction of its day to day information needs. A database is a collection of information related to a particular subject or purpose such as tracking customer orders or maintaining a music collection. A database is an interrelated data stored with controlled redundancy to serve one or more application. The most basic piece of data that cannot be broken into more detailed unit is called data item, data element or fields. Several data elements grouped together in a predefined format, which may be referred to either as record or data structure. The following database features are used to store the various details that are involved in this software. For all the tables normalization concept is followed. So redundancy of data can be avoided. In all the tables, the data can be shared. For all the tables, the security restrictions can be applied, and Integrity can be maintained.Department of computer engineering, SOE 17

Smart Campus

In this project the database approach is applied in two ways one is the application database which is kept on the device which keep track of the user login and other is the server database which keeps all the rest of the information about the project, right from the messages to the faculty and student information everything is stored on the server. In the following tables, there will be a primary key set to each table, which can be utilized for referring to that table. For example, in Table 3.3.1, id is the primary key... In most of the tables we have used the concept of foreign key, i.e., a field in one table will correspond to a field in another table such that any delete or update operation in one table will affect the other table also. For example, in Table3.3.7, login (of Login table),semid (of semester table) and subid (of subject table) are used as foreign key. Thus it is easy to get the exam details of a student of particular student of particular semester and for a subject. This way of organizing the table makes it easier to access data and also organized with uniqueness to its data. For some tables, we have used a master table which will help in retrieving data of similar type.

Table 3.3.1: Login Table

Field Reg password Status

Type int (8) varchar(6) int (1)

Description Login id of the user Password18

Department of computer engineering, SOE

Smart Campus

Table 3.3.2: Table for Faculty| Field

Type

Description

Faculty_id name Designation

int(9) faculty id varchar(30) First name of teacher varchar (200) Middle name of Teacher Department varchar (2) Teachers designation Qualification varchar (255) Teachers Qualification Join date varchar (15) Date of joining. DOB varchar (13) Date of birth Address varchar (255) address of faculty Phone int (20) Contact Number Email varchar (50) E-mail id

Department of computer engineering, SOE

19

Smart Campus

Table 3.3.3: Table for student registration

Field Id Iemi Regno Name Password DOB Dept_code Year_join Sex Blood_gr Perm_addr Temp_addr Parname Locadd Email Mob_stu

Type smallint (6) int (15) varchar (20) varchar (30) varchar (10) varchar (10) varchar (5) varchar (5) enum (m,f) varchar(5) varchar(256) varchar (256) varchar (50) varchar (50) varchar (50) varchar (15)

Description User id Iemi number Registration no name password Date of birth Department code Year of admission gender Blood group Permanent Address local Address Parent name Local Address E-mail id Phone number

Department of computer engineering, SOE

20

Smart Campus

Table 3.3.4: Table for Messages

Field From Type Subject Description Time Status Id

Type varchar (15) varchar (15) varchar (75) varchar (500) varchar (20) tinyint (1) int (11)

Description Iemi Type of Meg Subject of post Description Time of post flag of mgs unique id of mgs

Table 3.3.5: Table Marks internal Field Id Subid Marks Tag Type int (11) varchar (15) int (11) varchar (5) Description id of student subject Marks scored -

Department of computer engineering, SOE

21

Smart Campus

Table 3.3.5: Table Marks External Field Id Subid Chance no Marks Type int (11) varchar (15) tinyint (4) tinyint (4) Description id of student subject chance marks secured

Table 3.3.6: Table for Timetable

Field 9:00-10:00 10:00-11:00 11:00-12:00 1:00-2:00 2:00-3:00 3:00-4:00 Day Batch Class Update

Type

Description

varchar (20) subjects timetable varchar (20) subjects timetable varchar (20) subjects timetable varchar (20) subjects timetable varchar (20) subjects timetable varchar (20) subjects timetable varchar (10) weeks day int (4) batch year enum (m,f) Class time version

Department of computer engineering, SOE

22

Smart Campus

Table 3.3.7 Subject Field Subid Name Type Type int (11) int (11) int (11) Description Subject id sub full name type of subject

Table 3.3.8: Table Latest Homework Field Subject Publish date Submission date By Description of HW Type varchar varchar varchar varchar varchar (20) (30) (30) (40) (200) Description subject given date Submission date user posted Full Detail

Table 3.3.9: Table for Exam details Field Date Subject By Status Type Type varchar (20) varchar (20) int (11) int (11) varchar (20) Description Exam date Exam subject Login id Status type of exam

Department of computer engineering, SOE

23

Smart Campus

Table 3.3.10: Table for Library

Field Book_id Book name Status

Type int (11) int (11) int (1)

Description Id for book name of book status

CHAPTER-4 SYSTEM IMPLEMENTATIONSystem implementation is the final phase i.e., putting the utility into action. Implementation is the state in the project where theoretical design turned into working system. The most crucial stage is achieving a new successful system and giving confidence in new system that it will work efficiently and effectively. The system is implemented only after thorough checking is done and if it is found working in according to the specifications. It involves careful planning, investigation of the current system and constraints on implementation, design of methods to achieve. IMPLEMENTATION PROCEDURES

Department of computer engineering, SOE

24

Smart Campus

The major implementation procedures are, -Test Plans -Training -Equipment Installation 1. TEST PLANS The implementation of a mobile-based system requires that test data be prepared and that the system and its elements be tested in a planned, structured manner. The application component is a major subsystem of the mobile-based information system, and particular attention should be given to the testing of this system element as it is developed. 2. TRAINING The purpose of the training is to ensures that all the personnel who are to be associated with the mobile-based system possess the necessary knowledge skills. Operating, programming, and user personnel are trained using reference manuals as training aids. Programmer Training Programmers are assigned to the computer-based business system project at the beginning of the development phase. The programmers reference manual informs an experienced programmer, unfamiliar with the system,Department of computer engineering, SOE 25

Smart Campus

about all of the aspects of the computer program. The manual should enable this person to (1) understand existing program components; (2) modify existing program components; and (3) write new program components. Operator Training If new equipment is to be installed, operator training is completed in conjunction with its installation and checkout. If new equipment is not required for the computer-based system, operators still must become familiar with the operational requirements of the new system. Different kinds of personnel may be involved in the operation of the system, such as computer operators, console operators, and data entry operators. Training programs for operators are scheduled to coincide with the needs of the computer-based business system as it is developed tested and approaches operational status. Users, analysts, and programmers may participate in the training of operators. User Training After the system is implemented successfully, training of the user is one of the most important subtasks of the developer. Even well designed and technically elegant systems can succeed or fail, because of the way they are operated and used. For this purpose user manuals are prepared and handled over to the user to operate the developed system. In order to put new application system into use, the following activities were taken care of:Department of computer engineering, SOE 26

Smart Campus

Preparation of user and system documentation Conducting user training with demo and hands on Test run for some period to ensure smooth switching over the system

The users are trained to use the newly developed functions. User manuals describing the Procedures for using the functions listed on menu and circulated to all the users. It is confirmed that the system is implemented up to users need and expectations.

3. EQUIPMENT INSTALLATION Equipment vendors can provide the specifications for equipment installation. They usually work with the projects equipment installation team in planning for adequate space, power, and light, and a suitable environment. After a suitable site has been completed, the computer equipment can be installed. Although equipment normally is installed by the manufacturer, the implementation team should advice and assist. SECURITY TECHNOLOGIES AND POLICIES Any system developed should be secured and protected against possible hazards. The system may have to face the unwanted events called threats. Computer system is secure against a particular threat if counter measures have been taken to reduce an acceptability low-level amount of loss that the threat may be expected to cause over a given period of time. TheDepartment of computer engineering, SOE 27

Smart Campus

system security problem can be divided in to four related issues: Security, Integrity, Privacy, and Confidentiality. These problems may adversely affect the ability of the computer system to carry out its intended task. System Security System security refers to the technical innovations and procedures applied to the hardware and operating system to protect against deliberate or accidental damage from a defined threat. In contrast, data security is the protection of data from loss, disclosure, modification and destruction. The security features are considered while developing the system, so as to avoid the errors and omissions that may lead to serious problems. System Integrity System integrity refers to the proper functioning of hardware and programs, appropriate physical security, and safety against external threats. A threat to a computer system is any events that adversely affect the one or more assets or resources, which make up the system. An event can be interruption of communication, destruction of hardware, modification of software, removal of programs, disclosure of information etc. The major methods for handling threats are avoiding it by alternating the design, threat retention or threat reduction. Data integrity makes sure that the data do not differ from their original form and have not been accidentally or intentionally disclosed, altered or destroyed.Department of computer engineering, SOE 28

Smart Campus

Privacy Privacy defines the rights of the users or organizations to determine what information they are willing to share with or accept from others and how the organization can be protected against unwelcome, unfair or excessive dissemination of information about it. Confidentiality The term confidentiality is a special status given to sensitive information in a database to minimize the possible invasion of privacy. It is an attribute of information that characterizes its need for protection. In contrast privacy is largely a procedural matter of how information is used. The above security issues were analyzed carefully and the following precautions are taken for the implementation of the system:

Physical security or protection from fire, flood and other physical damage.

Database integrity through data validation techniques. The application stores data in a RDBMS called MySQL. We can store data in a secured and easily retrievable manner into the tables. So the proposed system provides powerful security measures.

Control measures through passwords on a regular basis.

Security measures are provided to prevent unauthorized access of the system and the database at various levels. In this project the data securityDepartment of computer engineering, SOE 29

Smart Campus

and validation are applied using a password authentication. All the data, which is entered by the user is validated. Users should enter their username and password for the requesting access. Only after a valid login does the user get access into the system.

CHAPTER 5 SYSTEM TESTINGSystem testing is a critical element of quality assurance and represents the ultimate review of analysis, design and coding. Test case design focuses on a set of techniques for the creation of test cases that meet overall testing objective. When a system is developed it is hoped that it performs properly. The main purpose of testing an information system is to find the errors and correct them. The scope of system testing should include both manual and computerized operations. System testing is comprehensive evaluation of the programs, manual procedures, computer operations and controls.Department of computer engineering, SOE 30

Smart Campus

System testing is the process of checking whether the developed system is working according to the objective and requirement. All testing is to be conducted in accordance to the test conditions specified earlier. This will ensure that the test coverage meets the requirements and that testing is done in a systematic manner.

TESTING PROCESS:The strategy for system testing integrates system test cases and design techniques into a well-planned series of steps that result in the successful construction of software. The testing must co-operate with test planning, test case design, test execution and the resultant data collection and evaluation. A strategy for software testing must accommodate low level test and that are necessary to verify that a small code segment has correctly implemented as well as high level test that validate major system functions against user requirements. Software testing is a critical element of software quality assurance and represents the ultimate review of specification design and coding. A series of testing is performed for the proposed system before the system is ready for acceptance testing.

UNIT TESTING:In unit testing different modules are tested against the specification produced during the design of modules. Unit testing is essential for verification during the coding phase. The aim is to test the internal logic of the modules. The tests are carried out during the programming stage itself. Unit testing makes heavy use of white-boxDepartment of computer engineering, SOE 31

Smart Campus

testing techniques, exercising specific paths in a modules control structure to ensure complete coverage and maximum error detection.

INTEGRATION TESTING:Integration testing focuses on the design and the construction of the software architecture. The data can be lost across the interface or one module can pose an adverse effect on another. The sub functions when combined may not produce the major function. Integration testing is a systematic technique for the program structure, while at the same conducting test to uncover errors associated with the interface.

VALIDATION TESTING:At the culmination of integration testing, software is completely assembled as a package; interfacing errors have been recovered and corrected and a final series of a software tests-validation tests begin. Validation testing can be defined in many ways but as simple definition is that validation succeeds when the software functions in a manner that can be reasonably expected by the customer. Validation testing provides final assurance that software meets all functional, behavioral, and performance requirements. Black-box testing techniques are used exclusively during validation.

SYSTEM TESTINGDepartment of computer engineering, SOE 32

Smart Campus

The last high-order testing step falls outside the boundary of software engineering and into the broader context of computer system engineering. Software, once validated, must be combined with other system elements .System testing verifies that all elements mesh properly and that overall system function/performance is achieved.

TESTING AND EVALUVATION STRATEGIESThis project employs Top down testing. Top-down software testing is an incremental unit testing method which begins by testing the top level module, and progressively adds in lower level modules, one at a time. Top down testing is used in this project due to the following reasons:

There is less overhead than with the big bang method: No drivers

need to be written when top-down testing is used.

Top-down testing provides an early working model of the program.

This model can be presented to the user for an early test of the system.

Design flaws can thus be detected early and corrected.

Department of computer engineering, SOE

33

Smart Campus

Test casesTable 5.1: Test cases for Login verification (Device)No 1 Test case Registration Number= Password= Registration Number = valid Password= 3 Registration Number = valid Password= invalid Registration Number =admin Password= acai Input Registration Number =blank Password=blank Result Display error message Registration failed Display error message Registration failed Display error message Registration failed 34

2 Registration Number =admin Password=blank

Department of computer engineering, SOE

Smart Campus

4 Registration Number = invalid Password= valid Display error message Registration failed Registration failed

5

Registration Number =my Password= admin

6

Registration Number = valid Password= valid

Registration Number =admin Password=admin Display message Registration Successful

User not verified by admin

Table 5.2 Test cases for Registration Verification (online)

No 1

Test case Click submit button keeping registration form blank

Input No data entered

Result Display message Loops!! Did you miss something? Please check your details and try again. !!

2

Click submit button with invalid emailed

Emailid=aa.com

Display message Loops!! Did you 35

Department of computer engineering, SOE

Smart Campus

miss something? Please check your details and try again. !! 3 Click submit button with password= Password =blank Display message Ooops!! Did you miss something? Please check your details and try again. !!

4

Click submit button with one field=

Any one field blank

Display message Ooops!! Did you miss something? Please check your details and try again. !!

5

Click submit button with all fields valid

All fields valid

Display message Hi, (name)! Congratulations, you just got a new app for your android device; Check your email for more details. SMS sent successfully

Department of computer engineering, SOE

36

Smart Campus

CHAPTER-6 CONCLUSIONThus after a design stage of the android based Smart campus project it is found that the project is feasible and can be implemented. Such application can provide relevant and rewarding experiences. Although currently it is available only to the computer science depart mint but the extension will take no time as the things are easy for extension... new technologies like this will provide more effective means of communication around campus... In terms of academy record it helps a lot by having the information right in the hands of student when they want, the faculty contact information is also available on fingertips. The future of smart campus is making it an integer part of the campus and it can be used for all kind of things such as voting etc.

FUTURE ENHANCEMENT The project is implemented keeping in mind the possible future enhancement and the modules are designed in such a way that developments are possible without any change in the basic structure of the system. In future the Smart campus application can be made more interactive by adding an additional feature of video lectures and by addingDepartment of computer engineering, SOE 37

Smart Campus

lecture videos of teachers. Also more features can be included like library book availability status check etc.

BIBLIOGRAPHY

http://developer.android.com/index.html http://www.vogella.de/android.html http://www.w3schools.com/html/html_attributes.asp http://cseweb.ucsd.edu/users/elkan/134A/MySQLtutorial.pdf Roger. S. Pressman (1991), Software Engineering, McGraw-Hill, International Editions Elias. M. Award(1991), System Analysis and Design, Golgotha Publication Pvt. Ltd , Second Edition Anthony Molinari(2005), SQL Cookbook, OReilly Publishers, International Editions Lukas Jordan & Pieter Grayling Practical Android project Recto Meier Professional Android 2 Application Development

Department of computer engineering, SOE

38

Smart Campus

APPENDIX-1 SCREEN SHOTS

Registration (online)

Department of computer engineering, SOE

39

Smart Campus

REGISTRATION (Device)

Department of computer engineering, SOE

40

Smart Campus

HOME MENU

Department of computer engineering, SOE

41

Smart Campus

Help me Section

Department of computer engineering, SOE

42

Smart Campus

Syllabus

Department of computer engineering, SOE

43

Smart Campus

Workshop & Seminar

Department of computer engineering, SOE

44

Smart Campus

Second Hand Selling

Department of computer engineering, SOE

45

Smart Campus

Co-curricular

Department of computer engineering, SOE

46

Smart Campus

A General Post

Department of computer engineering, SOE

47

Smart Campus

New post

Department of computer engineering, SOE

48

Smart Campus

Faculty List

Department of computer engineering, SOE

49

Smart Campus

Map

Department of computer engineering, SOE

50

Smart Campus

Department of computer engineering, SOE

51

Smart Campus

Students Registered

Department of computer engineering, SOE

52

Smart Campus

APPENDIX-2 CODES

Code for validation (server side)1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. if (isset($_REQUEST['email'])) //if "email" is filled out, send email { $chk=0; $rno=$_REQUEST['reg']; $psd=$_REQUEST['pass']; $email = $_REQUEST['email'] ; $num = $_REQUEST['mobile']; if($_POST["recaptcha_response_field"]) $resp = recaptcha_check_answer ($privatekey,$_SERVER["REMOTE_ADDR"],$_POST["recaptcha_challenge_field"],$_POST["rec aptcha_response_field"]);

12. 13. // Get a key from https://www.google.com/recaptcha/admin/create

Department of computer engineering, SOE

53

Smart Campus14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.

if($rno != null && $psd != null && $email != null && $num != null && $resp!=null) { $query = sprintf("SELECT * FROM student_profile"); $result = mysql_query($query); while($row = mysql_fetch_array($result)) { if($rno==$row[2]) { if($row[13]=='1') {echo $row[3] . " has already registered !!!";$GLOBALS['chk']=1;break;} else { $changepas = sprintf("UPDATE `a4652565_sc`.`student_profile` SET `password` = '$psd' WHERE `student_profile`.`regno` ='$rno' ;" ); $register = sprintf("UPDATE `a4652565_sc`.`student_profile` SET `status` = '1' WHERE `student_profile`.`regno` ='$rno' ; "); $inputmob = sprintf("UPDATE `a4652565_sc`.`student_profile` SET `mob_student` = '$num' WHERE `student_profile`.`regno` ='$rno' ; "); $emailid = sprintf("UPDATE `a4652565_sc`.`student_profile` SET `email_id` = '$email' WHERE `student_profile`.`regno` ='$rno' ; "); mysql_query($changepas); mysql_query($register); mysql_query($emailid); mysql_query($inputmob);

//send email $subject ="SMART CAMPUS"; $from = "mini_project"; $headers = "From:" . $from; $name= $row[3]; $message ="Congratulations ,you just got a new app for your android device , Check your email for more details ."; 48. $url="http://ratan.co.cc/android/SmartCampus.apk"; 49. 50. $message="Hi , ".$name."!. " .$message . " "; 51. mail($email,"$subject",$url,$headers); 52. echo $message; 53. echo ""; 54. echo file_get_contents("http://s1.freesmsapi.com/messages/send?skey=26958f01b27e290a05059 12caa597bc5&message=".urlencode('http://ratan.co.cc/android/SmartCampus.apk')."&reci pient=".$num); 55. $GLOBALS['chk']=1; 56. $chk=1; 57. break; 58. }//else 59. } 60. else 61. {$GLOBALS['chk']=0;} 62. } 63. if($GLOBALS['chk']==0) 64. echo "Sorry , Either Record not found or you have given incorrect details .."; 65. } 66. else

Department of computer engineering, SOE

54

Smart Campus67. echo "Ooops again. !!"; 68. } !! Did you missed something ? . Please check your details and try

Application side

try{ URL url= null; url= new URL(u); URLConnection conn = url.openConnection(); BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line=""; line=reader.readLine(); Log.d("tag", line); int ch=line.charAt(0);

//whatever you want if(ch=='1') { SQLiteDatabase db = openOrCreateDatabase("login", MODE_PRIVATE, null); db.execSQL("CREATE TABLE IF NOT EXISTS User (Reg INT(8), Pass VARCHAR, Status INT(1));"); String s="INSERT INTO User VALUES ( '" + reg.getText().toString() + "' , '" + pass.getText().toString() +" ' , '1' )"; db.execSQL(s); Toast.makeText(main.this, " Registration Successful ", 5000).show(); Department of computer engineering, SOE 55

Smart Campus db.close(); NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); Notification notify = new Notification(android.R.drawable.stat_notify_more, "Congratulation", SystemClock.currentThreadTimeMillis()); Context context = main.this; CharSequence title = "Thanks for Installing SmartCamp"; CharSequence details ="Developers Rashmi & Ratan CSE Sem-VI "; Intent intent = new Intent(context, main.class); PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0); notify.setLatestEventInfo(context, title, details, pending); notify.sound = Uri.parse("android.resource://cc.co.ratan.www/" + R.raw.beep); nm.notify(0, notify); startActivity(new Intent(main.this, Menu.class)); finish(); } else Toast.makeText(main.this, " Registration Failed ", 5000).show(); }catch (Exception e1) { // TODO: handle exception}

Json result of FaCulty{"faculty_profile":[{"name":"Sudheep Elayidom","phoneno":"4842463306","email":"sudheepelayidom@hotm ail.com","designation":"Sr. Lecturer","qualification":"M.Tech. in Computer and Information Science"},{"name":"Ancy Zachariah","phoneno":"4842345889","email":"[email protected]","desiDepartment of computer engineering, SOE 56

Smart Campus

gnation":"Sr.Lecturer","qualification":"M.Tech in Computer Engineering"},{"name":"Damodaran V.","phoneno":"9447001195","email":"[email protected]","designa tion":"Sr. Lecturer","qualification":"M.Tech. in Computer EngineeringB.E. in Computer Science & Engineering.

Department of computer engineering, SOE

57