Project: Snake game
Members:
Antoveravip
FeRt1
vgudzhev
veselin_genadiev
ekostadinov
Project Description
Design and implement an object-oriented web application by choice. It could be a simple game (e.g. Snake, Chess, Backgammon,
Minesweeper, Tetris, Xonix or other), component library (windows, buttons, text
boxes, menus, etc.), business application (e.g. car store, auction, movie
rental, bug tracker, knowledge management system, e-library, text editor), or
any other. You are absolutely free to
choose the topic of your work.
General Requirements:
Please define and
implement the following assets in your project:
·
Use jQuery (DOM manipulation, AJAX, animations, etc…)
·
Implement OOP design (implement the application logic using
objects, modules and data hiding)
o
At least 3 modules (namespaces)
o
At least 7 types of objects
("classes")
·
Unit testing for all of the components
o
Using
Jasmine, QUnit or JsUnit
·
Implement a UI for your application (use KendoUI, jQueryUI or implement your own
UI logic)
·
Use some kind of data storage (localStorage, sessionStorage, SQLite,
localDB, REST services, etc…)
·
At least one third-party API to share something
from your application
o
Share
status to Facebook, Twitter or Google+
o
upload
images to Facebook or Flickr
·
The application must work in Google Chrome
26, Mozilla Firefox 21, Internet
Explorer 9, Internet Explorer 10, Opera 12
Additional Requirements:
·
Follow the
best practices for OO design: use
data encapsulation, use exception handling properly, use inheritance,
abstraction and polymorphism properly and follow the principles of strong
cohesion and loose coupling.
·
Obligatory
use Subversion (SVN) to keep your
source code and for team collaboration (you might use http://code.google.com, http://projectlocker.com
or https://www.assembla.com). TFS or Git are not allowed. Use SVN.
Optional Requirements:
If you have a chance,
time and a suitable situation, you might add some of the following to your
project:
·
Backward compatibility (make the application usable on browsers like
IE8, IE7 and IE6)
·
Usage of a structural JavaScript framework
o
Backbone.js,
Ember.js, AngularJS or Knockout
Non-Required Work:
·
Completely finished project is not obligatory required. It will not be a
big problem if your project is not completely finished or is not working
greatly. This team work project is for educational purpose. Its main purpose it
to experience object-oriented modeling
and OOP in a real-world project and
to get some experience in team working
and team collaboration with TFS.
·
Implementation of server-side logic with
ASP.NET WebForms, ASP.NET MVC or PHP
Deliverables:
Put the following in a
ZIP archive and submit it (each team
member submits the same file):
·
The
complete source code.
·
Brief documentation of your project (2-3
pages). It should provide the following information (in brief):
o
Team name
and list of team members
o
Project
purpose – what problem do you solve?
o
Class
diagram of your types
o
The URL of
your SVN repository
o
Any other
information (optionally)
·
Optionally
provide a PowerPoint presentation
designed for the project defense.
Public Project Defence:
Each team will have to
deliver a public defense of its work
to the other students and trainers. You will have only 5 minutes for the following:
·
Demonstrate the application (very shortly).
·
Show the class diagram (just a glance).
·
Show the source code in the SVN-web-based source code browser.
·
Show the commits logs to confirm that team
member have contributed.
·
Optionally
you might prepare a PowerPoint presentation (3-4 slides).
Please be strict
in timing! Be well prepared for
presenting maximum of your work for minimum time. Bring your own laptop. Test
it preliminary with the multimedia projector. Open the project assets
beforehand to save time. You have 5
minutes, no more.
Each team will be invited to provide feedback about all your
teammates, their attitude to this project, their technical skills, their team
working skills, their contribution to the project, etc. The feedback is
important part of the project evaluation so take it seriously and be honest.
The full free project can be found here..
Няма коментари:
Публикуване на коментар