Software Construction & Design 1
The University of Sydney Page 1
Agile Software
Development Practices
SOF2412 / COMP9412
Unit Overview and Exam
Information
School of Computer Science
Dr. Basem Suleiman
The University of Sydney Page 2
Agenda
– SOFT2412/COMP9412 Topics
– Topics Overview
– Assessment Review
– Unit Feedback
– Exam Preparation
– Exam Structure and Information
– Advice
The University of Sydney Page 3
SOFT2412/COMP9412
Topics Overview
Reflection
The University of Sydney Page 4
SOFT2412 Topics
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 6
SOFT2412 Assessment
Reflection
The University of Sydney Page 7
Assessment – Revisit
What (Assessment)* How Value
Group project 1 – Software development using Agile
tools
Group project 15%
Quiz 1 – Software development using Agile tools Individual 5%
Group project 2 – software development using Scrum
and Agile tools
Group project 25%
Quiz 2 – Software development using Scrum and agile
tools
Individual 5%
Exam Individual exam 50%
The University of Sydney Page 8
Group Project – SW Development
– Set-up of development environment with Agile tools and practices
– GitHub, Gradle, Junit, Jenkins, CI practices
– Collaborative software development using the agile tools and environment
– Automated Teller Machine (ATM) Java application requirements
– Technical report to explain group work (understanding not only applying)
– Demonstrating group work
– Should have helped understanding how to apply principles and practices with
tool support in Agile development projects
– Form of preparation for the exam (through practicing and documenting)
The University of Sydney Page 10
Group Project – Scrum Software Development
– Software development using Agile development tools and practices
– Familiar/experienced agile tools (project 1)
– Scrum roles, events and artefacts, development process, progress monitoring
– SM & PO, user stories, Backlogs, Sprints, Planning, Review, Retrospectives, Burndown
charts, velocity, estimation
– Software development to experience Scrum & agile tools and practices
– Movie ticket booking management application
– Sprints to iteratively implement increments of working versions of the
software
The University of Sydney Page 11
Group Project – Scrum Software Development
– Technical reports to be able to communicate work done and how Scrum
followed
– Weekly demos to client/customer
– Understanding not only applying (what, how, and why) of Scrum events
– Real experience of Scrum and Agile tools (how agile teams work in the
industry)
– Form of preparation for the exam (through practicing and documenting)
The University of Sydney Page 12
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 13
Quiz 1 – Agile Development Tools
• Writing and understanding scripts; Git and Gradle, JUnit tests , Gradle script
• Using scaffold/workspace tool on Ed (weekly tutorials exercises)
• Assessing writing correct code and producing correct/required output
• The Code must pass set of automated tests that are design to evaluate the output
• Quality of the code in case the script answers fail to produce correct/required output
• Replacement quiz option for impacted students
• The goal is to be able to write/understand code and be able to apply agile tools to
support software development
• Form of preparation for the exam (expect similar exam questions)
The University of Sydney Page 14
Quiz 2 – Scrum Software Development
– Movie ticket booking management application development using Scrum and
tools and practices
– Scrum, GitHub, Gradle, Junit, Jenkins, and CI practices
– Demonstrate, explain and discuss the group/individual work
– Effective communication of Scrum and technical development and practices
– Essential practice for Scrum and Agile development teams in real workplace
– Practice for probable similar exam questions
The University of Sydney Page 15
Weekly Practice Quizzes
– Weekly online practice quizzes (not marked)
– Related concepts, knowledge and technical
exercises from lectures and tutorials
– Learn from lecture and tutorial, review and
practices quizzes and exercises
The University of Sydney Page 16
Online Tutorials and Challenges
– Canvas tutorials (2020)
– Interactive tutorials on Ed
– Can learn about concepts and go
through materials/exercises
– Can write code/script and test
solutions (real-time results)
– Additional challenges/exercises
The University of Sydney Page 17
Feedback
– When you submit work, we mark it and give you feedback;
– We try to make this feedback as fast as possible
– Progressive marks will be recorded on Canvas
– Feedback: verbally by your tutor, as comments on your submitted assignment
work, and automated quiz answers. Do pay attention to this feedback, it’s
expensive stuff.
Let us know if you know have not received feedback on your assessments (email to
your tutor and CC the coordinator)
The University of Sydney Page 18
Assignment Feedback
– Group and individual feedback
– Tutorials/tutors
– Reports/demos/presentation feedback
– Teammates
– Common feedback by tutors
– Tools for Agile SW development
– Software Development using Scrum and Agile tools
– Check your marks and feedback on Canvas
The University of Sydney Page 19
Project Experiences and Lessons Learned
– Reflect on experiences from the 2 projects; Agile and Scrum development
– Online survey after Sprint 3 submission
– Individual 10-minutes online survey; must be completed by each individual
– Reflection and contribution to improving the Scrum method
The University of Sydney Page 20
Advice for doing well in this unit
– To do well in this unit you should
– Organize your time well
– Devote 10 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 21
Use and Apply Agile Software Development Practices
– Development methods (team lead/software project manager)
– Underlying concepts and theories (with tweaks)
– Tools; GitHub, Junit (other testing tools), Gradle, Jenkins, JaCoCo, Docker, JIRA
Agile, Trello, other
– Group projects in other courses/units
– Capstone projects!
– Job interviews (software development/Engineer, DevOps, Software Project
Management/Lead)
– Informal discussion with potential employers
The University of Sydney Page 22
Unit of Study Feedback
The University of Sydney Page 23
Unit of Study Feedback
– Continuous monitoring and evaluation during the semester
– Tutors interactive feedback
– Online discussions/feedback
– Assignment marking guides/criteria
– Special consideration (assessments)
– Many thanks to the teaching associates and tutors
The University of Sydney Page 24
Unit of Study Feedback
– Continuous improvements based on former students and staff feedback
– Improved lecture content
• Topics and schedule, discussion questions (Q&As)
• Guest/Industry Lecture (Atlassian)
– Improved tutorials
• Better learning for supporting group projects work
• Continuous feedback, demos and interactions with tutors
• Experienced tutors (software developers/engineers)
– Improved Assessments
• Practical project on Agile tools set up and use in software development
• Practical project on real software project using Scrum and Agile tools
– Weekly sprints, clients, demo to clients,
– Use of Agile tools
The University of Sydney Page 25
Weekly Practice Quizzes
– Weekly online practice quizzes (not marked)
– Related concepts, knowledge and technical
exercises from lectures and tutorials
– Learn from lecture and tutorial, review and
practices quizzes and exercises
The University of Sydney Page 26
Online Tutorials and Challenges
– Canvas tutorials (2020)
– Interactive tutorials on Ed
– Can learn about concepts and go
through materials/exercises
– Can write code/script and test
solutions (real-time results)
– Additional challenges/exercises
The University of Sydney Page 27
Lectures on Ed
– Canvas tutorials (2020)
– Moved most materials to Ed
(one platform)
The University of Sydney Page 28
Interactive Quiz on Ed
– Easy to navigate through task description, script and terminal
– Can write script and run and test multiple times
– Must more interactive
The University of Sydney Page 29
Unit of Study Survey – Your Turn
– Your feedback is valued and can make a difference
– Complete the USS survey (5-10 minutes): https://student-
surveys.sydney.edu.au/students/Links to an external site
• The USS team wish to remind students that each survey completed will give them an
entry into a prize draw*
• Apple iPad Air 64GB
• Apple Watch
• JB HiFi Gift cards
• How to make your USS feedback count
* https://student-surveys.sydney.edu.au/students/complete/prizes.cfm
https://student-surveys.sydney.edu.au/students/
https://student-surveys.sydney.edu.au/staff/info/uss/USS%20introduction.pdf
https://student-surveys.sydney.edu.au/students/complete/prizes.cfm
The University of Sydney Page 30
Unit of Study Feedback 2020
– To share what you enjoyed and found most useful in your learning, and to provide
constructive feedback
– To ‘pay it forward’ for the students coming behind you, so that their learning
experience in this class is as good, or even better, than your own.
– When you complete your USS survey, please:
– Be relevant
– Be specific
• Which class tasks, assessments or other activities helped you to learn? Why were they
helpful?
• Which one(s) didn’t help you to learn? Why didn’t they work for you?
– Be constructive
• What practical changes can you suggest to class tasks, assessments or other activities,
to help the next class learn better?
The University of Sydney Page 31
Exam Overview
The University of Sydney Page 32
Exam Preparation – Lectures
– All materials covered (week 1 to week 10)
– Lecture slides except:
• Code coverage tools, GitHub organization management, Trello,
Asana JIRA,
– Supporting resources (book chapters, web resources)
– Questions discussed live during the Zoom lectures
The University of Sydney Page 33
Exam Preparation – Tutorials
– All Lab/tutorial material (week 1 – week 10)
– Lab/tutorial materials
• Lab exercises
• Lab challenges/tasks
– Including all tools covered except Docker (and virtual machines), Trello,
JIRA
The University of Sydney Page 34
Exam Preparation – Assessments
– Group Projects
– Understanding and use/applying concepts and theory
– Practical experience and hands-on
– Practical experience of report writing
– Quizzes
– Agile tools
– Scrum development project
The University of Sydney Page 35
Weekly Practice Quizzes
– Weekly online practice quizzes (not marked)
– Related concepts, knowledge and technical
exercises from lectures and tutorials
– Learn from lecture and tutorial, review and
practices quizzes and exercises
The University of Sydney Page 36
Exam Information
The University of Sydney Page 37
Exam Information
– Open book exam
– Online Canvas (no proctoring)
– 2 hours writing time + 10 minutes reading time
– Buffer time 15 minutes
– Answer in the provided space (text editor)
– Write your answers clearly and concisely
– Use bullet points where appropriate
– Answer all questions
The University of Sydney Page 38
Exam Marks
– Exam is worth 50% of your total mark
– Exam is marked out of 100
– You need to get at least 40 marks in the exam to pass this unit!
The University of Sydney Page 42
Exam Questions (1)
– Scenario-based short question
– One part
– Answer questions based on the provided information in response to a
scenario or provided information
– Answer clearly and concisely
• Use bullet points
– Answer as instructed (in the provided space)
The University of Sydney Page 43
Exam Questions (2)
– Scenario-based medium question
– Multiple short parts (related topics)
– Answer questions based on the provided information in response to a
scenario
– Answer clearly and concisely
– Use bullet points
– Answer as instructed (in the provided space)
The University of Sydney Page 45
Exam Questions (3)
– Scenario-based long question
– A number of short-medium parts (technical including code/script)
– Answer questions based on the provided information in response to a
scenario
– Cover a number of parts
– Answer clearly and concisely
– Use bullet points
– Answer as instructed (in the provided space)
The University of Sydney Page 47
Exam Questions (4)
– Scenario-based medium question
– Multiple parts (different related topics)
– Answer questions based on the provided information in response to a
scenario (includes applying and discussing)
– Answer clearly and concisely
– Use bullet points where appropriate
– Answer as instructed (in the provided space)
The University of Sydney Page 51
Exam Questions (5)
– Short-medium answer questions
– 2-3 parts
– Scenario-based
– Illustrate, Identify issues and resolve, briefly explain, make
judgement/decisions based on certain events/information, and explain
it, what
– Answer as instructed
– In the provided space
– Clearly and concisely
The University of Sydney Page 53
NOT in Exam
– Some tools (Code coverage tools, GitHub organization
management, Trello, Asana JIRA)
– Write software program (coding related to tools is included)
– Docker tutorial
– Industry/guest lecture
The University of Sydney Page 54
Canvas Exam Environment – Tips
……..
……..
The University of Sydney Page 55
Canvas Exam Environment – Tips
Answer in the provided space
The University of Sydney Page 56
Exam Technique
The University of Sydney Page 57
Exam Preparation
– Lectures provided some discussion questions (individual and group) in class
– Assignments should have helped you to practice and apply concepts, methods,
techniques, principles, etc
– Problem solving in open and very extended time
– Quizzes should have helped you to practice some kind of exam questions
– On-going study and practice:
– Study, practice and learn
– Be efficient and effective
– Be succinct (quality not quantity)
The University of Sydney Page 58
Exam Preparation
– Individuals
– Study circles
– Prepare with a group of classmates
– Prepare and ask questions, answer questions, and give feedback
– Exam discussion board – Q&As
The University of Sydney Page 59
Online Canvas Exam – Preparation
– Academic adjustment students check this video outlining how to check your
time adjustments*
– Specific instructions for exam upload – How to upload images to a quiz*
– Review the Student Charter, your academic integrity responsibilities, and
the integrity contract*
– Turnitin and other techniques will be used to identify answers similarity
– Cases with high similarity will be reported to the academic integrity
office
• All previous cases were inspected, and severe penalties were applied
* Information and links also available on the canvas page of the exam
https://canvas.sydney.edu.au/courses/23380/pages/common-adjustments-for-proctored-exams
https://canvas.sydney.edu.au/courses/23380/pages/uploading-handwritten-images-to-canvas-quizzes
https://www.sydney.edu.au/policies/showdoc.aspx?recnum=PDOC2011/215&RendNum=0
https://www.sydney.edu.au/students/academic-integrity.html
https://canvas.sydney.edu.au/courses/23380/pages/academic-honesty-statement
The University of Sydney Page 60
Online Canvas Exam – Preparation
The University of Sydney Page 61
Exam Technique
– Plan how you will allocate time (wisely)
– Use “reading time” to check your understanding
– Also to plan time allocation to questions
– Plan the order of answering questions (e.g. answer easier ones first)
– Answer everything
– Plan your answer and write answers relevant to the questions
– Quality not quantity
– Write clearly and efficiently
– If you are asked to list features, using bullet points is more efficient and easier to read
– Answer as instructed (provided text space or write and upload)
• Plan your answers on “rough work” pages
The University of Sydney Page 63
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
• 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 64
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
• 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 65
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 66
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 67
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 68
Illness
– If you are unwell, and it seems that you won’t be able to demonstrate your
knowledge/skill properly, then you can request special consideration
– Follow the same procedure as during semester (get medical person to fill out
special USyd form, hand it in within one week)
– Check university policies
– Usual outcome: an alternate test, a few weeks later
– If you become sick during the exam itself, raise hand and speak to the
invigilator
– The University goal is to get a fair assessment of what you have achieved
The University of Sydney Page 69
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 coordinator by email as soon as anything begins to go wrong
– There is a similar process if you need special arrangements eg for religious
observance, military service, representative sports
http://sydney.edu.au/current_students/special_consideration/
The University of Sydney Page 70
Pragmatic Advice
– Check all the information on the Canvas exam page before the exam
– Prepare your PC and check your internet beforehand
– Keep spare pens and papers
– Keep water next to you
– Be relax and stay focused
– The exam will be based on the materials covered
– It will examine the content of the course, with emphasis similar to lectures, labs, and assignments
The University of Sydney Page 72
Reminder
– 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 73
Reminder – Complete the Surveys
– Your feedback is valued and can make a difference. Please complete
the USS survey: https://student-surveys.sydney.edu.au/students/
– Complete the Reflection Survey: Project Experiences and Lessons
Learned (part of the projects and learning outcomes) by 14 November
– https://canvas.sydney.edu.au/courses/36380/quizzes/156578
https://student-surveys.sydney.edu.au/students/
https://canvas.sydney.edu.au/courses/36380/quizzes/156578
The University of Sydney Page 74
Good Luck!
All the Best in your degree and
career!