1. A method for hierarchically decomposing a two-terminal graph G into a process structure tree PST, the method comprising: parsing G into a tree T comprising triconnected components; finding all existing fragments from the triconnected components in T; restructuring T such that PST consists of restructured T, and transmitting PST to an output device of a computer system, wherein G is defined as a two-terminal graph that is a directed graph without self-loops such that there is at most one source node s of G, and at most one sink node t of G, wherein t≠s and each node of G is on a directed path from s to t, wherein a triconnected component of said triconnected components is a bond, a polygon, or a 3-connected graph, and each triconnected component determines a respective boundary pair comprising two boundary nodes, wherein the respective boundary pair determines a respective fragment F of G, wherein F is a connected subgraph of G that has said two boundary nodes as an entry of F and an exit of F, wherein PST is a tree of canonical fragments of G such that a parent P of a canonical fragment of said canonical fragments is the smallest canonical fragment of G that properly contains the canonical fragment, and wherein the canonical fragment is a fragment of a program that does not overlap with any other fragment of the program, and wherein the program is executable by a microprocessor.