Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

Embed Size (px)

Citation preview

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    1/27

    www.RiotGames.com

    Software RequirementSpecifications v1.0.0

    Phase 1

    Confidential 2008 Riot Games

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    2/27

    LeagueofLegends.com

    LeagueofLegends.com

    Software RequirementsSpecifications

    Ver. No.: 1.0.0 Date: 09/02/2008

    Riot Games Inc

    RiotGames.com

    DOCUMENT RECORD LIST

    Version Date Mod By Comments

    v1.0.0 09/02/2008

    Robert Hornbek &Eric Han &

    Billy Leung &Steve Mescon

    Initial Document

    V1.0.1 11/02/2008 Parthasarathy Implementation Documentation

    Table of Contents

    Software Requirement Specifications v1.0.0.doc

    The enclosed material is proprietary to Riot Games. This material is presented for the purpose ofevaluating services and may not be disclosed in any matter to anyone other than the addressee

    and employees or authorized representatives of Riot Games Inc.

    2

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    3/27

    LeagueofLegends.com

    1.0 Introduction

    1.1 Overview of the Requirement Specifications Document

    This document specifies the software requirements for LeagueofLegends.com which will form the base for

    further design and development of the League of Legends community portal

    1.2 Scope of the Project

    The objective for this project is to create an online community to support the League of Legends game

    2.0 General Description

    2.1 Assumptions

    The following assumptions will be made when considering bids

    Log-in and SSI (Single-Sign-in) API and documentation will be provided

    A development environment will be provided

    Any required software packages will be provided

    Development environment will be pre-configured. Server configuration and administration will nothave to be done

    Back-end API information and documentation will be provided

    Graphic designs may be provided

    2.2 Environment Imposed

    LeagueofLegends.com will operate on a cluster running a Linux operating system, using the nGinx

    web-server through a FastCGI implementation

    3.0 Requirement Specifications

    3.1 Operational Requirements

    The LeagueofLegends.com application client will operate on the following browsers on all common

    operating systems

    Internet Explorer (6.x, 7.x)

    Software Requirement Specifications v1.0.0.doc 3

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    4/27

    LeagueofLegends.com Firefox (1.5.x.x, 2.0.x.x, 3.0.x.x)

    Safari (3.x)

    3.2 Security Requirements

    Security configuration must be present to provide granular user and group access permissions. Proper

    authentication will be done for various levels of guests, various levels of staff members, and registeredusers

    All input must be sanitized and flexible

    No information will ever be removed or deleted from the database. Changes will result in newrecords being created

    3.3 Reliability

    Graceful exit on abnormal inputs and conditions

    Maintain consistency of system data

    3.4 Maintainability

    Must use development standards for the entire site

    Availability of documentation from design phase to completion phase

    Site configuration system must be developed, no hard-coded configuration elements

    All applications will use MySQL 5.x as the standard database engine

    All HTML code must conform to XHTML 1.0 standards

    All server-side scripts must be written in PHP, and follow the Zend coding standard andPHPDocumentor documentation standards

    Any client-side scripts must be written in standards compliant JavaScript

    3.5 Technical Requirements

    All back-end and server-side scripts must be written in PHP 5.x using a mainstream, pre-approved PHP

    development framework, (CodeIgnite, Zend, Symfony, etc)

    All PHP must be written to Zend standards and be object-oriented

    Website search must be powered by Lucene SOLR or Lucene

    All systems must be supported by a secure API that can be exposed to other applications

    Software Requirement Specifications v1.0.0.doc 4

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    5/27

    LeagueofLegends.com

    3.5.1 User Interface/Presentation Layer

    Localization: Current system will be designed in the English language and in such a way that it can be

    easily localized into other languages. All error messages, normal messages, alerts, UI text, and otherinformation will be stored in localized data sets

    Performance: The application must be optimized for performance from the perspective of both the end-user and hardware infrastructure. Tables must be efficiently designed with indexes on necessary

    fields. SOLR or Lucene will be used instead of MySQL full-text search for all search-relatedfunctionality. OPCode caching will be used to cache compiled PHP scripts in memory. All

    output must be cached in memory or on disk for efficient delivery

    UI Scripting: All XML/XSL/XSLT/CSS/HTML/JavaScript must be optimized for cross-browser support

    Software Requirement Specifications v1.0.0.doc 5

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    6/27

    LeagueofLegends.com

    3.6 Functional Requirements

    3.6.1 Login

    Requirement DescriptionID 1

    Type Component

    Software Requirement Specifications v1.0.0.doc 6

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    7/27

    LeagueofLegends.com

    Description 1) To log in, members must enter an account name and password combination

    2) If the account name and password entered do not match the accountname/password retrieved by the API, an error will be displayed and the

    member will not be allowed to log into the website

    3) User log-in and log-out will be handled using PHP sessions4) Once logged in, a user will have their appropriate group permissions

    5) Remember me will be available to the user for easy and fast log-inif the user sets or selects this option. Whenever a user visits thewebsite to log-in, they will be logged in automatically

    6) Users will have an option to retrieve their username and password if

    they do not remember their information

    3.6.2 Register

    Requirement Description

    ID 2

    Type Component

    Software Requirement Specifications v1.0.0.doc 7

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    8/27

    LeagueofLegends.com

    Description New User Signup

    1) Username and password provided by the user during registration will be usedto log-in to the system in the future

    2) CAPTCHA images will be used during registration

    3) Registration form must have real-time AJAX validation. Server must processadditional validation after submission

    4) After creating an account, the user will receive a registration confirmation E-Mail. The user must confirm their account by clicking a link that is containedwithin the confirmation E-Mail

    5) Upon completion of registration process, the user will receive another E-Mailwelcoming them to the community

    6) The user will automatically be logged into the website after confirming theirE-Mail address

    7) Each E-Mail address will be unique, where only one E-Mail can be associatedto an account and cannot be connected to multiple accounts

    8) Registration elements

    Registration Element Mandatory/Optional

    First Name M

    Last Name M

    Password M

    Confirm Password M

    Security Question M

    Security Answer M

    Address 1 M

    Address 2 O

    City M

    State M

    Zip M

    E-Mail Address M

    Confirm E-Mail Address M

    Username M

    3.6.3 Images & Gallery

    3.6.3.1 Show and Browse Images

    Requirement Description

    ID 3

    Type Component

    Software Requirement Specifications v1.0.0.doc 8

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    9/27

    LeagueofLegends.com

    Description Official Galleries

    1) When a user enters the gallery section, they are shown a list of all gallerieswith a title, teaser information, and thumbnails for each gallery. The gallery

    section must be paginated to support additional galleries. n galleries areshown initially with the user being able to increase the number of galleries

    displayed per page

    2) The user will be able to search and sort galleries that contain images thatmatch certain criteria such as the name or date of an event

    3) Upon selecting a gallery, the user will be shown up to n thumbnails of imageswithin that gallery, with the ability to choose additional images per page

    4) Each thumbnail will have some descriptive information such as the date theimage was added to the gallery, the image rating, and which staff memberadded the image to the gallery

    5) Once an image is clicked, the visitor is taken to the show single imagepage. The single image page will be the same for official images as user

    submitted images

    6) Images will be searchable by tags, date, rating, the user who uploaded theimage, image name, number of comments, etc.

    Show Single Image

    1) Once a user selects an image to view, they will be taken to a single image

    page

    2) The single image page will have all of the relevant information about theimage includingthe image title, description, tags, rating, uploader,

    comments, any relevant content of which the image is part of: guides,replays, etc.

    3) Users will be able to comment on and rate each image

    4) Moderators will be able to disable comments and rating on an image. Ifcomments are not enabled, the UI will adjust to completely remove the

    comment option5) Images will have an embed feature, so they can easily be embedded

    into other websites and social network pages

    3.6.4 Video

    Requirement Description

    ID 5

    Software Requirement Specifications v1.0.0.doc 9

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    10/27

    LeagueofLegends.comType Component

    Description Official Galleries

    1) When a user enters the gallery section, they are shown a list of each gallerywith a title, teaser information, and thumbnails for each gallery. Ten galleriesare shown initially, with the user being able to increase the number of

    galleries displayed per page

    2) The user will be able to search and sort galleries that contain images thatmatch certain criteria such as the name or date of an event

    3) Upon selecting a gallery, the user will be shown up to 12 thumbnails ofvideos within that gallery with the ability to choose additional videos perpage

    4) Each thumbnail will also have some descriptive information, such as the datethe video was added to the gallery, the video rating, and which staff memberadded the video to the gallery

    5) Once a video is clicked, the visitor is taken to the show single video page.The single video page will be the same for official videos as user submittedvideos

    Show Single Video

    1) Once a user selects a video to view, they will be taken to a single video page

    2) The single video page will have all of the relevant information about thevideo includingthe video title, description, tags, rating, uploader, comments,any relevant content which the video is part of

    3) Users will be able to comment on and rate each video if the users have theappropriate permissions to do so

    4) Moderators will be able to disable comments or ratings on a video. Ifcomments are not enabled, the UI will adjust to completely remove thecomment option

    5) Videos will have an embed feature, so they can easily be embeddedinto other websites and social network pages

    6) When a user selects to watch a video, a video player will be launchedwith controls for the user such as play or pause

    7) The user will have the ability to download the video in full quality

    format

    3.6.5 News, Articles, and Interviews

    3.6.5.1 News Posting System

    Software Requirement Specifications v1.0.0.doc 10

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    11/27

    LeagueofLegends.comRequirement Description

    ID 12

    Type Component

    Description 1) News, articles, and interviews require approval. All news items will requireapproval of two appropriate level staff members before they are openlyvisible on the website, (appropriate will be a user-group white-list). This

    requirement can be overridden by a root level Administrator

    2) Adding news, articles, and interviews will have a full WYSIWYG editor

    3) All items will have the ability to be saved as a draft in the CMS

    4) Users will be able to browse, sort, rate, filter news5) Users will be able to comment and tag news, articles, publish date, and

    interviews when required permissions are met

    3.6.6 Account Management

    3.6.6.1 Account Information & Profile

    Requirement Description

    ID 15Type Component

    Description 1) Users will have the ability to edit any of their profile information such as thefields used during registration

    2) Changes to password or E-Mail information will require E-Mail validation andsecret question confirmation

    3) More info TBD

    3.6.7 Game Information

    3.6.7.1 Champion List

    Requirement Description

    Software Requirement Specifications v1.0.0.doc 11

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    12/27

    LeagueofLegends.comID 19

    Type Component

    Description 1) The initial champion page will show the user a list of champions2) When the user selects a champion it then takes the user to the single

    champion page

    3) The single champion page will elaborate on the champion with additional

    information including:

    Animated image of the champion

    Name

    Champion type

    Difficulty

    Stats (strength, toughness etc. confirm with design)

    Abilities

    Bio

    Play stats

    4) There will also be a button that will cross link the viewer to a list of guides,images, video, and forums that relate to the champion

    3.6.7.2 Item List

    Requirement Description

    ID 21

    Type Component

    Description 1) The initial item page will show the user a list of items by category2) When a users mouse hovers over an item, a DHTML popup will list

    information about the item, such as the item cost, requirements, and basic

    description

    3) When the user selects an item it then takes the user to the single item page4) The single item page will list the following additional information about the

    item:

    Name of item

    Class of item (consumable, basic, legendary)

    Item stats (health booster, spell damage, attack speed)

    Lore

    Cost of item

    Components required to make that item Items that require the specific item as a component

    Recommended companion items and champions

    Any relevant media

    3.6.7.3 Summoners

    Requirement Description

    ID 22

    Type Component

    Software Requirement Specifications v1.0.0.doc 12

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    13/27

    LeagueofLegends.com

    Description 1) The summoner section will show all information about the summoners inLeague of Legends

    2) More information about summoners will come at a later date

    3.6.7.4 Maps

    Requirement Description

    ID 23

    Type Component

    Description 1) The maps page is intended to generate knowledge on our maps and their fine

    details

    2) When the users first enter the maps page they will be given a list of mapsaccompanied by thumbnail images. They can sort the maps by the following

    Name (alphabetical)

    Players/Teams (1v1, 2v2, 3v3 etc)

    Size (small, medium, large etc)

    Scenario (destroy the base, capture the flag, death-match etc)

    Times played by player (based on logged in user profile)

    Popularity (number of times played by everyone online)

    3) After selecting one of the maps, the user will be sent to a map specific pagethat further defines its qualities

    Map title/name

    Players/Team options (2v2, 1v1, etc)

    Size (small, medium, large etc)

    Scenario description

    Bio/Story

    Structures (base, stores, turrets etc)

    Hostiles (creeps, neutrals, and boss monsters). Each of the mentioned

    mobs will have a link that sends the user to the appropriate bestiary

    page.

    Environment (damaging lava, slowing swamps etc)

    Play stats

    4) There will also be a button that will cross link the viewer to a list of guides,images, video, replays, etc and forums that relate to the map

    3.6.7.5 Lore

    Software Requirement Specifications v1.0.0.doc 13

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    14/27

    LeagueofLegends.comRequirement Description

    ID 24

    Type Component

    Description 1) The lore ofLeague of Legends will be displayed on this page2) The page will be broken down in to the following links of lore

    Champions

    Items

    Minions

    Summoners

    Maps

    3) When users select a lore section, they will be taken to additional informationabout that category

    3.6.7.6 Bestiary

    Requirement Description

    ID 25Type Component

    Description 1) The bestiary will be a list of creatures within our game

    2) The beasts will be listed alphabetically and the user will have several searchfunctions.

    Map (which map the beast is on)

    Level range (level of each beast)

    Family class (elemental, humanoid, etc)

    Name

    XP reward

    Gold reward

    3) When the user selects a beast, a detailed page will be displayed showing thefollowing

    Animated image of the beast

    Beast name

    Level range (what level variation for the creature)

    Creature family (which family class they belong too)

    Lore (back-story to the beast. If applicable)

    Map (which map they can be found on)

    Basic attributeso Health

    o Mana (if applicable)

    o Attack power

    o Spell power

    o XP reward

    o Gold reward

    Software Requirement Specifications v1.0.0.doc 14

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    15/27

    LeagueofLegends.com

    3.6.7.7 FAQ

    Requirement Description

    ID 26

    Type Component

    Description 1) This will be a compilation of the most frequently asked question regardingLeague of Legends

    2) The page will have an index that breaks the questions down into categories

    3) FAQ listings will be organized by category and the index will show the mostpopular

    General

    Game-play

    Setting & Lore

    Interface & HUD

    Champions

    Creeps, mobs and minions

    Test realms Store & purchases

    Teams

    Clans

    Leagues

    Summoners

    Spells

    Account

    Champion items

    Summoner items

    Contests

    Forums

    4) There will be a search function that finds keywords on the page

    5) After the release of any of our Q&A Batches, the questions and answers willbe added to the FAQ listing

    6) Users will be able to indicate the helpfulness of the FAQ

    3.6.7.8 Patch Notes

    Requirement Description

    ID 27

    Type Component

    Description 1) This page will list all of the patch note versions that can be accessed byclicking on them

    2) The first page the users sees will contain the latest patch notes

    3) The patch notes will contain the number and date of release, followed by thelist of changes made in that patch

    4) This section will list all of the patches that have been made

    5) The first page will list the latest patch notes

    Software Requirement Specifications v1.0.0.doc 15

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    16/27

    LeagueofLegends.com

    3.6.8 Forums

    Requirement Description

    ID 28

    Type Component

    Description 1) The message board index will display a list of discussion categories that theadministrator can change at any time

    2) Once a category is selected, sub-categories will be visible

    3) If there are no additional sub categories, the message board will display a listof up to 25 (configurable) topics that are under the current category

    4) For each topic, the author, number of replies (posts), last post date, andnumber of views will be listed, as well as an has read indicator

    5) On thread view pages, users will have their summoner avatar visiblenext to each of their posts

    6) Forum posts will utilize the global signature system

    7) Forum posts will utilize the global bbcode system to format text

    8) On this page, a user will have the ability to post a new topic, which will takethem to a form to fill out to add a discussion topic

    Topic Elements Optional/Mandatory

    Topic Title M

    Body M

    Topic Description O

    9) When viewing a topic, the viewing user will have the opportunity to post aresponse to the topic. Pressing the reply button will take them to a post form

    similar to the post new topic form10) The topic list will have a treatment to indicate if a staff member made a postin a thread, with the ability to jump to the staff post

    11)Users should be able to turn a forum thread into a poll at the time of posting

    Software Requirement Specifications v1.0.0.doc 16

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    17/27

    LeagueofLegends.com

    3.6.9 Suggestions

    Requirement DescriptionID 33

    Type Component

    Description 1) The suggestions system will provide a central location for League of Legendsplayers to suggest possible changes to the game, or website

    2) Users will be able to share their ideas, vote on ideas, and discuss ideas

    3) The most popular ideas may be implemented into the game

    4) This system will provide users with the ability to sort or filter by as manyattributes as possible

    5) The interface and voting system can be very similar to Digg.com orMyStarbucksIdea.com

    6) Suggestions will encompass the following categories with website staff havingthe ability to create additional categories

    7) Each category will have a different modes of display:

    Champion suggestions

    Item suggestions

    Cosmetic suggestions

    Ability suggestions

    Game flow suggestions

    Website suggestions

    Other

    8) The suggestions index might highlight some of the following:

    Most recent suggestions

    Most popular suggestions

    Most viewed suggestions

    Most discussed suggestions

    Suggestions with the most revisions

    9) Users will be able to browse by as many fields as possible including:

    Date submitted

    Author

    Rating

    Suggestion type

    Status & State

    o None

    o Under review

    o Implemented

    Software Requirement Specifications v1.0.0.doc 17

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    18/27

    LeagueofLegends.com

    3.6.9.1 Show Single Suggestion

    Requirement Description

    ID 34

    Type Function

    Description 1) The display for a single suggestions system will change based on the type of

    suggestion

    2) All suggestions will have a central location that lists any applicable assetssuch as replays, images, guides, etc

    3) Suggestions must be able to have multiple revisions, with the ability to

    display differences between revisions

    3.6.9.2 Add Suggestion

    Requirement Description

    ID 30

    Type Function

    Description 1) Users will be able to take suggestions in and out of a visible state(publish/un-publish)

    2) Newly added suggestions will remain un-published until the author choosesto publish them

    3) Suggestion authors will be able to share the ability to edit the post withanother user, to work collaboratively

    4) Suggestion posts will store all users who made adjustments to the post, andonly the original author or a staff member with appropriate permissions can

    grant or deny specific users access to edit the strategy post

    5) Strategy post adding will be a multi-stage logical form, and will have aprogress indicator

    6) The system will automatically save a users post at regular intervals (60seconds or so), as well as allow the user to save their progress at any time

    so they can come back and complete a post at a later date

    7) The suggestion adding system will have a single place where a user can addany number of other resources, (images, replays, videos, etc). Once a

    resource is added at the central location, users will be able to use itanywhere within the suggestion

    8) There will be several multi-stage forms for adding suggestions depending onthe suggestion type. Complete map and field list will be provided at a later

    date

    Software Requirement Specifications v1.0.0.doc 18

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    19/27

    LeagueofLegends.com

    3.6.9.3 Player Profiles

    Requirement Description

    ID 37

    Type Component

    Description 1) The player profile is a single section that encompasses all availableinformation about that player and their playing history

    2) Some player profile fields will be editable through the account managementsection

    3) The player profile will be separated into several sections, the player blog,general information, player statistics, and player achievements

    4) The player profile will also have a feed with more information about theplayer such as their most recent forum posts, etc

    3.6.9.3.1 Player Blog

    Requirement Description

    ID 38

    Type Component

    Description 1) Each player will have a blog or summoner journal that they can addcontent to2) The player blog system will be similar to popular blogging software, and have

    the ability for tags, trackbacks, pingbacks, comments (allowable by blog

    author), and subscriptions

    3) The blog author will be able to choose whether or not his blog will bedisplayed in the global directory

    3.6.10 Company Blogs

    Requirement Description

    ID 45

    Type Component

    Description 1) Company blogs will be built similar to standard blog software

    2) Site administrators will be able to create multiple sections for blog postingsto be under

    3) Blog postings will have the same global features as any other text-post in thewebsite, including tags, comments, etc

    4) Blog posting on the website will require approval, similar to news

    Software Requirement Specifications v1.0.0.doc 19

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    20/27

    LeagueofLegends.com

    3.6.11 Downloads

    Requirement Description

    ID 46

    Type Component

    Description 1) The download system of the LeagueofLegends.com website will provide acentral location for users to download files such as the game client, and other

    utilities

    2) Downloads will be organized into categories, with the ability toadd/edit/change categories granted to the website administrator

    through the CMS

    3) Hot-linking protection will be available on a per-file basis4) Downloadable files will be added by staff members only, and subject to

    appropriate user group permissions

    3.6.12 Global Features

    Requirement Description

    ID 48

    Type Feature

    Description Global Component Features

    Granular permission system

    o All areas must be protected by a granular permission

    system. (View, Edit, Post, Reply, Delete for each user group,

    as well as any other section-specific permission options, suchas override news review requirements)

    o The user will be segregated into multiple groups. User

    groups

    Text areas

    o Any area that allows a user to edit text will contain a basic

    WYSIWYG editor

    o Specific areas may require a more advanced editor

    Tags

    Software Requirement Specifications v1.0.0.doc 20

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    21/27

    LeagueofLegends.com

    o All objects, (blog post, blog comment, gallery, image, etc),

    will support the use of tags for categorization

    Subscription

    o Any component or object will have a subscription option

    o Users will be able to set a subscription method per

    subscription (RSS, E-Mail, SMS, IMs)

    o Users can change subscription options in account

    management section

    o The subscription option will also be able to function like an

    on-site bookmark, maintaining a list of site content that youare subscribed to for further review (available within account

    management pane)

    Abuse reporting

    o Any user submitted content will be supported by abuse

    reporting functionality. An abuse management system must

    later be developed

    Ratingso Many objects will be subject to rating, more information

    regarding rating is to be determined. Rating will be a thumbsup/down system, with a visual treatment that applies

    globally

    Bbcode

    o Any text will be able to be formatted in bold, italics,

    underline, or list items with bbcode

    o There will be additional custom Bbcode necessary for the

    integration of widgets

    Send to friend/share with social networks

    o Any user submitted content will have the functionality

    to send to a friend. A standardized API will be

    developed so that the send to friend/add toMySpace/add to Facebook functionality can be easily

    added to any page, without concern regarding thepage content or function

    Comments/Reply

    o Wherever correct permissions are present, users will be

    allowed to comment on an object. The comments system will

    be designed in such a way that comment functionality can be

    added to any page without concern for the content of thepage

    o Comments will be threaded for easy replies

    o Pages that cannot fit into a single page will be separated into

    multiple pages until all information is presented

    o Comments will be able to be rated by any user who is logged

    in, with comments rated below 0 being hidden

    See: Digg.com

    Software Requirement Specifications v1.0.0.doc 21

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    22/27

    LeagueofLegends.com

    Pagination

    o Any set of items that has too many to fit on one page, must

    be paginated

    3.6.13 Fansite Support

    Requirement Description

    ID 49

    Type Component

    Description 1) The fan-site support section will show a list of all official fan-sites, as well asinformation regarding the benefits of being an official member, and a link todownload the fan-site kit

    2) There will be a list of established rules that fan-sites must abide by for ourwebsite to feature them

    3) Links to supported fan sites

    4) A form will be available for users to apply to become a fan site, moreinformation to be determined. Once the user is accepted into the fansite

    program, they will receive an E-Mail, and their user-group will bechanged to indicate that they are a official fansite owner

    3.6.14 Announcements

    Requirement Description

    ID 50

    Type Component

    Description There will be an announcement ticker that displays information globally. Staff

    members with appropriate permissions will be able to add an announcement forn duration

    3.6.15 Newsletter

    Requirement Description

    ID 52

    Type Component

    Software Requirement Specifications v1.0.0.doc 22

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    23/27

    LeagueofLegends.com

    Description The newsletter will be updated information from our website that will be sent

    directly to subscribers E-Mail address

    When a user first registers they will be given the option to subscribe to the

    newsletter via checkbox. If the user does not choose to subscribe to thenewsletter they will then be given the option to later subscribe when they log

    into the website

    3.6.16 Custom Pages

    Requirement Description

    ID 52

    Type Component

    Description The CMS should have the ability for staff members with appropriate permissionsto create custom pages using various styles where appropriate

    Technical Implementation:

    Overview: To provide with strong, scalable and robust solution for LeagueofLegends project.

    This implementation is to follow Agile Development Methodologies to deliver quality application withminimum resource in shortest duration.

    The following are some key points we wish to emphasize to conform to Agile DevelopmentMethodologies

    1. Team collaboration and Knowledge management by means of on-line system Assemblawhich provides Wiki, Team task distribution, Milestones, scrum , bug tracking system ,time tracking and flex based visual bug pointing system.

    2. Client collaboration at multiple levels viz., Contract negotiation , Review andFeedback , Responding to change over following a plan within the Project ManagementSystem

    3. Rapid application development (RAD) by delivering Working software in weeks rather thanmonths. Use of cakePHP to aid in RAD

    4. Close daily cooperation between business people and developers.

    5. Regular adaptation to changing circumstances

    6. Creating a prototype as guidance to developers and visual reference for testing team

    7. Following extreme programming for method adaptation

    8. Use of Modeling

    Software Requirement Specifications v1.0.0.doc 23

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    24/27

    LeagueofLegends.coma. AMDD through the Agile Development Lifecycle.

    Phased approach to development life cycle

    1. Design and Concept Phase.

    - UML modeling

    - DB design

    2. Architectural en visioning

    - prototyping

    3. Initial setup planning.

    - Test server configuration.

    4. Iteration Planning & Modeling

    5. Test Driven Development (Unit and Modular Testing)

    6. Visual / Investigative Testing

    7. Beta release / roll over

    8. Production release

    9. Maintenance (24/7)

    9. Use of Framework(CAKE PHP), which separates business logic from presentation logic

    10. Focus is on risk assessment and on minimizing project risk by breaking a project into smaller

    segments and providing more ease-of-change during the development process

    11. Close coordination with client to assess and verify flow of programming the waydesired

    12. Use of Object Oriented Programming

    13. Use of zend coding standards to maintain code cleanliness

    14. Use of Whiteboards, sticky notes and Trac

    15. Iterative Project Management

    16. Code maintenance in repository sub version (svn)

    17. PHP documentor for post production code reference

    18. Flash tutorial for visual end user reference with bubble prompts and voice explanationsas necessary.

    Module 1:

    UI / presentation layer: Conversion of psds provided by client into xml / xslt rendering to browser using

    JavaScript use of ctp files to present the xml data.

    Use of Ajax libraries like (J-Query / Ext-js) for user friendly data presentation

    Search feature to be implemented using ZF-cakePHP wrapper on Apache lucene

    Challenges with proposed solutions:

    1. Indexes doesn't update upon execution .To update the index, we have to rebuild it

    Software Requirement Specifications v1.0.0.doc 24

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    25/27

    LeagueofLegends.com

    2. UTF8 is not supported natively. All of the analyzers need PCRE (Perl-compatible regular expressions) libraryto be compiled with UTF-8 support turned on. PCRE UTF-8 support is turned on for the PCRE library sources

    bundled with PHP source code distribution, but if shared library is used instead of bundled with PHP sources,

    and then UTF-8 support state may depend on operating system. We need to check UTF-8 support on PCRE.

    3. Localized data sets: Use of I18n library in-built in cakePHP, creation of language files with .po extension inappropriate folders and serving with in app_controller.

    Module 2

    Authentication: Use of cakePHP ACL alongside Auth component to implement app level / method level access

    restrictions. Data validation using Ajax during registration process to ensure COPPA compliance. Standard

    configurations for registration process like e-mail verification.

    Module 3:

    Use of Ext-js gallery creation and image upload with sorting to enhance user experience. Use of modal windows

    to display images uploaded to gallery using JQuery. JQuery slide show with carousel effect to give smooth

    image transitions. Other standard features like moderation , commenting and rating will be provided. Rating tobe restricted by IP and Ajax is employed to eliminate page load while voting.

    HTML code block displayed for embed in other websites, watermarking can be enabled to prevent image

    copyright issues.

    Module 4:

    Multi video upload along with tagging and embed code will be provided each video can be mark for moderationor auto approval based on admin configuration. To support standard video format play back on web interface

    auto conversion of file formats using FFMPEG preferred.

    Module 5:

    News / Articles with draft feature and comments will be provided.

    Module 6:

    Profile: Standard features will be implemented

    Software Requirement Specifications v1.0.0.doc 25

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    26/27

    LeagueofLegends.comModule 7:

    Champion List: Features to be implemented as per specification

    Item List: Features to be implemented as per specification

    Need explanation from client regarding functionality and data to be stored and if an

    interface is required with in admin panel to upload the item list. If there is bulk data a csv upload feature would

    be provided to help upload bulk data.

    Summoners: Client has to provide data for this section

    Maps:Need to create a functional prototype to understand the flow of this feature upon clarification on

    exact functionality this feature will be programmed.

    Lore & Bestiary:Needs similar guidance from client according to feedback and functional prototype

    these sections will be programmed

    Faq: An accordion list of FAQ items along with answers will be shown in user interface. Faqs can be

    created through admin panel.

    Patch Notes: We assume that this will be static data along with some file attachments if necessary

    about a game. Admin interface will be provided for adding patch notes and upload files which would be

    presented as download links in user interface.

    Module 8:

    A Basic forum application as per specification will be provided . Forum avatars will be fetched fromsummoner. Avatars can be modified in user profiles. The standard features of mark as read , reply to post, create a thread will be provided staff , moderators will be given special privileges.

    Module 9 :

    Suggestions can be added to the system which would be listed with link to profile of user. Modulewill be coded as per requirement

    Player Profiles: Centralized location or cpanel for quick jump to sections. User panels with

    latest data with read more links will be provided. Drag drop feature to be implemented to make it appearlike a dashboard.

    Player Blog / Company Blogs: standard blog features with privacy setting will be

    implemented

    Module 10: Categorized download section with download numbers will be implemented

    Module 11: All global features to be implemented as components / helpers for reusability

    Module 12: Fansite support user group will be modified on e-mail verification.

    Suggested change : Meta tag API key can be provided to user this when placed within the

    Fansite a crawler can be implemented to verify the same.

    Software Requirement Specifications v1.0.0.doc 26

  • 8/7/2019 Implementation Documentation on LeagueofLegends.com Website Requirements - Phase 1

    27/27

    LeagueofLegends.comModule 13 Announcements, News Letters and Custom Pages are standard features will be provided inadmin panel.