What is Software Engineering? (Part 2)#
Knowledge Check Questions#
True or False: Software is sustainable when, for the expected life span of the code, we are capable of responding to changes in dependencies, technology, or product requirements.
The distinction between programming and software engineering lies in managing code over _____________, its impact on scale, and decision-making in the face of these constraints.
True or False: The scalability of policies do not impact human or resource costs as projects and teams grow.
Expertise in software engineering is particularly effective when combined with:
A. Economies of scale
B. Subjective judgment
C. Policies
D. All of the above
True or False: Decisions should only be based on data (e.g., not assumptions, precedent, etc.).
True or False: Being data-driven over time implies the need to change directions when the data changes (or when assumptions are dispelled).
True or False: When an organization performs recurring tasks, the human effort required should increase at most linearly (or decrease) as the task volume grows.
Your project is sustainable if, for the expected life span of your software, you are capable of ___________ to whatever valuable change comes along, for either technical or business reasons.
Good software engineering decisions are about weighing all of the available inputs and making informed decisions about the:
A. Trade-offs
B. Costs
C. Benefits
D. Risk
Software engineering is programming _______________ over ____________.
If the software is capable of responding to changes in dependencies, technology, or product requirements, it is said to be _______.