Identify possible risks that could arise in software projects.
Relevant/irrelevant risks are listed below.
1. Technology: Communications network saturates before expected transaction limit
is reached.
2. People: Level of skill of available people is lower than expected.
3. Organizational: Organizational changes mean that the project schedule is
accelerated.
4. Tools: Software tools cannot handle the volume of data available for large
systems.
5. Requirements: New non-functional requirements are introduced that require
changes to the system architecture. Estimation: The difficult of the software is
underestimated.
Please circle the most comprehensive answer:
Explain why program inspections are an effective technique for discovering errors
in a program.
Program inspections are effective for the following reasons:
1. They can find several faults in one pass without being concerned about
interference between program faults.
2. They bring a number of people with different experience of different types of
errors. Hence. the team approach offers greater coverage than any individual can
bring.
3. They force the program author to re-examine the program in detail – this often
reveals errors or misunderstandings.
4. Inspections require additional costs during design and development.
5. Inspections are very effective in finding bugs.
Please circle the most comprehensive answer:
What is the most important difference between generic software product
development and custom software development?
Below is the list of correct/incorrect answers.
1. The essential difference is that in generic software product development, the
specification is owned by the product developer.
2. For custom product development. the specification is owned and controlled by the
customer.
3. For users of generic products. this means they have no control over the software
specification so cannot control the evolution of the product.
4. For users of generic products. it May limit the .customer's flexibility to change
their own business processes.
5. For users of generic products. this could have implications for the user's business
processes.
Please circle the most comprehensive answer:
Below is the list of correct/incorrect examples of software process activities that
help predict changes and make the software being developed more resilient to
change.
1. Recording of requirements rational so that the reason why a requirement is
included is known. This helps future change.
2. Requirements tractability that shows dependencies between requirements and
between the requirements and the design/code of the system.
3. Design modeling where the design model documents the structure of the
software.
4. Code refactoring that improve code quality and so makes it more amenable to
change.
Below is the list of correct/incorrect examples of software process activities that help predict changes and/or make the software being developed more resilient to change.
Extreme programming expresses user requirements as stories,
with each story written on the card.
Consider the advantages of this approach to requirements description.
Below is the list of correct/incorrect answers.
If you were developing a new software system you might use a model
of a system that already exists.
Possible reasons for using an existing system model may include: