Web Development - Computing

HCI – Final Year Project
FT228/3
Overview of Lecture
• How is HCI incorporated into a normal
project?
• Discussion of Laoise Garvey’s thesis http://www.comp.dit.ie/dgordon/fyp/Thesis/lg
arvey.pdf
• Award winning final year project – 2005
• Investigation from a functional AND a
usability perspective
Project Background
•Objectives of this project
•Development of games on mobile phone
•Implement wireless network technology
Create “Tanks”, a mobile phone game:
•Battle environment – Two Player- using networking
technology
•Platform game – Single Player (One Player Game)
Contextual Analysis
•Project Area
•History of Gaming in Mobile Phones
•Technologies researched
•Java 2 Micro Edition (J2ME) Development
•Bluetooth Development
•User Group -?
Life Cycle Selection
•Water Fall Model
•Spiral Process
•Rational Unified Process
•Extreme programming
**No usability-focussed lifecycle considered
Life Cycle Selection
•Time-Line for Project – Waterfall Model
•Specification for One Player Game - Cyclic
nature of Spiral Model/Risk analysis
•Specification for Two Player Game - Cyclic
nature of Spiral Model/Risk analysis
•Object Orientated View Of Project – Rational
Unified Process
Requirements
•Specification for One Player Game
•Get through each level by destroying as many
enemies as possible
•A player is set against a clock
•Each time a user is hit by an enemy, score count
increases
•Once the game runs out, the game ends
Requirements
•Specification for Two Player Game
•User to defeat opponent user
•Games will be downloaded onto both phones
•Bluetooth connection used between both phones
-> both users’ tanks will appear on the other
user’s screen
•If tank is hit by bullet, tank’s position is reset to
original position
•Wall obstacles placed in the user’s way to
obstruct the line of fire
•Option of resetting game after game ends
Design
Tools used for design
•Use case diagrams
•Activity diagrams
•Class diagrams
Activity Diagram
Select One
Player Game
Initial screen
displayed
User selects start
game from menu
Time runs out
Game starts
User selects
go
User selects
exit
User selects
pause
Design
•Multiple cycles performed with each step
reduce significant remaining risks
•One player & Two Player
•Number of versions of game
•Earlier versions too complex to fulfil in timeline
•Features removed from earlier versions
•Inexperience also a factor
Implementation
•After a number of design iterations:
•One-Player Game – classes created and methods
coded
•Two-Player Game – classes created and methods
coded
Evaluation
•Black box testing
•Tests the functionality of the application
•Tester does not know the internal working of the
program
•Example of testing performed on next slide
•Usability testing
•The author stated during the course of the
dissertation that usability testing was performed.
However, no record of it has been provided
Evaluation
Field Name
Description of
Test
Actions
Expected Result
Actual Result
Select One
Player Game
Select the One Player
Game option.
Select the One Player
Game option using the
up/down Keys.
Start the game by
pressing the Launch
button.
Splash screen should appear
for four seconds.
The initial starting point of
One Player game should
then appear.
Same as ‘Expected
Result’
Select Two
Player Game
Select the Two Player
Game option.
Select the Two Player
Game option using the
up/down Keys.
Start the game by
pressing the Launch
button.
Splash screen should appear
for four seconds.
The initial starting point of
Two Player game should
then appear.
Same as ‘Expected
Result’
Test Sheet for Main Launch Screen of Game
Importance of HCI
Possible negative features noted by author:
•Small screens, less room for display
•Keys are small and less easy to operate
•Sound capabilities may be extremely limited
HCI Guidelines Used
Guidelines set by Nokia
When designing user interfaces (UIs) for mobile phones,
developers should be aware of the following:
1. Target group – Designers should have a clear idea of their
applications target users before design and implementation begin.
2. Early focus on users – Contact the intended users to make sure
their requirements are being fulfilled.
3. Applications should be simple and not uncomfortable to use.
4. Early and constant user testing – Early testing is essential so that
problems can be fed back into the development cycle as soon as
possible.
5. Integrated design – All aspects of usability including UI, help
system, documentation should evolve concurrently, rather than
sequentially.
HCI Guidelines Used
Nielsen’s Usability Principles
•Visibility of system status
•Match between system and the real world
•User control and freedom
•Consistency and standards
•Help users recognize, diagnose and recover from errors
•Error prevention
•Recognition rather than recall
•Flexibility and efficiency of use
•Aesthetic and minimalist design
•Help and documentation
How were the guideline’s used?
Guidelines set by Nokia
•The game is simplistic to use
•Testing was done throughout the development of the game
•Potential users have offered their opinion throughout the
development of the game
Nielsen’s usability principles
•The system uses non-technical language
•Exit game option is clearly marked
•The system is built with minimalist design with no irrelevant
information visible
•An ‘about’ option is accessible to users at all times throughout
the game which will inform users on how to play the game
Game Run-through
Splash Screen for
Tanks game
One-Player Game
One Player Game running on
Mobile Phone Emulator
One-Player Game
Game View:
2D side scrolling game view.
Controls:
To move Right:
Phone key – 6
To move Left:
Phone key – 4
Tank Shoot:
up key
Phone key – 5 or
Users Character: Tank
Tank lifespan: The game lasts for one
minute
Depending on how many obstacles the
tank manages to shoot in the game time
the score of the tank is increased.
Obstacles: 3 Types
Soldier
Enemy Tank
Two Player Game
Opening Bluetooth Client
Connection
Opening Bluetooth Server
Connection
Two Player Game
Creating a Server connection on
Nokia phone
Creating a Client connection on
Nokia phone
Two Player Game
Server phone creates with no difficulty,
Client phone doesn't show tanks
Two Player Game
Game View:
2D top down game view.
Controls:
To move Left:
Phone key – 6
To move Right:
Phone key – 4
To move Up:
Phone key – 2
To move Down:
Phone key – 8
Fire Tank Artillery:
Phone key – 5
Users Character: Tank
Tank lifespan – 3
Obstacles:
Walls blocking direct line of fire.
Future Work
•Game development is only limited to the technology
it is run on
•Improvements to processing power, available
memory, screen size and screen resolution
•3D game development
•Tanks
•Map layouts for each level
•Sound files
•Any other suggestions?
Other Comments
•Ubiquitous computing …..
•What evaluation tools could have been used
in this project?
Reference
Garvey, L. (2005) A Mobile Phone
Networking Application