Professional Documents
Culture Documents
1. ABSTRACT
1.1 ABSTRACT
This software is for students/visitors to access the college database using a touch screen. Students/visitors have easy access to various useful information such as building layout, pictures, textual information or notices. The kiosk is a powerful tool that can provide dynamic digital information after just few touches to the screen. You dont need a mouse or computer skills to access information. The embedded touch screen is used here as input device. The touch screen includes a Touch Sensor Panel, Controller and interfacing software. Touch-screen technology makes the kiosks easy to useall you have to do is touch the graphic icons on the screen, and your information is on the way. This also helps the students to access information about the class timing, location of classrooms, notices etc and of various departments from college system database. Thereby, the college authorities can provide the correct information to the needed person without any human intervention and can manage centralized multi-user information system.
2. INTRODUCTION
2.1.1 OBJECTIVE
Our main goal is to build a kiosk application that is faster, efficient, and less expensive. It includes the key features of any successful kiosk and is flexible enough for future extension.
2.1.2 BENEFITS
1. Fast retrieval of entries from database 2. Cost effective 3. Time saving 4. User friendly 5. Quick implementation results 6. Convenience 7. Password protected-only authorized one can make data entry
To provide a consistent object-oriented programming environment whether object code is stored and executed locally, executed locally but Internet-distributed, or executed remotely. To provide a code-execution environment that minimizes software deployment and versioning conflicts. To provide a code-execution environment that promotes safe execution of code, including code created by an unknown or semitrusted third party. To provide a code-execution environment that eliminates the performance problems of scripted or interpreted environments. To make the developer experience consistent across widely varying types of applications, such as Windows-based applications and Webbased applications. To build all communication on industry standards to ensure that code based on the .NET Framework can integrate with any other code.
The .NET platform is centered on two basic concepts. These are: 1) Common Language runtime [CLR] 2) Base Class Libraries [BCL] Common Language Runtime: A runtime is a component, which a computer must have, in order to execute programs written in a particular programming language. The runtime component of a language provides the basic features needed by the programs written in that language execute successfully. When a program is executed, it links to the runtime component of the language in which it is written, to get the basic functionality it requires. The .NET Common Language Runtime provides facilitates single
8 Assumption College, Changanacherry
runtime to serve multiple languages. The CLR is similar to the Java Virtual Machine [JVM]. It provides the basic execution services and makes a .NET program written in any of the .NET languages executable on the .NET platform. This is possible because of the Common Type System, built into the CLR. This system supports the types and operations found in almost all the .NET programming languages. The CLR provides the basic functionalities required by programs to execute successfully on the .NET platforms. Base Class Library : The .NET environment provides a Basic Class Library which can be used by all .NET languages. It provides the basic functionalities like console input/output, text manipulation, mathematical functions etc. to the various .NET languages. Besides providing the basic functionalities, the BSL makes cross-language communication possible. The BCL includes a small subset of the entire class library and is the core set of classes that serve as the basic API of the CLR. The Framework Class Library (FCL) is a superset of the BCL classes and refers to the entire class library that ships with .NET Framework. It includes an expanded set of libraries, Integrated including Windows Query, Windows Forms,ADO.NET, ASP.NET, Language Presentation Foundation, Windows
Communication Foundation among others. The FCL is much larger in scope than standard libraries for languages like C++, and comparable in scope to the standard libraries of Java. When a program written in .NET language is complied, it produces (a) Metadata and (b) Microsoft Intermediate Language.
Metadata: The code that is developed with the compiler of a language is called the managed code. For the runtime to provide services to the managed code, the compiler should produce metadata. It includes the complete specification for a program. For this, it record all the information related to every objects of the program. The information is required to use the object. It includes: Name of the object Names and types of all the fields of the object Names of all the member functions, including names and types of their parameters After being provided with above information, the .NET runtime is able to create objects, access data and call member functions. The metadata is stored along with the code. Microsoft Intermediate Language : When a .NET program is compiled, what we get is MSIL along with metadata and Common Type System. It is MSIL that facilitates cross-language integration. The MSIL is compiled to get the machine code and not interpreted. Thus .NET program are compiled twice. During the first compilation process, the source code is converted into MSIL, which is machine independent. It is stored in the files on the system. During the second compilation, the MSIL file is executed and CLR transforms it into machine code.
10
Interoperability Because interaction between new and older applications is commonly required, the .NET Framework provides means to access functionality that is implemented in programs that execute outside the .NET environment. Language Independence The .NET Framework introduces a Common Type System, or CTS. The CTS specification defines all possible data type and programming constructs supported by the CLR and how they may or may not interact with each other conforming to the Common Language Infrastructure (CLI) specification. Because of this feature, the .NET Framework supports the exchange of types and object instances between libraries and applications written using any conforming .NET language.
Simplified Deployment The .NET framework includes design features and tools that help manage the installation of computer software to ensure that it does not interfere with previously installed software, and that it conforms to security requirements.
Security The design is meant to address some of the vulnerabilities, such as buffer overflows, that have been exploited by malicious software. Additionally, .NET provides a common security model for all applications.
Portability The design of the .NET Framework allows it to theoretically be platform agnostic, and thus cross-platform compatible. That is, a program written to
11
use the framework should run without change on any type of system for which the framework is implemented. While Microsoft has never implemented the full framework on any system except Microsoft Windows, the framework is engineered to be platform agnostic, and cross-platform implementations are available for other operating systems. This makes it possible for third parties to create compatible implementations of the framework and its languages on other platforms. Class library The .NET Framework includes a set of standard class libraries. The class library is organized in a hierarchy of namespaces. Most of the built in APIs are part of either System.* or Microsoft.* namespaces. These class libraries implement a large number of common functions, such as file reading and writing, graphic rendering, database interaction, and XML document manipulation, among others. The .NET class libraries are available to all CLI compliant languages.
Memory management The .NET Framework CLR frees the developer from the burden of managing memory (allocating and freeing up when done); instead it does the memory management itself. To this end, the memory allocated to instantiations of .NET types (objects) is done contiguously from the managed heap, a pool of memory managed by the CLR. As long as there exist a reference to an object, which might be either a direct reference to an object or via a graph of objects, the object is considered to be in use by the CLR. When there is no reference to an object, and it cannot be reached or
12 Assumption College, Changanacherry
used, it becomes garbage. However, it still holds on to the memory allocated to it. .NET Framework includes a garbage collector which runs periodically, on a separate thread from the application's thread, that enumerates all the unusable objects and reclaims the memory allocated to them.
The CLS is a statement of rules that allow each language to interoperate. The CLS defines not only type information, but also method invocation, error handling, and so forth. The Application Class Libraries and Services represents the rich set of libraries and APIs that have been created to support virtually all aspects of programming. Visual Studio.NET is an important part of the .NET Framework because it provides a means for the programmer to access the framework at any level. It is a complete set of development tools for building web applications, web services, desktop applications and mobile applications. The Base Class Library, part of the Framework Class Library (FCL), is a library of functionality available to all languages using the .NET Framework.The Common Language
13
machine
component of the .NET framework. All .NET programs execute under the supervision of the CLR, guaranteeing certain properties and behaviors in the areas of memory management, security, and exception handling.
14
3.1.1 DRAWBACKS
A person who dont know how to access the internet finds it difficult to get college information In the case of power failure, immediate notices cannot be passed Students who are not present at the time of announcements wont get correct information Locating a teacher with name, time and day is very difficult
15
database. There by, the college authorities can provide the correct information to the needed person without any human intervention and can manage centralized multi user information system.
The feasibility study is the important step in any software development process. This is because it makes analysis of different aspects like cost required for developing and executing the system, the time required for each phase of the system and so on. If these important factors are not analyzed
17
then definitely it would have impact on the organization and the development and the system would be a total failure. So for running the project and the organization successfully this step is a very important step in a software development life cycle process. In the software development life cycle after making an analysis in the system requirement the next step is to make analysis of the software requirement. In other words feasibility study is also called as software requirement analysis. In this phase development team has to make communication with customers and make analysis of their requirement and analyze the system.
By making analysis this way it would be possible to make a report of identified area of problem. By making a detailed analysis in this area a detailed document or report is prepared in this phase which has details like project plan or schedule of the project, the cost estimated for developing and executing the system, target dates for each phase of delivery of system developed and so on. This phase is the base of software development process since further steps taken in software development life cycle would be based on the analysis made on this phase and so careful analysis has to be made in this phase.
Though the feasibility study cannot be focused on a single area some of the areas or analysis made in feasibility study is given below. But all the steps given below would not be followed by all system developed. The feasibility study varies based on the system that would be developed.
18
analyze whether the system development process require training of personnel. This help in designing training sessions as required in later stage. .
switching to new technology later if needed in ease. In other study is made to find the portability of the system in future. .
budgeted costs. That is a cost benefit analysis is made. In other words an analysis is made on cost feasibility of the project. This helps in identifying whether the organization would meet the budgeted costs and also helps the organization in making earlier and effective plans for meeting extra costs because of the system development. .
system. This study and analysis would help to choose the best implementation for system and the organization. This feasibility study includes factors like scalability, how to install, how to develop and so on. This feasibility study in short includes the analysis of technical areas. This analysis helps the efficiency of the system developed to get improved. This is because by choosing the correct system .
19 Assumption College, Changanacherry
of the system. But the scope of feasibility study does not end with this. Analysis or feasibility study also includes the analysis of maintenance stage. In other words feasibility study is made to analyze how one would maintain the system during maintenance stage. This helps sin planning for this stage and also helps in risk analysis. Also the analysis helps in making analysis about what training must be given and how and what all documents must be prepared to help users and developers to face maintenance phase.
development life cycle has all the analysis part in it which helps in analyzing the system requirements completely. .
20
senior or top persons in the organization. This is because based on the report the organization decides about cost estimation, funding and other important decisions which is very essential for an organization to run profitably and for the system to run stable.
21
4. REQUIREMENTS
22
4.3.1 C#
23 Assumption College, Changanacherry
The goal of C# is to provide a simple, safe, modern, object oriented, internet-centric, high performance language for .NET development. C# is now a fully matured language. In C# we can see the influence of Java, C++, Visual Basic and some other languages. The fundamental C# language is simple with fewer than 100 keywords and a dozen built-in datatypes but its highly expressive when it comes to implementing modern programming concepts. C# includes all support for structured, component-based, objectoriented programming. C# contains keywords for declaring new classes and their methods and properties, and for implementing encapsulation, inheritance and polymorphism, the three pillars of object-oriented programming. The C# language was originally developed by a small team led by two distinguished Microsoft engineers Anders Hejlberg and Scott Wiltamuth. The various features of C# are: In C#, everything pertaining to a class declaration is found in the declaration itself. C# class definitions dont require separate header files or Interface Definition Language [IDL] files. C# also supports interface, a means of making a contract with a class for the services that the interface stipulates. C# provides support for directly accessing memory using C++ style pointers. It warns the CLR garbage collector not to collect objects referenced by pointers until they are released.
24
C# also provides support for structs. Struct is a restricted, lightweight type that, when instantiated, makes fewer demands on the operating system and on memory than other conventional class does. C# provides full support of delegates, to provide invocation of methods through indirection. C# provides component-oriented features, such as properties, events, and declarative constructs. Component-oriented programming is supported by the storage of metadata with the code for the class.
Partitions on tables and indexes are supported natively, so scaling out a database onto a cluster is easier. SQL CLR was introduced with SQL Server 2005 to let it integrate with the .NET Framework
5. SYSTEM DESIGN
26
Physical Design
27
The physical design relates to the actual input and output processes of the system. This is laid down in terms of how data is inputted into a system, how it is verified/authenticated, how it is processed, and how it is displayed as output. Physical design, in this context, does not refer to the tangible physical design of an information system. To use an analogy, a personal computer's physical design involves input via a keyboard, processing within the CPU, and output via a monitor, printer, etc. It would not concern the actual layout of the tangible hardware, which for a PC would be a monitor, CPU, motherboard, hard drive, modems, video/graphics cards, USB slots, etc.
The processing techniques are Batch Processing Real-time Online Combination of all Structured design is a data flow methodology. The graphical representation of data flow, communication & defining the modules & their relationship with each is known as Structure Chart. This method decomposes & modularizes the system so that the complexity & manageability will come down. Thus reducing the intuitive reasoning & promotes the maintainable provable systems.
28
This type of design follows top-down & hierarchy, which will have one single entry & single exit, The advantages of this method are 1. Critical interfaces are tested first 2. Early versions of the design, through incomplete are useful enough to resemble the original system.
3.
29
These parts are inter-dependent on each other. System Specifications is a document, which will have a result of system design process, it serves as a Blue print for the project development & maintenance. Prototype is a working system that is developed to test ideas & assumptions about a new system.
30
2. How & where is i/p created 3. How should source documents designed 4. What format should be used for Input 5. What medium should be used to store data
31
32
Assure Purposeful Output Make Meaningful to User Provide Appropriate Quantity Appropriate Distribution Assure Timeliness Choose Effective Output Method
33
Who will use/see the output? How many people will need the output? Where is the output needed (distribution/logistics) What is the purpose of the output? How quickly is the output needed? How frequently will the output be accessed? How long must the output be stored? What special regulations apply? What is the cost? What are the environmental factors (noise, temperature, space, hardware)?
Type of user & purpose Format Frequency & times Volume Sequence Quality
Content
34
Determine the purpose of your database - This helps prepare Find and organize the information required - Gather all of
the types of information you might want to record in the database, such as product name and order number.
35
items into major entities or subjects, such as Products or Orders. Each subject then becomes a table.
4.
information you want to store in each table. Each item becomes a field, and is displayed as a column in the table. For example, an Employees table might include fields such as Last Name and Hire Date.
5.
primary key is a column that is used to uniquely identify each row. An example might be Product ID or Order ID.
6.
how the data in one table is related to the data in other tables. Add fields to tables or create new tables to clarify the relationships, as necessary.
7.
Refine your design - Analyze your design for errors. Create the
tables and add a few records of sample data. See if you can get the results you want from your tables. Make adjustments to the design, as needed.
8.
rules to see if your tables are structured correctly. Make adjustments to the tables, as needed.
36
To manipulate the operations on the database, a set of programs are maintained called Data Base Management System (DBMS). It is used to access, maintain and control large, shared files.
The Main advantages of database are 1. File consolidation 2. Program & file independence 3. Access versatility 4. Data Security 5. Program development 6. Program maintenance 7. Special information
37
38
Process Work or actions performed on data (inside the system) Labels should be verb phrases Receives input data and produces output Dataflow Is a path for data to move from one part of the IS to another Arrows depicting movement of data Can represent flow between process and data store by two separate arrows Data store Is used in a DFD to represent data that the system stores Labels should be noun phrases External entity
39
External entity that is origin or destination of data Is the singular form of a department, outside organization, other IS, or person Labels should be noun phrases Source Entity that supplies data to the system Sink Entity that receives data from the system
Context diagram
The DFD which is the top-level view of IS is called a context diagram. It shows the system boundaries, external entities that interact with the system, and major information flows between entities and the system.
40
8) Be prepared to start over. Often the data flow diagram does not begin to flow without several false starts.
of tables. The theme behind a database is to handle information as an integrated whole thus making access to information easy, quick, inexpensive and flexible for users. The entire package depends on how the data are maintained in the system .Each table has been designed with a perfect vision. Minor tables have been created which though takes much space facilitates the process of querying fast and accurate.
TABLE 1: LOGIN
FIELD
ID LOGIN NAME PASSWORD
DATA TYPE
NUMBER(4) VARCHAR(15) VARCHAR(10)
TABLE 2: NOTICE
FIELD
NOTICEID SUBJECT DATE
DATA TYPE
NUMBER(4) VARCHAR(15) VARCHAR(10)
42
TABLE 3: TIMETABLE
FIELD
DEPTID TEACHER ID DAY TIME TEACHER CLASS
DATA TYPE
NUMBER(4) NUMBER(4) VARCHAR(10) VARCHAR(10) VARCHAR(15) VARCHAR(10)
TABLE 4: DEPT
FIELD
DEPTID
DATA TYPE
NUMBER(4)
43
44
6.1 INTRODUCTION
System implementation is the process of bringing a developed system into operational use and turning it over to the user. Implementation activities extend from planning through conversion from the old system to the new. All hardware required is tested and installed properly and ensures all connections are made correctly and accurately. The computer program component of the overall system is debugged and made error free. The computer programs are ensured that it successfully executes its program logic. The computer programs are tested in a planned, top-down sequence that includes structured walk-throughs. When all the hardware and software components are set, the overall system is tested to verify whether the system has met its design objectives. The proposed system has two main modules and both the modules are thoroughly checked. The administrator functions are tested by providing various data entries and making modifications to the data and checking whether he changes are updated in the database. The user functions are tested by progressing through the various interfaces and checking whether the correct information is provided by various interfaces.
45
ADMINISTRATOR
LOGIN
URGENT NOTICE
NOTICES
ADD DEPARTMENT T
EDIT NOTICE
46
USER
SEARCH NOTICES
HOME
ABOUT COLLEGE
INFRASTRU CTURE
CONTACT
COURSES
DEPARTMENTS
FACULTIES 47
COLLEGE MAP
1. ADMINISTRATOR
The main task of the administrator is data entry. The Administrator after Login has an interface for inserting data about location of class, notices, pictures etc. The various functions of the administrator can be further divided into four modules. The four modules are insert data, edit data, insert time table, urgent notice. Insert Data This module provides the entry of new notices which the user can access via Notices link. The administrator can enter new notices in the data entry space provided. On clicking the submit button the notice along with date and time get saved into table NOTICES and the database is updated. Edit Data This module provides provision for editing existing notices. It helps to remove unwanted notices. On clicking edit data the list of existing notices will appear and a delete button is provided corresponding to each notice. On clicking the delete button the notice will be deleted from the table and database is updated. Insert Timetable
48 Assumption College, Changanacherry
This module provides provision for entering various departments, head of the departments, teachers and their time table. It includes the classroom location of each teacher for every period. This module provides two options: 1.3.1 Add Department This option provides facility for entering department name and HODs name. On clicking OK button, the details entered along with department id is entered into table DEPT and the database is updated. 1.3.2 Add Time table This option provides facility to enter departments, teachers, day, period, class and room no:. On clicking the OK button all details entered along with department id and teacher id will be entered into table TIMETABLE and the database is updated. Urgent Notice This is the window application that is embedded in the project. On clicking the Urgent Notice link, a window will appear that displays the notices at the same time it is being entered by the administrator. The administrator system acts as a master system and the touch screen act as a slave.
49
2. USER
Users have an interface for displaying the data from the table according to his requirement. The user can get various information of the college and also view various notices. The users functions can be divided into two modules.
2.1 Information Retrieval The user can get various information of the college such as about the college, contact details, vision and mission, infrastructure and so on. The user can also find in which classroom a particular teacher is for the current hour. 2.2 Notices This module helps the user to search notices by date. By selecting a date and clicking the search button, a table that lists all notices published on that particular date will be displayed.
50
Black box testing Testing without knowledge of the internal workings of the item being tested. Tests are usually functional. Conformance testing
51
Producing tests for the behavior of an implementation to be sure it provides the portability, interoperability, and/or compatibility a standard defines.
Functional testing Validating an application or Web site conforms to its specifications and correctly performs all its required functions. This entails a series of tests which perform a feature by feature validation of behavior, using a wide range of normal and erroneous input data. This can involve testing of the product's user interface, APIs, database management, security, installation, networking etc testing can be performed on an automated or manual basis using black box or white box methodologies. Integration testing Testing in which modules are combined and tested as a group. Modules are typically code modules, individual applications, client and server applications on a network, etc. Integration Testing follows unit testing and precedes system testing. Load testing Load testing is a generic term covering Performance Testing and Stress Testing. Performance testing Performance testing can be applied to understand your application or WWW site's scalability, or to benchmark the performance in an environment of third party products such as servers and middleware for potential purchase.
52 Assumption College, Changanacherry
This sort of testing is particularly useful to identify performance bottlenecks in high use applications. Performance testing generally involves an automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional load conditions. Stress testing Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements to determine the load under which it fails and how. A graceful degradation under load leading to non-catastrophic failure is the desired result. Often Stress Testing is performed using the same process as Performance Testing but employing a very high level of simulated load. System testing Testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic. Unit testing It is the testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. May require developing test driver modules or test harnesses. Compatibility testing Testing how well software performs in a particular hardware/software/operating system/network environment and different combination s of above.
53 Assumption College, Changanacherry
7. FUTURE ENHANCEMENTS
54
55
8. CONCLUSION
56
8.1 CONCLUSION
A college information system is developed. This system can be used by any college visitor or student to get knowledge about the current events in college or any college related information. Only a valid administrator can work with information manipulation. An important advantage is that only valid current information is provided by the system, since the unwanted notices being deleted by the administrator. The software was developed in C#.NET and SQL. It is expected to live up to the objectives for which it was designed. In the proposed system it is sure that it must reduce the manpower and time duration. Thus this system is a boon when viewed with a resource saving perspective, which is vital for the system like COLLEGE INFORMATION RETRIEVAL USING TOUCHSCREEN KIOSK
The project titled COLLEGE INFORMATION RETRIEVAL USING TOUCHSCREEN KIOSK has been done successfully and satisfies all the requirements specified. This system helps in providing live data to the authorities and help in decision making without wastage of time. This software provides a user-friendly approach towards the system. This system has been well developed and when implemented, is bound to satisfy all of the requirements. Painstaking efforts have been taken to make the software impeccable and upgradeable. There is a hope that this software will be utilized to its maximum and will do a good job in the long run. The program for carrying out various activities have been run and successfully tested to ensure that the software developed meets the needs satisfactorily.
57
9. APPENDIX
58
59
USER
ADMINISTRATOR
60
62
DISPLAY
63
DISPLAY
DEPARTMENT IDENTIFICATI0N 5.1 LOCATING TEACHER 5.2
64
65
66
9.2 SCREENSHOTS
67
HOME
68
ABOUT US
69
INFRASTRUCTURE
70
VISION &MISSION
71
CONTACT US
72
COURSE DETAILS
73
DEPARTMENTS
74
FACULTIES
75
SEARCH
76
SEARCH
77
ADMIN LOGIN
78
79
INSERT DATA
80
EDIT DATA
81
82
ADD DEPARTMENT
83
84
NOTICE
85
URGENT NOTICE
86
COLLEGE MAP
87
BIBILIOGRAPHY
Offline Resources:
Programming C# 3.0 - Jesse Liberty & Donald Xie Comdex Computer Programming Course Kit - Vikas Gupta Elements of System Analysis - Marvin Gore & John W Stubbe
Online Resources:
88