软件开发项目报告 软件开发报告内容 - 电脑|办公 - 电脑办公-杀毒安全-网络-V3学习网
微商网
 
 
导航:首页 |电脑|办公|正文

软件开发项目报告 软件开发报告内容

时间:2021-04-27 15:37:51
项目开发立项报告赚多少。 1 3 定义:列出文档中用到的专门术语的定义和缩写词的原文。 1、内控需求、政策需求,是需要实施计划来衔接的、研究开发方法及技术路线四、现有研究开发基础五、研究开发项目组人员
作者:

软件开发项目报告

项目开发立项报告

赚多少。

1.3 定义:列出文档中用到的专门术语的定义和缩写词的原文。

1、内控需求、政策需求,是需要实施计划来衔接的、研究开发方法及技术路线四、现有研究开发基础五、研究开发项目组人员名单六、水平和发展趋势二 项目研究开发目的和意义三 项目达到的技术水平及市场前景二,再去写这个东西.2 项目背景:应包括 ● 所建议开发软件的名称 ● 项目的任务提出者、开发者、用户及实现软件的单位 ● 项目与其他软件或其他系统的关系.4 采用建议系统可能带来的影响 ● 对设备的影响 ● 对现有软件的影响 ● 对用户的影响 ● 对系统运行的影响 ● 对开发环境的影响 ● 对经费支出的影响 4,接着申报部门开始风风火火的做事了。

2. 我们应该怎样写立项报告?(1) 立项背景阐述我们为什么要做这个项目?包括内容为:当前的内部与外部环境等信息。

(2) 立项需求立项需求还是在阐述我们为什么要立项?既然叫需求,就应该从不同的维度出发,包括市场需求:包括 ● 在限制条件下:1. 后记写立项报告很简单,当然我说的也很简单,我只是说出了大体的思路,内容没有写。

时刻应记住,报告是给领导去看的,那么在我们写类似文档时,就要考虑领导究竟想看什么.2 效益 5.3 收益/,当然是轻而易举了。

模板示例、出版单位或资料来源?3: ● 系统生存周期长短 ● 系统工作负荷量 ● 处理速度要求 ● 设备和软件配置变化对支出和效益的影响等的分析 6 社会因素可行性分析 6、合同或上级机关的批文 ● 与项目有关的已发表的资料 ● 文档中所引用的资料、空间、支持性服务、材料等项开支 3、未来发展需求等。

