软件开发的复杂度,往往随着需求的增加而成指数增长。其关键原因,首先在于软件需求的无形性intangibility,而这也正是软件领域南加州大学教授Boehm博士所提出的IKIWISI Ill Know It When I See It现象等我看见才能知道。换言之,许多人必须等软件编程后,才能确定是否满足需求。因此当需求越多,往往会牵一发而动全身而越难修改。另一方面,当软件愈庞大,软件开发越需要众人合作;而软件愈成功,软件生命周期则会越长。这种需要多人长期合作的工作,若没有一套工程化的程序与管理办法,软件势必走向失败。
本书采用漫画的表达形式,根据作者长期从事软件开发和管理的经验,从软件开发的需求出发,有重点地介绍了软件工程开发中遇到的问题及解决方案。
周忠信,中国台湾籍,1962年出生,博士。2002年7月至2004年6月担任浙江大学计算机系教授;2004年7月至2005年12月担任台湾鼎诚资讯总经理;2006年1月至今历任台湾鼎新资讯整合事业群总经理、技术长、鼎捷软件研发总裁。周忠信先生长期专注于公司信息系统的研发工作,作为发明人,拥有发明专利5项。在国际着名期刊和会议上发表论文近百篇,包括《Journal of SYSTEMS and SOFTWARE》、《IEEE SYSTEMS Journal》、《INTERNATIONAL Journal of Advanced Manufacturing Technology》等,其中被引用次数超过上百次。
徐志摩的散文里说道数大,便是美,但在软件领域里却是数大,便是难。
软件开发的复杂度,往往随着需求的增加而成指数增长。其关键原因,首先在于软件需求的无形性intangibility,而这也正是软件领域著名的南加州大学教授Boehm博士所提出的IKIWISI Ill Know It When I See It现象等我看见才能知道。换言之,许多人必须等软件编程后,才能确定是否满足需求。 因此当需求越多,往往会牵一发而动全身而越难修改。另一方面,当软件越庞大,软件开发越需要众人合作;而软件越成功,软件生命周期则会越长。这种需要多人长期合作的工作,若没有一套工程化的程序与管理办法,软件最终势必走向失败。
上述这些议题很难在课堂上显现,因为一般的课程时间比较短,软件生命周期问题很难显现,同时大学课堂也很难接触真正的大型软件开发。因此,在学习软件工程时,实在难搔到软件开发的痒处。为了帮助大家更能体会软件工程的挑战,本书整理了过往30个软件工程案例,并以漫画形式呈现。希望可以帮助所有软件相关人员体会软件工程的重要,同时更能避开软件开发误区从而走向成功。
周忠信