Clan Wars Admin
From Wickle Wiki
| Clan Wars Admin | |
|---|---|
| |
Clan Wars Admin
Codename : ClanWars
Working Draft, v0.5
Contents |
Introduction
The purpose of the project is to let a clan of players manage their team . The application must let the team shows the next wars, challenge other Clans, view statistics, etc ... All this must be on a nice native interface using SWT, Swing etc ... Messages between clan members is mandatory. News messages are mandatory too.
A user of this application would be capable of doing (this would be a list of all use cases on the client application):
- Register himself with the client application.
- Validate on the application by the first time.
- Register his clan to start using the application.
- Add/remove/modify members on his clan.
- View other clans on the system.
- Challenge other clans to a war.
- Add results of a match between clans.
- View calendar of next events and past challenges.
- Image:Icon new.gif Alert users of matchs via messenger
- Image:Icon new.gif Allow organization of Tournaments
...
Goals
The architecture of the application would be the next:
- On the Client side there are 2 applications:
- Client native application (as little-sized as possible) downloaded via Java Webstart preferibly.
- Web Client: a user can view some information publicated from clients, the vast functionallity of the application would be made by the native interface.
- On the Server side there are 2 applications too:
- Servlets on server side: This may authenticate users, and access the database to show a page(jsp) with information on clans, players, etc ...
- Server application to update Database on each client action and send information to the clients conveniently.
My general vision of the client applicacion would be shown at Requisites Clan War
Non Goals
Analysis
Specific sections for the different parts involved in the analysis stage, would be neccesary to complete them.
- Requisites of the application from a user vision.
- Use Cases.
- Class diagram
- Sequence diagrams
...
Proposals Ideas
- If we are going to use JXTA, a good enhancement is to share maps along all peers, is a cool method of exchange maps, instead of downloading when playing.
- Simple RCON query tool for servers : its interesting to make a simple api to query the clan servers,look at :
[QueriEd] [RconEd] or another tools to query servers.
- Framework for the GUI ... i am thinking on using [Spring] Framework for rich clients. On other side The [command pattern 1] [command pattern 2] [command pattern 3] should be very useful for the GUI Actions code.
- The idea of users connected to this network could share their maps is cool, and allows to developers share fastest the maps between the gamers community. It may be using JXTA.
Technical overview
- Finally the communication between client and server, and between clients would be made with JMS (using openjms with tomcat as JMS server). The data transferred between all sides would be on XML .
- Validation would be made on WEB SERVICES by thisway a user can access the system throw a Web interface ...
Description
Notes
We will be using Wiki:ExtremeProgramming or Wiki:AgileProcesses
Related Links
- Tech links:
http://www.springframework.org/index.html
http://www.javaskyline.com/database.html
- Links on wich we can base our deelopment, ideas, databases schemas, etc ... (we don't want to reinvent the wheel)
- Web also need to integrate our produt with :
jolt.co.uk
clanbase
- JMS
http://www.devx.com/Java/Article/20903/1954?pf=true http://my.execpc.com/~gopalan/jms/receiver.html
TODOs
At the moment the most inminant tareas are the development of the principal classes for the application.
- [edit]
Server side :
- For this , we need two classes , one agent for listen to client messages and process it (the client sends actions encapsulated on XML messages ). We need too a servlet for authentication and other issues.
- [edit]
Client side:
simple UI and agent to send actions to server.
Authors
Victor Farina Infante
Revision History
Roadmap
<timeline> ImageSize = width:540 height:70 PlotArea = width:500 height:50 left:20 bottom:20 TimeAxis = orientation:horizontal DateFormat = yyyy Period = from:0 till:10 AlignBars = early ScaleMajor = unit:year increment:1 start:0 Colors =
id:canvas value:rgb(1,1,0.85)
BackgroundColors = canvas:canvas PlotData =
width:20 color:red bar:test from:0 till:10 bar:test at:1 textcolor:white align:left text:phase 1 bar:test at:2 textcolor:white align:left text:phase 2 bar:test at:3 textcolor:white align:left text:phase 3 bar:test at:5 textcolor:white align:left text:development bar:test at:7 textcolor:white align:left text:tests bar:test at:9 textcolor:white align:left text:release bar:test at:2 mark:(line,white)
</timeline>

