Table of Contents

Team programming laboratory 2

Term of teaching (winter semester 2017/2018)

Tuesdays, 2:15 pm, PK COK

Assessment criteria

(Preliminary) Schedule of work

  1. First semester
    1. division into teams (about 3/4 people), choice of project and team leader, choice of teamwork tools (version control system, project management system)
    2. project description and requirements analysis
    3. full specification, system architecture
    4. project website (up-to-date updates to the end of the class)
    5. prototype version of the program (?!)
    6. current project state report at the end of first semester (January)
  2. Second semesters
    1. implementation, development of the system
    2. alpha version, beta program
    3. debugging and tests
    4. full documentation
    5. presentation of the final product (last meeting, June)

Meetings

The classes are held once every two weeks.
During meetings teams will:

Projec proposals

Project proposals should be described in document similar to System requirement specification. At that point I will require only simplified version of SRS (see document layout below), but it is recommended that you will extend this document and make it more detailed later.

Document layout

  1. Introduction
    • A brief description of the project, purpose of the system, product vision, main goals, etc.
    • Definitions (if needed) - definition of technical and specific terms used in the document, acronyms and abbreviations explanation
  2. Overall description of the system
    • Product functions: list of the most important features of the system
    • Architecture: system model, brief description of the most important system modules, relationships between system elements and system environment (UML diagrams).
    • User characteristics: identify the various user groups that you anticipate will use this product
    • Operating environment: operating system and it version, hardware requirements (platform), used technologies, communication with other elements of the environment
    • Design and Implementation Constraints: specific technologies, tools, and databases to be used; programming languages; communications protocols; security considerations;
  3. Functional requirements - the full list of system functionalities (actions that system can perform and services it provides)
  4. Other non-functional requirements which didn't appear in the earlier sections.
    • software and hardware limitations
    • legal restrictions, licenses
    • assumptions about safety, performance, memory requirements, etc.

SRS template by Karl E. Wiegers 1999
More SRS examples

Schedule

Define main stages or milestones of the project and produce a draft schedule with approximated due dates for each stage. At least one stage should be defined with deadline before end of the first semester. Use project management tool selected by your team to define the schedule (eg. create Trac's Roadmap or Product Backlog/User stories using Scrum or Agile process templates in VSTS) or include it in project proposal (or SRS).

Some notes

Lins

Local Trac and git repository

https://promap.is.umk.pl/git/<project_name>

Project site - Trac

https://promap.is.umk.pl/trac/<project_name>

All projects

Test project on Trac : Trac playground

Projects 2017/2018

Exile

PoorIoT

JSGames

Projects 2016/2017

siny

jnt

Projects 2015

AlphaBeta

MatrixV

TEYS (TEst Your Skills)

Projects 2014

SYNC.US! /Time To Work

AncientDust

Straight Flush Poker

Projects 2013

AndTune

Lokalizacja Routerów

s

Burned Shadows

Zoobato

Projects 2012

Tunedo

Turbo Biuro

Olimp Defenders (215 studios)