I have found the answers in the Course Notes.

Question 1

From the course, what are the viewpoints to achieving better software?

  • The right product, done right, and managed right.
  • The right product, the right timing, and the right funding.
  • The right product, the right client, and the right developers.
  • The right product, the right process, and the right people.

Answer

One viewpoint aims to provide the right software product for the clients. A second viewpoint aims to have the software product done right. A third viewpoint aims to have the software project itself managed right.

To achieve better software, one viewpoint aims to have the right product. What does having the right product mean?

Question 2

  • The product functionality does not have defects.
  • The client is satisfied that the product meets their needs.
  • The product conforms to the specified requirements.
  • The developers are satisfied with the product.

Answer

That is, it meets their needs, solves their problem, and they are happy with it.

Question 3

When we have the right software product, we say the software product is ____.

  • validated
  • verified
  • certified

Answer

One viewpoint aims to provide the right software product for the clients. That is, it meets their needs, solves their problem, and they are happy with it. That is, the software product is validated.

Question 4

To achieve better software, another viewpoint aims to have the product done right. What ways can developers achieve that? Choose two of the following:

  • Developers request a list of requirements from the client.
  • Developers show the product to the client to see if it meets their needs.
  • Developers run tests to check whether the product conforms to the specified requirements.
  • Developers review the requirements so that they are clear and consistent.

Answer

A second viewpoint aims to have the software product done right. The software implementation conforms to a specified design, and in turn, the design satisfies a stated set of requirements. Developers can conduct reviews and tests to ensure the requirements, design, and implementation line up and do not have defects. That is, the software product is verified.

Question 5

What is the primary agile principle that can lead to better software products and project success?

  • Working software is delivered every six months to allow time for more changes.
  • The customer is satisfied with the early and continuous delivery of valuable software.
  • Information is conveyed effectively in the development team through instant messaging.
  • The best designs emerge from teams that follow a visionary leader.

Answer

Early and Continuous Delivery: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

Question 6

The Manifesto for Agile Software Development puts more value on:

  • individuals and interactions, working software, and following a plan.
  • working software, customer collaboration, and processes and tools.
  • customer collaboration, responding to change, and comprehensive documentation.
  • responding to change, individuals and interactions, and working software.

Answer

Four core values define the Agile philosophy for software development.

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Question 7

When the Manifesto for Agile Software Development says it values responding to change over following a plan, it means

  • plan for change for more value.
  • plans can change, so they have less value.
  • changing plans are valued more.
  • responding to change is valued more than following a plan.

Answer

  • Responding to change over following a plan

Question 8

As an Agile principle, what is harnessed for the customer’s competitive advantage?

  • simplicity
  • change
  • valuable software
  • motivated individuals

Answer

Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.

Question 9

What does a software process organize?

  • It organizes how software operates on information in distinct phases.
  • It organizes how the work of people is assisted with software to develop products.
  • It organizes how software products help people to do work in phases.
  • It organizes how the work of people happens in distinct phases to develop a software product.

Answer

A process organizes the work of people into distinct high-level phases or stages to develop a software product.

Question 10

In this specialization, what are software requirements?

  • They are specific descriptions of what your client wants.
  • They are specific descriptions of what your client needs in order to run the software.
  • They are specific hardware that the software needs to run.
  • They are specific descriptions of your client’s needs.

Answer

In software, requirements are a set of specific descriptions to help capture your client’s needs.

Question 11

Clear expressions of software requirements are important to help _____.

  • avoid confusion between the client and developers
  • the client express themselves clearly
  • ensure the software requirements are legible by those with poor eyesight
  • produce transparent effects in the user interface of a software product

Answer

Clear requirements are important. Ambiguous requirements can create confusion among the development team and with the client. Avoiding confusion is an important part of the software product manager’s role.

Question 12

Planning initially involves using information from ___ for developers to devise needed tasks and make time estimates.

  • requirements
  • calendars
  • schedules
  • delivery targets

Answer

Planning involves organizing tasks and schedules to align software development activities with requirements, in order to make timely progress through the phases of the development process.

Question 13

What are direct benefits or outcomes of using planning?

  • risks are managed; plans are fixed; tasks are assigned
  • requirements are defined; task times are estimated; tasks are assigned
  • risks are identified; risks are monitored; overcommitment can be avoided
  • tasks are determined; tasks are assigned; schedules are created

Answer

Planning involves organizing tasks and schedules to align software development activities with requirements, in order to make timely progress through the phases of the development process. Creating tasks and schedules requires identifying who should do the work, and estimating how long that work will take.

Question 14

You need to effectively monitor, analyze, and review the progress of your project, so you:

  • monitor velocity to help in continuously adjusting plans.
  • use your gut feelings to assess the project status.
  • can boost morale before crunch time comes.
  • track ongoing work to ensure management knows the status.

Answer

When things change in the project (and they will change), it’s important to have an idea of what’s going on in the project, so that you can deal with these changes as effectively as possible.