第1章 软件开发策略
1.1 软件开发中的四维
任何软件项目,都有四个重要的维: people、process、product和technology。为使项目能顺利进行,软件经理必须充分发挥这四维的作用。下表是对这四维的总结。
表 1-1软件开发中的四维
维度 |
如何优化 |
People |
l 为团队挑选胜任称职的成员 l 选择合适的团队结构 l 使用恰当的人员激励措施 |
Process |
l 采用标准的软件工程实践,避免开发过程失控 l 做好风险管理 l 为项目选择合适的生命期模型 l 形成良好的质量保证机制 l 选择客户导向的开发方法,使开发的产品真正满足客户需求 |
Product |
l 较准确地估算product size(产品规模)和effort(工作量),以便制定出现实的进度安排 l 采取恰当措施防止软件开发过程中product size或product scope失控 l 为产品设定合理的product characteristic(如内存占用、稳定性、可靠性等)。 |
Technology |
l 选择恰当的、能确实提升生产率的工具(包括新的编程语言、新的开发实践、新的代码库等) |
许多软件经理倾向于只关注这四维中的某一维而忽视其它维度,而高水平的软件经理却努力做到同时优化项目的四个维度。
1.2 软件开发的总体策略
一个软件进行的软件项目应该遵循如下的4点策略:
1. Avoid classic mistakes. (避免典型错误)
2. Apply development fundamentals. (采用软件开发的基础性实践)
3. Manage risks to avoid catastrophic setbacks. (管理风险,以避免灾难性的结果)
4. Apply schedule-oriented practices. (采用面向进度的实践)
这4点策略可以用下图来形象地表示。
http://www.cnblogs.com/lijia821130/archive/2012/03/04/2379610.html
相关推荐
不多的几大国际知名自由软件之一。其目标是为实时嵌入式操作系统建立一个跨操作系统的、 快速、稳定和轻量级的图形用户界面支持系统。我们将MiniGUI定义为“针对嵌入式设备的、 跨操作系统的图形界面支持系统”,...
Java的跨平台特性是其最显著的特点之一。Java程序可以在任何计算机、操作系统和支持Java的硬件设备上运行。这意味着开发人员只需编写一次代码,就可以在多个平台上运行,大大提高了开发效率和应用程序的可移植性。 ...
为了克服这一问题,作为自学爱好者,我选择在下班后花时间学习新技能和新信息,以跟上软件开发领域的快速变化。 因此,我创建了这个存储库,不仅可以共享我所学到的知识,还可以向本笔记的贡献者学习。 如果您想为...
Monkey测试是Android平台下自动化测试的一种快速有效的手段,通过Monkey工具可以模拟用户触摸屏幕、滑动轨迹球、按键等操作来对模拟器或者手机设备上的软件进行压力测试,检测该软件的稳定性、健壮性。它的原理是向...
由于现在的快速开发工具的不断推出,使得软件开发越来越容易,进入软件开发的门槛也越来越低。很多人在IDE工具的诱骗之下,快的十天,慢的半个月就可以进入所谓“程序员”的领域,成了一个所谓的“程序员”。这对于...
++++++++搜索引擎ElasticSearch学习笔记++++++++ 注意:Github README文件编辑方法以及解决无法显示图片问题 修改hosts文件添加一下内容(C:\Windows\System32\drivers\etc\hosts) 199.232.68.133 raw....
VS2005 ASP.NET本地化学习笔记&感受 在自定义Server Control中捆绑JS文件 Step by Step 深度解析Asp.Net2.0中的Callback机制 使用 Web 标准生成 ASP.NET 2.0 Web 站点 ASP.NET 2.0基于SQLSERVER 2005的aspnetdb.mdf...
火龙果软件工程技术中心 续上篇,通过本文的学习,读者将能掌握:1会使用WebLogicWorkshop创建EJB应用;2学会使用EJBControl,用WebLogicWorkshop快速对相应EJB进行测试;类似的在Workshop上开发EJB的文章在dev2dev...
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。 拉里•埃里森 就业前景 从就业与择业的...
小助手系列助学软件之一。本软件借助语音库,可以语音阅读中文和英语文本。特别强化了英语助学功能,用户能够对其管理(修改增添),具有多种识记学习方式。中文字典、英汉词典、成语词典功能完善灵活可编辑。并提供...
在作业的完成过程中,学生可以参考各种资料,包括教材、学习笔记、开源项目等,通过实际操作来提高自己的技能水平。 此外,项目源码和教程也是毕业设计中重要的学习资源。学生可以通过阅读和理解优秀的项目源码,...
算法与数据结构涵盖了以下主要内容: 数据结构(Data Structures): 逻辑结构:描述数据元素之间...学习算法与数据结构不仅有助于理解程序的内部工作原理,更能帮助开发人员编写出高效、稳定和易于维护的软件系统。
有人说 Java 是互联网编程领域的语言之王,不管这种说法...本课程主要适用于为 Java 开发职位准备的软件开发人员。 【学习建议及前提】 在学习之前,我们假定你已经是一名初级 Java 程序员,对 Java 有最基本的了解。
文档大师,原名针式PKM是一款专业的个人文档管理软件,以个人知识管理理念作为指导。 提供和Everything一样快的文件名搜索、文档全文快速搜索、多种文档归类方法、公式等功能, 帮助用户更轻松养成“将文档内化为...
如何在配合销售部门给客户演示产品时用恰当的语言把公司的软件产品的优良特性展现给客户,让客户听能真正了解自己的需求,同时信赖我们的软件产品,进而选择和你合作,是作为一名技术部门的员工所必须要学习的课程。...
我们将以不断地进行软件地开发和完善来回谢大家 版本4.2.8更新时间:2007-10-28 可修改分类的图标 即时统计分类包含的文件数 增加主要操作功能相应的快捷键 日期视图扩展到“日” 版本4.0.1更新时间:2007-10-12 -...
16 第5章 系统使用说明 16 第1章 现行系统概述 随着社会经济的发展,人们对生活质量的要求越来越高,作为服务之一的宾馆业也在不 断的完善服务体制。它是集餐饮、住宿、娱乐于一体的立体化服务体系,其中顾客可以 ...
学习笔记,含博客讲解和源码实例,包括 Java SE 和 Java Web - 27天成为Java大神 Python - 30秒掌握Python实现的代码 - 以撸代码的形式学习Python - Python 学习示例 - 精选的Python框架,库,软件和资源的精选列