Scan chain partition and reordering techniques are proposed to improve the diagnosis resolutions of scan chain single stuck-at faults. Scan chain partition separates a scan into two or more chains. Scan chain partition improves diagnosis resolutions by solving controllability problems and observability problems. Scan chain reordering changes the order of scan cells. Scan chain reordering improves diagnosis resolutions by breaking the continuous unobservable scan cells. Cluster-based reordering is supported to improve the scan chain wiring overhead. Experimental results shows the proposed techniques are effective.