week4
What is a key message for BAs in the 12 principles of the Agile Manifesto?
The BA should be engaged and available to the team.
The starting point for design
includes defining the overall responsibilities and collaboration, and unit test cases; the SOLID principles help make a design better.
Which of the following is a source of requirement errors?
incorrect facts omission ambiguity
What is the most important aspect of a component that needs to be shown in a component diagram?
its provided and required interfaces
A summary for the ISP is _____.
no client should be forced to depend on methods it does not use
The SOLID Principles define a design methodology that--if properly applied--generally leads to optimal software.
FALSE
Using the SOLID design principles avoids having to confront the wrap v. extend decision
FALSE
What are some commonly used context techniques used by BAs to provide a big picture view?
Context Diagrams, Story Maps, Process Models
DIP encourages the resolution of dependencies among classes as late as possible. However, class names should never be bound in at run time.
FALSE
What should a BA hope to accomplish when meeting with the iteration lead and developer face to face?
Gain a shared understanding of customer needs and the developers concerns.
Which question is asked during requirements elicitation?
How do we need to know?
How can we can summarize Python's type-matching rules?
If it walks like a duck and swims like a duck, I call that bird a duck.
Why do agile BAs believe in making decisions at the last responsible moment?
It allows more flexibility for change.
What is meant by a "volatile" requirement?
It changes often when people talk about it.
Besides identifying holes in the the storyline of a customer, how does user story mapping help?
It finds the gaps in scope that may be missing.
What is the purpose of an 'include' use-case?
It helps avoid repeating the same functionality across multiple use-cases, thereby removing the possibility of inconsistencies.
Which statement correctly defines a structural UML diagram?
It provides a static view of the system.
What is the difference between object diagram and class diagram?
Object diagrams shows the state of objects in a system at a snapshot in time, whereas Class diagram shows the system's structure, which is maintained throughout the system's lifetime.
Which of these is INCORRECT about package diagrams?
Package diagrams model interaction among packages.
User stories typically have these components:
Who, What, Why, Acceptance Criteria
A requirement is unambiguous if it has only one interpretation.
Requirements that are unambiguous are clear and cannot be misunderstood.
When one class is almost the same as another class, what does ISP suggest?
Segregate the two classes. Common features can be refactored into helper functions or a superclass.
Which question would NOT be asked when planning for the elicitation process?
Should this information be a priority?
The GRASP (General Responsibility Assignment Software Principles) can help identify class responsibilities.
TRUE
The difference between timing diagrams and state diagrams is that timing diagrams show changes along the flow of time, whereas state diagrams show changes based on triggers received from other objects in or outside the system.
TRUE
Writing a well understood, clearly documented structure helps to minimizes the number of requirements.
TRUE
Which of the following words is not part of the five W's of project management?
Will
Which approach to modeling is correct?
UML diagrams should start as rough sketches to get the basic ideas in place before they are transferred to tools for long-term reference and updates.
Which statement is correct for UML?
UML is used for descriptive modeling.
Implementing Liskov Substitution in Python sometimes requires exceptional techniques.
We may need to use isinstance() to distinguish which class an argument value belongs to.
Which statement articulates the correct approach for drawing sequence and class diagrams?
We should develop class and sequence diagrams in parallel iterative so that the static structure is consistent with the dynamic behavior of the system.
The SRP suggests
a class should have responsibility over a single part of the functionality provided by the software, and that responsibility should be entirely encapsulated by the class
Which type of software would be easy to use to organize requirements?
a spreadsheet
Which of the following should you avoid in technical writing?
abbreviations
Which two UML diagrams are combined into an interaction overview diagram?
activity and interaction diagram
What's an important problem that the SOLID Principles help to prevent?
adverse consequences of the "ripple-effect" from software changes
What is modeled in a state diagram?
any entity within a system, e.g. object or component, or the system itself, during its execution
A ClassX has a member variable that is an array of type classY. What kind of relationship exists between them?
association
If BAs spend time evaluating backlog items to make sure they align with the vision and the future, what may not get done?
backlog items
When creating a product decomposition map, whose point of view about functions/features should you focus on?
customer
Changing project requirements can occur _____ of the project life cycle.
during at the end at the beginning
Which activity occurs when verifying requirements?
ensuring that requirements are correctly defined
If two classes are peers that are polymorphic, they cannot participate in Liskov Substitution.
false
When modeling classifiers, you should determine their exact type, e.g. concrete class, abstract class, interface, or generic class, right in the first round of analysis.
false
Which pair best describes the difference between elicitation and analysis processes?
gather vs. define
A summary for the DIP is _____.
high-level classes should not depend on low-level classes. Both should depend on abstractions
In this statement from a use-case specification, which is NOT a candidate for a classifier? "Customer selects an item with price $5 into the shopping cart."
price
BAs work with the Product Owner to schedule backlog items according to the _____.
roadmap and priorities
In this statement from a use-case specification, which is a candidate for a relationship? "Customer selects an item with price $5 into the shopping cart."
selects
Which of the following is included in the BABOK requirement scheme?
stakeholders solutions business
What is the purpose of a deployment diagram?
to model execution architecture of a system in terms of which hardware and execution environment will different parts of the software reside on
What is the purpose of a composite structure diagram?
to model the internal structure of a classifier
Default values are a Python way to assure Liskov Substitution.
true
If a design manages dependencies well, then injecting mock objects for testing will be easier.
true
OCP suggests that some bug fixes should be viewed as an extension instead of a modification.
true
When a subclass introduces a new feature, there's a possibility of a Liskov Substitution problem.
true
Which is an instance of a profile describing one or more mythical users for each user group?
user persona
What strategy or item might a team use to slice user stories?
user role or persona
What technique is used to to find waste and improve the process overall, helping agile teams see where business operations, process, and technology can come together?
value stream analysis and mapping
The Agile Manifesto emphasizes a shared set of _____.
values
When would you draw swimlanes in an activity diagram?
when the activity comprises actions by multiple actors