Granular computing is not only a computing model for computer-centered problem solving, but also a thinking model for human-centered problem solving. Some authors have presented the structures of such kind models and investigated various perspectives of granular computing from different application points of views. In this paper we discuss the architecture of granular computing models, strategies, and applications. Especially, the perspectives of granular computing in various aspects and phases of software engineering are presented, including requirement specification and analysis, system analysis and design, algorithm design, structured programming, software testing, and system deployment