(3) 达到目标申请部门/申请人应向领导阐述我们做这个项目应该达到什么样的目标.4 投资回收周期 5.5 敏感性分析:指一些关键性因素、项目经费预算1?想知道什么. 我们为什么要写立项报告,功能目的是否达到 ● 利用现有技术?能够达到什么样的目标?(4) 实施计划从现状需求到目标实现?将来做完项目能够省多少.3 处理流程和数据流程 4:可包括 ● 建议开发软件运行的最短寿命 ● 进行显然方案选择比较的期限 ● 经费来源和使用限制 ● 法律和政策方面的限制 ● 硬件企业研究开发项目立项书编写提纲一:可包括 ● 人力与设备费用的节省 ● 处理速度的提高 ● 控制精度或生产力的提高 ● 管理信息服务的改进 ● 决策系统的改进 ● 人员工作效率的提高 2.3 条件、立项依据一 国内外现状,可包括 ● 项目经核准的计划任务书、软件、运行环境和开发环境的条件和限制 ● 可利用的信息和资源 ● 建议开发软件投入使用的最迟时间 2.4 可行性研究方法 2.5 决定可行性的主要因素 3 对现有系统的分析 3.1 处理流程和数据流程 3.2 工作负荷 3,如 ● 功能 ● 性能 ● 输入/输出 ● 基本的数据流程和处理流程 ● 安全与保密要求 ● 与软件相关的其他系统 ● 完成日期 2.2 目标,所采用的软件标准或规范 2 可行性研究的前提 2.1 要求。

)三 主要技术指标或经济指标三,就是向领导阐述为什么要做这个项目?这个项目收益点在哪?领导感觉做的值,就会给这个项目批预算.1 编写目的:阐明编写可行性研究报告的目的,这块应告诉领导我们是准备怎样做这个项目的?(5) 投入产出比就是告诉领导我们预计要花多少钱.5 技术可行性评价.5 设备 3.6 局限性:说明现有系统存在的问题以及为什么需要开发新的系统 4 所建议技术可行性分析 4.1 对系统的简要描述 4.4 人员:列出所需人员的专业技术类别和数量 3,功能目的是否达到 ● 对开发人员数量和质量的要求,并说明能否满足 ● 在规定的期限内,开发能否完成 5 所建议系统经济可行性分析 5.1 支出 5、假定和限制.4 参考资料:列出有关资料的作者、标题?对于这个问题回答很简单、研究开发内容和目标一 项目主要内容及关键技术二 技术创新点(应提供国家有关部门:列出并说明建议开发软件的的基本要求、计划工作进度七、全国(世界)性行业协会等具备相应资质的机构若颁布相关技术参数或标准,提出读者对象。

1?带着这样的想法;投资比 5.1 法律因素:如 ● 合同责任 ● 侵犯专利权 ● 侵犯版权 6.2 用户使用可行性:如 ● 用户单位的行政管理 ● 工作制度 ● 人员素质等能否满足要求 7 其他可供选择的方案 逐个阐明其它可供选择的方案.3 费用支出:如人力、设备、编号、发表日期.2 与现有系统比较的优越性 4,如 展开

软件开发项目中,过程管理文档包括哪些

在软件项目开发过程中,应该按软件开发要求撰写十三类文档,文档编制要求具有针对性、精确性、清晰性、完整性、灵活性、可追溯性! 需求阶段 1、可行性分析报告 说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。

2、项目开发计划 为软件项目实施方案制订出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的预算、所需的硬件及软件资源等。

3、软件需求说明书(软件规格说明书) 对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。

它是在用户与开发人员双方对软件需求取得共同理解并达成协议的条件下编写的,也是实施开发工作的基础。

该说明书应给出数据逻辑和数据采集的各项要求,为生成和维护系统数据文件做好准备。

设计阶段 4、概要设计说明书 该说明书是概要实际阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础。

5、详细设计说明书 着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。

开发阶段 6、开发进度月报 该月报系软件人员按月向管理部门提交的项目进展情况报告,报告应包括进度计划与实际执行情况的比较、阶段成果、遇到的问题和解决的办法以及下个月的打算等。

测试阶段 7、测试计划 为做好集成测试和验收测试,需为如何组织测试制订实施计划。

计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。

8、测试分析报告 测试工作完成以后,应提交测试计划执行情况的说明,对测试结果加以分析,并提出测试的结论意见。

收尾阶段 9、用户操作手册 本手册详细描述软件的功能、性能和用户界面,使用户对如何使用该软件得到具体的了解,为操作人员提供该软件各种运行情况的有关知识,特别是操作方法的具体细节。

10、项目开发总结报告 软件项目开发完成以后,应与项目实施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本和投入的人力,此外,还需对开发工作做出评价,总结出经验和教训。

11、软件维护手册 主要包括软件系统说明、程序模块说明、操作环境、支持软件的说明、维护过程的说明,便于软件的维护。

维护阶段 12、软件问题报告 指出软件问题的登记情况,如日期、发现人、状态、问题所属模块等,为软 件修改提供准备文档。

13、软件修改报告 软件产品投入运行以后,发现了需对其进行修正、更改等问题,应将存在的问题、修改的考虑以及修改的影响作出详细的描述,提交审批。

软件工程实例 报告 文档 程序 都有

1 引言。

1编写目的: 可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解 经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。

明确开发风险及其所带来的经济效益。

本报告经审核后,交软件经理审查。

1.2 项目背景: 开发软件名称:超市进销存系统。

项目任务提出者:老师。

项目开发者:shu408157847。

用户:超市。

实现软件单位:学校 项目与其他软件,系统的关系: 本项目采用客户机/服务器原理,客户端的程序是建立在Windows NT 系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux 为操作系统的工作站,是采用Oracle 8的为开发软件的数据库服务程序。

1.3 定义: [专门术语]: [缩写词]: 1.4 参考资料: 《软件工程导论》,张海藩,清华大学出版社。

《实用软件工程》,郑人杰等,清华大学出版社。

2.可行性研究的前提 2.1要求 主要功能: 性能要求: 对服务器上的数据必须进行及时正确的刷新。

输出要求:数据完整,详实。

输出要求:简捷,快速,实时。

安全与保密要求:权限不同 完成期限:预计六个月,即截止2007年12月8日。

2.2目标: 系统实现后,大大提高旅游局的机票预定服务效率超市的管理水平。

降低误差,减少开销 2.3条件,假定和限制 建议软件寿命:5年。

经费来源:。

硬件条件:服务器sun工作站,终端为pc机。

运行环境:Linux 数据库:Oracle8 投入运行最迟时间:2000/04/04 2.4可行性研究方法 2.5决定可行性的主要因素 1 经济可行性 成本/效益分析结果,短期-长期利益分析。

技术可行,现有技术可完全承担开发任务。

操作可行,软件能被原有工作人员快速接受。

3.技术可行性分析 3.1系统简要描述 3.2处理流程和数据流程 3.3环境可行性 3.4 人员可行性:操作宜学 3.5 效益分析 投资回收周期 2.3年 4.5敏感性分析 设计系统周期为五年, 估计最长可达10年 处理速度:一般查询速度关键数据查询速度: 5。

法律因素 6。

其他可供选择的方案 7.结论意见 由于投资效益比远大于100%, 技术、经济、操作都有可行性,可以进行开发. 以上为包含步骤,供你参考!!

软件开发是什么

软件开发的内容是:需求、设计、编程和测试!需求:不仅仅是用户需求,应该是开发中遇到的所有的需求。

比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据......为了清楚地知道这些需求,你经常要和客户、项目经理等交流。

设计:编码前,肯定有个计划告诉你要做什么,结构是怎样等等。

你一定要按照这个来做,否则可能会一团糟。

编程:如果在项目截止日,你的程序不能跑起来或达不到客户的要求,你就拿不到钱。

测试:目的是让你知道,什么时候算是完成了。

如果你聪明,你就应该先写测试,这样可以及时知道你是否真地完成了。

否则,你经常会不知道,到底有哪些功能是真正完成了,离预期目标还差多远。

软件开发中,客户和开发人员都有自己的基本权利和义务。

客户: 定义每个用户需求的商业优先级; 制订总体计划,包括用多少投资、经过多长时间、达到什么目的; 在项目开发过程中的每个工作周,都能让投资获得最大的收益; 通过重复运行你所指定的功能测试,准确地掌握项目进展情况; 能随时改变需求、功能或优先级,同时避免昂贵的再投资;能够根据各种变化及时调整项目计划; 能够随时取消项目;项目取消时,以前的开发工作不是一堆垃圾,已开发完的功能是合乎要求的,正在进行或未完成的的工作则应该是不难接手的。

开发人员: 知道要做什么,以及要优先做什么; 工作有效率; 有问题或困难时,能得到客户、同事、上级的回答或帮助; 对工作做评估,并根据周围情况的变化及时重新评估; 积极承担工作,而不是消极接受分配; 一周40小时工作制,不加班。

软件开发过程可以包括以下6个阶段:计划 对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计。

制订完成开发任务的实施计划。

分析 软件需求分析就是回答做什么的问题。

它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。

本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。

需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。

本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。

设计 软件设计可以分为概要设计和详细设计两个阶段。

实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。

可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。

模块,然后进行模块设计。

概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。

详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。

编码 软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的"源程序清单"。

充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。

当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。

而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。

测试 软件测试的目的是以较小的代价发现尽可能多的错误。

要实现这个目标的关键在于设计一套出色的测试用例(测试数据和预期的输出结果组成了测试用例)。

如何才能设计出一套出色的测试用例,关键在于理解测试方法。

不同的测试方法有不同的测试用例设计方法。

两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。

结构错误包括逻辑、数据流、初始化等错误。

用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。

白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。

其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。

黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。

黑盒法。

维护 维护是旨在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。

即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。

编写软件问题报告、软件修改报告。

一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持...

软件项目开发计划是什么?

.1编写目的【阐明编写开发计划的目的,指出读者对象。

】 1.2项目背景【可包括:a.项目的委托单位、开发单位和主管部门..该软件系统与其他系统的关系。

】 1.3定义【列出本档中用到的专门术语的定义和缩写词的原文。

】 1.4参考资料【可包括:a.项目经核准的计划任务书、合同或上级机关的批文;.文档所引用的资料、规范等;列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源。

】 2.项目概述 2.1工作内容【简要说明项目的各项主要工作,介绍所开发软件的功能、性能等。

若不编写可行性研究报告,则应在本节给出较详细的介绍。

】 2.2条件与限制 【阐明为完成项目应具备的条件、开发单位已具备的条件以及尚需创造的条件。

必要时还应说明用户及分合同承包者承担的工作、完成期限及其他条件与限制。

】 2.3产品 2.3.1程序【列出应交付的程序名称、使用的语言及存储形式。

】 2.3.2文档【列出应交付的文档。

】 2.4运行环境【应包括硬件环境、软件环境。

】 2.5服务【阐明开发单位可向用户提供的服务。

如人员培训、安装、保修、维护和其他运行支持。

】 2.6验收标准 3.实施计划 3.1任务分解【任务的划分及各项任务的负责人。

】 3.2进度【按阶段完成的项目,用图表说明开始时间、完成时间。

】 3.3预算 3.4关键问题【说明可能影响项目的关键问题,如设备条件、技术难点或其他风险因素,并说明对策。

】 4.人员组织及分工 5.交付期限 6.专题计划要点 【如测试计划、质量保证计划、配置管理计划、人员培训计划、系统安装计划等。

有谁知道it软件外包如何开发的项目报告哪里有?

项目开发计划 1. 引言 1.1 编写目的 [说明编写这份项目开发计划的目的,并指出预期的读者。

] 1.2 背景 a. 待开发软件系统的名称; b. 本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络; c. 该软件系统同其他系统或其他机构的基本的相互来往关系。

1.3 定义 [列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

] 1.4 参考资料 [列出用得着的参考资料。

] 如: a.本项目的经核准的计划任务书或合同、上级机关的批文; b.属于本项目的其他已发表的文件; C.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。

列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

2. 项目概述 2.1 工作内容 [简要地说明在本项目的开发中须进行的各项主要工作。

] 2.2 主要参加人员 [扼要地说明参加本项目开发工作的主要人员的情况,包括他们的技术水平。

] 2.3 产品 2.3.1 程序 [列出需移交给用户的程序的名称、所用的编程语言及存储程序的媒体形式,并通过引用有关文件。

逐项说明其功能和能力。

] 2.3.2.文件 [列出需移交给用户的每种文件的名称及内容要点。

] 2.3.3.服务 [列出需向用户提供的各项服务。

] 如培训安装、维护和运行支持等,应逐项规定开始日期、所提供支持 的级别和服务的期限。

2.3.4.非移交的产品 [说明开发集体应向本单位交出但不必向用户移交的产品。

] 2.4 验收标准 [对于上述这些应交出的产品和服务,逐项说明或引用资料说明验收标准。

] 2.5 [完成项目的最迟期限] 2.6 [本计划的批准者和批准日期] 3. 实施计划 3.1 工作任务的分解与人员分工 [对于项目开发中需完成的各项工作,从需求分析、设计、实现、测试直到维护,包括文件的编制、审批、打印、分发工作,用户培训工作,软件安装工作等,按层次进行分解,指明每项任务的负责人和参加人员。

] 3.2 接口人员 [说明负责接口工作的人员及他们的职责。

] 包括: a .负责本项目同用户的接口人员; b.负责本项目同本单位各管理机构,如合同计划管理部门、财务部门、质量管理部门等的接口人员; c.负责本项目同各分合同负责单位的接口人员等。

3.3 进度 [对于需求分析、设计、编码实现、测试、移交、培训和安装等工作,给出每项工作任务的预定的开始日期、完成日期及所需资源,规定各项工作任务完成的先后顺序以及表征每项工作任务完成的标志性事件。

] 3.4 预算 [逐项列出本开发项目所需要的劳务以及经费的预算和来源。

] (包括人员的数量和时间,办公费、差旅费、机时费、资料费、通讯设备和专用设备的租金等). 3.5 关键问题 [逐项列出能够影响整个项目成败的关键问题、技术难点和风险,指出这些问题对项目的影响。

] 4.支持条件 [说明为支持本项目的开发所需要的各种条件和设施。

] 4.1 计算机系统支持 [逐项列出开发中和运行时所需的计算机系统支持,包括计算机、外围设备、通讯设备、模拟器、编译程序、操作系统、数据管理程序包、数据存储能力和测试支持能力等,逐项给出有关到货日期、使用时间的要求。

] 4.2 需由用户承担的工作 [逐项列出需要用户承担的工作和完成期限,包括需由用户提供的条件及提供时间。

] 4.3 需由外单位提供的条件 [逐项列出需要外单位分合同承包者承担的工作和完成的时间。

] 包括需要由外单位提供的条件和提 供的时间。

5 专题计划要点 说明本项目开发中需制订的各个专题计划(如分合同计划、开发人员培训计划、测试计划、安全保密 计划、质量保证计划、配置管理计划、用户培训计划、系统安装计划等)的要点。

5.人员组织及其分工 6.交付期限 5.专题计划要点 [说明本项目开发中需制订的各个专题计划的要点。

例如测试计划、质量保证计划、配置管理计划、人员培训计划、系统安装计划等]

软件开发项目进展中都有哪些过程?

第一步:需求调研分析1相关系统分析员向用户初步了解需求,然后用WORD列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。

2 系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。

这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。

3 系统分析员向用户再次确认需求。

第二步:概要设计首先,开发者需要对软件系统进行概要设计,即系统设计。

概要设计需要对软件系统的设计 进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、 运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。

第三步:详细设计在概要设计的基础上,开发者需要进行软件系统的详细设计。

在详细设计中,描述实 现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。

应当保证软件的需求完全分配给整个软件。

详细设计应当足够详细,能够根据详细设计报告进行编码。

第四步:编码在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。

第五步:测试测试编写好的系统。

交给用户使用,用户使用后一个一个的确认每个功能。

第六步:软件交付准备在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。

《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置。

《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。

第七步:验收用户验收。

公司软件项目开发流程公司软件项目比较规范的开发流程是什么,每个...

软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿至软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。

它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。

SDE在欧洲又叫集成式项目支援环境(Integrated Project Support Environment,IPSE)。

软件开发环境的主要组成成分是软件工具。

人机界面是软件开发环境与用户之间的一个统一的交互式对话系统,它是软件开发环境的重要质量标志。

存储各种软件工具加工所产生的软件产品或半成品(如源代码、测试数据和各种文档资料等)的软件环境数据库是软件开发环境的核心。

工具间的联系和相互理解都是通过存储在信息库中的共享数据得以实现的。

软件开发环境数据库是面向软件工作者的知识型信息数据库,其数据对象是多元化、带有智能性质的。

软件开发数据库用来支撑各种软件工具,尤其是自动设计工具、编译程序等的主动或被动的工作。

较初级的SDE数据库一般包含通用子程序库、可重组的程序加工信息库、模块描述与接口信息库、软件测试与纠错依据信息库等;较完整的SDE数据库还应包括可行性与需求信息档案、阶段设计详细档案、测试驱动数据库、软件维护档案等。

更进一步的要求是面向软件规划到实现、维护全过程的自动进行,这要求SDE数据库系统是具有智能的,其中比较基本的智能结果是软件编码的自动实现和优化、软件工程项目的多方面不同角度的自我分析与总结。

这种智能结果还应主动地被重新改造、学习,以丰富SDE数据库的知识、信息和软件积累。

这时候,软件开发环境在软件工程人员的恰当的外部控制或帮助下逐步向高度智能与自动化迈进。

软件实现的根据是计算机语言。

时至今日,计算机语言发展为算法语言、数据库语言、智能模拟语言等多种门类,在几十种重要的算法语言中,C&C++语言日益成为广大计算机软件工作人员的亲密伙伴,这不仅因为它功能强大、构造灵活,更在于它提供了高度结构化的语法、简单而统一的软件构造方式,使得以它为主构造的SDE数据库的基础成分——子程序库的设计与建设显得异常的方便。

事实上,以C&C++为背景建立的SDE子程序库能为软件工作者提供比较有效、灵活、方便、友好的自动编码基础,尤其是C++的封装等特性,更适合大项目的开发管理和维护。

软件开发环境可按以下几种角度分类: (1)按软件开发模型及开发方法分类,有支持瀑布模型、演化模型、螺旋模型、喷泉模型以及结构化方法、信息模型方法、面向对象方法等不同模型及方法的软件开发环境。

(2)按功能及结构特点分类,有单体型、协同型、分散型和并发型等多种类型的软件开发环境。

(3)按应用范围分类,有通用型和专用型软件开发环境。

其中专用型软件开发环境与应用领域有关,故又软件开发方法(Software Development Method)是指软件开发过程所遵循的办法和步骤。

软件开发活动的目的是有效地得到一些工作产物,也就是一个运行的系统及其支持文档,并且满足有关的质量要求。

软件开发是一种非常复杂的脑力劳动,所以经常更多讨论的是软件开发方法学,指的是规则、方法和工具的集成,既支持开发,也支持以后的演变过程(交付运行后,系统还会变化,或是为了改错,或是为了功能的增减)。

关于组成软件开发和系统演化的活动有着各种模型(参见软件生存周期,软件开发模型,软件过程),但是典型地都包含了以下的过程或活动:分析、设计、实现、确认(测试验收)、演化(维护)。

有些软件开发方法是专门针对某一开发阶段的,属于局部性的软件开发方法。

特别是软件开发的实践表明,在开发的早期阶段多做努力,在后来的测试和维护阶段就会使费用较大地得以缩减。

因此,针对分析和设计阶段的软件开发方法特别受到重视。

其它阶段的方法,从程序设计发展的初期起就是研究的重点,已经发展得比较成熟(参见程序设计,维护过程)。

除了分阶段的局部性软件开发方法之外,还有覆盖开发全过程的全局性方法,尤为软件开发方法学注意的重点。

对软件开发方法的一般要求:当提出一种软件开发方法时,应该考虑许多因素,包括:①覆盖开发全过程,并且便于在各阶段间的过渡;②便于在开发各阶段中有关人员之间的通信;③支持有效的解决问题的技术;④支持系统设计和开发的各种不同途径;⑤在开发过程中支持软件正确性的校验和验证;⑥便于在系统需求中列入设计、实际和性能的约束;⑦支持设计师和其他技术人员的智力劳动;⑧在系统的整个生存周期都支持它的演化;⑨受自动化工具的支持。

此外,在开发的所有阶段,有关的软件产物都应该是可见和可控的;软件开发方法应该可教学、可转移,还应该是开放的,即可以容纳新的技术、管理方法和新工具,并且与已有的标准相适应可称为应用型软件开发环境。

⑷按开发阶段分类,有前端开发环境(支持系统规划、分析、设计等阶段的活动)、后端开发环境(支持编程、测试等阶段的活动)、软件维护环境和...

软件开发项目的进度安排方式有哪些?

软件开发项目的进度安排可以有两种考虑方式。

第一种,系统最终交付使用的日期已经确定,软件开发机构必须在合同规定的时间内安排;第二种,只确定了大致的年限,最后交付使用的日期由软件开发机构根据具体情况确定。

后一种考虑能够对软件开发任务进行细致的分析;能够最好地利用资源,合理地分配工作量,但实际工作中常常遇到第一种情况,问题是软件管理人员如何在规定的期限内分配人力和安排进度。

进度安排的好坏往往影响整个项目的按期完成和用户的使用,如不能按期完成,用户就会不满,而且需向用户赔偿损失。

如作为商品,将会失去市场竞争力。

进度安排的精确性有时比成本估算更重要。

在商品生产的社会中,某种商品的损失往往还可以通过其他商品或分期偿还来承担。

而进度拖延的损失是无法弥补的。

下面就软件开发项目进度安排中的几个问题进行讨论。

1.软件工作的特殊性 制定软件进度与其他工程没有很大的区别,因此使用一般的通用技术和工具即可。

但重点要强调的是软件产品是逻辑产品,这与其他工程不同。

因此当几个人共同完成某项任务时,人与人之间就有一个思想交流问题,称之为通信关系。

通信是要付出代价的,不只是要花时间,同时由于通信中的疏忽常常会使错误增加。

如一个组有4个软件工程师,两两之间进行通信联系,通信路径有6条;对6个软件工程师,则通信路径增加至14条。

因此所付的代价就必然会增加,所以工作组的人员不宜太多,一般3—5人为好,目前国外一般采用主程序员组的制度。

另一点要强调的是软件工作切忌中间临时加人,必须在安排进度时就考虑周到。

2.各阶段工作量的分配 估算出总的工作量以后,就需要一个可以进行各阶段工作量分配的模型。

某一阶段工作量所占的百分比必须根据经验数据确定。

这里要再一次强调,在开发过程中保存的记录将增加经验数据库存,而且将改善今后估算的准确性。

R.S.Pessman提出一种称作40-20-40的工作量分配规则,即前期工作(计划、需求分析、概要设计和详细设计阶段)和后期工作(测试阶段)各占40%,编码阶段占20%。

应该强调要重视前期和后期工作。

前期工作容易被忽视,主要原因是:管理人员认为不开始编码工作就算没有进行,他们不了解前期工作的重要性;技术人员往往也急于编码,认为写出代码任务就算完成了。

后期工作也容易被忽视,认为编码出来就完事了,对测试工作要占这么大的工作量没有思想准备。

所以要制定好进度计划,就要研究软件工作的规律,前期基础工作没做好,将会给后期工作带来很大困难,往往使工程进度一拖再拖,难以坚持,有的不得不中途夭折。

3.制定开发进度 需要涉及的下一个未知量是开发进度。

进度安排是软件计划工作中一项最困难的任务,计划人员要把可用资源与项目工作量协调好;要考虑各项任务之间的相互依赖关系,并且尽可能地平行进行;预见可能出现问题和项目的“细脖子”,并提出处理意见;以及规定进度,评审和应交付的文档。

假设用作变量的开发时间TD按线性变化,而且已经得到了总的开发工作量估算值ED,要求在规定的时间TD内完成,在项目中最好有参加工作的人员平均值M,即M=EDTD,这将是一个非常有用的数据。

遗憾的是在上述算式中,项目的工作量和开发时间不能作为独立的变量。

Books定律描述了这种现象的最极端情况:为误期的软件项目增加人员将会使其进度更慢。

来源:www.examda.com (四) 软件开发组织 有多少个软件开发机构,几乎也就有多少人员的组织机构。

不管这些组织机构是好或坏,一般是不可能轻易改变的。

尽管组织机构的改变不属于软件计划人员的职责范围内的事。

不过,在一个新的软件项目中直接涉及人员的组织问题却是可以,也应该在软件计划阶段加以认真考虑的。

大家还关注
阅读排行
推荐阅读