Version Control

advertisement
UNIVERSITY OF WOLLONGONG
Bachelor of Information Technology
(CSCI321) FINAL YEAR PROJECT PROPOSAL
Code Racer
Supervisor
Dr Loo Poh Kok
Project Team:
IT14/2A
Student No.
4592086
4544766
4395177
4186345
4544754
Name
Tan Yan Ni, Brenda
Liaw Li Ling Grace
Alvan Yoo
Sim Wei Xiong, Jonathan
Lee Chau Ming
Page 1 of 37
Table of Contents
Version Control ............................................................................................................................... 3
1.
Introduction .............................................................................................................................. 5
1.1 Project Introduction .............................................................................................................. 5
1.2 Scope and Problems of Limitations ...................................................................................... 5
2.
Preliminary Research ............................................................................................................... 6
2.1 Literature Review.................................................................................................................. 6
2.2 Market research ..................................................................................................................... 9
2.3 System research .................................................................................................................. 12
3.
Proposed Software ................................................................................................................. 15
3.1 Key Features ....................................................................................................................... 16
3.2 Game Description ............................................................................................................... 17
4.
Programming and Designing Tools ....................................................................................... 18
5.
Proposed Solutions................................................................................................................. 19
5.1 Prototype GUI ..................................................................................................................... 19
5.2 Level 1 UI Placements ........................................................................................................ 22
5.3 Level 2 UI Placements ........................................................................................................ 24
5.4 Level 3 UI Placements ........................................................................................................ 26
5.5 Practice Mode UI Placements ............................................................................................. 28
5.6 Admin Management Module .............................................................................................. 30
6.
Roles and Responsibilities ..................................................................................................... 32
7.
Development Methodology ................................................................................................... 32
8.
Project Schedule..................................................................................................................... 33
10. References ............................................................................................................................... 35
10.1 Works Cited ...................................................................................................................... 35
11.
Appendix .............................................................................................................................. 36
11.1 Role appendix ................................................................................................................... 36
Page 2 of 37
Version Control
Document Information
Prepared By
Team CodeRacer
Date Prepared
20/04/2014
Reviewed By
Version History
Date
Author
Change Description
20/04/2014
Version
Number
1.0
Alvan Yoo
Initial Draft
24/04/2014
1.1
Alvan Yoo
25/04/2014
1.2
Lee Chau Ming
28/04/2014
1.3
Grace Liaw
02/05/2014
2.0
Jonathan Sim
03/05/2014
2.1
Grace Liaw
04/05/2014
2.2
Alvan Yoo
04/05/2014
2.3
Lee Chau Ming
09/05/2014
2.4
Lee Chau Ming
09/05/2014
2.5
Jonathan
Executive Summary
Development Methodology
Roles & Responsibilities
Timetable
Introduction
Background
Scope & Problems of Limitation
Key Features
Update format/contents of
document
Proposed Software
Programming & Designing Tools
Formatting all font to time new
roman font size 12 and update
development method and
Preliminary Research.
UI Design and include Brenda’s
UI Placements
Amended Project Introduction
Amended and add details to
Preliminary Section
Added Game Description.
Added Literature Review.
Added additional research to
system research section.
Updated format and table.
Added research on
gamification
Page 3 of 37
Distribution List
Name
Position
Organization
Mr. Premrajan
Owner
University of Wollongong
Dr. Loo Poh Kok
Project Supervisor
University of Wollongong
Alvan Yoo WeiShan
Project Manager
Team CodeRacer
Lee Chau Ming
System Analysis & Development
Team CodeRacer
Testing
Tan Yan Ni, Brenda
System Development & Database
Team CodeRacer
Designer
Liaw Li Ling, Grace
System Development & Database
Team CodeRacer
Designer
Sim Wei Xiong, Jonathan
System Development & System
Architect
Page 4 of 37
Team CodeRacer
1. Introduction
The aim of this project is to develop an educational game for users who are learning how to
program in C++, in an interactive and engaging manner.
Project CodeRacer will be made up of a series of challenges, which will increase in difficulty
over time. Users will be able to choose challenges according to their own pace of learning.
1.1 Project Introduction
The learning curve of C++ can be a steep one for many, the team seek to deliver an educational
tool that enable users to pick up the programming language fast and at the same time, enjoying it.
Through the team’s research, we have found out that several educational programming websites
are designed purely based on static coding content that does not provide engaging modules with
the users as they learn.
The team consists of 5 undergraduates who will be developing this educational tool as a Final
Year Project (FYP).
In order to provide a system of progression for the users, CodeRacer will have different levels
and one where users will start from novice level by reading through specific C++ tutorials. After
reading the fundamentals, users are able to put their knowledge to test by attempting our first
challenge, the interactive MCQ game.
1.2 Scope and Problems of Limitations
As stated in the introduction section, the scope of this project is to develop an educational game
for users who are learning how to program in C++, in an interactive and engaging manner.
Given a specific timeline for the team to follow and coming from different programming
backgrounds, our group members have discussed and concluded that the program will be
developed in C#. This will better facilitate time management as C# is a language that the group
members are proficient in.
In addition, the other concern that the team has will be the demographics of the project’s target
audience. It is an important factor for the team to ensure that the difficulties of the questions
facilitate interest levels. Therefore, the team has concluded that the program should consist of
different levels of difficulties to the challenges. Users could choose to complete a challenge that
is to their level of skill before progressing to the next level
Page 5 of 37
2. Preliminary Research
A learning platform or educational tool is a framework of tools that work seamlessly together to
deliver a student centric learning experience by unifying educational theory & practice,
technology and content ([1]Hill, 2012).
Hence, to further elaborate on the team’s research, a literature review of the project is included in
section below. It will also consist of the market and system research of similar concepts of
educational platforms.
2.1 Literature Review
Project CodeRacer can be a form of virtual learning environment (VLE), learning management
system (LMS) or learning content management system (LCMS). As all these three types of
platforms facilitates the learning experience of users or students likewise.
Virtual learning environment (VLE)
VLE is a system that delivers learning materials to students via the web. The system includes
assessment, student tracking, and collaboration and communication tools. They can be accessed
both on and off-campus to support students' learning outside the lecture hall 24 hours a day,
seven days a week. This enables institutions to teach not only traditional full-time students but
also those who cannot regularly visit the campus due to geographical or time restrictions, e.g.
those on distance learning courses, doing evening classes, or workers studying part-time.
([2]Press, 2013).
Learning management system (LMS)
LMS is a software that automates the administrative tasks of training, such as registering users,
tracking courses in a catalogue, recording data, charting a user’s progress toward certification,
and providing reports to managers. These system also serve as a platform to deliver eLearning to
students. ([6]Media, 2010, 2011).
Learning content management system (LCMS)
LCMS is a multi-user environment where learning developers can create, store, reuse, manage,
and deliver digital learning content from a central object repository ([3]Group, 2009). A learning
object can be thought of as a small, self-contained re-usable unit of content that can be used to
support learning. Some examples of learning objects include Microsoft® Word or PowerPoint
files, PDF files, video, and audio ([4]Direct, 2014). Example like Joomla.
Examples of such systems can be seen in real-life applications as listed in the next page.
Page 6 of 37
Moodle
Also known as Modular object-oriented dynamic learning environment, is created for educator to
create online courses with a focus interaction and collaborative construction of content and is in
continual evolution. Their main features is to provide users with the functionality of assignment
submission, discussion forum, files download, grading, online calendar ([8]wikipedia, 2014).
Moodle is web-based and so can be accessed from anywhere in the world ([7]moodle, 04).
Second Life
Second Life is an online virtual world which allow users to create their own characters, called
avatar. User uses their avatar to interact with each other. It is widely used in many institutions,
such as colleges, universities. Libraries and government. It gives the option to create virtual
workplaces to allow educator or student to virtually meet, hold events, practice any kind of
corporate communications or conduct training sessions in 3D which can simulate teaching
processes or show new products among themselves. ([9]wikipedia, 2014). However, Second Life
is more widely known to be used as a social networking platform.
Elluminate
It is a real-time (synchronous) web conferencing tool which is created for education purposes.
Elluminiate will be renting out virtual rooms or vspaces where virtual lessons in schools can hold
([12]wikipedia, 21). With Elluminate, you can dynamically interact with your classmates and
your course instructor using text chat messages and/or two-way voice.
Elluminate also provides whiteboard tools to enable collaboration between you and your
classmates, including sharing desktop applications, and uploading PowerPoint presentations
([10]uiuc, 2013).
Integrated Learning, Information and Work Cooperation System (ILIAS)
Open source e-learning platform. ILIAS was one of the first online platforms to be used in
universities. Its features are similar to Moodle that includes tools for collaboration,
communication, project evaluation and assessment.
Dokeos
Used by companies, government agencies and universities, this platform operates on a
professional business model providing community development, professional consulting,
quality-assurance services and subscription-based customer support. It included forums, blogs,
chats and personal messaging tools for users.
Page 7 of 37
Blackboard learning system
This is a virtual learning environment and course management system which is a web-based
server software which feature course management, customizable open architecture, and scalable
design that allows integration with student information systems and authentication protocols
([11]wikipedia, 2014).
The purpose of blackboard learning system is to increase availability for student to access the
course material as it is a web based system which can be access from internet at anytime and
anywhere. Student can submit their assignment as soon as they are complete. It also improved
communication as it has the option for announcements, discussions, virtual classroom and email.
In summary, it is a course management systems which can be used to upload learning material
and student can download the material.
Udemy
Udemy is a huge online teaching platform with over 2 million students worldwide and 13,000
courses. The platform allows instructors design classes like video lectures, PointPoint slides,
screencast videos, documents, audio files, and text and mashup videos. It is a free to use for
instructors to upload and create their courses, which they may charge the students for a fee to use.
Odijoo
Free e-learning platform that allows educators to create online courses or even use the platform
to setup their private campus for training. The platform allows user to design a classroom setting
for group discussions, news postings, quizzes, modules, file hosting and even certificate creation.
Peer 2 Peer University (P2PU)
P2PU is a grassroots open education project, which offers free courses that are university-level
courses. Instructors are able to create courses and offer modules in the form of slideshows,
videos, documents and discussion boards.
Hence, to implement and produce an educational tool for students learning to program,
specifically in C++, the team will be developing a learning content management system (LCMS)
devoted to teaching program in C++. Whether users have any prior experience to programming,
the tutorials on this platform will walk them through all the steps they need to know in order to
create and compile their programs.
There is always a tagline such as this; “Becoming an expert programmer won’t happen overnight,
but with a little patience, you’ll get there.” ([5]LearnCpp, 2007)
Page 8 of 37
2.2 Market research
Gamification
Gamification is the integration of the game elements, game thinking and game mechanics in nongame contexts in order to make learning process more engaging and fun.
Currently, gamification is still a small percentage in the game market. However with its rapid
growth reflects that it is increasing social acceptance of game and the realization that game
components can be a powerful motivational tool for learning.
Source: http://www.gamesindustry.biz/articles/2012-05-21-gamification-market-to-reach-USD28-billion-in-2016
The theme of our application is zombie attack where players will have to complete the tasks
given in order to defeat the zombies. We used achievements reward system to increase user
engagement. Each level of difficulty will have their own set of
s for players to conquer.
Page 9 of 37
In order to focus on the types of educational materials to reference from, the team has conducted
relevant research. Through the research findings, the top four C++ educational websites that has
garnered the most traffic are as follows:
1)
2)
3)
4)
Cprogramming.com
Cplusplus.com
Learncpp.com
Msdn.microsoft.com
cprogramming.com
Cplusplus.com
Page 10 of 37
Learncpp.com
msdn.microsoft.com.com
By having the statistics as shown above from the top four C++ educational sites, the team can
utilise them to better faciliate and affirm the scope of the project.
As seen from the statistics above, there are different levels of user engagement to the website.
Moreover, there are useful information such as the audience demographics. With this compiled
information, the team can further plan the intended questions for the users.
Page 11 of 37
2.3 System research
As there will be two main portions to the project, the team has also conducted some online
research on C++ tutorial website with user experience that are engaging and interactive and also
achieving fun visual experiences.
www.wibit.net
Wibit is a free online computer programing courses that offer several if video tutorial and
specialise in focused and linear content. They have several animated graphical button which is
providing a fun look visual for the user. User can select the langues that they want to learn
through those buttons.
Kodu
A product of Microsoft FUSE Labs, Kodu is a visual programming language made especially for
creating games. Kodu's language is entirely icon-based and is fairly easy to learn. By getting
children to think about "if/then" statements, Kudo helps teach important programming concepts
of actions and conditions. Kodu works on PC and XBox 360.
Page 12 of 37
https://compilr.com/
compilr is an E-Learning web-based, interactive online code editor which allow user to code
while they learn. But however, compilr doesn’t come free as it required user to sign up their
package in-order to use their services.
http://www.mathplayground.com/olympic_math1.html
Answer all the multiple choice questions correctly to win the Math Olympics. The topics ranged
from basic computation and general math knowledge to word problems. Questions will be
random at each gameplay. Using mouse as the main interaction to select the answer. Once player
chose the incorrect answer, the game will end immediately.
Page 13 of 37
http://light-bot.com/hocflash.html
A game to teach coding concepts for all ages. The goal of of Lightbot is to light up all blue
squares using programming. Players can choose among 3 levels (Basics, Procedures and Loops).
http://www.sporcle.com/games/jdfulp/drawing_blanks
Trivia game to test players their knowledge within the time frame. Main interaction is to use
keyboard and enter the answer in sequence. Players have to answer correctly in order to proceed
to next question.
Page 14 of 37
3. Proposed Software
The overall objective of this project is to develop an education tool for students to learn C++
programming. In order to achieve the objective, the tool will be developed with a series of
challenges that are of different difficulty levels that will test the students about their knowledge
on the C++ programming language as well as coding solutions to specific questions.
After researching and reviewing of existing tools, the team decided that the educational tool
would have two main features:
1) Firstly being the tutorial page which students can find information about C++,
2) Secondly, a 3 level difficulty game challenge about C++.
The rationale behind a game based challenge is to keep the attention span of the users. As
programming might be tedious or boring to some, by incorporating games, we hope that it will
make the challenges more interesting.
The tutorial page will contain a variation of information about C++. It’ll have basic information
about C++ like the introduction the basic syntax used to more complex coding methods that are
essential in C++. The tutorials will be arranged in accordance to complexity so as to allow the
users to navigate through them easily according to their knowledge about programming and C++.
The game challenges will consist of 3 main levels, easy, medium and hard. The set of questions
asked in the levels would differ and would increase in difficulty. The first level (easy) would test
users on the basics of C++. It would have questions like the variables and types, basic input and
output etc. The second level (medium) would have more challenging questions about control
flows, array, pointers etc. The aim of the third challenge is to put the information learned from
the first and second level to test. The third level will have a combination of questions from the
first 2 levels integrated into a scenario. The user will then have to code a suitable solution for the
given scenario.
Apart from the 2 main features of the educational tools, our team also proposed to have login for
the administrator. The login will bring the administrator to a page, which allows him/her to add
new questions to the existing pool of question, edit an existing question or delete a question.
Access to these features is restricted only to verified administrators. By having a feature like this,
it enables the administrator to manage the challenges easily and it also gives the challenge more
variations, as the questions could be changed.
Page 15 of 37
3.1 Key Features
The functionality of the project can be split into different components for 2 different users. The
first being the general public who uses our website and the second user, the administrator of the
website, who manages the question bank.
The general public/users
 Tutorial page
