以下这些内容,是我这些年来的兴趣所在:
1. 软件需求过程
软件开发中最难的部分是确定需求。需求是一项社会工程。
博学多才的需求分析师再加上得到良好理解的需求过程,一定能找到正确的、创新的需求,实现产品在构建前的品质。
2. 软件测试与自动化
按传统软件工程理论,测试占到开发工作量的50%。而在软件投入使用后的维护和升级工作中,还有不少于一半的工作量要花在测试上。如何降低测试成本,是提高软件质量、解决软件危机、降低软件总体拥有成本的关键。
3. 彩色UML建模与特征驱动开发
哪一种建模方法让许多接触它的人觉得“一旦拥有,别无所求”?哪些大型项目会把UML建模作为项目成功的主要因素之一?彩色UML建模方法让我们了解了这样一种方法和这样一群人。特征驱动开发是敏捷方法学的一种,和其他多数敏捷方法学不同,它声称可以复制成功,而且可以很好地适应大型开发项目(如50人15个月的银行项目)。特征驱动开发与彩色UML建模相映生辉。
4. 持续集成
日构建是微软最值得称道的开发实践之一。持续集成让客户、管理层和项目成员了解真实的软件进度,避免交付期临近时让人崩溃的压力。持续集成是诸多软件开发最佳实践的集中体现。
5. SOA
个人、团体和大型企业都在向其客户提供服务,同时从供应商处消费服务。全球化让我们能够在更大的范围内选择质优价廉的服务。SOA首先是公司治理理念的体现,然后是业务与IT的密切配合。向SOA迁移是企业决策层首要考虑的问题之一,也是企业员工需要明白的趋势。
6. 敏捷开发方法学
敏捷开发方法学是业界顶尖思想家赠予我们的财富。它包含的内容彻底改变了业界对软件开发的认识。在经过多年的实践之后,这些方法学得到了很好的检验,足为我们所效法。
7. 过程改进与CMMI
如果你只想学一个日语单词,那我推荐“Kaizan”,它的意思是“持续改进”。反思和持续改进是取得成功的唯一途径。CMMI为我们提供了一个框架,指出了在提高软件能力的过程中,那些需要持续改进的领域。
8. UML建模
做软件就像开车,你不能设定好一个方向就一直往前冲。模型就像地图,没有它会有麻烦。建筑业、制造业都有丰富的建模经验,设计师基本上都是在和模型打交道。软件业还年轻,建模还不是那么受到重视和流行。一旦掌握了建模的三昧,定然有“向来枉费推移力,此日中流自在行”的感觉。
9. 软件配置管理
版本控制/配置管理是绝大多数开发项目都会执行的一项日常实践,而且它与需求管理、自动化测试和持续集成等实践关系密切。在这方面的一点改进,都会为软件开发带来可观的收益。
10. 软件复用
复用是实现令人满意的效率和品质的唯一途径。SOA的一个目标就是促进企业中的软件复用。要让复用成为企业文化的一部分,必然需要知其当然,不惧困难,而徐为之图。
1 条评论:
什么时候讲?在哪里讲
发表评论