Challenge Overview
Project Overview
TopCoder Competition Engine is a system used for Single Round Matches (SRM) and Marathon Matches (MM).
Recently, the whole system is targeted to be built for Java 5, which is end of its life already. You can check http://www.oracle.com/technetwork/java/eol-135779.html
Competition Task Overview
The purpose of this contest, is seeking to update Java 7, which is mature now, and evalute that nothing is broken. So you are expecting to carry out the following tasks.
Install JDK 7
You are expected to install JDK 7 update 55, and update the JAVA_HOME settings for various accounts related to, like apps, farm, deployer, mm etc.
Update Source Code Level
Currently, the source code level is set to 1.5, which limits the usage of new features introduced in Java 6, and Java 7.
We'd like to update the source code level to 7, except some shared projects, like shared, concurrent, arena-shared, logging, custom-serialization etc.
these should be remained to 1.5.
Update Client Tools
Currently, the j2se version attribute for jnlp files of all client tools, like arena client, admin tool, and mpsqas client, are settings to 1.4+.
We'd like to update it to 1.7+ to requiring a newer Java Runtime.
You are expected to following the problem guide, to play with the clients tools, making sure nothing is broken.
Please include a screencasts for that.
Verification
The SRM Problem Guide and MM Problem Guide are provided in forum, please make sure all steps and all languages are working properly.
Winner Responsibility
Winner will be responsible to create pull request in final fix phase, and help with the merge.x
About Code Base
For the code under /home/apps/dev directory, some are hosted in internal svn repositories, some are hosted in private repositories in github.
You can check Source Code Management For TopCoder Competition Engine - TopCoder Wiki
For SVN Access, please send request to support@topcoder.com, For github access, please post your github account in forum to ask PM to grant you access.
Arena VM Usage
Root access will be granted to make you easy to install JDK 7.
Before asking your own VM, you need to have a public key on your profile before asking for the VM.
You can find more details on how to generate a key http://apps.topcoder.com/wiki/display/projects/Generate+SSH+Key and how to connect using it http://apps.topcoder.com/wiki/display/projects/Connect+Using+SSH+Key.
Please reference http://apps.topcoder.com/wiki/display/docs/Competition+Engine+VM+Setup for general usage.
Previously, we have made several update for the Arena VM. So when the Arena VM allocated is available for you, there is a problem and a SRM contest already setup, you can reuse that for testing.
Final Submission Guidelines
Submission Deliverables
Below is an overview of the deliverables:
- Clear Guide to carry out the upgrade
- Code and configuration changes for upgrade
- Screencasts for demonstrating the clients usage.
- A complete and detailed documentation documented explaining how to deploy the application including configuration information.
Final Submission
For each member, the final submission should be uploaded to the Online Review Tool.