Software Construction & Design 1
The University of Sydney Page 1
Agile Software
Development Practices
SOF2412 / COMP9412
Administrivia/ Course Introduction
School of Computer Science
Dr. Basem Suleiman
The University of Sydney Page 2
Welcome
The University of Sydney Page 3
Acknowledgement of Country
I would like to acknowledge the Traditional Owners of Australia and
recognise their continuing connection to land, water and culture. I
am currently on the land of the Gadigal people of the Eora Nation
and pay my respects to their Elders, past, present and emerging.
I further acknowledge the Traditional Owners of the country on
which you are on and pay respects to their Elders, past, present and
future.
The University of Sydney Page 5
Agenda
– Administrivia and Course Introduction
– Work Health and Safety (WHS)
The University of Sydney Page 6
SOFT2412 – People
– Instructors
› Unit coordinator: Dr. Basem Suleiman (basem. .au)
› Phone: 8627 6602, Office: CS room 233
› Academic matters and all paperwork and admin issues
› Illness or misadventure
› Rules and policies
› Group difficulties
› Tutors: depends on your timetable
mailto:basem. .au
The University of Sydney Page 7
SOFT2412 – People
– Tutoring Team
– Mohammed Mustafa Fulwala (TA) – mohammed. .au
– Muhammad Johan Alibasa – .edu.au
– Muhit Anik – muhit. .au
– Frank Fu – .au
– Ruchita Manuja – ruchita. .au
– Ronald Noronha – .edu.au
– Qifan Chen – qifan. .au
– Sudeshna Sengupta – .edu.au
– Dhruvil Shah – Dhruvil. .au
– Mohd Afiq – .edu.au
– Regina Wang – .edu.au
– Jenny Wu – .edu.au
– Adhish Panta – .edu.au
mailto:mohammed. .au
mailto: .edu.au
mailto:muhit. .au
mailto: .au
mailto:ruchita. .au
mailto: .edu.au
mailto:qifan. .au
mailto: .edu.au
mailto:Dhruvil. .au
mailto: .edu.au
mailto: .edu.au
mailto: .edu.au
mailto: .edu.au
The University of Sydney Page 8
SOFT2412 – Resources
– eLearning (Canvas) and Ed
– Login using Unikey and password
– Unit outline
• Official schedule, list of learning outcomes, etc
– Lab instructions (Ed)
– Assignment instructions
– Very careful attention and regular check of the weekly
materials/projects/assessments/instructions etc
– Submit official assignment work here;
– see your grades; etc
– Discussion forum and announcements: on edstem link from Canvas site
https://www.sydney.edu.au/units/SOFT2412/2021-S2C-ND-CC
The University of Sydney Page 9
Prerequisites
– This course has the following prerequisites:
– INFO1113 OR INFO1103 OR INFO1105 OR INFO1905
– This means that we expect students who enroll in this course to
be:
– Object-Oriented Programming (in Java) and/or
– Data structures and algorithms (some Java programming)
– Prohibitions
– COMP9412
https://cusp.sydney.edu.au/students/view-unit-page/alpha/INFO1113
https://cusp.sydney.edu.au/students/view-unit-page/alpha/INFO1103
https://cusp.sydney.edu.au/students/view-unit-page/alpha/INFO1105
https://cusp.sydney.edu.au/students/view-unit-page/alpha/INFO1905
The University of Sydney Page 10
Main Resources (Textbooks)
• Recommend the following textbooks
The University of Sydney Page 11
Lab / Tutorial Work
– 2-hour lab/tutorial work
– Check your schedule and allocation on the timetable – from week 2
– Lab materials on Canvas and Ed
– Great opportunity for interactive and hands-on learning experience
– Topics related to assessment
– Quizzes and group/individual demos
– Quizzes linked to lab./tutorial exercises
– Respect your tutors and value their feedback
– Tutors will supervise your learning, provide you guidance
– Ask your questions and discuss with tutors and group/classmates
– Do not miss tutorials/labs
The University of Sydney Page 12
SOFT2412 – Expectations
– Students attend scheduled lectures and tutorials, and devote at
9-12 hrs per week (6 CP)
– Students are responsible learners
– Participate in tutorials and meetings constructively
• Respect for one another (criticize ideas, not people)
• Humility: none of us knows it all; each of us knows valuable things
– Check eLearning site at least once a week!
– Notify academics whenever there are difficulties
– Notify group partners honestly and promptly about difficulties
The University of Sydney Page 13
Feedback
– Try to solve problems then talk to us (e-mail) if:
– You have problems or are struggling,
– You can’t understand the contents,
– You think there’s something else wrong
– A discussion forum is setup:
– Ed for discussions
– Please use Ed for technical questions so that everybody can benefit from
the questions and answers
The University of Sydney Page 14
SOFT2412 – Topics Overview
https://www.sydney.edu.au/units/SOFT2412/2021-S2C-ND-CC
WK Topics
01 Course introduction, Introduction to software development processes;
02 Version control, introduction to Git
03 Version control: Git team and collaborative development
04 Build automation: software build and configuration
05 Software quality assurance: software testing
06 Continuous integration (CI); Continuous delivery/deployment (CD)
07 Group dynamics, tools and technologies for teamwork, issue tracking, Scrum method and agile team structure
08 Scrum method: expressing requirements
09 Scrum method: planning and estimation
10 Ethics, intellectual property, licensing and open-source software
11 Reflection: project experiences and lessons learned
12 Industry speakers
13 Review, Exam Structure
https://www.sydney.edu.au/units/SOFT2412/2021-S2C-ND-CC
The University of Sydney Page 15
Tools you will use
– Git/Github
– Junit
– Gradle
– Jenkins
– Trello/Slack
– Others
The University of Sydney Page 17
Feedback to you!
– When you submit work, we have to mark it;
– We try to make this feedback as fast as possible (considering other factors)
– Progressive marks will be recorded on Canvas
Feedback to you will take many forms: verbally by your tutor, as comments
accompanying hand marking of your assignment work, and automated quiz answers.
Do pay attention to this feedback, it’s expensive stuff.
The University of Sydney Page 18
Assessment
What (Assessment)* When (due) How Value
Group project 1 – Agile development
tools
Week 7 Group project 15%
Quiz 1 Week 7 Individual 5%
Group project 2 – SW development
using Scrum and Agile tools
Week 12 Group project 25%
Quiz 2 Week 12 Individual 5%
Exam Exam
period
Individual exam 50%
The University of Sydney Page 19
Assessment – Agile Development Tools
– Group project work
– groups of 5 students
– Use and apply software tools and practices to build a software (weeks 1 – 6)
– Collaborative software development using agile tools and practices, technical
report, and demonstration
– Marks: 15%
The University of Sydney Page 20
Assessment – Quiz 1
– Individual assessment
– In-tutorial quiz; questions, coding tasks and/or demonstration
– Agile development tools and practices and materials week 1-6
– Marks: 5%
The University of Sydney Page 21
Assessment – Scrum Software Development
– Group project work
– Software development using Scrum and Agile tools development tools
– groups of 5 students
– Collaboratively develop a software using Scum method and agile development
tools and practices
– Practical use of tools for agile development, technical report, demonstration
– Marks: 25%
The University of Sydney Page 22
Assessment – Quiz 2
– Individual assessment
– In-tutorial quiz; questions, coding tasks and/or demonstration
– Scrum development and agile development tools and practices and materials
week 1-12
– Marks: 5%
The University of Sydney Page 23
Assessment – Exam
– Online exam
– Lectures, tutorials and assessments
– During exam period (exam timetable)
– More details in week 12 or 13
– Marks: 50%
– You must get at least 40% for your exam mark and total of at least 50%
The University of Sydney Page 24
Passing this unit
– To pass this unit you must do all of these:
– Get a total mark of at least 50%
– Get at least 40% for your exam mark
The University of Sydney Page 25
Additional Learning (new)
– Weekly online practice quizzes (not marked)
– Weekly technical exercises (not marked)
– Learn from lecture and tutorial, review and practices quizzes and
exercises
The University of Sydney Page 26
Advice for doing well in this unit
– To do well in this unit you should
– Organize your time well
– Devote 9-12 hours a week in total to this unit
– Read.
– Think.
– Practice.
“Tell me and I forget, teach me and I may remember, involve me and I
learn.” – Benjamin Franklin
The University of Sydney Page 27
Group Work – Team Dynamics
– Teams must organize itself
– Arrange internal communication and meetings
– Set internal deadlines
– Follow up if deadlines are missed
– Have fallback mechanism
– Have dispute resolution mechanism
– Let unit coordinator / lecturer know quickly if there are problems
(unresolvable disagreements, member who doesn’t contribute, etc.)
– Try to work with people with different work style and experience
– Real learning how to be team player, lead and team dynamics
The University of Sydney Page 29
Policies
Assessment and Academic dishonesty
The University of Sydney Page 30
Special Consideration (University Policy)
– If your performance on assessments is affected by illness or misadventure
– Follow proper bureaucratic procedures
– Have professional practitioner sign special USyd form
– Submit application for special consideration online, upload scans
– Note you have only a quite short deadline for applying
– http://sydney.edu.au/current_students/special_consideration/
– Also, notify the coordinator by email as soon as anything begins to go wrong
– There is a similar process if you need special arrangements e.g., for religious
observance, military service, representative sports
http://sydney.edu.au/current_students/special_consideration/
The University of Sydney Page 31
Late Assessments
– Suppose you hand in work after the deadline:
– If you have not been granted special consideration or arrangements
– A penalty of 5% of the available marks will be taken, per day (or part) late
– Late penalty does not apply to the quiz; you cannot re-take the quiz if you miss
it
– Warning: submission sites get very slow near deadlines
– Submit early; you can resubmit if there is time before the deadline
The University of Sydney Page 32
Academic dishonesty and plagiarism
• Please read the University policy on Academic Honesty carefully:
http://sydney.edu.au/elearning/student/EI/academic_honesty.shtml
• All cases of academic dishonesty and plagiarism will be investigated
• There is a new process and a centralized University system and database
• Three types:
• Plagiarism – when you copy from another student, website or other source. This includes
copying the whole assignment or only a part of it.
• Academic dishonesty – when you make your work available to another student to copy (the
whole assignment or a part of it). There are other examples of academic dishonesty.
• Misconduct – when you engage another person to complete your assignment (or a part of
it), for payment or not. This is a very serious matter and the Policy requires that your case is
forwarded to the University Registrar for investigation.
The University of Sydney Page 33
Penalties
• The penalties are severe and include:
1) a permanent record of academic dishonesty, plagiarism and misconduct in
the University database and on your student file
2) mark deduction, ranging from 0 for the assignment to Fail for the course
3) expulsion from the University and cancelling of your student visa
• Do not confuse legitimate co-operation and cheating! You can discuss the assignment with
another student, this is a legitimate collaboration, but you cannot complete the assignment
together – everyone must write their own code or report, unless the assignment is group work.
• When there is copying between students, note that both students are penalised – the student
who copies and the student who makes his/her work available for copying
The University of Sydney Page 34
Detection
• We will use the similarity detection software TurnItIn and MOSS to compare
your assignments with these of other students (current and previous) and the
Internet
• Turnitin is for text documents: http://www.turnitin.com/en_us/higher-
education
• MOSS is for programming code:
https://theory.stanford.edu/~aiken/moss/
• These tools are extremely good!
The University of Sydney Page 35
Student excuses
• All these are cases of plagiarism and academic dishonesty we have seen in our school and the student excuses
are not acceptable:
• I sat the test and then posted the questions and solutions to my friends whose test was later in the
week. I only wanted to help them understand the concepts that are examinable.
• I posted parts of my code on my web page (group discussion forum) because my solution was
cool (or I wanted to help them). I didn’t expect them to copy it.
• I tried to do the assignment on my own but I had problems with the extension part that I couldn’t
fix, so I submitted my core part and his extension part. I didn’t cheat.
• I finished my assignment but my friend had family problems. I felt sorry for her, so I gave her my
assignment as an example. She said she only wanted to have a look and promised not to copy it.
• The test has finished but the tutor hasn’t collected the papers yet. I showed my answer to my
friend. I didn’t expect him to copy it.
• He is my best friend. I had no choice but to let him copy my assignment.
The University of Sydney Page 36
Key message
• Plagiarism and any form of academic dishonesty will be dealt with, and the penalties are severe
• We use plagiarism detection systems such as MOSS and TurnItIn that are extremely good. If you
cheat, the chances you will be caught are very high.
• If someone asks you to see or copy your assignment, or to complete the assignment instead of them,
just say: I can’t do this. This is against the University policy. I will not risk my future by doing this.
Be smart and don’t risk your future by engaging in plagiarism and academic dishonesty!
The University of Sydney Page 37
Online Learning
Assistance
The University of Sydney Page 38
Tips for students joining online
– Remember that you are still in a space with other students.
– Mute your microphone when not speaking.
– Use earphones or headphones – the mic is better and you’ll disturb others less.
– You may turn on your camera so your classmates, group members and staff can
see you!
– You may use background
– Participate in the discussion, but try not to talk over someone else.
– Use the chat function to send messages to the teacher or classmates during class.
The University of Sydney Page 39
Tips for students learning online
– For tips and guides on learning online and the tools you will use, refer to
Learning while off campus resources in Canvas.
https://canvas.sydney.edu.au/courses/4901/pages/learning-while-off-campus
The University of Sydney Page 40
Assistance
– There are a wide range of support services available for students:
https://sydney.edu.au/campus-life/health-wellbeing-success.html
– Please make contact, and get help
– You are not required to tell anyone else about this
– If you are willing to inform the unit coordinator, they may be able to work with
other support to reduce the impact on this unit
– eg provide advice on which tasks are most significant
https://sydney.edu.au/campus-life/health-wellbeing-success.html
The University of Sydney Page 42
Disability Services Office
sydney.edu.au/disability
02-8627-8422
Do you have a disability?
You may not think of yourself as having a ‘disability’ but the
definition under the Disability Discrimination Act (1992) is
broad and includes temporary or chronic medical conditions,
physical or sensory disabilities, psychological conditions and
learning disabilities.
The types of disabilities we see include:
Anxiety // Arthritis // Asthma // Autism // ADHD
Bipolar disorder // Broken bones // Cancer
Cerebral palsy // Chronic fatigue syndrome
Crohn’s disease // Cystic fibrosis // Depression Diabetes //
Dyslexia // Epilepsy // Hearing impairment // Learning disability
// Mobility impairment // Multiple sclerosis // Post-traumatic
stress // Schizophrenia // Vision impairment
and much more.
Students needing assistance must register with Disability
Services. It is advisable to do this as early as possible. Please
contact us or review our website to find out more.
The University of Sydney Page 43
DISABILITY SERVICES
Do you have a disability?
– You may not think of yourself as having a ‘disability’ but the definition under the Disability
Discrimination Act is broad and includes temporary or chronic medical conditions, physical
or sensory disabilities, psychological conditions and learning disabilities.
– The types of disabilities we see include:
– anxiety, arthritis, asthma, asperger’s disorder, ADHD, bipolar disorder, broken bones,
cancer, cerebral palsy, chronic fatigue syndrome, crohn’s disease, cystic fibrosis, depression,
diabetes, dyslexia, epilepsy, hearing impairment, learning disability, mobility impairment,
multiple sclerosis, post traumatic stress, schizophrenia , vision impairment, and much more.
– Students needing assistance must register with Disability Services –
– it is advisable to do this as early as possible.
– http://sydney.edu.au/study/academic-support/disability-support.html
http://sydney.edu.au/study/academic-support/disability-support.html
The University of Sydney Page 44
Other support
– Learning support
– http://sydney.edu.au/study/academic-support/learning-support.html
– International students
– http://sydney.edu.au/study/academic-support/support-for-international-students.html
– Aboriginal and Torres Strait Islanders
– http://sydney.edu.au/study/academic-support/aboriginal-and-torres-strait-islander-support.html
– Student organization (can represent you in academic appeals etc)
– http://srcusyd.net.au/ or http://www.supra.net.au/
– Please make contact, and get help
– You are not required to tell anyone else about this
– If you are willing to inform the unit coordinator, they may be able to work with other
support to reduce the impact on this unit
– eg provide advice on which tasks are most significant
http://sydney.edu.au/study/academic-support/learning-support.html
http://sydney.edu.au/study/academic-support/support-for-international-students.html
http://sydney.edu.au/study/academic-support/aboriginal-and-torres-strait-islander-support.html
The University of Sydney Page 45
Advice
– Metacognition
– Pay attention to the learning outcomes in Canvas
– Self-check that you are achieving each one
– Think how each assessment task relates to these
– Time management
– Watch the due dates
– Start work early, submit early
– Networking and community-formation
– Make friends and discuss ideas with them
– Know your tutor, lecturer, coordinator
– Keep them informed, especially if you fall behind
• Don’t wait to get help
– Enjoy the learning!
The University of Sydney Page 46
WHS Induction – (when
return to campus)
School of Computer Science
The University of Sydney Page 47
General Housekeeping – Use of Labs
– Keep work area clean and orderly
– Remove trip hazards around desk area
– No food and drink near machines
– No smoking permitted within University buildings
– Do not unplug or move equipment without permission
http://www.google.com.au/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&uact=8&ved=0CAcQjRw&url=http://en.wikipedia.org/wiki/Keep_Britain_Tidy&ei=mCnlVMjrBIuV8QWXuYHgDA&bvm=bv.85970519,d.dGc&psig=AFQjCNHhQSHjTTvG925bnER8ZNJi7iN8kQ&ust=1424390917826735
http://www.google.com.au/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&uact=8&ved=0CAcQjRw&url=http://en.wikipedia.org/wiki/Keep_Britain_Tidy&ei=mCnlVMjrBIuV8QWXuYHgDA&bvm=bv.85970519,d.dGc&psig=AFQjCNHhQSHjTTvG925bnER8ZNJi7iN8kQ&ust=1424390917826735
The University of Sydney Page 48
EMERGENCIES – Be prepared
https://sydney.edu.au/campus-life/safety-security.html
http://www.sydney.edu.au/whs/emergency
sydney.edu.au/campus-life/safety-security.html
The University of Sydney Page 49
EMERGENCIES
Assembly Area:
Cadigal Green
The University of Sydney Page 50
EMERGENCIES
The University of Sydney Page 51
MEDICAL EMERGENCY
– If a person is seriously ill/injured:
1. call an ambulance 0-000
2. notify the closest Nominated First Aid Officer
If unconscious– send for Automated External Defibrillator (AED) AED locations.
NEAREST to CS Building (J12)
– Electrical Engineering Building, L2 (ground) near lifts
– Seymour Centre, left of box office
– Carried by all Security Patrol vehicles
3. call Security – 9351-3333
4. Facilitate the arrival of Ambulance Staff (via Security)
l
Nearest Medical Facility
University Health Service in Level 3, Wentworth Building
First Aid kit – SIT Building (J12)
kitchen area adjacent to Lab 110
http://sydney.edu.au/whs/docs/news/AED_locations.pdf
The University of Sydney Page 52
School of Computer Science Safety Contacts
CHIEF WARDEN
Greg Ryan
Level 1W 103
9351 4360 or 0411 406 322
FIRST AID
OFFICERS
Will Calleja
Level 1W 103
9036 9706
0422 001 964
OR
Teaching & Curriculum Officer: Cecille Faraizi
cecille. .au , 9351 6060
CS School Manager: Priyanka Magotra
priyanka. .au , 8627 4295
Julia Ashworth
Level 2E Reception
9351 3423
mailto:cecille. .au
mailto:priyanka. .au
The University of Sydney Page 53
Emergency procedures (If return to on campus)
– In the unlikely event of an emergency we may need to evacuate the building.
– If we need to evacuate, we will ask you to take your belongings and follow the
green exit signs .
– We will move a safe distance from the building and maintain physical distancing
whilst waiting until the emergency is over.
– In some circumstances, we might be asked to remain inside the building for our
own safety. We call this a lockdown or shelter-in-place.
– Further information is available at www.sydney.edu.au/emergency
http://www.sydney.edu.au/emergency
The University of Sydney Page 54
Keeping our community safe
We can all help reduce the spread of COVID-19 through following good hygiene
practices:
– Wash hands regularly, for at least 20 seconds with soap and water, or use an
alcohol-based hand rub.
– Cover your mouth when coughing and sneezing with a tissue or a flexed
elbow.
– Maintain a distance of at least 1.5m between yourself and others, where
possible.
– Avoid large gatherings, where possible.
– Avoid close contact with anyone with cold or flu symptoms, e.g. fever, cough,
runny nose or shortness of breath.
The University of Sydney Page 55
Keeping our community safe
– All students and staff who have cold or flu symptoms should isolate themselves
from others.
– If you are unwell with cold or flu symptoms please excuse yourself from this
class and we will support you to continue the work remotely.
– Make sure you read the information on special consideration in the unit outline.
The University of Sydney Page 56
Keeping our community safe
– The University is following advice from the government and related public health
authorities.
– For the latest information, see the advice on the University website.
– In some classes, especially those involving use of shared equipment, please follow
additional advice from your coordinators.
– Please take care of each other and yourselves and if you need support reach out
to your unit coordinator or the health and wellbeing area of the Current Students
website.
https://sydney.edu.au/study/coronavirus-infection-university-of-sydney-advice.html
https://sydney.edu.au/students/health-wellbeing.html
The University of Sydney Page 59
Introduction: Software
Development Processes