ISE · Introduction to Software Engineering

Chapter 01 · Software Development Challenges

10 questions

The answers are not shown on this page. Use the questions to revise, then check yourself with the self-check quiz at the end of the slide deck.
  1. Question 1

    According to Brooks, turning a program into a programming systems product costs roughly how much more effort?

    • The same effort
    • About twice
    • About three times
    • About nine times
  2. Question 2

    Which of these is an accidental difficulty rather than one of Brooks's four essential difficulties?

    • Complexity
    • Conformity
    • Slow compilers and poor tools
    • Invisibility
  3. Question 3

    Where was the term "software engineering" popularised as an answer to the software crisis?

    • At the 1968 NATO conference in Garmisch
    • In the Agile Manifesto of 2001
    • In the first SWEBOK Guide
    • In the Ariane 5 inquiry report
  4. Question 4

    A team grows from 5 to 10 members. Using n(n-1)/2, how do the communication paths change?

    • From 10 to 20
    • From 10 to 45
    • From 25 to 100
    • From 5 to 10
  5. Question 5

    int timeUntilStart(...) used to return hours; a teammate changes it to return minutes, and the caller still checks "< 24". Which change lets the compiler protect the caller?

    • Add a comment saying the unit is now minutes
    • Return std::chrono::minutes and compare with 24h
    • Rename the variable in the caller
    • Return a double instead of an int
  6. Question 6

    Why is it cheaper to find a misunderstood requirement in a review than after release?

    • Reviews need no people
    • After release, design, code, tests, data and user habits built on it must be found and redone
    • Requirements may not change after coding starts
    • Released software cannot be changed at all
  7. Question 7

    A service promises 99.9 % availability. About how much downtime per year does that allow?

    • 52.6 minutes
    • 8.76 hours
    • 3.65 days
    • 87.6 hours
  8. Question 8

    The same email check is copy-pasted into registerStudent and addMember. In the technical debt metaphor, what is the interest?

    • The time it took to write the first copy
    • The extra effort and risk on every later rule change, which must be made in every copy
    • The licence cost of the compiler
    • The memory used by the duplicated code
  9. Question 9

    What does static_cast<std::int16_t>(40000.0) have in common with the Ariane 5 failure?

    • Nothing, 40000 fits in 16 bits
    • The value is outside [-32768, 32767], so the conversion overflows, like the horizontal bias did
    • It is slow, and Ariane 5 failed because of timing
    • It only drops the fractional part, which is harmless
  10. Question 10

    In an ITC Club Hub team, who represents the client and decides the order of the product backlog?

    • The Scrum Master
    • The Product Owner
    • The tester
    • The DevOps engineer