analysis decoupling and testing