A system for program analysis and its application as a tool for software development and program transfer