01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 1/15
SOFT2412_COMP9412 Exam
Started: Dec 1 at 13:00
Quiz Instructions
1.5 ptsQuestion 1
Git automatically resolves conflicts that may arise in files tracked in Git repository by
adding special markers called "Conflict-resolution markers"
A distributed version control system has a single server that contains all versioned files
and a number of clients that check-out files from the central server.
"Origin" is the special remote branch that is automatically created when one clones a
remote repository.
When you make a commit, Git stores a commit object that contains a pointer to the
snapshot of the content you staged
Which of the following is correct?
1.5 ptsQuestion 2
Writing unit tests causes the whole project to take longer because the team spends more
time writing code, but it’s worth it for the extra quality.
Unit tests are written immediately after writing the code that they test
Test-driven development is used exclusively by XP teams.
Development happens in very short cycles in which requirements are turned into specific
test cases which must fail before implementing the requirements
Which of the following is true about test-driven development?
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 2/15
1.5 ptsQuestion 3
Members of Agile teams have mutual respect and mutual responsibility toward the work
needs to be done.
Larger Agile teams perform better than small ones
Agile teams that work harmoniously together perform better than those with lots of conflict
Agile teams work with the best developers; about 4-5 senior developers per team
Which of the following is true about Agile teams?
1.5 ptsQuestion 4
In multi-version systems, there is never just one working version of a system.
Semantic versioning can help to manage dependencies between system packages,
libraries and plugins.
Codeline specifies the component versions that are included in the system plus a
specification of the libraries used and configuration files.
Patents grant inventor(s) the right to exclude others from making, using or selling and
importing an invention for a limited time in exchange for public disclosure of the invention.
Which of the following statements is not correct?
1.5 ptsQuestion 5
Consider a software product that currently in version 2.0.0 . Imagine that some
bug fixes made to version 2.0.0 . Following the semantic version principles which
of the following versions should assigned to the next release?
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 3/15
3.0.0
2.0.1
2.1.1
2.2.2
1.5 ptsQuestion 6
Maximizing the work not done is important to succeed
Satisfying the customer by delivering valuable software early and often
Using iteration to effectively plan the project
Welcoming changing requirements, even late in development
Which of the following best describes the agile mindset with respect to simplicity?
1.5 ptsQuestion 7
It contains the final version of all features
It is an effective way to get feedback
It is the primary measure of progress
It is delivered frequently
Which of the following is not part of an agile team’s mindset toward working
software?
1.5 ptsQuestion 8
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 4/15
Ideal days help driving cross-functional behavior.
Story points are a pure measure of size.
Story points make velocity predictions easier
Story point estimates do not decay.
Why would you consider Story Points over Ideal Days? Choose all that apply.
1.5 ptsQuestion 9
When a certain event is triggered from GitHub.com, an XML payload is sent to the
webhook's configured URL.
When a certain event is triggered from GitHub.com, a secured payload is sent to the
webhook's configured URL.
When a certain event is triggered from GitHub.com, a HTTP POST payload is sent to the
webhook's configured URL.
When a certain event is triggered from GitHub.com, a HTTP GET payload is sent to the
webhook's configured URL.
Which of the following is correct. Choose all that apply.
1.5 ptsQuestion 10
It is not possible to add actions to a Gradle task.
Gradle build files are XML scripts
One of the feature of Gradle is incremental builds.
If a task in the build script fails during execution, Gradle will still run the whole build.
Which of the following is correct? Choose all that apply.
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 5/15
The order in which tasks can run is determined using a directed acyclic graph.
A "dry run" is a run where Gradle does not actually execute all the tasks you tell it to
execute.
6 pts
HTML Editor
Question 11
A computer company is working on an experimental fighter. A quality
control software engineer suspects that the flight control software is
not sufficiently tested, although it has (finally) passed all its contracted
test suites. She is being pressured by her employers to sign off on the
software. Her employers say they will go out of business if they do not
deliver the software on time. She did not sign off.
Is this an acceptable practice? Discuss your answer.
12pt Parag
0 words
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 6/15
6 pts
HTML Editor
Question 12
You are managing a development team that is building a software for
global internet customer relationship management company called
eCRM. The company’s management asked you to use an open-source
software called BotServices4.0.0 which is released under the MIT
license.
(a) What advice would you make for the eCRM's management
regarding the use of BotServices4.0.0? explain your answer.
The eCRM's management plans to open-source their new eCRM
software with a license. The company's executive wants to preserve its
trademark and own branding.
(b) What advice would you make for the management regarding open
sourcing eCRM? explain your answer
12pt Parag
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 7/15
0 words
9 ptsQuestion 13
Consider the following scenario.
Feature: Song should appear in alphabetical order, not added order
Scenario: view Song list after adding 2 Songs
GIVEN: I am on the SongList home page
WHEN: I follow “Add new song”
THEN: I should be at the “Create New Song” page
WHEN: I fill in “Title” with “Hope”
AND: I select “5 stars” from “Rating”
AND: I press “Save Song”
THEN: I should be on the SongList home page
WHEN: I follow “Add new Song”
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 8/15
Upload
THEN: I should be at the “Create New Song” page
WHEN: I fill in “Title” with “Imagine”
AND: I select “4.5 stars” from “Rating”
AND: I press “Save Song”
THEN: I should be on the SongList home page
THEN: I should see “Hope” before “Imagine” on the home page sorted
by Title
1. Briefly explain the problem with the way the scenario is written. [3
points]
2. Briefly explain how the way the scenario is written could be
improved. [2 points]
3. Re-write the scenario to make the suggested improvement(s). [4
points]
Write your answer for the above questions on a paper with your Unikey
and SID and upload it through the "Upload" Input provided below.
Choose a File
20 ptsQuestion 14
You are working in a development team that follows CI/CD practices.
The team uses the following code snippet in their CI/CD server.
Examine the code snippet and answer the following questions.
plugins {
id 'java'
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 9/15
id 'jacoco'
}
repositories {
mavenCentral()
}
dependencies {
testImplementation
'org.junit.jupiter:junit-jupiter-api:5.6.2'
testRuntimeOnly 'org.junit.jupiter:junit-
jupiter-engine:5.6.2'
}
test {
useJUnitPlatform()
test.finalizedBy jacocoTestReport
}
build.gradle
1. One of your team members build the project by running “gradle
clean build test jacocoTestReport”. Explain why it is not best
recommended to run this command in this way. [3 points]
2. How the command in the previous question should be re-written? [3
points]
3. When you try “gradle run” command in your local workspace, an
error triggers with the message “Task 'run' not found in root project”.
Explain what caused the error from running "gradle run" command and
how to fix it. [5 points]
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 10/15
Upload
4. Explain a CI practice that has been violated from the issue resulted
in question part 3. [3 points]
5. What changes should be made in build.gradle to fix the violation of
the CI practice identified in question part 4. [3 points]
6. In Jenkins, explain the important actions that should be included in
the "Post-build Actions" to monitor the quality of your code. [3 points]
Write your answer for the above questions on a paper with your Unikey
and SID and upload it through the "Upload" Input provided below.
Choose a File
14 ptsQuestion 15
package calc;
public class Calculator {
public int add (int a, int b) {
return a + b;
}
public int div (int a, int b) {
Consider the code snippet Calculator.java below which saved under
“src/main/java/calc” directory: “Calculator.java”. Also, consider the
code snippet “CalculatorTest.java” which is saved under
“src/test/java/calc/”
import static
org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
import
org.junit.jupiter.api.BeforeAll;
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 11/15
if (b == 0) {
throw new
ArithmeticException("Division by
0");
} else {
return a / b;
}
}
public int isPositiveNumber (int
a) {
if (a > 0) {
return 1;
} else if (a < 0) {
return -1;
} else {
return 0;
}
}
}
class CalculatorTest {
private static Calculator
calcObj;
@Test
void testAdd() {
assertEquals(3,
calcObj.add(1, 2));
}
@BeforeAll
public static void
calcCreation(){
calcObj = new
Calculator();
}
}
Calculator.java
CalculatorTest.java
1. When the unit test is run using
Gradle, it shows an error . Explain
why the error is triggered and how
to fix it. [4 points]
2. Assuming that the error explained in previous question is fixed.
Explain in detail the “calcCreation” method. [4 points]
3. Extend the CalculatorTest.java to write a quality unit test code for
the“isPositiveNumber” method. Your code must compile and run
successfully. [6 points]
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 12/15
Upload
Write your answer for the above questions on a paper with your Unikey
and SID and upload it through the "Upload" Input provided below.
Choose a File
15 ptsQuestion 16
Consider an agile team that is working on developing a “Frequent
Flyer” software application. The product backlog has 20 user stories
which worth 128 SP. After 2 weeks of work, the team has reached the
end of the first sprint. The user stories in the task board are ordered
from the highest priority (at the top) to the lowest priority (at the
bottom) as shown in the following table. The team is about to prepare
for the sprint demo. The status of the task board is shown in the table
below.
User Story To Do In Progress Done
1. Book selected flight
(8 SP)
P1, P2
2. Load most recent flight
(5 SP)
P1 P2, P3
3. Enter flight date for a flight
(3 SP)
P4 P1, P2
4. Delete stored frequent flight
(5 SP)
P1, P2, P3 P4
5 Show my frequent flight list P1 P2
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 13/15
Upload
5. Show my frequent flight list
(3 SP)
P1, P2
P5
6.Load selected previous flight
(3 SP)
P1, P2
The Team’s Task board (Px refers to the task of the corresponding user story)
1. Which user stories are you going to demonstrate in the Sprint
Demo? Why? [3 points]
2. What are the team’s estimated and actual velocity for that sprint?
Illustrate how is it calculated. [4 points]
3. What is the estimated project duration? Illustrate how is it
calculated. [3 points]
4. Suppose that an important feature support task was identified in the
middle of the sprint. The team and the product owner agree that the
task must be added to the sprint, but they do not know the effort
estimate needed to complete it. Based on Scrum, discuss what should
be done to deal with this scenario? [5 points]
Write your answer for the above questions on a paper with your Unikey
and SID and upload it through the "Upload" Input provided below.
Choose a File
15 ptsQuestion 17
Assume you have created a project folder (SOFT2412) which contains
2 files README.md and .gitignore. Assume that you are inside
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 14/15
Upload
SOFT2412 and then you run the following git commands from the
command line.
git init
git remote add origin
github_repo_link
git add .
git commit -m “initial commit”
git push origin master
(a) Assume that you want to work on another branch called “MyDev”
and you have created another file called “Search.java” inside
SOFT2412. You want to make a commit and put the file and the
branch in github_repo_link repository. Write all git commands required
to perform the above. Git commands should run successfully. [5 points]
(b) Afterwards, assume you made some changes in the “Search.java”,
but you found that there are bugs in the changes you made. You
reviewed the changes, and then you decided to remove all these
changes you made on the file. Write git commands to review the
changes made in “Search.java” and remove all the current changes.
Git commands should run successfully. [5 points]
(c) You want to apply all commits in the “MyDev” branch to master
branch in the Github remote repository. Write git commands required
to perform this. Git commands should run successfully. [5 points]
Write your answer for the above questions on a paper with your Unikey
and SID and upload it through the "Upload" Input provided below.
Choose a File
01/12/2020 Quiz: SOFT2412_COMP9412 Exam
https://canvas.sydney.edu.au/courses/29170/quizzes/119952/take 15/15
Not saved Submit Quiz