Scrum / Gitlab

IT1901 Fall 2022 - 4th lecture

Overview

  • Administrative issues

  • Group contract

  • Scrum

  • Gitlab

Administrative issues

Administrative issues

  • Reference group

  • Groups

  • Getting help

  • Upcoming deliverables

Reference group (1)

  • Special thanks to the reference group volunteers for their interest in the course.

  • we selected a representative mix in the order of volunteering

  • you can see the contact info in Blackboard

  • questions regarding the course organization and proposals for improvements should be communicated to the reference group

Reference group (2)

Groups

  • groups have been formed based on the form and input from students

  • check in BlackBoard if you are in a group

  • for issues with groups contact Farzana Quayyum <farzana.quayyum@ntnu.no>

  • 338 out of the 353 enrolled students have been distributed to groups

  • we will proceed to create the gitlab groups with the same composition as the Blackboard groups ASAP

Getting help

  • Use piazza instead of sending individual emails to staff

    • 192 out of 338 students have registered in piazza

  • If relevant you can use the technical help-desk

    • how to access it and use it is posted in Blackboard

  • A TA will be assigned to each group

    • subject matter and group related questions should be addressed to them

Upcoming deliverables (1)

  • 1st individual assignment

  • deadline on this Friday at 16:00

  • 271 out of 338 - requested access for 1st individual assignment

  • this is a mandatory exercise, you cannot get a grade in the course if you do not pass it

Upcoming deliverables (2)

  • group contract

  • deadline on this Friday at 16:00

Group contract

Group contract (0)

  • contact the other members of your group

  • start working on the group contract

Group contract (1)

  • Minimum requirements for agreement:

    • Presence

    • Time spent

    • Expectations for the individual contribution

    • What happens in the event of deviations or disagreements

Group contract (2)

  • must be approved by the TA for the group

  • signed by all group members

  • and delivered this Friday by 16:00

Group contract (3)

  • more recommended items:

    • handling differences in motivation level and ambition

    • what quality is expected, how defines the group something to be "done"

    • distribution of time between meetings / group work / individual work

    • what happens if course work needs more time than expected

Group contract (4)

  • more recommended items:

    • delays, sickness, absence - how does the group handle these

    • meeting routines both for physical and virtual (agreement for time, agenda, meeting minutes etc)

    • general communication tools (email, phone, im etc) and response time

    • dealing as a group with deliverables and deadlines

Group contract (5)

  • more recommended items:

    • roles

    • giving feedback to the others

    • dealing with conflicts and disagreements

    • dealing with breach of contract

    • procedure to follow if the group is not able to solve conflicts / disagreements internally

Scrum

About domain selection

  • choose an app / service that you know well and select a couple of features to implement during the semester

  • point is to learn by implementing these using the required architectures

  • we are not looking for quantity but for quality, so just few core features will suffice

About domain selection (2)

  • the chosen app needs to be suitable for a cloud based service

  • there must therefore be some dynamic data per user managed by the server.

  • eg. a (currency) calculation will NOT fit such a project.

  • one good starting point are the cases from the HCI course (MMI)

User stories

  • short, simple descriptions for application features

  • formulated from the stand point of the user / customer

  • template:

    • As a < type of user >, I want < some goal > so that < some reason >.

  • they are not replacing design documents / requirements specification

  • they need to be developed into specific tasks and connected to constraints and other meaningful documentation.

Sprints

  • meaningful iterations of comparable length

  • they should have a clear goal

Planning releases

  • 3 deliverables - map to releases

  • a release should produce a minimum viable product (MVP)

    • a MVP is a version of an application with just enough features to be usable in getting feedback to guide the development process

Meetings

  • regular stand-up meetings (synchronize and commit, remove hindrances)

  • retrospectives (reflect on your group work)

  • sprint reviews / demos (invite TA, prepare deliverables)

Pair programming

  • popular agile development technique

  • recommended to be used in your groups

Gitlab

Gitlab -Issue tracking

  • Issues

  • Labels

  • Milestones

  • Boards

Gitlab demo

Norwegian University of Science and Technology