liuem  

随笔分类 -  软件工程

软件工程,项目管理方面的知识和经验总结
  • 需求分析做什么
    摘要:需求分析实际上是业务分析,选择一种业务导向的线索将零散的需求串起来,形成一个体系完整、内容清晰的框架,以指导后续的设计和开发工作。需求分析方法 需求分析做什么呢?需求分析就是先分解,再提炼,在这个过程中消除矛盾。分解 分解是人类控制复杂性,认识复杂事物的最佳实践,无论采用结构化分析方法还是面向对象分析方法,分解是必然采用的手段。 常见的分解方式: 1、业务流程为主线索的分解结构:按“事”的角度进行分解,目标系统-主题域-业务事件-报表类型; 2、程序结构为主线索的分解结构:目标系统-子系统-功能模块-子模块-功能点,最常用的一种分解方式; 3、基于数据的分解结构:以数据位主线的... 阅读全文
    posted @ 2013-06-06 10:28 弈名 阅读(1945) 评论(0) 推荐(0)
  • 需求变更管理
    摘要:需求变更频繁在困扰软件开发团队问题中排名第一,实际工作中不乏先例。《软件需求最佳实践》中“需求变更操作实务”讲到了如何管理需求变更,简单梳理一下。、基本理念 需求变更来源主要有两种:一是捕获信息不全面,分析结果不正确;二是世界变化快,业务需求发生了变化。对于算量产品而言,前者占80%以上,所以做好自己,管好自己更重要些。 管理需求变更的目标不是避免变更,而是控制变更。控制变更的意义在于减少变更对开发工作的影响。 如何控制需求变更呢?有两个方面的工作:统一渠道(变更管理委员会)、统一平台(变更管理系统)。之前一直没有做好需求变更工作,一是没有统一渠道和统一平台,二是没有做好需求变更的甄... 阅读全文
    posted @ 2013-04-26 09:21 弈名 阅读(2174) 评论(0) 推荐(0)
  • 需求基线管理
    摘要:需求基线管理是需求管理活动中最基础的一个,《软件需求最佳实践》中有所阐述,结合实际工作梳理一下。 什么是“需求基线”?在某个特定版本中实现的功能性和非功能性的一组需求集合。引入需求基线后,意味着要采用分阶段或迭代的开发方式。这和敏捷开发中“风险前移”、“分阶段交付”、“小步快走”、“中途回顾”等理念是相契合的。 需求项划分应以业务驱动划分标准,因为业务主题,业务流程和业务活动相对于具体的软件需求而言是稳定的。划定基线应采用“早基线,晚冻结”的方式,具体细节可以在迭代中逐步完善。需求项优先级评定 优先级应先从业务角度划分优先级,要把它放到业务场景和业务流程中考虑。一般可分以下四级:关键... 阅读全文
    posted @ 2013-04-22 18:43 弈名 阅读(5836) 评论(0) 推荐(1)
  • 【Manage It】之保持项目节奏
    摘要:项目经理不仅要用管理实践掌控项目,还需要通过技术实践来改变团队,从而获得更大收益。持续集成 开发人员用1,2个小时编写一段代码,进行编译、测试、复查、构建、允许冒烟测试,再迁入到代码库中,持续集成就这么发生了。 若将任务拆分成更小的任务,持续集成可以让开发人员在一个很短的周期内马上得到工作反馈,尽早识别出项目集成的风险。自动化冒烟测试 冒烟测试仅仅是为了验证构造出来的版本基本上没有问题。按功能实现,而不是按架构 按架构实现会因为完成的都是部分功能,不是完整的功能,而大量项目的节奏。按功能实现只要针对某个功能的要求利用架构做好实现就好了。 在按功能实现时,要优先实现最有价值的功能,... 阅读全文
    posted @ 2013-02-06 14:12 弈名 阅读(239) 评论(0) 推荐(0)
  • 【Manage It】之掌控项目
    摘要:掌控项目意味着要寻找风险和管理风险。通过组织项目来发现它的节奏,任何扰乱节奏的事情都是已出现的风险,任何可能扰乱节奏的事情就是潜在的风险。 仪表盘可以定性或定量的度量项目的真实状态,通过仪表盘项目经理可以决定如何把握项目的方向。掌控项目的节奏 观察节奏是项目经理的职责,关注那些能帮助项目建立并维持合理节奏的实践。节奏是项目管理的重中之重! 举例说明了一些打乱节奏的问题:1、不知道先完成哪些需求;2、需求收集阶段持续过长;3、GUI发生变化时扰乱了正常的开发秩序;4、没有架构的整体描述;5、人员不能及时到位;举行中途回顾 想了解项目发生了什么,同时为未来做规划,回顾活动是一种出色的方... 阅读全文
    posted @ 2013-02-06 13:06 弈名 阅读(257) 评论(0) 推荐(0)
  • 【Manage It】之安排项目日程
    摘要:对于项目而言,规划和日程安排两者不可或缺。 日程安排和工作估算是两种不同活动:日程安排要安排任务的顺序,展示它们之间的依赖关系;工作估算要猜测某个任务花费的时间。但两者之间也有关联:如何安排日程要依赖于估算的结果。 日程安排和生命周期有一定的关系。生命周期是项目的模型,让别人看到项目是如何组织的,生命周期可以作为日程安排的指导方针,但并不是严格的限制条件。 日程安排技巧自顶向下式日程安排:通常从设置里程碑开始,再制定支持里程碑的任务,根据需要逐层细化任务;自底向上式日程安排:若使用增量式生命周期,这种方式不错,“先实现这个功能,然后实现这些功能,接下来再......”由内而外式日程安... 阅读全文
    posted @ 2013-02-06 12:45 弈名 阅读(405) 评论(0) 推荐(0)
  • 【Manage It】之估算工作
    摘要:项目工作量估算是进行项目日程安排的重要依据,如何准确估算需要有一定的经验和技巧。实用的估算方式通过对比历史数据进行估算;Delphi方式:第一步,向团队阐述项目事宜,每人写下任务列表和时间估算,注明预设条件;第二步,收集任务列表,进行复查,看哪些任务可以同时进行;最后整合所有时间,得到项目的整体估算;实用的估算技巧在顺序式生命周期下,避免在一开始就估算整个项目;“试探性开发”可以为估时提供实践意义上的数据;使用自信心或日期范围范围进行估算;使用三种日期进行估算:最佳状况、最有可能、“墨菲”日期。最佳状况日期是项目最早可能完成的日期;最有可能日期是增加了经验系数或缓存时间后的日期;“墨菲”日.. 阅读全文
    posted @ 2013-02-05 18:13 弈名 阅读(263) 评论(0) 推荐(0)
  • 【Manage It】之项目生命周期
    摘要:项目生命周期是团队和项目经理组织产品开发的方式。一旦踏上项目之路,没有哪种生命周期是完美无缺的,需要根据实际情况对它进行拓展,不时的修修补补。理解项目生命周期 项目生命周期是团队和项目经理组织产品开发的方式。定义需求、设计、开发、测试以及与这些工作同时进行的过程,都算是生命周期的一部分。 不... 阅读全文
    posted @ 2013-02-04 17:05 弈名 阅读(664) 评论(0) 推荐(0)
  • 【Manage It】之项目规划
    摘要:项目规划是指制定带有发布条件的项目计划,它的作用就是让项目启动起来,并让大家看到成功的希望! 艾森豪威尔曾曰过:“规划毫无用处,但制定规划必不可少!”项目有太多的风险和不确定性,一开始把所有情况考虑清楚难于上青天!所以需要采用时间盒的方式快速制定规划,让项目启动起来。在项目实施过程中不断评估项目的进程和风险,持续进行规划,才是掌控项目的王道。 项目规划最重要的产出就是项目的发布条件,它规定了项目“完成”的含义,为产品或服务是否可以发布提供了客观的评价标准。在项目的推进过程中,不断的检视发布条件可以尽早发现风险信息。为了消除这些风险,可以不断调整管控措施,也可以在多方达成一致的前提下调整... 阅读全文
    posted @ 2013-01-13 23:01 弈名 阅读(335) 评论(0) 推荐(0)
  • 【Manage It】之启动项目
    摘要:《项目管理修炼之道》是一本获得Jolt大奖的书籍,粗读一遍后感觉很好,于是决定写这个【Manage It】系列,一方面梳理一下这本书的理论知识,另一方面结合这些年的工作经验好好总结一番。2013年作为提升项目管理能力的一年,就从这本书开始吧。基本概念什么是项目?为了创建新的产品或服务,需要完成的一个独特的任务。项目结束的标志是产品或服务的交付完成。项目都有风险,并受限于有限的资源。什么是产品?项目产生的一系列可交付物。什么是项目经理?负责向团队清晰说明完成的含义,带领团队完成项目的人。完成是指产品符合组织对产品的要求,也能满足客户使用产品的需要。 每个项目都有自己的独特之处,每个项目经理... 阅读全文
    posted @ 2013-01-07 22:25 弈名 阅读(286) 评论(0) 推荐(0)