《项目开发流程介绍》课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《项目开发流程介绍》课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 项目开发流程介绍 项目 开发 流程 介绍 课件
- 资源描述:
-
1、项目开发流程介绍PPT课件目录团队组建与项目计划团队组建与项目计划需求管理与配置管理需求管理与配置管理项目规范与软件设计项目规范与软件设计软件测试软件测试验收交付与过程改进验收交付与过程改进确定分组和小组分工确定设计项目所用的工具和技术制定系统开发计划了解团队在软件开发过程中的重要作用了解常见软件开发团队的角色和分工学会制定软件开发计划的原则、方法需要解决的问题假如,现在的你正在参加面试,面试官问你如下问题你能读懂项目计划么?你有过团队开发经验么?你能读懂需求规格说明书么?你对测试了解多少,会写测试用例么?你用Java/.NET做过中小型项目开发么?请你说说一个项目中都应该有哪些规范?你做过设
2、计么,如果做过谈谈这些设计吧?.项目的特征项目的一次性一次性是项目区别其他任务的基本特征项目目标的明确性成果性目标约束性目标项目的整体性项目是为实现目标而开展任务的集合,不是一项项孤立的活动1 1、项目的一次性。、项目的一次性。一次性是项目区别其它任务(比如:组装汽车)的基本特征。这意味着每个项目都有它的特殊之处,不存在两个完全相同的项目。2 2、项目目标的明确性。、项目目标的明确性。项目作为一类特别设立的活动有其明确的目标,一般由成果目标和约束性目标组成。其中,成果性目标是项目的来源(比如:给中国电信的一套计费系统);约束性目标又称限制条件,是实现成果性目标的客观条件(比如:项目开发过程中要
3、遵循国家法律法规)和人为约束目标(比如:项目组成员的去留和项目的最后期限)的统称,是项目实施过程中必须遵守的条件,从而成为项目实施过程中的主要目标。3 3、项目的整体性。、项目的整体性。项目是为实现目标而开展任务的集合,它不是一项项孤立的活动,而是一系列活动的有机组合,从而形成一个完整的过程。强调项目的整体性也就是强调项目的过程性和系统性。项目的属性是项目所固有的,是区别于其它活动的根本原因。常见的软件开发团队组织形式1 1、小型软件公司团队组织结构、小型软件公司团队组织结构2 2、微软公司团队组织结构、微软公司团队组织结构3 3、大型软件公司团队组织结构、大型软件公司团队组织结构第一种:第一
4、种:小型软件公司团队组织结构。如图1.7所示,在小型软件公司中,人员配置精简实用。由项目经理直接带领开发经理、质量保证工程师、开发工程师和测试工程师来完成项目。这种组织结构的好处在于分工灵活,但同时每个人也是一个“多面手”,例如,开发经理既要有很强的技术,也要有相应的管理经验;开发工程师除了进行程序开发,也要懂得数据库设计开发,并且要了解一些软件测试知识。而且通常是一个人担负多个角色,团队中的每个人几乎都要担负开发工程师和测试工程师的职责。第二种:第二种:微软公司团队组织结构。如图1.8所示,微软公司的团队组织结构可以说是相当完善了,这种组织结构中,各团队人员分工很细致,而且权责明确,人员之间
5、的接口明确。只是构建这种项目团队的成本太高。第三种:第三种:大型软件公司团队组织结构。如图1.9,这种组织结构中,人员配置比较齐备,计划/需求/设计/开发/测试/验收各个阶段都有专人负责。但同时人员组织分成了四层,给管理上增加了困难。建议采取的团队结构每小组45人小组所有成员都担任开发工程师和测试工程师职责每小组都设置一个项目经理(小组长)、开发经理(技术负责人)和一个质量保障工程师(负责版本控制工具CVS/SVN/VSS的使用)我们将采用第一种第一种,既小型软件公司团队组织结构小型软件公司团队组织结构。其中每个角色的职责定义为:项目经理(项目经理(PMPM,Project ManagerPr
6、oject Manager):项目负责人。一般来讲,项目经理的职责包括:承担责任;需求管理;协调、组织、解决团队问题;控制进度,获取并调配资源(分配任务);召集会议;做出决定;风险控制,解决危机;考核团队成员。在我们的毕业设计中,项目经理(小组长)要协调组织大家完成项目,定期检查大家的进度等。开发经理(开发经理(TTLTTL,Team technology LeadrTeam technology Leadr):技术负责人。一般开发经理的职责包括:架构设计(技术决策);参与需求管理;在技术上训练并指导团队;召集技术会议;组织团队培训;记录团队成员技能提升等。在我们的毕业设计项目中,开发经理要主
7、动帮助技术上有困难的同学,但不能帮他做。质量保证工程师(质量保证工程师(QA,QA,Quality AssessmentQuality Assessment):一般负责配置管理,有效地控制各种项目文档和代码当前版本的唯一性;按照发布计划获得并发布版本,提交测试;过程控制和质量保证等。开发工程师(开发工程师(SESE,Software EngineerSoftware Engineer):按照需求规格说明书的描述和项目规范开发程序代码,实现功能,修正开发过程中产生的缺陷。测试工程师(测试工程师(TETE,Testing EngineerTesting Engineer):根据需求规格说明书的描述
8、和项目规范对发布的版本软件进行黑盒测试,发现并报告软件缺陷,督促开发工程师修正缺陷。制定项目计划的二个原则有效追踪原则(任务点划分)对任务进行有效分解粒度适中(一般控制在13个人日)共同参与原则不是PM一个人的事共同估计工作量,并作出承诺财务管理系统 任务点划分费用管理 所有费用 增加收入 增加支出 费用类型 报销人 费用统计 用户管理 增加用户 登陆信息 画出“财务管理系统”用例图使用用例的方式准确描述“权限管理系统”需求使用CVS或SVN管理项目文档 前置条件:用户(包含普通用户和系统管理员)在系统首页输入用户名和密码。事件流:用户在系统首页输入用户名和密码,点击“登录”按钮时用例开始。.
9、后置条件:“会话”(session)中保存了已登录用户的信息及其拥有的权限。学会用例图的画法学会使用用例的方式描述软件需求学会使用静态原型法定义软件需求了解配置管理的概念和重要意义学会使用CVS/SVN进行版本控制为什么要做需求管理1 1、客户知道自己要什么,但表达不清。、客户知道自己要什么,但表达不清。有时候客户有自己的IT团队,这时候情况稍好,大家讲相同的“语言”沟通会相对顺畅。但很多时候,客户知道哪些数据和信息需要通过系统管理,需要系统给业务什么样的支持,但他们只能用自己行业的语言来表达。这时候首先需要我们对其行业和业务都要有一个理解,然后我们才可以设计信息系统,并给客户确认。任何一个具
10、有一定规模的信息化系统都会涉及很多人,很多岗位和角色。在调研的时候,对这些人我们都需要访谈。每个岗位都有自身的立场、眼界和利益,对系统需求的描述也会出现相左的情况。这也是需要权衡处理的。2 2、客户不知道自己要什么。、客户不知道自己要什么。有的时候,客户期望通过信息化系统提高企业的效率。但具体怎么做就了解不多了。这时候需要我们去主动地发掘需求,同时需要我们的行业经验来支撑。所以,我们要做需求管理。在软件生命周期中,计划完成后,第一项实质性的阶段就是需求阶段。在需求阶段结束的时候,我们需要得到一个准确的,经过客户确认准确的,经过客户确认的需求规格说明书需求规格说明书概念软件开发项目中用于明确定义
11、系统需求的文档。需求规格说明书的作用 开发者与用户间事实上的技术合同书 开发者下一步设计和编码的基础 测试验收目标系统的依据功能性需求:用来描述系统所应提供的功能和服务 系统功能输入输出异常非功能性需求:不直接与系统的具体功能相关的一类需求 安全性可扩展性响应时间1 1、功能性需求、功能性需求简单地说,功能性需求用来描述系统所应提供的功能和服务。包括系统应该提供的服务、对输入如何响应及特定条件下系统行为。对于用户需求(客户对系统的要求),用较为一般的描述给出;对于功能性的系统需求,需要详细地描述系统功能、输入和输出、异常等有时,功能需求还包括系统不应该做的事情。功能需求取决于软件的类型、软件的
12、用户及系统的类型等。系统的功能性需求应该具有全面性和一致性。全面性意即应该对用户所需要的所有服务进行描述,而一致性则指需求的描述不能前后自相矛盾。在复杂的大型系统中,做到这两点会有一定困难。但只有做到了这两点,才能保障我们项目的顺利进行。2 2、非功能性需求、非功能性需求非功能需求是指那些不直接与系统的具体功能相关的一类需求,它们与系统的总体特征相关,如可靠性、可扩展性、安全性、响应时间等,甚至包括界面易用程度和文档、代码规范性的要求。非功能需求定义了对系统提供的服务或功能的约束,包括时间约束、空间约束、开发过程约束及应遵循的标准等。它源于用户的限制,包括预算的约束、机构政策、与其他软硬件系统
展开阅读全文