pdfcoffee.com-systems…
Agile term indicating software development requiring the coordination of multiple systems (or subsystems) supported by multiple IT teams.
• Interdependence: This is the first of three functional requirements factors where agile and hybrid approaches make different assumptions and therefore reach different conclusions regarding BRUF. Interdependence refers to the degree to which different features or user stories depend on each other. When stories are interdependent, they need to be built (and, often, designed in detail using BRUF) in a specific order. o ^ Agile assumption: The “I- in the agile INVEST model Introduced in Chapter 4 argues that each user story should be independent. In other words, the various stories stand alone and thus can be built in any order. Because of this, agile assumes that making a change to a story late in a project has little or no impact on the stories already constructed earlier in the project. Thus it follows that the cost of making requirements changes remains nearly level, even late in the project. This is shown via the solid line at the bottom of the graph in Figure 5-13. This is a key reason why agile welcomes changes in requirements throughout a project. Hybrid assumption: In contrast, hybrid assumes that stories are interdependent—they tend to build on each other and therefore need to be constructed in a specific order. Further, the costs of requirements changes accelerate as development progresses. This is because changing requirements in a later story will force rework to all the earlier stories it depends on. This increases the value of documenting all requirements via BRUF, including their interdependencies. This is shown via the dashed line at the top of the graph in Figure 5-13.
Which of these is the correct assumption? Neither! Some product backlogs will be highly independent—for example, consider a project that creates twenty reports which all summarize data from the same existing database. These reports are likely to be highly independent: they can be created in any order, and changing requirements for one report (so long as that doesn’t change the underlying database) will not force changes in any of the others. On the other hand, consider a project in which we need to take in outside data, transform it to store it in our database, create some summary tables from the raw data, and then generate reports based on that summary data. Here the dependencies are clear: We have to build these in a specific order (the order they are listed in). Further, a change to the reports—say, to add a new piece of data—very well could require rework to all the previous stories. Also, note that interdependence within a project is somewhat similar to the interdependence between projects and teams described in the previous point, “Coordinating with other projects and systems.” In both cases, we need to increase BRUF to handle the interdependence.
Interdependence
The degree to which software features depend on each other and so must be built or designed in a particular order.
• • Clarity: This is the second of three functional requirements factors where agile and hybrid approaches make different assumptions and therefore reach different conclusions regarding BRUF. Clarity refers to the degree to which we understand two things: (1) current state, or the current business processes and software, and (2) future state, or the envisioned business processes and software after the project is delivered. You might wonder how a team could fail to be clear about its own existing business processes and software. There are many reasons for this. For example, it may be that business policies