| S  | D  | N  :     SLASHDOT  ·  FRESHMEAT  ·  THEMES.ORG   
 OSDN - Open Source Development Network

 Source Forge

PalmPGN Links

Project Page    >
Main Page    >
Screenshots    >
Relelase Schedule    >

FAQ    >
Public Forums    >
Announcement List    >

Downloads    >
Documentation    >

Design Scenarios    <
Requirements    >
Interaction Diagrams and Use Cases    >
Class Diagram    >

Credits    >
About the GPL    >


PalmPGN - Design Scenarios


The following is the start of my PalmPGN design. Firstly, I want to come up with usage scenarios: what PalmPGN users are going to want to be able to do with the program. Once those are correct, the design of each feature and detail can begin, but if the 30,000 foot overview isn't right, not much else will be, either.

View a game

  • Start PalmPGN
  • Pick a game database
  • Pick a game in that database, or load 'current' game from that database
  • Scroll through game (forward and backwards)
  • Annotate moves (symbols and comments)
  • Make new moves (in middle or at end of game)
  • Revert back to original game
  • Enter peripheral game data (i.e. PGN tags)
  • Send game via email
  • Select next/prev game in database
  • Save game
    • Overwrite original game (default)
    • Save to new game in this database
    • Save to new/overwrite in another/new database

View a position

  • Start PalmPGN
  • Pick a game database
  • Pick a position, or load 'current' position from that database
  • Make new moves
  • Scroll through moves (forward and backwards)
  • Send game via email
  • Decide on solution, then select 'solution'
  • Get display of answer
  • Select 'next' to load next position in database -or-
  • Save game
    • Overwrite original position
    • Save to new game in this database (default)
    • Save to new/overwrite in another/new database

Enter a game

  • Start PalmPGN
  • Select 'initial position'
  • Enter moves
  • Annotate moves (symbols and comments)
  • Send game via email
  • Scroll through moves (forward and backwards)
  • Save game
    • Overwrite original position
    • Save to new game in last accessed database (default)
    • Save to new/overwrite in another/new database

Setup position

  • Start app
  • Ask to setup board
    • Get board showing current position
    • Get options:
      • Clear board
      • Set initial position
      • Select piece to place
  • Move pieces around
    • Add new pieces to board
    • Remove pieces from board
    • Relocate pieces
  • Indicate settings
    • Who is to move
    • Who can castle
    • Square for en passant capture
  • Indicate completion of setup
    • Get indicated position w/empty move list.

Conversion

PGN games will be converted from PGN to PalmPGN databases before being sent to the user's PalmPilot, and, similarly, PalmPGN databases may also be converted back to PGN once the databases are sent back to the desktop machine.

The PGN converter will be a Java application, to be as platform independant as possible.

Game Databases

Game databases contain games or positions as converted from PGN files from the user's desktop computer. Each game will have an initial 'name' of "White v Black #", where each player's name is shown (instead of 'White' or 'Black'), and "#" a sequential number if that matchup occurs more than once, or is omitted if White v Black only occurs once in the database. The name may be modified to suit the user. If a player's name is not known, "unk" will be substituted in the game name.

PalmPGN will never discard the user's changes without giving the user the chance to save them, (unless the user selects 'revert', indicating a desire to remove all changes from the current game). For a game to be saved in a database, however, the user will need to indicate a desire for the game to be placed in a database.

PalmPGN will allow organization of the game databases via the ability to add, delete and rename databases, and will allow organization of the games within these database via the ability to add, edit, delete and rename games, and copy or move games to a different or new database.

PalmPGN keeps track of the last viewed game/position in a database for each database on the user's PalmPilot. The user may then view the current game in a new database, or the next/previous games in the current database, allowing the user to move sequentially through a list of games for study.

Notes, etc.

When the user indicates a desire to load a new game/position and the current game/position has been modified, the user will be prompted to decide whether to save the current changes, discard them, or cancel the load of the new game.

When the user quits the app, the current game is saved, and will be displayed at the current position the next time PalmPGN is started, including user modifications, if any.

PalmPGN will be able to beam/receive individual games or entire databases to another PalmPilot.

 

VA Linux Systems and SourceForge are trademarks of VA Linux Systems, Inc. Linux is a registered trademark of Linus Torvalds. All other trademarks and copyrights on this page are property of their respective owners. For information about other site Content ownership and sitewide terms of service, please see the SourceForge Terms of Service. For privacy policy information, please see the SourceForge Privacy Policy. Content owned by VA Linux Systems is copyright 1999-2000 VA Linux Systems, Inc. All rights reserved.