Question 1
Question
What is pair programming?
Answer
-
The Scrum Team is divided into several two-person Development Teams that consolidate work in a Scrum of Scrums.
-
A developer and a tester work together to write and test code.
-
Two programmers write code separately. A third programmer integrates the work.
-
Managers doing performance reviews by comparing one programmer's code to another's.
-
Two developers writing code together, providing constant peer review.
Question 2
Question
Which are benefits of Test Driven Development?
Answer
-
It improves quality and reduces bugs.
-
Which are benefits of Test Driven Development
-
It speeds the overall development process.
-
It promotes good design and separation of concerns.
Question 3
Question
You are on a Scrum Team that is enhancing an existing product. Which is the LEAST useful piece of documentation you want to have at your disposal?
Question 4
Question
Which describes the practice of expressing requirements as acceptance tests?
Answer
-
Acceptance Test Driven Development
-
Object Driven Requirements Definition
-
Quality Oriented Requirements Definition
-
Regression Testing
Question 5
Question
What is code coverage?
Answer
-
The number of developers that understand how the code works.
-
The percent of code in version control included in a build.
-
An insurance policy that covers the code for defects.
-
The degree to which the system under test has been exercised by tests.
Question 6
Question
When is a system's architecture decided?
Answer
-
Whenever the assigned architect can join the Development Team.
-
It is designed along with the vision, before the first Sprint.
-
In the beginning of the project, during Sprint 0, when the groundwork is done.
-
Throughout the project, as understanding emerges and the Development Team learns more about the project.
Question 7
Question
What happens during Sprint 0?
Answer
-
Requirements gathering, version control setup, and continuous integration setup.
-
Overall planning, base system architecture, base design, version control and continuous integration setup.
-
There is no such thing as Sprint 0.
-
Base system architecture and design.
-
Establish base system architecture and design, install version control and continuous integration setup.
Question 8
Question
What is test first development?
Answer
-
Designing tests before satisfying them.
-
Having the tester in the Development Team write the test plans before coding.
-
Testing existing code before adding more code to it.
-
The continuous restructuring of software to retain flexibility.
Question 9
Question
Which are attributes of a good bug report (choose all that apply)?
Answer
-
Simple and repeatable reproduction steps.
-
Build or version where bug was found.
-
Screenshots or other pictures of bug in action when user interfaces are involved.
-
Clear title and proper grammar in report.
-
Expected results and observed results.
-
One bug per report.
Question 10
Question
When are testers and quality experts ideally included in a project?
Question 11
Question
Programmers and testers should not be included in refining Product Backlog items.
Question 12
Question
The definition of "Done" describes the work that must be completed for every Product Backlog item before it can be deemed releasable. What should the Development Team do when, during the Sprint, it finds out that a problem outside of their control blocks them from doing all this work?
Answer
-
Complete the work that can be done on as much scope as possible and use the Sprint Review to plan the rest with the stakeholders.
-
Immediately raise the issue to the Scrum Master as an impediment.
-
Cancel the Sprint.
-
Complete the work that can be done on as much scope as possible and complete the rest during the "hardening" sprints at the end of the release.
-
Stop using Scrum.
Question 13
Question
Select four (4) desirable characteristics of a unit test.
Answer
-
Each test makes assertions about only one logical concept.
-
The test executes fast.
-
Each test is independent of other unit tests.
-
Code in each test is as small as possible.
-
They exercise the persistence layer of a solution.
Question 14
Question
What are two (2) reasons to automate the software build process?
Answer
-
To get feedback on changes to the code early and often.
-
Code reviews are much faster if you automate your build.
-
Automation improves the quality of software by making builds less error-prone.
-
You can't run automated tests without an automated build.
Question 15
Question
While changing software, you find a bug in a previously delivered piece of functionality. What should you do?
Answer
-
Fix the bug if it is critical or easily fixed. Otherwise, put the new bug into the Product Backlog to be prioritized and fixed in an upcoming Sprint.
-
Stub out the code that caused the bug so it no longer occurs.
-
Revise the tests so that the bug no longer appears on the bug report.
-
Fix the bug.
Question 16
Question
Select two (2) benefits of Continuous Integration.
Answer
-
Causes team members to consider each other's work and context.
-
It eliminates bugs completely.
-
The build is executed once every night and at least once each weekend.
-
It leads to higher transparency and rapid feedback to the team.
Question 17
Question
Who is responsible for the system architecture of a product being developed using Scrum?
Question 18
Question
Which of the following best describes Continuous Integration?
Answer
-
A software development practice used by Integration Teams to create best practice branching and merging strategies.
-
A software development practice where members of a development team integrate and verify their work frequently, often multiple times each day, to detect integration errors as quickly as possible.
-
A software development practice where members of a development team all work on the same computer to ensure a common code base.
-
A software development practice that continuously integrates feedback from users into software design.
Question 19
Question
What are three advantages of Continuous Integration?
Answer
-
The software is generally kept in a buildable state.
-
Readability of code is improved.
-
Know immediately how a check-in affected the build.
-
Broken builds are detected quickly.
Question 20
Question
Select three (3) reasons why automated builds are important.
Answer
-
The build process is clearly defined and scripted, making it easy consistent and repeatable.
-
They allow frequent validation of the unit of software being worked on, ensuring it remains in a potentially shippable state.
-
They ensure your product remains bug free.
-
They eliminate the need for Build Engineers.
-
They support continuous integration.
Question 21
Question
What is a unit test?
Answer
-
A test that isolates and verifies individual units of source code.
-
A technique for ensuring that units of co-dependent or clustered computers perform correctly.
-
A way in which units of programmers ensure their code works.
-
A way for the team to ensure that the system satisfies the user requirements.
Question 22
Question
Which are three attributes of a BAD bug report?
Question 23
Question
Which of the following are NOT metrics of code quality? (choose all that apply)
Answer
-
Cyclomatic complexity
-
Cycle time per feature
-
Class coupling
-
Depth of inheritance
-
Lines of Code
Question 24
Question
What are two (2) ways a Development Team can ensure a good application architecture?
Answer
-
A Development Team doesn't need an architecture model in Scrum and should focus on adding functionality. The architecture will come into place without fail as the Development Team adds functionality.
-
The Development Team should assign someone to the role of software architect whose job it is to make sure a consistent architecture is developed.
-
The Development Team plans some time each Sprint to discuss the architecture needed for the features planned in that Sprint.
-
The Development Team should have a set of guiding architecture principles that every Development Team member understands and follows when writing code.
-
The Development Team plans a Sprint 0 at the beginning of a project with the objective of developing an architecture model used during the following Sprints.
Question 25
Question
Who must be present at the Daily Scrum meeting?
Answer
-
The Scrum Master and the Development Team
-
The entire Scrum Team (including PO and SM)
-
The Development Team
-
Anyone who wants to attend
-
No one is required, anyone who wishes to attend is welcome
Question 26
Question
Who writes tests in a Scrum Team?
Answer
-
QA specialists
-
The Scrum Master
-
Coders
-
The Development Team
Question 27
Question
Should User Stories be part of the documentation generated by a Scrum project?
Answer
-
Never.
-
Always.
-
If the architect requires it.
-
They must be provided to the Development Team as part of the user specifications documents.
-
If they are part of the Definition of "done".
Question 28
Question
When does the Development Team participate in Product Backlog refinement?
Answer
-
Only during refinement meetings planned by the Product Owner.
-
Anytime during the Sprint.
-
As Part 1 of the Sprint Planning meeting.
-
Never. It is the sole responsibility of the Product Owner to refine the Product Backlog.
Question 29
Question
What is the value of refactoring code?
Answer
-
To keep the code moving.
-
To make the software faster at runtime.
-
To improve readability and maintainability.
-
To have all code in a single file for easy printing and code reviews.
Question 30
Question
Which of the following describe an architecture spike?
Answer
-
A small development activity to learn about technical elements of a proposed solution.
-
The result of an exhaustive architectural planning effort.
-
A decision made by a systems architect to settle disagreement within a Development Team.
-
A fundamental architectural problem found in an existing application.