TTU2 - New operation in tree numbering sheme

Issue: http://issues.qcadoo.org/browse/QCADOOMES-423

Current

1.
  1.1.
    1.1.1
      1.1.1.1
    1.1.2
    1.1.3
      1.1.3.1
        1.1.3.1.1
          1.1.3.1.1.1
          1.1.3.1.1.2

+ Was easy to implement.

+ Looks natural form small technologies with multiple splits.

- Large technologies which are mostly sequential look bad in this scheme.

For example:

1
  1.1
    1.1.1
      1.1.1.1
        1.1.1.1.1
          ...
           1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1

New concept

Add letter on split. Increment on sequence.

1.
 2.
  2.A.1
   2.A.1.A.1
   2.A.1.B.1
     2.A.1.B.2
 2.B.1
 2.C.1
   2.C.2
     2.C.3
       2.C.3.A.1
       2.C.3.B.1

+ numbers for sequential operations are much shorter

+ numbers for sequential technologies are more intuitive

- harder to implement

- adding a operation in the middle of the tree can change half of its numbering

- numbers for technologies with many splits are less intuitive

Sequential technology example:

1
  2
    3
      4
        5
          ...
            20

Generation rules

If the last number of the parent operation is 1 like previous_numbers.1:

  • and it has only one child operation, then the child operations number will be previous_numbers.2
  • and it has multiple child operations, then the numbers of the child operations will be: previous_number.1.A.1, previous_number.1.B.1, previous_number.1.C.1, ...