Graph algorithms for systems design