I know CC is counted at the code level to determine a set of basis paths (i.e. independent paths), the elements of which then can be combined to create any possible execution paths. In software testing, CC therefore determines the minimal number of test cases to exercise those paths and cover all edges and all nodes.
And now I wonder, does it make sense to look at an abstract flowchart of a software program and use CC to prepare high-level use/test cases?
Money Inserted? Y ---> Show Screen X N----> Show Screen Y-->RECEIPT REQUIRED? Y----> Show Screen A
So I would know I need at least 3 test cases (predicates +1).
But does it even make sense? To me, I believe it still can yield coverage of high level functionality (but of course cannot guarantee that the underlying code is exercised completely).