软件开发流程:
软件开发文档使用环节 软件开发文档使用环节是什么
1、首先制定项目计划,最初计划是里程碑性质的。可以先按瀑布模型设置,里程碑点主要为需求评审、设计评审、经过代码开发和单元测试后进行集成测试、部署上线是一个很重要的里程碑,一般用户会期望系统何时能使用进入试运行期(也可以称为用户测试阶段)
2、需求开发阶段:怎么样写好需求很关键。如果有项目成员,可以一起做需求,这个阶段对于业务理解、分析、如何开展调研以及文字表述、业务流程图描述还有文档编辑能力都有不少要求。一般分为《用户需求说明书》和《需求规格说明书》
小项目可以写一个《需求分析报告》,《用户需求说明书》是用用户的语言进行描述,让用户和开发团队对于需求的达成一致的理解,《需求规格说明书》,则是对用户需求的分析,形成系统要具有的功能,这个是真正提供用户可交互操作的文档,也就是后期设计和代码开发的重要基线。另外,作为了解需求,拿出用户UI和用户交流也是一项比较重要的需求获取手段,虽然这个属于设计的范畴。
商领云的saasPaaS可以一键制作APP(ios和Android系统)、商城小程序、移动网站、微商城,也可定制开发软件。
3、系统设计阶段:系统总体架构,结合用户对系统环境、开发语言以及运行的网络硬件等要求,确定开发工具等,对应用系统关系进行架构性设计,通过需求阶段对用户的分析归类,用图的方式描述出用户和各子系统或模块的全局视图,以及和其他系统的关系。
也就是搞清楚系统的边界问题。概要设计中除了高层架构设计,还需要设计网络拓扑图,以及系统部署图。概要设计比较重要的还有就是子系统、模块进行合理的划分。模块的名称很大程度上会成为用户的主要菜单,如何用用户的角度去取比较清楚的子系统和模块是很重要的。
4、代码开发和单元测试阶段:这个阶段一般来说需要改进瀑布模型,类似迭代开发,把模块进行合理划分,把项目总体计划的代码开发测试阶段划分为多个时间段,每个时间段都包括代码开发、单元测试和集成测试,这个阶段还需要对需求变更进行跟踪控制,如果需求有变更,那么要把需求文档、设计文档都重新跟上。迭代开发的好处就是不让代码开发阶段拉的过程,没有进行及时的自我检查,不小心到了提交时间,却不是用户想要的,还有可能都不是自己想要的。
项目经理重要的责任是控制好进度,能及早发现风险,并能拿出好的预防和解决办法的措施。合理安排好开发团队的任务,合时的任务安排和衔接,你会觉得非常有艺术感,这个要自己体会了。另外,关注项目团队各人员的状况,保持高的战斗力,及时发现并能鼓励团队共同朝一个目标前进。
5、测试工作,测试是项目的很重要的环节,怎么测试,怎么准确测试,怎么有效测试,怎么覆盖测试,时间、人手、经验_个方面都会有制约。高级测试人员能够分析系统各测试要点,在需求、设计阶段都要参与,提早了解如何去测试,能写出测试用例。6、文档工作,文档在项目开发中也占有重要位置,除非你觉得代码是项目唯一的成果,那么你把文档抛掉吧,什么都在你的脑子里,团队中人员一走,项目的一部分也就带走了。代码开发其实也需要文档,代码是成果,代码注释是成果,模块开发卷宗也是重要的成果,因为程序员在开发时候的逻辑是怎么样的,对于今后查问题很有作用。除非你的系统设计程度到了方法、类,把代码逻辑也都设计好了,那么程序员就CODEING去吧。
7、QA是对项目过程的质量保障,有些公司吧QA和测试工作合成一个岗位叫做QA&测试人员,或者就叫QA人员。QA是对项目全过程的监管,独立于项目之外。监督项目经理在各项目里程碑提交相关成果,入库形成基线。
商领云的saasPaaS可以一键制作APP(ios和Android系统)、商城小程序、移动网站、微商城,也可定制开发软件。
在软件项目开发过程中,应该按软件开发要求撰写十三类文档,文档编制要求具有针对性、精确性、清晰性、完整性、灵活性、可追溯性!需求阶段
1、可行性分析报告说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。
2、项目开发计划为软件项目实施方案制订出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的预算、所需的硬件及软件资源等。
3、软件需求说明书(软件规格说明书)对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是在用户与开发人员双方对软件需求取得共同理解并达成协议的条件下编写的,也是实施开发工作的基础。该说明书应给出数据逻辑和数据采集的各项要求,为生成和维护系统数据文件做好准备。设计阶段
4、概要设计说明书该说明书是概要实际阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础。
5、详细设计说明书着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。开发阶段
6、开发进度月报该月报系软件人员按月向管理部门提交的项目进展情况报告,报告应包括进度计划与实际执行情况的比较、阶段成果、遇到的问题和解决的办法以及下个月的打算等。测试阶段
7、测试计划为做好集成测试和验收测试,需为如何组织测试制订实施计划。计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。
8、测试分析报告测试工作完成以后,应提交测试计划执行情况的说明,对测试结果加以分析,并提出测试的结论意见。收尾阶段
9、用户操作手册本手册详细描述软件的功能、性能和用户界面,使用户对如何使用该软件得到具体的了解,为操作人员提供该软件各种运行情况的有关知识,特别是操作方法的具体细节。
10、项目开发总结报告软件项目开发完成以后,应与项目实施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本和投入的人力,此外,还需对开发工作做出评价,总结出经验和教训。
11、软件维护手册主要包括软件系统说明、程序模块说明、操作环境、支持软件的说明、维护过程的说明,便于软件的维护。维护阶段
12、软件问题报告指出软件问题的登记情况,如日期、发现人、状态、问题所属模块等,为软件修改提供准备文档。
13、软件修改报告软件产品投入运行以后,发现了需对其进行修正、更改等问题,应将存在的问题、修改的考虑以及修改的影响作出详细的描述,提交审批。
在软件的生产过程中,总是伴随着大量的信息要记录、要使用。因此,软件文档在产品的开发生产过程中起着重要的作用。
1)提高软件开发过程的能见度。把开发过程中发生的事件以某种可阅读的形式记录在文档中。管理人员可把这些记载下来的材料作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理。
2)提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、从而减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。
3)作为开发人员在一定阶段的工作成果和结束标志。
4)记录开发过程中的有关信息,便于协调以后的软件、开发、使用和维护。
5)提供对软件的运行、维护和培训的有关信息,便于管理人员、开发人员、操作人员、用户之间的协作、交流和了解。使软件开发活动更科学、更有成效。
6)便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据。
文档在各类人员、计算机之间的多种桥梁作用中看出:
既然软件已经从手工艺人的开发方式发展到工业化的生产方式,文档在开发过程中就起到关键作用。从某种意义上来说,文档是软件开发
规范的体现和指南。按规范要求生成一整套文档的过程,就是按照软件开发规范完成一个软件开发的过程。所以,在使用工程化的原理和方法来指导软件的开发和维护时,应当充分注意软件文档的编制和管理。
PS:软件开发文档包括:
操作手册
维护修改建议
软件需求(规格)说明书
开发文档软件需求(规格)说明书
数据要求说明书
概要设计说明书
详细设计说明书
可行性研究报告
项目开发计划
管理文档项目开发计划
测试计划
测试报告
开发进度月报
开发总结报告
......
开发文档
1. 《功能要求》 -- 来源于客户要求和市场调查,是软件开发中最早期的一个环节。客户提出一个模糊的功能概念,或者要求解决一个实际问题,或者参照同类软件的一个功能。有软件经验的客户还会提供比较详细的技术规范书,把他们的要求全部列表书写在文档中,必要时加以图表解说。这份文档是需求分析的基础。
2. 《投标方案》 -- 根据用户的功能要求,经过与招标方沟通和确认,技术人员开始书写《投标方案》,方案书一般包括以下几个重要的章节: 前言 -- 项目背景、公司背景和业务、技术人员结构、公司的成功案例介绍等。 需求分析 -- 项目要求、软件结构、功能列表、功能描述、注意事项等。 技术方案 -- 总体要求和指导思想、技术解决方案、软件开发平台、网络结构体系等。 项目管理 -- 描述公司的软件开发流程、工程实施服务、组织和人员分工、开发进度控制、软件质量保证、项目验收和人员培训、软件资料文档等。 技术支持 -- 公司的技术支持和服务介绍、服务宗旨和目标、服务级别和响应时间、技术服务区域、技术服务期限、授权用户联系人等。 系统报价 -- 软、硬件平台报价列表、软件开发费用、系统维护费用等。 项目进度 -- 整个项目的进度计划,包括签署合同、项目启动、需求分析、系统分析、程序开发、测试维护、系统集成、用户验收、用户培训等步骤的时间规划。
3. 《需求分析》 -- 包括产品概述、主要概念、操作流程、功能列表和解说、注意事项、系统环境等。以《功能要求》为基础,进行详细的功能分析 ( 包括客户提出的要求和根据开发经验建议的功能 ) ,列出本产品是什么,有什么特殊的概念,包括哪些功能分类,需要具备什么功能,该功能的操作如何,实现的时候该注意什么细节,客户有什么要求,系统运行环境的要求等。这里的功能描述跟以后的使用手册是一致的。
4. 《技术分析》 -- 包括技术选型、技术比较、开发人员、关键技术问题的解决、技术风险、技术升级方向、技术方案评价,竞争对手技术分析等。以《需求分析》为基础,进行详细的技术分析 ( 产品的性能和实现方法 ) ,列出本项目需要使用什么技术方案,为什么,有哪些技术问题要解决 ,估计开发期间会碰到什么困难,技术方案以后如何升级,对本项目的技术有什么评价等。
5. 《系统分析》 -- 包括功能实现、模块组成、功能流程图、函数接口、数据字典、软件开发需要考虑的各种问题等。以《需求分析》为基础,进行详细的系统分析 ( 产品的开发和实现方法 ) ,估计开发期间需要把什么问题说明白,程序员根据《系统分析》,开始在项目主管的带领下进行编码。
6. 《数据库文档》 -- 包括数据库名称、表名、字段名、字段类型、字段说明、备注、字段数值计算公式等。以《系统分析》为基础,进行详细的数据库设计。必要时可以用图表解说,特别是关系数据库。
7. 《功能函数文档》 -- 包括变量名、变量初植、功能,函数名,参数,如何调用、备注、注意事项等。以《系统分析》为基础,进行详细的说明,列出哪个功能涉及多少个函数,以便以后程序员修改、接手和扩展。
8. 《界面文档》 -- 包括软件外观、界面素材、编辑工具、文件名、菜单、按钮和其它界面部件的要求,这里与软件完成后的运行界面是一致的。
9. 《编译手册》 -- 包括服务器编译环境、操作系统、编译工具、 GNU 的 C++ 编译器版本信息、目录说明、程序生成、源程序文件列表、 Makefile 配置及其相关程序的对应关系列表。客户端的编译过程、编译结果、编译示例、编译环境、操作系统、编译工具、源文件列表和制作安装程序的过程。
10. 《 QA 文档》 -- 包括产品简介、产品原理、产品功能列表、功能描述、功能流程、执行结果、数据库结构、测试要求等,提供给软件测试人员使用。
11. 《项目总结》 -- 包括项目简介、项目参与人员和开发时间、项目风险管理过程、项目功能列表、项目结构特点、技术特点、对项目的升级建议、对以后的项目的建议、人员素质情况等。
一、可行性研究阶段
在手机软件开发前,应该对企业在行业中的发展进行优劣势分析,如何通过移动App提供企业的竞争力,以及思考手机软件开发在技术上、经济上等各方面是否可行。
二、需求调研分析
对相关目标客户群体进行全面的需求分析,并且结合产品特点以及企业发展目标,进一步确定app开发方向、功能点设计、推送服务方式,才能有效定制开发出能够满足企业发展的App产品。
三、产品规划设计
对业务中各种工作流程以及处理功能给出逻辑的描述,即给出手机App应用软件的逻辑模型;同时,从调查研究的结果分析提炼出手机软件开发的功能需求,给出App应用软件功能需求的逻辑描述。这些需求除包括业务处理的各种功能外,还应包括应用软件运行的硬件环境。此阶段是整个手机App应用软件开发的关键阶段,其工作质量的好坏,将对整个手机App应用软件产生决定性的影响。
四、UI设计阶段
在整个app软件开发的过程中,UI设计是重要的环节。设计需要具备人机交互的特点以及保持界面整体性。所以手机软件开发UI设计者在进行设计的时候应遵循简易、灵活、人性化的原则,设计出满足用户舒适、简单、流畅的操作体验。
五、技术研发阶段
用户在进行手机软件开发之前,根据产品需求文档对开发的工作量以及时间进行评估,制定相应的方案进行对App开发团队的成员进行明确的分工,提升App应用软件开发的效率。值得注意的是,还需要对手机应用软件开发的成本进行预算,适时控制相应的投入成本。
六、程序测试阶段
在手机软件开发完成后,不要急于上线,对开发的应用程序进行测试是极为重要的,在Demo出来之后,开发团队在进行内部体验之后,根据情况修改,然后寻找相关的Beta用户,并根据反馈情况进行修改,进一步提升产品的质量。
七、软件使用阶段
在手机软件开发并进行测试修改后,就进入了使用阶段。这个阶段是所有阶段中时间最长的,在这一阶段中,包括手机App软件的运营及维护工作。
软件开发步骤包括哪些过程?
软件系统开发分为以下几个步骤:
一、需求分析
1、需求分析有分为业务需求、用户需求、功能需求三种 类型:
A、业务需求(business requirement):反映了组织机构或客户对系统、产品高层次的目的要求,它们在项目视图与范围文档中予以说明。
B、用户需求(user requirement) :文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。
C、功能需求(functional requirement):定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。
2、需求调研分析
A、相关系统分析员和用户初步了解需求,然后用WORD列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。
B、系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还例出相关的界面和界面功能。
C、系统分析员和用户再次确认需求。
二、软件设计
概要设计
首先,开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计
进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
业务需求和用户需求是软件需求分析的基础,也是软件构建的前提。系统分析员通过对业务需求和用户需求的分解,将其转换成形式化描述的软件功能需求。开发软件系统最为困难的部分,就是准确说明开发什么。这就需要在开发的过程中不断的与用户进行交流与探讨,使系统更加详尽,准确到位。这就需要确定用户是否需要这样的产品类型以及获取每个用户类的需求。
详细设计
在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,应当保证软件的需求完全分配给整个软件。以便进行编码和测试。详细设计应当足够详细,能够根据详细设计报告进行编码。编码
在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。软件交付准备在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。 《用户安装手册》应详细介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的具体安装步骤、安装后的系统配置。 《用户使用指南》应包括软件各项功能的使用流程、操作步骤、相应业务介绍、特殊提示和注意事项等方面的内容,在需要时还应举例说明。
三、测试
测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。
四、培训及上线
再次强调内容整理于网络资源,仅供参考。
首先要了解用户的要求,利用文字形式列出所要开发系统的主要功能模块,以及主要功能模块中有哪些小功能模块。某些需求当需要澄清相关接口时,可以定义少量接口。如果做得好,那么该阶段将为整个软件项目的开发奠定良好的基础。
其次要对用户的需求有深入的了解与分析,根据自己的经验和要求,用Word文档或相关工具制作出文件系统功能所需求的文档。那么这个文档将清晰明了的展示出系统的大型功能模块以及大型功能模块中的小型功能模块和相关的接口功能。
最后要和用户进行确定用户所提的要求和需求,才能更好的确定下一步的进展。
二:选择开发团队
图片 在进行开发软件时大多企业都会面临一个大问题,那就是自己去搭建一个技术团队进行开发还是走外包公司。
那么,如果是企业自己去搭建技术团队开发软件,则需要以下基本人员的配置:前端工程师、后端工程师、UI设计、产品经理及测试人员;如果是走外包公司,则需要去选择并确定好开发团队。
在确定好开发团队和项目立项后,就可以进行产品设计了。
三:logo设计+UI设计
在完成以上两个步骤后,接下来就可以进行产品的设计,人靠衣装马靠鞍,一个好的产品那么必须要有一个好的外形。
首先就是对产品的外形设计,在这个看“颜值”的时代。如果外形都没有吸引到用户,不能让其接受的话,那么就算功能有多齐全也很难吸引了。
其次就是对产品进行详细的设计,在进行产品的详细设计中,描述出特定模块在实现中所涉及的主要算法,数据结构,类层次结构以及调用关系。
四:程序编码
这个阶段则是将软件设计的结果进行转换成计算机可执行的程序代码。在程序编码中,必须要制定出统一且符合标准的书写规范。确保程序的可读性和维护。提高程序的效率。
五:进行软件测试并交付
软件设计完成后,发现并修改了软件设计过程中所遇到的软件问题,就要进行严格的软件测试。测试阶段主要分为三个阶段:单元测试、组装测试和系统测试。
首先是进行内部人员的测试,其次是将测试好的软件系统提供给用户进行测试,由用户进行对各个功能的确认并发现问题、提出建议。
在证明软件符合要求后,软件开发人员就要将用户安装手册,用户指南,测试报告等提交给用户。
极其流行,同样也是竞争力极其大的一种商业模式。虽然国内软件开发公司都发展壮大起来了,但是各地软件开发公司的实力及资质仍然参差不齐。下面为大家介绍下近期国内软件开发公司的排名汇总。
1:华盛恒辉科技有限公司
上榜理由:华盛恒辉是一家专注于高端软件定制开发服务和高端建设的服务机构,致力于为企业提供全面、系统的开发制作方案。在开发、建设到运营推广领域拥有丰富经验,我们通过建立对目标客户和用户行为的分析,整合高质量设计和极其新技术,为您打造创意十足、有价值的企业品牌。
在军工领域,合作客户包括:中央军委联合参谋(原总参)、中央军委后勤保障部(原总后)、中央军委装备发展部(原总装)、装备研究所、战略支援、军事科学院、研究所、航天科工集团、中国航天科技集团、中国船舶工业集团、中国船舶重工集团、第一研究所、训练器材所、装备技术研究所等单位。
在民用领域,公司大力拓展民用市场,目前合作的客户包括中国中铁电气化局集团、中国铁道科学研究院、济南机务段、东莞轨道交通公司、京港地铁、中国国电集团、电力科学研究院、水利部、国家发改委、中信银行、华为公司等大型客户。
2:五木恒润科技有限公司
上榜理由:五木恒润拥有员工300多人,技术人员占90%以上,是一家专业的军工信息化建设服务单位,为军工单位提供完整的信息化解决方案。公司设有股东会、董事会、监事会、工会等上层机构,同时设置总经理职位,由总经理管理公司的具体事务。公司下设有研发部、质量部、市场部、财务部、人事部等机构。公司下辖成都研发中心、西安研发中心、沈阳办事处、天津办事处等分支机构。
3、浪潮
浪潮集团有限公司是国家首批认定的规划布局内的重点软件企业,中国著名的企业管理软件、分行业ERP及服务供应商,在咨询服务、IT规划、软件及解决方案等方面具有强大的优势,形成了以浪潮ERP系列产品PS、GS、GSP三大主要产品。是目前中国高端企业管理软件领跑者、中国企业管理软件技术领先者、中国最大的行业ERP与集团管理软件供应商、国内服务满意度最高的管理软件企业。
4、德格Dagle
德格智能SaaS软件管理系统自德国工业4.0,并且结合国内工厂行业现状而打造的一款工厂智能化信息平台管理软件,具备工厂ERP管理、SCRM客户关系管理、BPM业务流程管理、
OMS订单管理等四大企业业务信息系统,不仅满足企业对生产进行简易管理的需求,并突破局域网应用的局限性,同时使数据管理延伸到互联网与移动商务,不论是内部的管理应用还是外部的移动应用,都可以在智能SaaS软件管理系统中进行业务流程的管控。
一、制作步骤1、概要设计,所谓概要设计,就是对将要开发的软件进行一个大概功能的设计,主要包括:软件所实现哪些功能和功能实现的程度;一个软件的功能是无法估计的,只要有需要,就可以添加相应的功能,如果没有一个计划,盲目的做,那么这个项目到最后的期限是不可能做完的。这一点在整个的流程中也是相当重要的,它关系到能不能按期完成。2、做完概要设计之后,还要对其进行详细的说明,对每个功能所包括哪些小功能进行一一说明;这样开发人员在开发过程中才有一个明确的目标,以保障开发工作的合理分配和管理。3、做完详细功能设计之后,就可以根据详细设计书并按照软件 开发代码规范进行编码了。4、软件测试阶段,不能认为编码完成,软件就结束了,在软件开发过程当中,测试也是相当重要的;测试主要包括使用Junit工具单体测试和结合测试。只有测试才能知道这个软件有没有Bug,才能知道软件的健壮性。在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都出现过。编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永远存在,必须永远面对这个问题。5、测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能,然后验收。二、软件开发环境软件开发环境在欧洲又叫集成式项目支持环境(Integrated Project Support Environment,IPSE)。 软件开发环境的主要组成成分是软件工具。人机界面是软件开发环境与用户之间的一个统一的交互式对话系统,它是软件开发环境的重要质量标志。存储各种软件工具加工所产生的软件产品或半成品(如 源代码、测试数据和各种文档资料等)的软件环境数据库是软件开发环境的核心。工具间的联系和相互理解都是通过存储在信息库中的共享数据得以实现的。软件开发环境数据库是面向软件工作者的知识型信息数据库,其数据对象是多元化、带有智能性质的。软件开发数据库用来支撑各种软件工具,尤其是自动设计工具、编译程序等的主动或被动的工作。较初级的SDE数据库一般包含通用子程序库、可重组的程序加工信息库、模块描述与接口信息库、软件测试与纠错依据信息库等;较完整的SDE数据库还应包括可行性与需求信息档案、阶段设计详细档案、测试驱动数据库、软件维护档案等。更进一步的要求是面向软件规划到实现、维护全过程的自动进行,这要求SDE数据库系统是具有智能的,其中比较基本的智能结果是软件编码的自动实现和优化、软件工程项目的多方面不同角度的自我分析与总结。这种智能结果还应主动地被重新改造、学习,以丰富SDE数据库的知识、信息和软件积累。这时候,软件开发环境在软件工程人员的恰当的外部控制或帮助下逐步向高度智能与自动化迈进。软件实现的根据是计算机语言。时至今日,计算机语言发展为算法语言、数据库语言、智能模拟语言等多种门类,在几十种重要的算法语言中,C&C语言日益成为广大计算机软件工作人员的亲密伙伴,这不仅因为它功能强大、构造灵活,更在于它提供了高度结构化的语法、简单而统一的软件构造方式,使得以它为主构造的SDE数据库的基础成分——子程序库的设计与建设显得异常的方便。事实上,以C&C为背景建立的SDE子程序库能为软件工作者提供比较有效、灵活、方便、友好的自动编码基础,尤其是C的封装等特性,更适合大项目的开发管理和维护。三、开发工具1、软件建模工具,用于描述系统的需求,辅助设计。2、软件实施工具,用于程序设计,编码和编译,包括程序语言开发环境和集成开发环境。3、前者主要提供程序语言的预编译,编译,链接的工具,后者包括代码编辑器在内的编辑器,代码生成器,运行环境和调试器。4、模拟运行平台,用于模拟系统的实际运行环境。5、软件测试工具,用于对系统,子系统,模块或单元进行测试的工具。6、软件开发支撑工具,主要是软件配置管理工具。