Constraint-Based Design Recovery For Software Reengineering by etc. & Steven G. Woods