# An Online Magic Square Gaming System Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Game is defined as structured activity which usually undertaken for enjoyment and sometimes used as an educational tool. According to Roger Caillois in his book Les jeux et les homes (Games and Men) defined a game as an activity that must possesses characteristics as fun - the activity chosen for its light-hearted character, separate - it is circumscribed in time and place, uncertain - the outcome of the activity is unforeseeable, non-productive - participation is not productive, governed by rules - the activity has rules that are different from everyday life and fictitious - it is accompanied by the awareness of a different reality. While mathematical game or also defined as recreational mathematics are referring to multiplayer games whose rules, strategies and outcomes can be studied and explained by mathematics.

Magic square is an order of N whereby square consisting of N rows and N columns that is filled with distinct integers in such a way that the sum of the integers in each rows, each column and each main diagonal is equal to some fixed numbers. The fixed number is called as magic sum of the square. While each space of the square is called a cell. A magic square is authentic if the entries are the consecutive numbers from 0 to n² - 1. Normal magic squares exist for all orders n â‰¥ 1 except n = 2, even though the case n = 1 is trivial. The magic constant of a normal magic square depends only on n and has the value as M = n (n² +1)/2 or M (n) = (n^3+n)/2.

There are many ways to construct magic square, but the standard and most simple method is to follow certain configuration or formulas which generate regular patterns. Magic square exists for all values of n, with only one exception which is impossible to construct a magic square of order 2. Magic square could be divided into three types as odd, singly even (n even, but indivisible by 4) and doubly even (n divisible by 4).

Therefore, I would like to develop an online Magic Square gaming system which will be different on each any every manner from the system those are available in the website currently. I'm keen in doing it online because these game need to regain back it's renown seems it's been almost forgotten by the gamers. So, by implement it online, many people will visit it and at the same time will get them a chance to learn and play this ancient game again and it will be as community based games through membership board facilities. Unlike other game's website which offers varieties of games on one particular site, this website would solely offers only Magic Square game for the users. This is because it would be an opportunity for the users to spend their time wisely to get more familiar and better understanding of this game without distraction by other games. At the same time, they also are able to learn the mathematical and algorithm theory that would be very useful even in real world environment through this game. I'm also hoping to rectify and reshuffle those disadvantages and to enhance further in both gaming and system perspectives as it to be as renowned community based game of a new era.

## Project Background

Numbers have always fascinated people. The strange and surprising properties that numbers have either individually or in relation with each other force us to believe that numbers have intrinsic beauty and magic. It is so amazing that ordering numbers in certain ways leads to very surprising objects and results. That is how Magic Square was found, according to http://www.grogono.com/magic/history.php (2009) a Magic Square is an ancient math square game which was known as Lo Shu square as early as 2800 B.C by Chinese mathematicians. Magic square is an arrangement of the numbers from 1 to n² (n-squared) in an n x n matrix, with each number occurring exactly once, and such that the sum of the entries of any row any column or any main diagonal is the same (Allan Adler's, no date). The Magic Square games involving recreational mathematics as of the solution formula for these game (Hankin RKS, 2005).

This game usually played by children's, teenagers and gamers' who keen in mathematical implication games. Good number skills help us all in almost every aspect of daily life. Numeracy leads to better financial management when they are older, so playing this kind of math's games will giving them a great time now and making them richer in later life (http://education.newarchaeology.com/free_fun_math_games.php). These math based system would connect mathematical learning with personal experiences, events and personal interests. Apart from that, while in problem solving situation which involving numbers, it must be using appropriate computational procedures such as recalling the basic facts of addition, subtraction, multiplication and division which is common mental math applications. It would be an entertainment cum educations gaming system for the player's.

Currently the Magic Square game which held in many website is not interactive in the terms of GUI and it could also assume bored because there are no interesting application apart from solving the square itself. There are also only fewer varieties of squares (e.g. 3x3, 4x4 and etc) available in the current system and even not being updated consecutively. Besides that, the game instruction that been given also not user friendly. While, the solutions provided are also not interactive whereby the answer were simply pop up's without step by step method (http://www.math-play.com/magic-square.html). Apart from that, the current system is also doesn't have membership account page and forums for the frequent game players to communicate and discuss about the game.

