Tools

Information about some of the tools you will use in the course. Note that these instructions are preliminary, and might be extended or adjusted.

Trello

To plan and manage the activities for each week, you will use a simple online tool called Trello. Each group member should create an account at trello.com, unless they already have an account. Next, the project manager creates a group and a board and invites all group members to it, as well as the steering group (jancarlson and jurajfeljan1). Your board should have the following lists:

Activities (called cards in Trello) can be assigned to group members. They can also be given labels to, for example, separate between meetings, implementation tasks, documentation tasks, etc. Finally, there is a plug-in (downloadable from scrumfortrello.com that provides some simple GUI support for associating cards with an effort value and effort spent so far on it.

During the initial planning phase, the backlog list will be empty, and the cards in the other list will represent meetings, presentations, work on specific parts of the deliverable, etc. At the end of the first phase you should have produced an initial backlog with cards representing specific design/implementation tasks (high-level features/functionalities/requirements). During the design and implementation phase, backlog items should be prioritized, selected and elaborated (typically further decomposed into concrete design/implementation tasks.

In the internal planning meeting (before the weekly meeting with the steering group), the group should:

Subversion or Git

Submission of deliverables to the steering group, as well as distribution of feedback, is done through Subversion or Git. For documents, we only require that you put the final version there, in case you prefer some other tool for collaborative writing. For the source code, however, we strongly recommend that you use the repository as the only means to share and collaborate on the implementation.

We provide a subversion repository for storing documents and source code. Each group has access to a separate folder (https://v-subek.ita.mdh.se:8443/svn/dva313/2016/gN, where N is the group number). If you prefere, you can use Git instead, but in that case you have to ser up the central repository yourself, for example at Github, and don't forget to invite the steering group to it (jancarlson and jfeljan).

As a first step, to make sure that all group members are familiar with the basic concepts, you can created a folder "members" in your svn folder, and a file "members.txt" in it with just the names of each member on a separate line in te file. Then commit it, and let each member update their local copy from the repository, add some contact information to their name, and commit the changes. You can also experiment with conflicts and merging in this folder.

If you are new to SVN, spend some time learning the basics first. This free book could be useful. TortoiseSVN is a good svn client for Windows. For Mac, there are several svn clients, each with some pros and cons. SmartSVN is one suggestion.