资源描述
计算机软件尤其是数据库软件,成为了当代计算机应用主流。因此软件开发人员就必须掌握正确开发手段,了解软件开发主要过程,这样心中对软件工程才有清醒认识,才能到达事半功倍效果。本文就软件开发过程中一些方法,结合本人开发过一些软件工程做一些详细论述。
1 开发前准备工作
一般软件工程在开发前都有系统任务书,主要规定软件开发目标、主要任务、功能、性能指标及研制人员和经费、进度等安排,作为系统设计开发和检验根本依据。
系统任务书根本框架如下:
〔1〕引言
包括编写目,背景,参考资料。
〔2〕系统目标及任务
包括系统建立目标,系统主要任务,系统性能指标,系统标准化要求。
〔3〕系统构造及功能
包括系统应用组成及构造,系统主要功能。
〔4〕系统规模及进度要求
包括系统规模,系统研制进度,人员方案。
但是系统任务书只是这个软件工程一个根本要求,针对具体情况,软件开发人员和需求分析人员就要联合对软件工程细节进展具体分析,必要时还要进展实地调研,然后共同商讨写出系统需求分析,需求分析编写目在于:
a. 说明系统在军事方面、技术方面、经济方面和社会条件方面实现可行性和必要性;
b. 分析原系统〔工作环境〕现状,描述待开发系统详细需求,提供用户和开发人员之间沟通根底,提供工程设计根本信息。
需求分析报告根本框架如下:
〔1〕 概述
包括 编写目,背景,参考资料,术语及缩写词。
〔2〕 对现有系统分析
〔3〕待开发系统详细需求
包括 功能需求,使用范围,业务流程,用户界面,输出要求,故障处理。
〔4〕使用环境
包括 网络环境,硬件环境,软件环境,与其他系统关系,平安与保密。
〔5〕 可行性分析
包括 技术可行性分析,经济可行性分析,人员可行性分析,影响待开发系统主要因素。
〔6〕结论意见
2 软件开发过程
有了系统任务书和需求分析报告,软件设计人员就要对软件工程实现进展系统分析,系统分析包括系统总体方案,系统设计说明,作为软件设计依据。具体说明如下。
2.1 系统总体方案
在系统开发单位和用户充分交互、理解根底上,提出系统技术构架,对系统功能、性能等主要指标作描述,对实现方法和要求作规定,是系统进展详细设计依据。
系统总体方案根本框架包括:
〔1〕引言
包括 :编写目,背景,参考资料,术语及定义。
〔2〕工程概述
包括 :
--工程主要内容
--系统需求分析:①用户需求调查分析②现行系统现状调查分析。
--系统功能:①系统功能要求②系统主要技术性能。
--系统数据要求:①根底数据②业务数据③交换数据④其它数据。
--系统设计要求:①技术构造要求②系统划分及其接口要求③系统运行环境要求④系统标准化综合要求。
〔3〕实施总方案
包括 :进度,预算,问题和措施。
2.2 系统设计说明
根据?系统总体方案?提出系统构架、功能、性能及数据要求,确定系统物理构造,说明系统主要技术方面设计和采用技术方法以及系统标准化约束等,是系统实施根本依据。就本人曾经开发过一个软件工程,说明其根本框架:
〔1〕 引言
包括 :编写目;背景;条件和限制;参考资料;术语及定义。
〔2〕 系统总体技术方案
包括:
--概述:①系统目标②根本要求。
--系统设计:
①系统构造
a、 应用构造。
b、 功能构造。
c、 技术构造。
② 系统功能设计:根据以上分析,功能设计自然
包括业务管理功能设计、综合查询功能设计、邮件收发功能设计、数据库接口设计、文电接口设计。在对这些功能进展综合分析根底上,开场进展数据库表设计。在对表设计过程中,既要考虑到关系数据库冗余字段处理,又要考虑到系统运行速度和实现方便性等综合因素,笔者在实际开发后认为这两种考虑比例可以为7:3。
③ 系统平安设计:可以考虑以下一些平安设计思想,例如系统数据传输通过电子邮件实现,要求电子邮件内部只传代码,不传涉密数据;系统数据库操作需要充分利用Oracle数据库事务提交和回滚机制,确保业务处理完整性和一致性;系统数据构造应充分利用存储空间,在不同用户之间通过数据冗余提高整个系统数据平安性;系统中存贮用户口令、备份口令、数据库连接信息等重要数据,必需经过平安加密。
④ Oracle数据库自动优化设计:对于Oracle数据库可以进展数据库配置,可以大大提高大数据量查询速度,笔者已经做过尝试,并已经成功应用。
⑤ 友好界面设计:对于一个良好应用系统当然需要设计良好使用界面。
2.3 软件开发
对于开发语言选择因人而易,开发数据库系统我比拟倾向于DELPHI,因为它对于数据库开发支持是很完善。在软件实现方面,上面已经说明了一种客户/效劳器构造,但是这种构造本身也包含了一些问题,例如客户/效劳器构造经常把应用系统企业逻辑编写在客户端应用程序中,因此当应用系统需要改变时,所有在客户端应用系统都必须改变,这对于MIS系统维护来说本钱太高了;为了解决这些重复开发应用系统本钱以及为了增加应用系统重复使用性发挥面向对象分析/面向对象设计功能,就必须导入所谓应用程序效劳器,软件开发人员以一种特定组件形式,例如MicrosoftCOM/DCOM,CORBA对象,或是Enterprise Java Bean等,组装企业逻辑程序代码。这种经过组装,能够执行特定企业功能对象便称为"企业对象",然后把这些企业对象分发到此应用程序效劳器。由于本文不是专门讨论多层系统文章,所以只是简单提一下,不再赘述。
程序设计中要注意合理程序设计构造,可以将所有公用组件放在一起。例如Delphi语言中可以新建一个单元,将所有编写函数放在这个单元里,其他单元均可以调用,还可以新建一个数据模块〔Datamodule〕,将所有公共数据库控件放在这里,可以减少系统资源浪费,优化数据库程序设计。
关于程序设计中技巧很多,这里也不再赘述。
3 软件开发后工作
软件工程在开发完成后还要进展系统测试,以测试开发出软件功能和性能是否到达预定要求。
3.1 软件测试大纲
这是软件设计人员用来自测系统。包括:
〔1〕测试环境①硬件环境②软件环境③数据环境④网络环境。
〔2〕功能测试内容①模拟现场测试②应用现场测试。
〔3〕性能测试内容
另有附表:附表一 系统功能测试表;附表二 系统性能测试表。
3.2 用户应用测试
由用户在实际使用过程中进展测试,并给出应用证明。
4、总结
开发软件工程是一个庞大系统工程,以上只是介绍了一般性软件主要是数据库软件开发过程和设计思想,它要求软件开发者对此要有精深理解,熟悉软件开发思路。
通常一个人难以完成所有工作,需要一个良好合作团队来协作完成,其中需求分析员和系统分析员要提供软件工程具体要求和设计思想,由软件开发组把这些要求创立出便于维护和可持续开发系统资源。
展开阅读全文