In conjunction of that, I would like to invent an efficient and interactive online or web based Magic Square gaming system which will be different on each any every manner from the system those are available in the website currently. I'm keen in doing it online because these game need to regain back it's renown seems it's been almost forgotten by the gamers. So, by implement it online, many people will visit it and at the same time will get them a chance to learn and play this ancient game again and it will be as community based games through membership board facilities. Unlike other game's website which offers varieties of games on one particular site, this website would solely offers only Magic Square game for the users. This is because it would be an opportunity for the users to spend their time wisely to get more familiar and better understanding of this game without distraction by other games. At the same time, they also are able to learn the mathematical and algorithm theory that would be very useful even in real world environment through this game. I'm would be also hoping to rectify and reshuffle those disadvantages in the new system as it to be an interesting and joyful fun of online Magic Square gaming system.

## Aim of Project

The aim of this project is to produce a gaming system whereby the user would be able to learn and play the game to broaden their mathematical knowledge.

## Limitation of Product

The limitation of the product is, it require internet connection to play this game since it is a web based gaming system. Besides that, it is a single player game, whereby only one player is allowed to play the game on a computer at a time. This gaming system doesn't have multiple player option which means that, a player could not be play with other player at a same time. Apart from that, this game can only play by using mice.

## Expected Product Outcomes

The expected product outcome would let the players to get know about the rules and instruction of this game, view the solution of the squares visually with step by step method and play varieties number of squares such as 3x3, 4x4, 5x5, 6x6 and so on. The system is also has level options such as easy, moderate and challenging which will be select by the player before start playing the game. Besides that, there would be also membership account in the system so that the members have more privileged application on the sites. The players are also can share their opinion and chat via forum. Apart from that, the players are also can search to look through the rankings of the players complete the game according to some criteria's. This system is also implemented with recommendations options whereby the system would identify and allocate the skill or level status of the player's results.

## Literature Review

This section is writing about the literature review of the project. The project title is online magic square gaming system. The components of this project are HTML, XHTML, PHP, JQuery (JavaScript), MySql, and Ajax compatible software's as Macromedia Dreamweaver, Microsoft Expression Web, Notepad and Notepad++, and HCI (Human computer Interaction). There are various types of source to examine this project. Looking at books itself not enough to get done this project, but also research on internet to get idea of previous work or up-to-date material is very important. So the project mainly research area is on magic square games, recreational mathematics and matching algorithm.

In this era of high technology world, IT (Information System) now are well establishing, so many games are available as manually installed games and online games. Today's people prefer online games to play cause of easiness, user friendly, and free. Magic Square is one of the online games that would attract the gamers. The current online magic square games is not interactive and also assume bored because there are no interesting applications apart from solving the square itself. Therefore this is a right time to implement a better and interactive magic square gaming system, so the players can access and play the games through website anytime. This project would let the players to get know the rules and instruction of the game, view the solution of the squares visually with step by step method, play varieties number of squares such as 3x3, 4x4, 5x5, 6x6 and so on. The system is also has level options such as easy, moderate and challenging which will be select by the player before start playing the game. Besides that, there would be also membership account in the system so that the members have more privileged application on the sites. The players are also can share their opinion and chat via forum. Apart from that, the players are also can search to look through the rankings of the players complete the game according to some criteria's. This system is also implemented with recommendations options whereby the system would identify and allocate the skill or level status of the player's results.

According to Netsity, a web based application is a software package that could be accessed through the web browser. The software and database reside on a central server rather than being installed on the desktop system and is accessed over a network. Web based application are the ultimate way to take advantage of today's technology to enhance the organizations efficiency and productivity. Therefore, the Magic Square game that I'm going to construct as web based system would help to evolve it's renown among the online gamers'. It allows the user to access into the site 24 hours a day, 7 days a week and from anywhere with computer connected to the internet. The new system would be an interesting and joyful fun of game.

## HCI

Human-computer interaction (HCI) is the study of interaction between users and computers. It is a discipline concerned with the design, evaluation and implementation of interactive computing systems for human use and with the study of major phenomenon surrounding them.

