All these numbers (15, 5, etc) should probably be symbolic constants so they're easy to change.  Or even make them settings so they can be configured at build time.