Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
144 Cards in this Set
- Front
- Back
When performing Software Quality Assurance, what is the correct order of testing from the lower level (single methods) to the highest level (integrated program)? |
Unit Testing, Integration Testing, Modular Testing, Acceptance Testing |
|
Which of the following is NOT one of the techniques mentioned to reuse code? |
Copy and Pasting previously used code |
|
Which of the following is NOT true of using Software as a Service (SaaS)? |
Software developers must make sure the
software is compatible with all machines and environments in which the software will be run on. |
|
Which of the following is NOT true when using SOA (Service Oriented Architecture)? |
It is harder to recover from mistakes in design.
|
|
To contrast legacy code, we use the term
_______ to indicate long-lasting code that is easy to evolve. |
beautiful code
|
|
Which of the following is NOT one of the four fundamental mechanisms to improve
productivity? |
Recycle
|
|
Which of the following about verification and
validation is true? |
Verification asks, "did you meet the
specifications?" while validation asks, "is this what the customer wants?" |
|
_______ testing ensures that the interfaces between the modules communicate correctly. |
Integration
|
|
_______ testing reapplies old tests to reduce the chance of new revisions breaking designs that have worked in the past.
|
Regression
|
|
Which of the following test is more likely to help with validation? |
Acceptance |
|
True/False |
True |
|
True/False Generally, hardware prototypes aim at verification, while software prototypes aim at validation. |
True |
|
David Patterson used _______ as an example of Software as a Service. |
TurboTax Online |
|
David Patterson mentioned three examples of public cloud computing. Which of the following is NOT one of the three he mentioned? |
VMware vCloud |
|
Which of the following is not a part of the "Plan and Document" process? |
Once the plan is written, no one can change it |
|
True/False In the Rational Unified Process, business modeling is only needed in the inception phase. |
False |
|
Which of the following is true about adding more people to a project? |
Adding more people tends to hurt a late project, not help it
|
|
Which of the following is a part of the Agile
Manifesto? |
Working programs are more important than
detailed documentation |
|
The lecture gave 10 questions to determine whether or not you should use Agile. Which of the following is not one of the questions? |
Do you have a set budget? |
|
What does Agile use to measure progress?
|
Velocity
|
|
True/False Agile is better than Waterfall for all softwaredevelopment projects. |
False |
|
Which is not one of the three questions in a scrum meeting? |
Do you need help?
|
|
True/False |
True
|
|
Scrum is basically self-organized teams of _______ people that meet daily for _______ minutes.
|
4-9, 15 minutes |
|
In Ruby, everything is _______.
|
an object |
|
Adding/Modifying a program's code at runtime is called _______. |
metaprogramming |
|
The expression “4 + 7” is actually executed inRuby as _______. |
4.send(:+, 7) |
|
Numeric#+ denotes that '+' is a _______ of the Numeric Class. |
instance method |
|
According to Armando: which statement is the preferred way to assert that a should be greater than of equal to 7? |
a.should be >= 7
|
|
A variable such as @@bank_name is similar to what in Java?
|
A static variable |
|
Which is Armando's preferred method for defining getter/setter methods for an instance variable (such as balance)? |
attr_accessor :balance |
|
With HTTP, the _______ sends a question to the _______, which then processes the request and sends a response back. |
client, server
|
|
Armando states that the web is fundamentally:
|
request/reply oriented
|
|
Which HTML attributes can be used to identify an element or group of elements to apply a
common set of visual styles? |
id & class
|
|
In the MVC pattern, the _______ handles the
visual aspect of the app. |
view |
|
Using the MVC pattern means each entity in your app will have its own:
|
model, controller, and set of views
|
|
Every model knows how to _______ itself in an
ActiveRecord. |
CRUD |
|
In Rails, models store their data in a _______. |
relational database
|
|
What alternative pattern did Armando present that didn't require the storage medium to be a relational database? |
DataMapper |
|
Models in the Rails MVC world are stored as _______ in the relational database. |
tables
|
|
'PUT /movies/:id' is an example route for which CRUD action?
|
Update
|
|
The idea of REST is that URI's are thought of as _______ instead of pages.
|
resources |
|
Rails routing allows for URI's to be mapped to a _______. |
controller action (method) |
|
True/False |
True |
|
Metaprogramming, according to Armando, is _______.
|
All programming in Ruby |
|
In Ruby, method_missing (if defined) would be passing the _______. |
method name symbol, and arguments |
|
According to Armando, what is the preferred way to print out all the elements of an Array in Ruby, assuming an Array names arr has been defined?
|
arr.each do |elt| puts elt end |
|
Where would a programmer look to find the assumptions that can be made for the Enumerable class? |
In the documentation |
|
Which method definition could be used in order to compare two objects (sheep1 and sheep2) of the Sheep class in the following way? |
class Sheep include Comparable def <=>(other_sheep) # implementation end end |
|
Blocks are _______ in which they carry their environment around them. |
closures |
|
While using test-driven development, tests are written _______. |
before writing the code they test |
|
Which of the following breaks the principle of FIRST? |
Running your test 5 times gives you a different result each time. |
|
In Rails, what is the primary function of ActiveRecord? |
to connect the model to the database |
|
How long does a message in flash() persist for?
|
the end of the next request
|
|
Which RESTful route and HTTP verb would edit_movie_path correspond to? |
GET movies/:id/edit |
|
Creating a resource, such as a new movie, requires which two interactions? |
new and create |
|
Which rails helper method would allow you to redirect a user to a more useful page after a
create action? |
redirect_to |
|
The preferred method to make any changes to the database schema in a Rails app is _______.
|
a migration
|
|
Rails gives you a database per _______.
|
environment (development, test, production) |
|
Which one of these is NOT a classic technique of debugging? |
coding invariants |
|
Knowing how to read error messages can save you hours of time and effort. Whatis most likely the cause for the following error message: 'undefined method 'foo' for nil:NilClass'? |
An assignment silently failed, and you didn't error check. |
|
True/False Assuming we have a model called User and we call User.new, the database table users is automatically updated with a new record. |
False |
|
In MVC architecture, which two entities should contain as little 'business logic' as possible? |
View and Controller |
|
We use 3x5 cards for User Stories because they are _______.
|
nonthreatening |
|
True/False Development. |
False |
|
What does the 'R' in SMART User Stories stand for? |
Relevant
|
|
When developing user stories, you consistently want to ask _______.
|
'Why?' |
|
Lo-Fi UIs are usually done on _______. |
pen and paper |
|
Whether movies are sorted in chronological order or alphabetical order is an example of a _______. |
implicit scenario |
|
True/False Declarative scenarios focus attention on steps needed to set up the test. |
False |
|
Of the following, the most vital part of the Agile Methodology is _______.
|
Testing |
|
A user story in the format of:
"As a [stakeholder] So that [I can achieve some goal] I want to [do some task]" is called _______. |
connextra format |
|
True/False Keeping track of your team's velocity helps you estimate how many user stories you can complete in an iteration? |
True |
|
Approximately how long would it take to draw a LoFi UI sketch for RottenPotatoes? |
five minutes |
|
What types of tests does Cucumber help you cover? |
All of the above Integration Regression Acceptance |
|
Cucumber takes a user story and uses _______ to match English phrases to your ruby test code. |
regular expressions |
|
True/False |
True |
|
A user story describes a _______.
|
customer's need |
|
True/False Cucumber and Behavior Driven Design are intended to test the code you wish you had. |
True |
|
Which of the following describes the TDD cycle? |
Red-Green-Refactor |
|
A place where you can change your application's behavior without changing the code is _______. |
a seam |
|
True/False |
True |
|
Which of the following is an assert statement using rspec? |
should |
|
True/False The assigns() method lets us ask the question: "Does this instance variable exist in the view, and if so, what is its value?" |
True |
|
True/False You can use and_return to optionally control the params[] hash. |
False |
|
True/False A reason to use a fixture is because it introduces a dependency on the fixture data. |
False |
|
How do you decide to use the RSpec function context or describe? |
use whichever one makes the test more readable |
|
Requirements that are assumed, or hidden within documentation, are called _______. |
implicit requirements |
|
Which of the following is not a test term?
|
DRY Testing |
|
Suppose we ran the following method: post :search_tmdb Which method would allow us to access the controller's response object? |
response() |
|
True/False A fixture allows you to create an object inside of a test which will be destroyed after the test has completed. |
False |
|
Out of the following levels of code coverage, which of the following is the most difficult to obtain in practice? |
C2 |
|
True/False Current good practice suggests you should avoid writing more lines of test code than actual application code. |
False |
|
True/False Both Agile and Plan-and-Document approaches to software design do the same things while testing, but the order in which they are done is different. |
True |
|
Which of the following are examples of information design docs? |
LoFi UI mockups user stories archived email commit logs |
|
Which of the following is a reason legacy code is still in use? |
Legacy code still meets a customer's need. |
|
Characterization tests help to establish a _______. |
ground truth |
|
Which of the following are quantitative measurements of code complexity? |
software metrics |
|
Which of the following are structural characteristics of source code not readily captured by metrics? |
code smells |
|
Which of the following is a reason why lots of arguments are bad? |
hard to get test coverage hard to mock/stub while testing |
|
Which acronym identifies the four particular smells that are symptoms of other problems that you can often fix by simple refactoring?
|
SOFA |
|
True/False The goal of exploration is to understand the app from only the developers point of view. |
False |
|
True/False Most refactoring will never cause existing tests to fail. |
False |
|
As described in the lectures, which of the following are ways Agile can help with Legacy code? |
Exploration Refactoring Improve Coverage |
|
One way to capture the important information about the database schema and identify the important classes as you learn it is with _______. |
Class-Responsibility-Collaborator Cards |
|
True/False A goal of refactoring is fixing problems with the structure of your code. |
True |
|
The "takeaway lesson" to be learned from refactoring is... |
Refactoring is the second draft of your code. |
|
True/False It is a good idea to throw out your code and start over because it's too hard to refactor. |
False |
|
A good method... |
is like a good news story |
|
A design review is a meeting where authors present their design with the goal of _______. |
quality |
|
Which of the following are guidelines for making a meeting effective? |
Start and stop meeting promptly Record minutes so everyone can recall results Create the agenda in advance Set the time and date of the next meeting |
|
You should always _______ before merging. |
commit |
|
In order to make changes necessary to implement a particular feature without affecting the master branch the developer should create a _______ branch. |
feature |
|
Which Git command allows the developer to only merge the changed from specific commits? |
git cherry-pick |
|
Before a bug fix can be released the bug must be _______. |
reported reproduced demonstrated in a regression test repaired |
|
Jeff Bezos, CEO of Amazon, coined the _______ characterization of team size. |
two-pizza |
|
Which of the following questions are asked at daily scrums? |
What have you done since yesterday? What are you planning to do today? Are there and impediments? |
|
Which role of a Scrum acts as buffer between the Team and external distractions? |
ScrumMaster |
|
Iteration is to Agile as _______ is to Scrum. |
sprint |
|
When measuring productivity, the average number of points per iteration is called the _______. |
velocity |
|
The _______ Tracker tracks user stories and velocity. |
Pivotal |
|
True/False You want to ensure comments make sense in a code review. |
True |
|
True/False Good version control practices are more important for individuals than for teams. |
False |
|
True/False Like a real tree branch, repo branches can't be merged back into the trunk. |
False |
|
True/False |
False |
|
True/False A feature branch is not needed when you only need to make a simple change on the master branch. |
False
|
|
True/False When using Scrum team members stay within one role for all sprints. |
False |
|
Which of the following are the two overarching principles of good object-oriented design that inform most of the patterns |
Prefer Composition and Delegate over Inheritance Program to an Interface, not an Implementation |
|
Which behavioral pattern encapsulates an object whose behavior differs depending on the internal state the object is in? |
State |
|
Which acronym is used as the guidelines for making your class architecture DRY and maintainable |
SOLID |
|
An _______ is a piece of code that seems to want to be expressed in terms of a well-known design pattern, but isn't. |
antipattern |
|
Design smells apply to _______ between classes. |
relationships |
|
_______ describes the structure of a system. |
Structure diagrams |
|
Timing diagrams are a specific type of _______. |
interaction diagram |
|
Which of the following is a group of variables that are passed together as arguments to a method?
|
data clump |
|
The OCP states that classes should be _______ for extension. |
open |
|
Which principle states "Talk to your friends -- don't get intimate with strangers."? |
Demeter Principle |
|
When something "wishes it had access" a feature managed by a different class it is said to have _______. |
feature envy |
|
True/False Adapter, Proxy, and Singleton are all structural patterns. |
False |
|
True/False Design smells are warning signs that your code may be headed towards an antipattern. |
True |
|
True/False SRP states that a class should only have one responsibility. |
True |
|
True/False A OCP violation occurs when we want to add behaviors to an existing class and discover that we must modify that class to do so. |
True |
|
True/False SOLID principles are not needed in dynamic languages. |
False |
|
True/False A UML Class Diagram is responsible for showing the relationships between object state and state change protocols. |
False |