eduardo araujo dustin littau. agenda introduction requirements design testing conclusion

29
Eduardo Araujo Dustin Littau

Upload: rhoda-holt

Post on 28-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Eduardo Araujo

Dustin Littau

Page 2: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Agenda

• Introduction

• Requirements

• Design

• Testing

• Conclusion

Page 3: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

What is Celdoku?

• Celdoku is a Sudoku adaptation for cell phones

• The game follows the same rules as a typical Sudoku game, but adds some new features for the mobile format

Page 4: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Why Sudoku?

• Sudoku is a puzzle that became popular in Japan in 1986 and achieved international popularity in 2005. It is often described as the Rubik's cube of the 21st century.[1]

Page 5: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Rules of Celdoku

Page 6: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Platform

• Cell phones using J2ME

• NetBeans 5.0 with the mobility pack was used for development

• Bluetooth transfer of builds to cell phone

Page 7: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

J2ME

• J2ME stands for Java 2 Micro Edition

• Connected, Limited Device Configuration excludes AWT, and Swing libraries for better performance.

• New user interface was built for mobile devices called MIDP (Mobile Information Device Profile)[2]

Page 8: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

J2ME

• Java program for mobile devices is called MIDlet

Page 9: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Netbeans

Page 10: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Requirements

• Fully playable Sudoku game using cell phone keyboard.

• Different difficulty settings

• Error Checking

Page 11: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Design

Page 12: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Celdoku Class

Page 13: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

LogoCanvas Class

Page 14: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

InstructionCanvas Class

Page 15: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

DifficultyCanvas Class

Page 16: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

GameCanvas Class

• GameCanvas accepts user input and paints the appropriate graphics based on the state of the Game class

Page 17: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Playing State (Easy)

Page 18: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Playing State (Hard)

Page 19: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Won State

Page 20: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Lost State

Page 21: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Game Class

• Keeps track of the state of the game, the game board and the number of errors made

• The methods from this class are used by GameCanvas to determine what to paint

Page 22: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Game Class

Page 23: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Board Class

• Generates puzzles based on pseudo-random template

Page 24: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Board Class

• Each template (4x4) can generate 4! or 24 different combination

• By rotating a template by 90 degree a new template is formed

Page 25: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Cell Class

• Entity class which stores the user input and solution

Page 26: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Testing

• A test bench was implemented to make sure all methods perform as expected.

• Error messages were coded into the program to aid in debugging

• A lot of on-platform testing was needed, due to major differences between the simulation and cellphone displays.

Page 27: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

Conclusion

• The project is ahead of schedule

• Design phase and most implementation completed

• Beginning to focus effort on testing

• Additionally, the team is considering a multiplayer component if time permits.

Page 28: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion

References• [1]I. Lynce and J. Ouaknine, “Sudoku as an SAT Problem”, Oxford University,

2006• [2]Martin J. Wells, “J2ME Game Programming”, Premier Press, 2004

Page 29: Eduardo Araujo Dustin Littau. Agenda Introduction Requirements Design Testing Conclusion