Taxonomy of CAD branching use cases. A dashed black border indicates that the use case is not an intended function of branching tools, instead branching is used as a workaround for another desired task. Consistent with our definition of use case in Sec. 2.1, each of the 11 use cases represent a distinct branching purpose that does not overlap with another, though a single branch could fulfill multiple use cases simultaneously.

Taxonomy of CAD branching use cases. A dashed black border indicates that the use case is not an intended function of branching tools, instead branching is used as a workaround for another desired task. Consistent with our definition of use case in Sec. 2.1, each of the 11 use cases represent a distinct branching purpose that does not overlap with another, though a single branch could fulfill multiple use cases simultaneously.

Source publication
Preprint
Full-text available
Branching is a feature of distributed version control systems that facilitates the ``divide and conquer'' strategy present in complex and collaborative work domains. Branching has revolutionized modern software development and has the potential to similarly transform hardware product development via CAD (computer-aided design). Yet, contrasting wit...

Context in source publication

Context 1
... name of Designer Support was adapted from Developer Support to describe CAD users more accurately. Figure 3 shows the final taxonomy. To provide additional insight on designers' use of branching for CAD, we summarize the prevalence of use cases mentioned in the online forums, displayed in Figure 4. ...