o Readings on the C++ language (including the concept and coding)
 Challenge page
o Easy – Level 1
 MCQ questions about C++ (about the concept and simple coding)
o Medium – Level 2
 Fill in the blanks of the piece of code provided
o Hard – Level 3
 Coding practices
 Users would be given a paragraph of text/scenarios and asked to
find a solution and code in the provided text box
o Practice Mode
 User able to test their code
The administrator – same access as the general public with the addition of:
 Managing question bank of the challenges
o Adding new questions
o Editing existing questions
o Delete questions
Page 16 of 37
3.2 Game Description
Theme: Zombie
Level 1: Shoot the Minion Zombies
Each zombie will be labelled with an answer. Players will have to shoot the zombie with correct
answer to score a point. Players have to shoot as much zombies as they can within the time frame
given. However, once the player shoot the wrong zombie, the time will be reduced. For every
amount of zombie killed, player will gain time frame extension. Players can unlock numerous
achievements during the gameplay as a form of encouragement.
Level 2: Filling in the “brain”
Players are able to select from a list of advance brainless zombie to challenge. This level will
allow players to be comfortable with coding by filling in the blanks. Players have to enter the
correct answer to damage the zombie. Achievements will be given based on player’s
performance.
Level 3: Final Zombie Boss Challenges
Players are able to select from a list of Final Boss to defeat. Players will have to be able to code
the expected outcome given by the Final Boss in order to win the battle. This level will allow the
players to use what they have learned and have hands on experience. Achievements will be given
based on player’s performance.
Practice Mode
Any user will be able to use this system to test their code. Achievements will be given to reward
them for using it.
Page 17 of 37
4. Programming and Designing Tools
For this project, we will be using a few different programming tools to build our application. The
application will be split into 2 parts. The base shell of the application, which is the website which
holds the content, and the content of the application, the challenge content (e.g. the displaying of
the challenge’s questions) which will be developed in a game format.
Microsoft Visual Studio 2010
Microsoft Visual Studio is an integrated development environment used to develop computer
programs and web applications. It supports different programming languages like C++, C#,
VB.NET etc. We will be using Microsoft Visual Studio 2010 to build the base shell website of
the application. The programming language used here is C#.
Unity3D 3.5
Unity is a game development tool, which allows developers to create 2D or 3D interactive
content. It is used to develop games for multiple environment and devices, which includes web
plugins, desktop platforms, consoles and mobile devices. For the content of the application, we
will use Unity3D to create the game content of the challenges with MonoDevelop (the IDE for
Unity3D environment).
MonoDevelop
MonoDevelop is an open sourced integrated development environment that is used as the
primary IDE for Unity3D environment. It is primarily meant for the development of C#
and .NET languages/frameworks. It can be used on Windows, Mac OS X, and Linux.
Sphere engine
Sphere engine is a compiler and code execution API. It is compatible with 60 different
programming languages and also provides basic statistics about the code executed. We will be
integrating Sphere engine in the level 3 challenge of our educational tool. It’ll be used to compile
the codes that the users are required to do according to the scenario given.
MySQL
For the database for this project, we will be using MySQL. MySQL is an open-source relational
database management system that is based on structured query language. It is a client/server
system that supports multiple administrative tools. It runs on different platforms including
Windows, Mac OS, and Linux.
Page 18 of 37
5. Proposed Solutions
5.1 Prototype GUI
Below are some samples of our Graphical User Interface:
UI Design Home
The figure above shows a sample user interface of CodeRacer’s homepage. As seen from the
figure, there will be two main call-to-action buttons, “Tutorials” and “Coding Exercises”. Users
will be directed to the respective pages upon clicking them. In addition, to find out more about
the project, users will be able to click on the “info” button or the link placed at the footer.
In addition, administrators will be able to login via the “Admin Login” button.
Page 19 of 37
UI Design About Us
As seen from the figure above, the about us page displays a brief background of CodeRacer to
the users.
UI Design Tutorial
Above is an example on how the tutorials documents may be presented to the target audience.
Page 20 of 37
UI Design Coding Exercises
The above figure shows the main page of the interactive exercises. Detailed user interface
placement will be described in the following figures.
Page 21 of 37
5.2 Level 1 UI Placements
Page 22 of 37
Page 23 of 37
5.3 Level 2 UI Placements
Page 24 of 37
Page 25 of 37
5.4 Level 3 UI Placements
Page 26 of 37
Page 27 of 37
5.5 Practice Mode UI Placements
Page 28 of 37
Page 29 of 37
5.6 Admin Management Module
UI Design Admin Panel 1
The above figure shows the first admin panel upon successful login for the administrator. He or
she will be able to browse current files and select them for updates.
Page 30 of 37
UI Design Admin Panel 2
The above figure shows the second admin panel for the administrator to carry out the necessary
tasks. He or she will be able to upload new documents and enter new questionnaires.
Page 31 of 37
6. Roles and Responsibilities
Role\Name
Project Manager
Alvan
Jonathan
Chau Ming
Grace
Brenda
X
System Analyst
X
Programmer
X
X
UI Designer
X
Database Designer
X
X
X
X
X
X
Researcher
X
Web Site Maintenance
X
X
X
Test Case Designer
X
X
X
Tester
X
X
X
Minutes of Writing
X
Documentation
X
X
X
Deployment Manager
X
X
X`
X
7. Development Methodology
As this FYP project requirement and specifications are mostly defined by us and none of us in
the team had experience/knowledge in developing a Web interface educational tool with games
for learning and improving C++, we have decided to use Scrum which is one of the agile
methodologies. The reason to use scrum method is that Scrum consists of three roles: the product
owner, the Scrum master and the team. The product owner is the individual who represents the
company. The Scrum master is the project manager tasked with controlling and measuring the
process. The team is made up of those who will execute the project tasks ([7]Daria Kelly Uhlig,
2008).
As we are not able to estimate the number of unknown issue or factor, each succinct work
cadences, known as sprint ([8]Danube, 2008) will be one-week duration. At the end of each
sprint, the team will gather and meet to assess the progress of the project using the scrum role
methodologies. This will allow us to decide whether is feasible to prepare and move to next
sprint. This cycle will continue till the deadline ends the project. Using Scrum method also
allows us to address out scope and problem of limitation, prototyping, revise of technical
documentation and accomplish testing phases with verification and validation.
Page 32 of 37
8. Project Schedule
Sprint 10 Sprint 9
Sprint 8
Sprint 7
Sprint 6
Sprint 5 Sprint 4
Sprint 3
Sprint 2
Sprint 1
Our project timeline as follows:
Final Year Project - Code Racer
1.Projectkickoff
1.1.TeamBriefing
1.2.TeamFormation
1.3.Assigning TeamLeader
2.Project Proposal requirement gathering
2.1.Literature Review
2.3.Creating Proposal
3.Requirements
3.1.identifying Requirements
3.2.System Flow Desigin
3.3.UI Desigin
2.4.Reviewing and revising Proposal
2.5.Submiting Proposal
4.Analysis and Design 1
4.1.Prototyping and desigin
4.2.Documentation
5.Analysis and Design 2
5.1.Prototyping and desigin
5.2.Documentation
6.Implementation of Prototype 1
6.1.Prototyping development
6.2.Testing
6.3.Documentation
7.Implementation of Prototype 2
6.1.Prototyping development
6.2.Testing
6.3.Documentation
7.Implementation of Prototype 3
7.1.Prototyping development
7.2.Testing
7.3.Documentation
8.Review 1
8.1.Design specs review
8.2.Documentation review
8.3.Protoype review
10.Review 2
10.1.Preparation of Presentation and Documentation
10.2.Final preparation for Presentation
Page 33 of 37
Sprint Sprint Sprint Sprint Sprint Sprint
16
15
14
13
12
11
Sprint 17
11.Development 1
11.1Development and Documentation
12.Development 2
12.1Development and Documentation
12.Development 3
13.1Development and Documentation
14.Testing 1
14.1.Testing and Documentation
15.Testing 2
15.1.Testing and Documentation
16.Testing 3
16.1.Testing and Documentation
17. Validation
17.1.Testing and review of program
17.2.Review and revise documenation
Sprint 18
18.Final Product 1
18.1.ProjectWrapUp
18.2.Preparation of Presentation
18.3.Preparation of Deliverables document
Sprint 19
19.Final Product 2
19.1.ProjectWrapUp
19.2.Preparation of Presentation
Spri
nt
20
19.3.Preparation of Deliverables document
Final Presentation
Page 34 of 37
10. References
10.1 Works Cited
[1]Hill, P. (2012, 05 04). e-Literate. Retrieved 04 27, 2014, from mfeldstein: http://mfeldstein.com/whatis-a-learning-platform/
[10]alexa. (1996 -2004). alexa. Retrieved 05 04, 2014, from alexa: http://www.alexa.com/
[2]Press, O. (2013). Online Resource Centers. Retrieved 04 27, 2014, from Oxfied university press:
http://global.oup.com/uk/orc/learnvle/
[3]Group, I. T. (2009, 02 23). Internet Time Group. Retrieved 04 27, 2014, from Internet Time Group,
Berkeley, California: http://www.internettime.com/Learning/lcms/
[4]Direct, K. (2014). Knowledge Direct. Retrieved 04 27, 2014, from Digitec Interactive Knowledge Direct:
http://www.knowledgedirectweb.com/elearning-lms-resources/faqs-about-learningmanagement-systems-lmss/difference-between-learning-management-system-lms-learningcontent-management-system-lcms/
[5]LearnCpp. (2007, 05 25). LearnCpp. Retrieved 04 27, 2014, from LearnCpp.com:
http://www.learncpp.com/
[6]Media, L. B. (2010, 2011). Understanding Your LMS Options. Retrieved 04 27, 2014, from Left Brain
Media: http://www.leftbrainmedia.com/2.1_lms_systems.html
[7]Daria Kelly Uhlig, D. M. (2008). Small business by demand media. Retrieved 04 26, 2014, from Chron:
http://smallbusiness.chron.com/advantages-disadvantages-scrum-project-managementmethodology-36099.html
[8]Danube. (2008, 08). Scrum Methodology. Retrieved 04 26, 2014, from ScrumMethodology:
http://scrummethodology.com/
[9]xmarks. (2006). Best Sites C++ Tutorials. Retrieved 05 04, 2014, from xmarks:
http://www.xmarks.com/topic/c++_tutorials
Page 35 of 37
11. Appendix
11.1 Role appendix

Project manager
 Identifies resources needed and assigns individual responsibilities
 Manages day-to-day operational aspects of a project and scope.
 Prepares for engagement reviews and quality assurance procedures
 Ensures project documents are complete, current, and stored appropriately.
 Project Accounting

System analyst
 collecting information to analyze and evaluate existing or proposed systems
 Research, plan, install, configure, troubleshoot, maintain and upgrade hardware
and software interfaces with the operating system.
 troubleshoot and resolve hardware and software and connectivity problems,
including user access and component configuration

Programmer
 To develop the program with c# language
 Capable of using visual studio 2010, Unity and Monodevelop
 To resolve and bugs in the program

UI Designer
 Focus on improving users interaction and user experience goal
 Focus on design process which must have a balance of technical functionality and
visual element
 Transform business requirement into user-centric design concepts, task flows,
screen designs and interaction

Database Designer
 To provide conceptual modeling and transform it to relational tables
Page 36 of 37

Researcher
 To research on the framework using ASP.net, C# programing languages, Unity
game engine, Monodevelop and MYSQL.

Test Case Designer
 To create a series of test cases for testing phrase

Tester
 To test the program thoroughly as to make sure the program doesn’t have major
bugs that cause the program to crash or failure and minimize as much minor bugs
as possible.

Minutes of writing
 To jot down the every meeting minute by the Team leader

Documentation
 To be done by all team members

Deployment Manager
 Ensure the product has been correctly and completely integrated across the
program
 Ensure there is deployment is well documented together with the backout plan if
something well wrong during the deployment.
Page 37 of 37
Download