CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Introduction
Information System is defined as a technologically implemented medium for recording, storing, and disseminating linguistic expressions. The study of information systems originated as a sub-discipline of computer science in an attempt to understand and rationalize the management of technology within organizations. It has matured into a major field of management that is increasingly being emphasized as an important area of research in management studies, and is taught at all major universities and business schools in the world. Börje Langefors introduced the concept of "Information Systems" at the third International Conference on Information Processing and Computer Science in New York in 1965. Information Systems has a number of different areas of work: Information Systems Strategy, Information Systems Management, and Information Systems Development. Each of which branches out into a number of sub disciplines, that overlap with other science and managerial disciplines such as computer science, pure and engineering sciences, social and behavioral sciences, and business management.
At present there are four types of Information System: Transaction processing system, Management information systems, Decision support systems and Expert systems. Nowadays Information System serves a big help for companies, businesses, schools and other organizations in managing and organizing their data. This study focuses on an online information system which is basically an information system in nature; the only difference is that online information system is accessible through the internet. The proponents’ client is the Capitol University Museum of Three Cultures. It was established in the summer of 2007 and formally opened on May 2, 2008 as a special dedication to the founder of the Capitol System of Schools, Madame Laureana San Pedro Rosales, who started her educational apostolate in Mindanao in 1951. That apostolate had served well three distinct culture groups of Mindanao: the M’ranao of Marawi, the
CU Museum Online Information System
1-1
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Visayan Christian lowland cultures of Iligan, Cagayan de Oro and Bukidnon, in a University that today is the home of culture and the arts indigenous to Northern Mindanao, especially of its lumad culture. Thus, the raison d’etre for the name Museum of Three Cultures where Northern Mindanao’s three cultures, and ultimately the Mindanao tri-peoples, are traversed in the life and works of this educators under whose aegis is a concert of unity was reached. Presently, the Capitol University Museum of three Cultures provides its guest with different information about the Filipino cultures, it collects and cares for objects of scientific, artistic, or historical importance and makes them available for public viewing through exhibits. However, the CU Museum has a problem with their existing system specifically on information dissemination, information gathering and information organization The researchers will design and develop an online information system that would address the needs of the CU Museum of Three Cultures.
Statement of the Problem
CU Museum Online Information System
1-2
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
This study aims to provide fast and efficient operation for the CU Museum the proponents will provide solutions to the following questions: 1.How to provide online access to the CU Museum? The existing system is not accessible through the net; for this reason gathering of additional information from outside sources is limited 2.How to provide efficiency in information retrieval of the CU Museum? The current manual system on information retrieval causes this problem; in effect retrieval of information by the curator or staff takes more time and gathering of information by the researchers is limited. 3.How to provide information organization? The present system of the CU Museum has a problem with its file organization, as a result organizing and managing of file is inefficient.
CU Museum Online Information System
1-3
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
General objectives The main objective of the study is to design and develop an online information system for the CU Museum of Three Cultures. The system will help the Curator manage the museum’s data/files efficiently by the end of the semester.
Specific Objective Specifically, this study aims to: Develop an online information system for the CU Museum of three Cultures Provide facility for the system that will reduce the manual effort in generating reports Design a user-friendly environment for fast and easy operation of the system.
Conceptual Framework The proponents will be applying Model-View-Controller (MVC) in developing their proposed online information system. The following paragraphs will discuss more about MVC its importance and how does it work. The Model-View-Controller (MVC) is a commonly used and powerful architecture for GUIs. The MVC paradigm is a way of breaking an application, or even just a piece of an application's interface, into three parts: the model, the view, and the controller. MVC was originally developed to map the traditional input, processing, output roles into the GUI realm: Input-->Processing-->Output Controller --> Model --> View The user input, the modeling of the external world, and the visual feedback to the user are
CU Museum Online Information System
1-4
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
separated and handled by model, viewport and controller objects. The controller interprets mouse and keyboard inputs from the user and maps these user actions into commands that are sent to the model and/or viewport to effect the appropriate change. The model manages one or more data elements, responds to queries about its state, and responds to instructions to change state. The viewport manages a rectangular area of the display and is responsible for presenting data to the user through a combination of graphics and text. The model is used to manage information and notify observers when that information changes. It contains only data and functionality that are related by a common purpose. If you need to model two groups of unrelated data and functionality, you create two separate models. A model encapsulates more than just data and functions that operate on it. A model is meant to serve as a computational approximation or abstraction of some real world process or system. It captures not only the state of a process or system, but how the system works. This makes it very easy to use real-world modeling techniques in defining your models. For example, you could define a model that bridges your computational back-end with your GUI front-end. In this scenario, the model wraps and abstracts the functionality of a computation engine or hardware system and acts as a liaison requesting the real services of the system it models. The view or viewport is responsible for mapping graphics onto a device. A viewport typically has a one to one correspondence with a display surface and knows how to render to it. A viewport attaches to a model and renders its contents to the display surface. In addition, when the model changes, the viewport automatically redraws the affected part of the image to reflect those changes. There can be multiple viewports onto the same model and each of these viewports can render the contents of the model to a different display surface. A viewport may be a composite viewport containing several sub-views, which may themselves contain several sub-views. A controller is the means by which the user interacts with the application. A controller accepts input from the user and instructs the model and viewport to perform actions based
CU Museum Online Information System
1-5
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
on that input. In effect, the controller is responsible for mapping end-user action to application response. For example, if the user clicks the mouse button or chooses a menu item, the controller is responsible for determining how the application should respond. The model, viewport and controller are intimately related and in constant contact. Therefore, they must reference each other. The picture below illustrates the basic ModelView-Controller relationship:
The figure above shows the basic lines of communication among the model, viewport and controller. In this figure, the model points to the viewport, which allows it to send the viewport weakly-typed notifications of change. Of course, the model's viewport pointer is only a base class pointer; the model should know nothing about the kind of viewports which observe it. By contrast, the viewport knows exactly what kind of model it observes. The viewport also has a strongly-typed pointer to the model, allowing it to call any of the model's functions. In addition, the viewport also has a pointer to the controller, but it should not call functions in the controller aside from those defined in the base class. The reason is you may want to swap out one controller for another, so you'll need to keep the dependencies minimal. The controller has pointers to both the model and the viewport and knows the type of both. Since the controller defines the behavior of the triad, it must know the type of both the model and the viewport in order to translate user input into application response.
CU Museum Online Information System
1-6
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Cascading Style Sheets (CSS) is a style sheet language used to describe the presentation of a document written in a markup language. Its most common application is to style web pages written in HTML and XHTML, but the language can be applied to any kind of XML document, including SVG and XUL. CSS can be used locally by the readers of web pages to define colors, fonts, layout, and other aspects of document presentation. It is designed primarily to enable the separation of document content (written in HTML or a similar markup language) from document presentation (written in CSS). This separation can improve content accessibility, provide more flexibility and control in the specification of presentation characteristics, and reduce complexity and repetition in the structural content (such as by allowing for tableless web design). CSS can also allow the same markup page to be presented in different styles for different rendering methods, such as on-screen, in print, by voice (when read out by a speech-based browser or screen reader) and on Braille-based, tactile devices. CSS specifies a priority scheme to determine which style rules apply if more than one rule matches against a particular element. In this so-called cascade, priorities or weights are calculated and assigned to rules, so that the results are predictable. CSS has various levels and profiles. Each level of CSS builds upon the last, typically adding new features and typically denoted as CSS1, CSS2, and CSS3. Profiles are typically a subset of one or more levels of CSS built for a particular device or user interface. Currently there are profiles for mobile devices, printers, and television sets. Profiles should not be confused with media types which were added in CSS2. CSS 1 The first CSS specification to become an official W3C Recommendation is CSS level 1, published in December 1996. Among its capabilities are support for: •Font properties such as typeface and emphasis
•Color of text, backgrounds, and other elements •Text attributes such as spacing between words, letters, and lines of text •Alignment of text, images, tables and other elements
•Margin, border, padding, and positioning for most elements CU Museum Online Information System
1-7
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
•Unique identification and generic classification of groups of attributes The W3C maintains the CSS1 Recommendation.
The proponents implements the CSS1 specification for their study
The Client Server Architecture The Internet revolves around the client-server architecture. Your computer runs software called the client and it interacts with another software known as the server located at a remote computer. The client is usually a browser such as Internet Explorer, Netscape Navigator or Mozilla. Browsers interact with the server using a set of instructions called protocols. These protocols help in the accurate transfer of data through requests from a browser and responses from the server. There are many protocols available on the Internet. The World Wide Web, which is a part of the Internet, brings all these protocols under one roof. You can, thus, use HTTP, FTP, Telnet, email etc. from one platform - your web browser. Some common Internet protocols •
HTTP (HyperText transfer Protocol): used on the World Wide Web (WWW) for transfering web pages and files contained in web pages such as images.
•
FTP (File Transfer protocol): employed for transfering files from one machine to the other.
•
SMTP (Simple Mail Transport Protocol): used for email.
•
Telnet Protocol: Used to open telnet sessions.
The proponents use the model #3 architecture for it is the best method for our study.
Model #3 of the client-server architecture - Server side scripting technologies
CU Museum Online Information System
1-8
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
The third case also involves dynamic response generated by the use of server side technologies. There are many server side technologies today. Active Server Pages (ASP): A Microsoft technology. ASP pages typically have the extension .asp. Personal Home Pages (PHP): An open source technology. PHP pages typically have .php, .phtml or .php3 file name extensions. Java Server Pages: .jsp pages contain Java code. Server Side Includes (SSI): Involves the embedding of small code snippets inside the HTML page. An SSI page typically has .shtml as its file extension. With these server technologies it has become easier to maintain Web pages especially helpful for a large web site. The developer needs to embed the server-side language code inside the HTML page. This code is passed to the appropriate interpreter which processes these instructions and generates the final HTML displayed by the browser. Note, the embedded server-script code is not visible to the client (even if you check the source of the page) as the server sends ONLY the HTML code. Let's look at PHP as an example. A request sent for a PHP page from a client is passed to the PHP interpreter by the server along with various program variables. The interpreter then processes the PHP code and generates a dynamic HTML output. This is sent to the server which in turn redirects it to the client. The browser is not aware of the functioning of the server. It just receives the HTML code, which it appropriately formats and displays on your computer.
CU Museum Online Information System
1-9
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
CU Museum Online Information System
1-10
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Significance of the Study The study has significance to the following benefactors: CU Museum of Three Cultures This study identifies the existing problems of CU Museum regarding its operation and will provide solutions by developing an online information system that will answer the needs of the client. Museum Enthusiast Researchers of the Cu Museum will also benefit from this project for conducting research and exchanging of information can be done at the comfort of their home using the internet. Proponents Completing the study is beneficial to the proponents for it is part of the requirements needed in completion of the Thesis Writing subject. And this will also provide an avenue for the proponents to practice and implement the skills and knowledge they have gained for the past four years. Museum Industry This study will encourage other museums to create their own website and build connections to other museums, thus exchanging of information will be fast and efficient. Tourism of Cagayan de Oro City The proposed project will be available on-line which will showcase three different cultures in Mindanao; this will promote the tourism of Cagayan de Oro.
CU Museum Online Information System
1-11
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Scope and Limitation The study focuses on developing and designing an online information system for the CU Museum of Three Cultures. The system will serve as a tool for the people who will conduct a research in the CU Museum. It will allow remote submission of data but Cross referencing will not be available. On the other hand the guest must register first to be able to do inquiry. The study limits only to generating of information and having them available online.
CHAPTER 2
CU Museum Online Information System
1-12
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
REVIEW OF RELATED LITERATURE This chapter presents the review of related literature and review of related studies that are relevant to the study being undertaken by the proponents. “Online services offer people email-connections research and downloading and shopping. These are the things that you can do in online services. Monitoring also involves the connecting computer to another by modem or network and communicates lines. Connectivity provides the benefits of email telecommunicating databases computer screen. Whether the networks are as company, small local area network or worldwide networks allows the users to send messages anywhere” (Source:www.campusi.com/bookFind/asp/bookFindPriceLst.asp?prodid=007288093;McGraw-Hill;2004)
CU Museum Online Information System
1-13
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
CHAPTER 3 METHODOLOGY AND DESIGN Dynamic content was considered in building the application. The researchers conducted surveys on how the system should appear. The importance of beneficiary satisfaction on using the system is one of the proponents concern. For the backend part of the system, the proponents interviewed the curator (beneficiary) to ask the vital parts that the system should have as function. The proponents then formulate their own functions and show to the curator what would the system look like in their own perspective that is base on the curator’s point of view. The researcher used the spiral model as their formal methodology in creating the system.
The Spiral Model Fig. 3.1 As shown in the diagram the spiral model has four main stages. These stages are the ideal scheme to develop the project for the study to become successful; the researchers must
CU Museum Online Information System
1-14
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
have to understand what are the needs of the beneficiary and formulate the solutions that would satisfy the needs of the beneficiary. The following stages were followed in the development of the application: Iteration #1 – Create the application. In the first iteration, we create the Contact Manager in the simplest way possible. We add support for basic database operations: Create, Read, Update, and Delete (CRUD). Iteration #2 – Make the application look nice. In this iteration, we improve the appearance of the application by modifying the default ASP.NET MVC view master page and cascading style sheet. Iteration #3 – Add form validation. In the third iteration, we add basic form validation. We prevent people from submitting a form without completing required form fields. We also validate email addresses and phone numbers. Iteration #4 – Make the application loosely coupled. In this third iteration, we take advantage of several software design patterns to make it easier to maintain and modify the Contact Manager application. For example, we refactor our application to use the Repository pattern and the Dependency Injection pattern. Iteration #5 – Create unit tests. In the fifth iteration, we make our application easier to maintain and modify by adding unit tests. We mock our data model classes and build unit tests for our controllers and validation logic. Iteration #6 – Use test-driven development. In this sixth iteration, we add new functionality to our application by writing unit tests first and writing code against the unit tests. In this iteration, we add contact groups. Iteration #7 – Add Ajax functionality. In the seventh iteration, we improve the responsiveness and performance of our application by adding support for Ajax.
CU Museum Online Information System
1-15
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Hardware and Equipment Setup
Company Web Server
Internet
Database
Fig. 3.2 Since the target application is a web based application. Some hardware specifications and network setup should be implemented. The diagram above shows the desired or recommended setup for the application.
CU Museum Online Information System
1-16
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Description of the Current System In this setup the company web server is exposed over the internet enabling the remote users to access the page. The backend database is connected over the web server but it is not visible to the outside environment for security purposes. In client server architecture, this can be classified as a multi-tier architecture. The web server stand’s as the middleware for the user and the database. The following are tier divisions in the application: Presentation Tier – this the topmost level of the application. This contains HTML (Hypertext Transfer Protocol markups and CSS (Cascading Style Sheet) that has been rendered by our application. Business Logic Tier – this tier handles request of users by means of posting the page data back to the server. The server then handles the business logic by means of database access or any manipulation process. Data Tier – this is the database where any state or data that needs to be persisted. This commonly separated on a different machine for performance purposes.
Software and Applications applied in the study Front End: Web Browser – a W3C compliant web browser is needed to render the system correctly (ie. IE, Firefox, etc). Back End: Web Browser – as described earlier.
Personnel
CU Museum Online Information System
1-17
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Backend users – these users have the authority to administer the content of the web application. Backend users are given
their own authorization credentials so they
can securely administer the application. Front end users – o
Unregistered/Visitor – this are people who visits the website but does not sign-up for registration.
o
Register/Member – this are the people who sign-up and has access to functions that is unavailable for unregister visitor.
SYSTEM METHODOLOGY Requirements Definition The user or the visitor of the site should be able to access its contents depending on the access rules on the site. User can browse though the online objects. He/she can view its full information and also browse the gallery and other contents of the site. So basically some part or feature of the sites are only classified or accessible by the register members. The backend users who will be administering the site will be given accounts to have access to the administration page. After they have login, they will have access to administrative privileges that the admin site offers. System Design Specification
CU Museum Online Information System
1-18
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Front-end Login
Collections
Inquiry
Registration
Gallery
1.0 Login/Authentication 1.0.1 Login Username,
Authenticate
Password
(*) success – redirect to home page. [x] failed – postback to previous page.
1.0.1.0 Log member Login Info Username,
Authenticate
Password
(*) success – redirect to home page. [x] failed – postback to previous page.
2.0 Collections 2.0.1 Search Keyword
Query Database
(*)Redirect to search result page
2.0.2 Update Views Table ItemId
Check For Session
(*)Update Table Views for selected item [*]Continue
2.0.3 Get Object Info ItemId
Get Selected Object Info
*Redirect to search details page
CU Museum Online Information System
1-19
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
2.0.4 Add Colletion Comment ItemId,
Add Comment
Username
(*)Updated Table CollectionComment. Postback to current page.
3.0 Inquiry 3.0.1
Create Inquiry
Username,
Create/Add Inquiry
*Update table Inquiry,
Subject,
Redirect to create success
Message,
page
DatePosted, Username 4.0 Registration 4.0.1
Member registration
Username,
Create/Add Member
* Updated table members.
Password,
Redirect to registration
FullName,
success page.
Address, Contact, Occupation, Email, 5.0 Gallery 5.0.1 GalleryId
Get Pictures
*Redirect to gallery images page
5.0.1.0 PictureId
Get Picture
*Get Image
Back-end
CU Museum Online Information System
1-20
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Login
News
Gallery
1.0 Login/Authentication 1.0.1 Login User Username,
Authenticate
Password
(*) success – redirect to admin page. [x] failed – postback to previous page. Show error
2.0 News 2.0.1
Create/Add News
Title,
Add News
(*)redirect to success page
Topic, PreviewText, Content, Displayed, Posted 2.0.2 Update News Info Title,
Updated news information.
(*)Redirect to success page
Topic, PreviewText, Content, Displayed, Posted
CU Museum Online Information System
1-21
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Architectural Design
User
UI Components( View)
URL Routing
MVC HTTP Handler
Application Login (Controllers)
Business Logic (LINQ) Database
Fig _3.3 The system is design through the principle of MVC pattern. The different elements of MVC pattern is concern of the different layers of the application. UI which is the view is the actual output generated by the application and sends it back to user. The controller is concerned on intercepting the request and executes application and business logic need for that certain request and renders a view as its output.
CU Museum Online Information System
1-22
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
System Functions Logical Specification Programming Consideration, Issues and Tools To implement an MVC application the researcher needs a framework that make creating MVC application easier. In this sense we will only be concern on how we implement our application in an MVC manner. Visual C# will be the programming language will be used to execute application, database logic. Ajax support and client side scripting will be supported on the system. By the use of JQuery, scripting Ajax and Javascript will not be a problem. For aesthetics of the application CSS is will be used to style different markups. Some issues with browsers like Internet Explorer 6 in rendering applications. Cross browser compatibility like different pseudo classes of different web browser was carefully took by the researchers. System Requirement Specification Hardware Requirements Front-end Component
Requirement
Computer and
PC with a 133-MHz processor required; 550-MHz or
processor
faster processor recommended; support for up to four processors on one server
Memory
128 MB of RAM required; 256 MB or more recommended; 4 GB maximum
Hard disk
1.2 GB for network install; 2.9 GB for CD install
Display
VGA or hardware that supports console redirection required; Super VGA supporting 800 x 600 or higherresolution monitor recommended
CU Museum Online Information System
1-23
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Mouse and
Any standard keyboard and 2 button mouse.
Keyboard
Backend Component
Requirement
Computer and
800MHz processor minimum. 1GHz and up for better
processor
server performance.
Memory
256 MB of RAM required; 256 MB or more recommended; 4 GB maximum
Web Browser
CU Museum Online Information System
Any W3C compliant Web Browser
1-24
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Software Requirements
Frontend
Component
Requirement
Windows Server Host operating system. 2003 .NET Framework For libraries and components to need to for .NET 3.5
based web application
Microsoft SQL
Minimum version of MSS2000
Server Web Browser
Any W3C compliant Web Browser
Component
Requirement
Backend
Windows Server Host operating system. 2003 .NET Framework For libraries and components to need to for .NET 3.5
based web application
Microsoft SQL
Minimum version of MSS2000
Server Web Browser
Any W3C compliant Web Browser
Human Resource Requirements
Implementation Setup
CU Museum Online Information System
1-25
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
Configuration and setup for a server for the application must be correct for the application to run correctly. Listed in the software requirements is the .NET framework that must be installed on the server in order to render ASP.NET on the HTTP server. The hardware requirements should be taken seriously for performance reasons like rendering of the page and faster processing of application logic. Network bandwidth is also a factor for faster response of request to the users. Choosing the correct ISP and network setup is a good factor to be considered. Lesser network latency needs good network equipments (i.e. Switch, Routers); gigabit cards installation can improve performance of the whole infrastructure. Security implementations like monitoring of system process, network traffic will be carefully monitored over the system. Malicious people might use a network script that to flood the network with request that might slow the whole system. Database server isolation is also considered on the design for public access.
Testing Activities The researchers implement unit test and evaluation through the code and fix some issues that are found on the development process. Unfixed issues are listed for further discussion and bug fixing. Unit test activities are implemented on each method that is vital to failure (i.e. Input Validations, Exceptions). Forcing the code to break makes a good practice for minimizing bugs and errors in application. Deployment errors, these are bugs that showed up on the deployment application. Countermeasures for these events are planned through the use of logging (i.e. Event and Error logging). Installation Process Since the company has no previous system, it would be easy to implement or to install the new system without worrying about data loss and incorrect migration method.
CU Museum Online Information System
1-26
CAPITOL UNIVERSITY – College of Computer Studies BS in Computer Science
The server files of web application files will be installed on the HTTP server with its own virtual path to separate it through the different application running on the same server.
CU Museum Online Information System
1-27