Presentation is loading. Please wait.

Presentation is loading. Please wait.

ACM Bracket Manager CIS 598: CS Senior Project Will Strohmeier.

Similar presentations


Presentation on theme: "ACM Bracket Manager CIS 598: CS Senior Project Will Strohmeier."— Presentation transcript:

1 ACM Bracket Manager CIS 598: CS Senior Project Will Strohmeier

2 Outline Goals Project Design Database Design Demo Testing Phase Future Work Questions

3 Goals Provide the ACM club a way to quickly and easily manage brackets for LAN tournaments. Do this through a web application that can be moved to the ksuacmlanparty.info website. Eliminate the time setting up the bracket and make progressing through the tournament easier.

4 Project Design Web Technologies ASP.NET PHP Symfony Actions Templates Doctrine Challonge API

5 Symfony Action public function executeMatches(sfWebRequest $request) { $c = new ChallongeAPI(‘555hano…duyh7n'); $id = $request->getParameter('id'); $this->id = $id; $matches = $c->getMatches($id, array()); $this->matches = $matches; }

6 Symfony Template state == 'open') { ?> {'player1-id'}) ?> vs {'player2-id'}) ?> id, $m->id) ?>

7 Doctrine – PHP Object Relational Mapper schema.yml: Brackets: actAs: {Timestampable: ~} columns: tourney_id: {type: integer} num_stations: {type: integer} Stations: actAs: {Timestampable: ~} columns: tourney_id: {type: integer} station_num: {type: integer} match_id: {type: integer} Database Design: Bracket/Stations Stations tourney_id station_num match_id Brackets tourney_id num_stations 1 0-*

8 Doctrine Queries: $b = new Brackets(); $b->setTourney_id($id); $b->setNum_stations(0); $b->save(); Doctrine_Query::create() ->update('brackets b') ->set('b.num_stations', '?', $num) ->where('b.tourney_id = ?', $tid) ->execute(); Doctrine_Query::create() ->delete() ->from('stations s') ->where('s.tourney_id = ?', $id) ->execute();

9 Demo

10 Testing Phase: Held a test run on April 27 th at the console ACM LAN Party. At the LAN we used the Bracket Manager for two tournaments Brawl (45 people) Naruto (16 people)

11 Problems: No bulk add for participants No auto refresh on stations page Better organization of current match list Sluggish at times Hard to find people for the match

12 Added Features Bulk add users Auto refresh Stations page

13 Future Work Account system Expand Database fewer API calls Better ordering of current matches Text participants when their match is up

14 Questions?


Download ppt "ACM Bracket Manager CIS 598: CS Senior Project Will Strohmeier."

Similar presentations


Ads by Google