Human-computer interaction is concerned with the joint performance of tasks by humans and machines, the structure of communication between human and machine, human capabilities to use machines (including the learn ability of interface), algorithms and programming of the interface itself, engineering concerns that arise in designing and building interfaces the process of specification, design, and implementation of interfaces, and design trade-offs. Human-computer interaction thus has science, engineering and design aspects. (Human-Computer Interaction and Web Design, http://www.comp.lancs.ac.uk/~dixa/papers/web-hci-2004/), (Daniel D. McCracken, (2004), Rosalee Jean Wolfe, User-centered Website development: a human-computer interaction approach), (Andrew Sears, Julie A. Jacko, (2008), The human-computer interaction handbook)

## Project Development Methodology

A project Methodology refers to the analysis of the methods used appropriate to the field of study. It is a systematic way of accomplishing certain tasks and is defined as a collection of procedures, techniques, tools and documentation aids that helps a software developer to speed up and simplify the software development process (Pressman, 2001). It is a system of inter-related phases, activities, procedures and tasks that define the project process from the beginning through to completion. Each phase of the project produces a major deliverable that contributes towards achieving the project aim and objectives. There a various kinds of project methodology being widely to guide the processes of the project, such as waterfall model (the original SDLC method), Rapid Application Development (RAD), Joint Application Development (JAD), the fountain and the spiral model. That methodology would ensure and improve the quality of a project.

(Project management methodology, (no date), http://www.transport.qld.gov.au/Home/Projects_and_initiatives/Onq_project_management_methodology/Methodology/)

## Target Market

These games are mainly played by kids, teenagers and adults who keen in mathematical implication games. According to the survey by comScore (NASDAQ:SCOR), a leader in measuring the digital world, released the results of a global study into online gaming showing the number of unique visitors to these sites to have reached almost 217 million worldwide - a year-on-year growth of 17 percent whereby the players are ages between under 18 to 50+ above. 57% of online game players are male and 43% are female. 37% percent of heads of households report they play games on wireless devices such as a call phone or PDA, up from 20% in 2002 (http://www.theesa.com/facts/gameplayer.asp).

## Previous Work / Existing Systems

The current Magic Square gaming system which held in many website is not interactive in the terms of GUI and it could also assume bored because there are no interesting application apart from solving the square itself. There are also only fewer varieties grid of squares (e.g. 3x3, 4x4 and others) available in the current system and even not being updated consecutively. Besides that, the game instruction that been given also not user friendly. The solutions provided are also not interactive whereby the answer were simply pop up's without step by step method. It makes the users hard to understand and ignored to be as learning process for them to improve their skills and techniques to solve the game. Apart from that, the current system is also doesn't have membership account page and forums for the frequent game players to communicate and discuss about the game. Therefore it would not be a community based game without that application.

Some of the existing Online Magic Square Game is as below:

The default game interface The solved game interface

Source from allmath.com, (1997-2005), http://www.allmath.com/magicsquare.php

Source from Dubi Kaufmann, Magic Square Puzzle, http://www.dubster.com/math/

Source from Magic Squares, http://www.theproblemsite.com/games/magical_squares.asp

## The Benefits and Advantages

The benefit of the magic square game is to ease up player's critical thinking; logic is the key to solving the puzzle. As make it habit, our ability to think critically improves. Patience, the players would get such a nice feeling as after complete the puzzle. However, patience is needed to outsmart the tricky challenge. Also, temperament is one thing that develops in you as you get to more advanced levels. Besides that, focus is important to get every number into its right grid of squares. Studies show that, short attention span is improved as we make Magic Square game part of our everyday habit. Apart from that, it would also increase the player's creativity. Since the players keen to complete the game as the fastest way possible, the player's then thinking of ways on how to accomplish it. That's where the creative thinking works on. The more players think of ways to solve magic square, the more they develop their right brain.

As the benefits and advantages of the project are as the players would have a visible understandings of the game rules. The player's also would be able to view the square solution visually with step by step method which is an interactive way for the players to learn the solving technique easily. Apart from that, the forum facilities also let the players to communicate and discuss each other about the game. The players are also can view the rankings list of the players who were manage to accomplish the game. This would be challenges and attract the player's to compete among player's to accomplished the game more as to be first in the ranking list. Besides that, the players also could view their skill or level status in completing the game.

The administrator also can retrieve the record anytime. Through membership accounts, it is convenient to the administrator to view the record of both players and games. The administrator can get know about the players interest through their profile towards gaming which can be revise to be implement in the future. System security is concern, the players profile is protected by username and password to prevent unauthorized person to gain access to the player's information in the database. So only players with authentic username and password could access or modify their own profile.

This gaming system would be very interesting and user friendly in both gaming and system perspective.

The disadvantage of this project is for those who have no internet connection because it is a web based gaming system. I construct it as web based system because these game need to regain back it's renown seems it's an ancient game and been almost forgotten by the gamers. So, by implement it online, many people will visit it and get them a chance to learn and play this ancient game. This would be an initiative for the gaming system to become a community based game. Apart from that, this game could only be play by a single player on a computer at a time.

## Chapter 3: Requirements and Analysis

This chapter is about "Requirement and Analysis" of the project. This chapter consists of functional and non functional requirements, development tools (software), security, training and cost. The software requirement concern on this project is Web development tools such as Notepad, Notepad++, Adobe Dreamweaver (Macromedia Dreamweaver) and Microsoft Expression Web to build the system. The software requirement area covered the advantages of the software tools that mentioned above. The hardware requirement area discussed the minimum hardware requirement to run the system. Besides that, various types of costs would be discussing more details in this chapter. The duration of implementation of this project will took around 7-8 months to complete.

## Functional Requirements

I have set several functions in the system. The game would be play as One Player game whereby only one player is allowed to be play at a time at one system.

When player enter the system, the user must click the button named New Game or Start Game in the toolbar in order to start playing a new game. After that the user have an option to be chosen as dimension type (e.g. 3x3, 4x4, 5x5, etc) to be play. Player would be play with the computer itself. The player needs to play the game until end to be a winner.

While there is also login functions for the members. When player enter the system, they required to enter their username and password in order to access into members game website, then the user must click the button named New Game or Start Game in the toolbar in order to start playing a new game. After that the user have an option to be chosen as dimension type (e.g. 3x3, 4x4, 5x5, etc) to be play. Player would be play with the computer itself. The player needs to play the game until end to be a winner. The winner will be recorded in database as to be ranked top high scores according to several categories. The system is also will stores the player's name, scores, time and numbers of squares attempted/completed in the database.

Besides that, the system also embedded with a better fundamentals understanding of rules and instruction of the game, so that the user doesn't have to encounter any difficulties for playing this game. There is also an option named hint would be provided for the players while playing the game. This option meant to give solution hint or clues for the players if they find any difficulties while playing the game. The system is also implemented with recommendations options which would identify and allocate the players gaming skills or level status according to the gaming results they acquired.

Apart from that, there would be also solutions provided visually in a way of step by step method for each and every square of the games. The solutions provided would help the players to understand the squares solution better whereas solving the game according to the procedure correctly, easily, and complete it as fast as possible. These functions will be mainly used by the players who are giving up or abandon of playing the games. Though, there would be also an alert pop up message if the players insert or placed the number on the wrong grid of squares. This would help to improve the user's skills on solving game correctly.

The membership account also would be implemented in the system so that the members have more privileged application on the site. The members page would have privileged as search options for the members to view the rankings of the players according to several categories. The members also can share their opinion among members and chatting regarding the games via forum on the site. Then, there are additional functions that give information to player about Magic Square Game such as about the game as time clock, history, introduction, rules, and tips.

Apart from that, the website is also would be maintain up-to-date according to the players feedback. It is to make the game website to be visit frequently by the players. This would do using object-oriented method. The website is also giving a flexibility and dynamism in terms of solution which be provided through animated visual format, square solving hint, fast response time and understandable playing method.

## Non Functional Requirements

I had has identified some non-functional requirements in order to assure the quality of the system. Below are these requirements based on the needs of the system.

## Hardware and Software Consideration

Players only need the common computer system (monitor, CPU, keyboard, and mouse) with minimum requirement and with internet connection to access into the webpage. The following details are recommended minimum hardware and software requirements to run the system. These minimum specifications are not necessarily to be available in new computer configuration currently on the market and are provided as a reference for a minimally configured computer.

2.0 GHz or faster CPU (e.g., Intel Pentium/Celeron Family, AMD Athlon/Phenom family, or compatible processor)

128MB or more RAM for windows 98, NT, or Me operating System, 128MB or more for Windows 2000, 256MB or more for Windows XP operating system and 512MB or more for Windows Vista and Windows 7 operating System is recommended. For other operating system and software application, check the minimum requirements of the operating system and application software that will be using for the necessary RAM for the system needs.

10GB or larger hard drive capacity

High resolution graphics adapter with at least 2 MB video RAM, Supporting at least 16-bit color at 800 x 600 resolutions. Laptops should have an external monitor port for connection to an external monitor or classroom projection system.

High-resolution color display (at least 800 x 600 resolutions, 16-bit color. Laptop displays should be at least 12" diagonally and use active-matrix technology. Desktop displays should be at least 15" diagonally.)

56kbps modem, ISDN, DSL or higher network cable or WI-FI.

Players also need to consider the software requirement before play the game. Minimum there are Operating System (Windows, Mac OS X, Ubuntu and others), Internet Browser (Internet Explorer, Google Chrome, Opera, Mozilla Firefox, Safari and etc), ActiveX controls and web browser add-ons to support the game.

## Usability

The main concern of this system development is to provide the user-friendly interface. I have emphasized much on the system user interface design. The objective of this concern is to provide better interaction between the system and user. I expects that all level of people are able to use the system no matter how old the user is, how smart the user or how mature the user because this game is provided for all categories of user.

## Maintainability

The system database will record name, score and duration time to list out the players rankings. This module is only available for the members. Any new data of members function would be comparing with others data before save in database. If the new data higher than previous, the new data will replace the previous, while previous will be downgraded because the system was set to displays as top-down players rankings.

## Flexibility and Dynamism

The database will record the member's data. Then to record the scores, the players must win the game. The system will record every time player wins the game.

## Response Time

I have tried to build this system with faster response time in order to reduce the time consumption. However, the speed of the system is still depending on the internet connection and memory of the hardware because in this system, I had included sound in order to make the game attractive and interesting.

## Security

The system would be having user name and password access for the registered users and administrator. A password is non-spaced sequence of characters and numerical used to determine that a computer user requesting access to a computer system is really that the particular user. Before any user accessing the system, the users are requiring to enter their user name and password. This will prevent hackers from accessing our system without authorization.

## Training

The system will be very convenience and provide ease of usage and flexibility to the users because the system is very user friendly. Use can refer to the rules and instruction which held on the web site when they have problem on the site or playing the game.

## Web Application Software

The web based programming language as HTML, XHTML, PHP, JQuery(JavaScript), MySql, Ajax and others are great languages to build this Magic Square gaming system. The software that I might be using to construct this system would be as Notepad, Notepad++, Macromedia Dreamweaver or Microsoft Expression Web. That software is simple, easy and user friendly to be used. Both design and coding phase that available in the software (Macromedia Dreamweaver or Microsoft Expression Web) are to be very convenient and comfort for me to identify the errors of the code while designing the gaming system interface. That software is also used to be very fast in handling and operating the designing and coding page at a same time. Apart from that, the Apache will be use as web server for the system. Apache is a public-domain open source web server which is used to serve both static content and dynamic web pages on the World Wide Web. This area will be discussing further details in the next chapter.

(Make Your Own Website, http://www.quackit.com/make-your-own-website), (Web Building Tutorial, http://www.w3schools.com/Site/default.asp), (Scott Mitchell, (2006), Create your own website) (Craig Grannell, (2007), The Essential Guide to CSS and HTML Web Design).

## System Development Life Cycle

I will be using System Development Life Cycle (SDLC) methodology to achieve the aim and objective of this project. The SDLC is a conceptual model which being used in project management that describes the stages involved in an information system development project from an initial feasibility study through maintenance of the completed application. Mostly, several models would be merged into some sort of hybrid methodology. Besides that, documentation is crucial regardless of the type of model chosen or devised for any application and is usually done in parallel with the development process. The advantages of SDLC are, its consist clear project objectives to be achieve, Stable project requirements, progress of system is measurable, strict sign-off requirements and others.(Software Development Life Cycle, (no date) http://www.startvbdotnet.com/sdlc/sdlc.aspx)

The strengths of SDLC are as:

Control

Monitor large projects

Detailed steps

Evaluate costs and completion targets

Documentation

Well defined user input

Ease of maintenance

Development and design standards

Tolerates changes in MIS staffing

The SDLC process models are as below:

Source from Wikipedia, (no date), http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle

## Development Tools (Software)

This project is built using either Notepad, Notepad++, Adobe Dreamweaver (Macromedia Dreamweaver) and Microsoft Expression Web. All these software's are familiar to me and its very user friendly to be use. This is very fame web designing/development tools which vastly used by most of the web site developer. The system programming would be done using notepad and notepad++ and seems it is suitable for developing because it is easier to use than others. While for the interface design and animations, it would be better to use the Adobe Dreamweaver (Macromedia Dreamweaver) and Microsoft Expression Web because it is very user friendly.

Notepad is a simple text editor for Microsoft Windows. It has been included in all version of Microsoft Window since Windows 1.0 in 1985. Creating a webpage is perfectly fine. The advantages of notepad are as it's a lightweight software, It would be able for learning and remembering the coding by typing it one by one, its free version whereby its preinstalled in Microsoft Windows, no complicated design functionality to be learn, we have complete control over the code, it doesn't add formatting into the file that saved at the end and it doesn't automatically generate redundant html which sometimes hard to read. The web page programming codes that supported by notepad are as HTML, XHTML, JavaScript, jQuery, PHP, Ajax, and Xml.

Notepad++ is a text editor and source code editor for Windows. The primary advantage of Notepad++ over the built-in text editor, Notepad, is tabbed editing, to easily work with multiple open files. Like most text editors, this is not specifically a Web editor, but can be used to edit and maintain HTML. With the XML plug-in, it can check for XML errors quickly, including XHTML. It Supported languages as C, C++, Java, C#, XML, HTML, PHP, JavaScript, RC resource file, makefile, ASCII art file (extension .nfo), doxygen, ini file, batch file, ASP, VB/VBS source files, SQL, Objective-C, CSS, Pascal, PERL, Python, Lua, TeX, TCL, Assembler, Ruby, Lisp, Scheme, Properties, Diff, Smalltalk, Postscript, VHDL, Ada, Caml, AutoIt, KiXtart, Matlab, Verilog, Haskell and InnoSetup. Notepad enables the user to edit several documents at the same time. Besides that, it's easier to search and replace one string in the document by using the regular expression. It can be also open a document by drag & drop. The user can also move the document from a position (or even a view) to another by drag & drop. The user can set the position of the views dynamically (only in 2 views mode : the splitter can be set in horizontal or in vertical).It has File Status Auto-detection whereby, If the user modify or delete a file which opened in Notepad++, It will be notified to update the document (reload the file or remove the file) and it is also consist with auto-completion features which involves the program predicting a word or phrase that the user wants to type in without the user actually typing it in completely. The notepad++ is a user friendly tool to write the web page coding.

Adobe Dreamweaver (formerly known as Macromedia Dreamweaver) is a web development application originally created by Macromedia, and is now developed by Adobe Systems, which acquired Macromedia in 2005. It supports web technologies such as CSS, JavaScript, and various server-side scripting languages and frameworks including ASP, ColdFusion, and PHP. Besides that, it could manage many sites easily. Dreamweaver makes it as easy as possible to toggle between sites you are working on. If developing websites for a living, this ease of switching up projects is a definite must. Easy to upload via built in FTP, the built in FTP features are good because FTP system is capable of changing file permissions (CHMOD) which is nice. Apart from that, it is built in CSS features, one of the best things about Dreamweaver is the way it makes complicated coding processes easy for people who aren't hardcore coders. The CSS tools are a perfect example. Using the point and click CSS window, the user can start adding CSS styles to the sites.

It is also easy to create rollover button and it does all the behind the scenes coding. The user is also could choose the button styles from a built in selection of flash buttons that have rollover effects. While, with the built in pop-up menus, the user can easily create the types of navigation links that usually seen on professional looking sites. It is also consist of Server Side Include button which are so essential to website building, but few WYSWYG editors include a special feature for them. Dreamweaver hits the mark perfectly with SSI and gives several options to choose from. Understanding this key feature will save the time and help to build better sites. Apart from that, the Dreamweaver Template Files is easy to use, even for a beginner, and makes the websites more flexible. If the user make a mistake when designing web pages, but have use a dwt file, the user can correct the mistake on hundreds of pages instantly. Also it is useful for updating site layouts. The web forms creator in Dreamweaver is exceptional. It is easy to create web forms, and with a small additional PHP script, the user can have results of any form sent to any email address you want. Check out my site for more on the PHP form script. (J. Gilbert, (no date), http://ezinearticles.com/?8-Benefits-Of-Using-Dreamweaver-8&id=369892).

## Microsoft Expression Web

Microsoft Expression Web is an HTML editor and general web design program by Microsoft. It capable of editing web pages using XML, CSS 2.1, ASP.NET 2.0, XHTML, XSLT and JavaScript. It requires the .NET Framework 2.0 to operate. (Wikipedia, (no date), http://en.wikipedia.org/wiki/Microsoft_Expression_Web).

Microsoft Expression Web allows a developer or rather a web-designer to have the most exact standards-compliant engines. Experts have rated the Expression Web as effective software in providing engine accuracy which global standards rate as most correct. The application also benefits programmers and web designers by offering them share like facilities through which they can access and implant add-ons on web-pages. This means that a web designer is able to place an 'add-on' on a web site from any third party programmer or web-designer.

The capability also extends to various tools like support and plug-ins which make an appeal to most end-users. It does the basics well which is easy for beginners to learn and powerful for advanced users. It is also has an accessibility checker built-in. Apart from that, It is also adds in CSS validation and stronger visualization of CSS pages to make it a more effective professional designtool.(JenniferKyrnin,(2008),http://webdesign.about.com/od/expressionweb/gr/expression_web2.htm).

## Apache HTTP Server

The Apache HTTP server, commonly define as Apache is web server software which is playing a significant key role in the initial growth of the World Wide Web. Apache was the first viable alternative to the Netscape Communication Corporation web server (currently known as Sun Java System Web Server), and has since evolved to rival other UNIX based web servers in terms of functionality and performance. It is develop and maintain by Apache Software Foundation. Apache supports a variety of features, as many implemented as compiled modules which extend the core functionality. This could range from server-side programming language support to authentication schemes. It supports PHP, Perl, Python, Tcl and others.( Apache HTTP Server, (no date), http://en.wikipedia.org/wiki/Apache_HTTP_Server#Features)

Apache significantly used to serve both static content and dynamic web pages on the World Wide Web. It is a flexible tool which can be customized due to its modular structure, easy to administrate, it's an open source community, efficient, portability and support. (The Advantages of Apache, (no date), http://www.webslave.ws/apache/the-advantages-of-apache/)

The apache binary is called as httpd for UNIX and apache.exe for Win32 and usually runs in the background. Each copy of httpd/apache that is started has its attention directed at a web site which is called as a directory. A web site directory typically contains four subdirectories:

Conf - It contains the configuration files of which httpd.conf are the most important. It specifies the URLs that will be served.

Htdocs - It contains the HTML files to be served up to the site's clients. This directory and those below it, the web space is accessible to anyone on the Web and therefore poses a severe security risk if used for anything other than public data.

Logs - It contains the log data, both of accesses and errors.

Cgi-bin - It contains the CGI scripts. These are program or shell scripts written by or for the webmaster that can be executed by Apache on behalf of its client. It is important for security reasons that this directory not will be in the web space.

Apache listen to the IP addresses specified in its Config file. When a request appears, Apache receives it and analyzes the headers. It then applies the rules it finds in the Config file and rakes the appropriate action. While the webmaster's main control over apache is through the config file. (Ben Laurie, Peter Laurie, (2002), Apache: the definitive guide)

## HTML / XHTML

HTML (HyperText Markup Language) is the predominant markup language for web pages. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists etc as well as for links, quotes, and other items. It's allows images and objects to be embedded and can be used to create interactive forms. It is written in the form of HTML elements consisting of "tags" surrounded by angle brackets within the web page content. Besides that, it can include or can load scripts in languages such as JavaScript which affect the behavior of HTML processors like Web browsers and Cascading Style Sheets (CSS) to define the appearance and layout of text and other material.

(Wikipedia, (no date), http://en.wikipedia.org/wiki/Html)

While, XHTML (Extensible Hypertext Markup Language) is a family of XML markup languages that mirror or extend versions of the widely used Hypertext Markup Language (HTML), the language in which web pages is written. It is defined as an application of Standard Generalized Markup Language (SGML) which is a very flexible markup language framework. XHTML is an application of XML, a more restrictive subset of SGML, because XHTML documents need to be well-formed, they can be parsed using standard XML parsers unlike HTML which requires a lenient HTML-specific parser.

(Wikipedia, (no date), http://en.wikipedia.org/wiki/Xhtml).

## JavaScript

JavaScript use to design interactive sites. Although it shares many of the features and structures of the full Java language, it was developed independently. JavaScript is intended to be a fast and simple language for enhancing web pages and severs. It is built into the browser to provide a simple means of adding interactivity to web pages. JavaScript can interact with HTML source code, enabling Web authors to spice up their sites with dynamic content. It is endorsed by a number of software companies and is an open language that anyone can use without purchasing a license. It is supported by recent browsers from Netscape and Microsoft, though Internet Explorer supports only a subset, which Microsoft calls Jscript. (JavaScript, (no date), http://www.webopedia.com/TERM/J/Javascript.html).

## jQuery

jQuery is a lightweight JavaScript library that emphasizes interaction between JavaScript and HTML. It is a free and open source JavaScript library that is used by Web developers to navigate HTML documents, handle events, perform animations and add Ajax interactions to Web pages. jQuary syntax is designed to make it easier to navigate a document, create animation, select DOM elements, Ajax development and event handling. Besides that, it also provides capabilities for developers to create plugin on top of the JavaScript library. By providing this option, software developers are able to create abstractions for low-level animation and interaction, advanced effects and high-level, theme-able widgets. This contributes to the creation of robust, powerful and dynamic web pages.

(Wikipedia,(nodate),http://en.wikipedia.org/wiki/Jquery),(jQuery(nodate),http://www.webopedi.com/TERM/j/jQuery.html).

## PHP

PHP (Hypertext Preprocessor) is general purpose scripting language which was originally designed for web development to produce dynamic web pages. It could be embedded into HTML and generally runs on a web server which needs to be configured to process PHP code and build web page content from it. It can be deployed on most web servers and on almost every operating system and platform free. PHP code is processed by an interpreter application in command line mode performing desired operating system operations and producing program output on its standard output channel. It could be also function as a graphical application. Besides that, PHP is available as a processor for most modern web servers and a standalone interpreter on almost every operating system and computing platform. PHP significantly acts as a filter which taking input from a file or stream containing text and/or PHP instruction and outputs another stream of data, usually the output will be HTML. Since PHP 4, the PHP parser compiles input to produce bytecode for processing by the Zend engine, it provides improved performance over its interpreter predecessor. (Wikipedia, (no date), http://en.wikipedia.org/wiki/Php).

## Costs and ROI (Return On Investment)

The project is economical feasible. This is because, the expected benefits of the proposed system out weight the costs involved in developing, installing and operating it. While, project benefits in terms of cost include tangible cost, intangible cost, and one-time cost.

## Tangible Cost

The tangible costs (measurable in terms of money) are software and hardware cost and operational costs. The tangible benefit of the new implemented system will improve the users money, as with computerized system, the users does not need to buy Magic Square game book or magazine to play instead they can do it right away through online anywhere, anytime and play as many time as they want without boundaries with availability of internet connection. It will also improve the user's mathematical knowledge. Through the step by step visual method solution the users would be able to learn the right method of playing it. So, the expectation of users to visit the site is high.

## Intangible Cost

The intangible cost is which cannot be measured in terms of money, since the proposed system is the solution to the existing system, intangible cost does not incur here. The tangible benefit of new the new implemented system will perform better information of the game. The players ranking record could be search and view from the system easily. Besides that, the game history and instruction is also made useful for the users to learn and get know about it further.

## One-time Cost

This is the cost calculated when initiating a project and the system. This will need the software and hardware equipments such as a development tools (software), modem or WI-FI, computer and printer.

## Maintenance

The system has a good maintenance feature. Maintenance will let the administrator to keep updating the system as to fulfill the user's needs. The updates would be take place in terms of adding varieties of squares, new features and that information that related to the Magic Square game.

## Summary

In this chapter, I has discussed on requirements analysis which include functional and non-functional requirement. The functional requirement includes main function such as login, square dimension type, numbers type, solutions, hint, and alert message, search functions to view the player rankings and sub functions. While, the non-functional requirement is more concern to minimum hardware and software requirement, usability, maintainability, flexibility and dynamism and response time.

Besides that, All the software's as mentioned above are support web markup language as HTML, XHTML, XML and programming languages as JavaScript, jQuery, PHP, and Ajax which I might be using to develop the Magic Square System. The software tools and scripting language is very user friendly, flexible and dynamic to develop the system though complicated and tough portions involved.