- 1、本文档共70页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
项目开发涉及到大量人力、物力,为了使各种资源协同工作,充分保证项目开发质量,减少因质量问题所引起的开发延迟和投入运行后可能发生的大量维护费用,定义一个合适的项目研发流程显得尤为重要。其作用具体表现有:对项目组的内部管理有力,使工作有条不紊;项目组可以控制项目研发质量,提高研发水平。本章将介绍嵌入式系统项目开发的一些基本方法和原则,为读者进行嵌入式系统开发提供参考。 一个项目的开发要经历数个流程,需要合理安排,才能做到最终优质高效地完成项目的开发。根据不同的工程要求,研发过程采用不同的模型来展开,具体的模型有下面几种。 1. 线形顺序模型(瀑布模型) 模型概念:瀑布模型(Waterfall Model)是由W.W.Royce在1970年最初提出的软件开发模型,在瀑布模型中,开发被认为是按照需求分析、设计、实现、测试、集成和维护的顺序顺畅地进行。 模型特点:瀑布模型最早强调系统开发应有完整的周期,且必须完整地经历周期的每一开发阶段,并系统化地考虑分析与设计的技术、时间与资源投入等,因此瀑布模型又可以称为“系统发展生命周期”(System Development Life Cycle,SDLC)。 由于该模式强调系统开发过程需有完整的规划、分析、设计、测试及文件等的管理与控制,因此能有效地确保系统品质,它已经成为业界大多数软件开发的标准。 2. 迭代模型 迭代模型是RUP(Rational Unified Process,统一软件开发过程/统一软件过程)推荐的研发周期模型。在RUP中,迭代被定义为:包括产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布所必需的所有其他外围元素。所以,在某种程度上,开发迭代是一次完整地经过所有工作流程的过程,它至少包括需求工作流程、分析设计工作流程、实施工作流程和测试工作流程。实质上,它类似小型的瀑布式项目。RUP认为,所有的阶段(需求及其他)都可以细分为迭代。每一次迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。 3. 增量模型 增量模型是一种非整体开发的模型。该模型具有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。 增量模型和瀑布模型之间的本质区别是:瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节。而增量模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件。 4. 喷泉模型 喷泉模型的开发过程有分析、系统设计、软件设计和实现4个阶段,各阶段相互重叠。它反映了软件过程并行性的特点,以分析为基础,资源消耗成塔状。喷泉模型强调增量开发,整个过程是一个迭代的逐步提炼的过程。 5. 智能模型 智能模型也称为基于知识的软件开发模型,是知识工程与软件工程相结合的软件开发模型。其主要特点是必须建立知识库,并将模型本身、软件工程知识、特定领域知识放入知识库。其具体描述可以使用形式功能规约,也可以使用知识处理语言描述等。 嵌入式系统项目主要开发流程包括以下步骤:问题定义和可行性分析(预研报告、立项报告)→产品商标和型号→立项和计划→需求分析→概要设计(总体设计)→专利申请→详细设计→实现→测试→验收评审→版权登记→中试→试运行→申请证书→生产定型鉴定、开始批量生产→结题→维护。 其中,在几个主要步骤之间均需要进行审查。由项目外的专家组成审查小组对该项目的设计进行审核确认,如果有问题则返回进行修正后再进入下一个步骤。 10.1.1 需求分析 在开发一个嵌入式系统项目之前,首先要进行需求分析。需求分析是整个项目开发的基础,需求分析做得好,产品才能得到市场的认可,所开发的项目才有意义。 1. 需求分析的任务 对产品的需求(包括功能、性能、可生产性、可靠性、可维护性、可测试性等)进行定义,描述实现的初步考虑,对技术难点的解决方案制定实施计划和进一步的任务分解。 2. 需求分析的步骤 1) 获取用户的需求 这是需求分析中的第一项任务,也是最重要的一项任务。明确用户需要什么样的产品,包括产品的功能、性能、价格、尺寸、质量和功耗等,将需求细分为功能需求和非功能需求。对收集到的需求做进一步的分析和整理,然后将用户需求以文档及项目视图等方式呈交给相关人员,大家共同确认需求分析是否真实地反映了用户的意图。最后,确定系统的整体目标和系统的工作范围。 2) 分析用户的需求 分析用户需求是与获取用户需求并行的,主要通过建立模型的方式来描述用户的需求,这为系统研发人员提供了一个交流的渠道。这些模型是指对需求进行抽象,以可视化的方式提供一个易于沟通的桥梁。用户需求的分析与获取有着相似的步骤,区别在于分析需求时使用模型来描述,以
您可能关注的文档
- (ARM Linux嵌入式系统开发基础)第1章嵌入式系统开发基础.ppt
- (ARM Linux嵌入式系统开发基础)第2章嵌入式微处理器及ARM9硬件.ppt
- (ARM Linux嵌入式系统开发基础)第3章LinuxC编译调试基础.ppt
- (ARM Linux嵌入式系统开发基础)第4章LinuxC编程基础.ppt
- (ARM Linux嵌入式系统开发基础)第5章Bootloader开发基础.ppt
- (ARM Linux嵌入式系统开发基础)第6章嵌入式Linux内核.ppt
- (ARM Linux嵌入式系统开发基础)第7章嵌入式文件系统.ppt
- (ARM Linux嵌入式系统开发基础)第8章ARM-Linux串行接口通.ppt
- (ARM嵌入式系统基础及应用)第1章嵌入式系统概述.ppt
- (ARM嵌入式系统基础及应用)第2章ARM体系结构.ppt
文档评论(0)