引言
计算机软件尤其是数据库软件,成为了当代计算机应用的主流。因此软件开发人员就必须掌握正确的开发手段,了解软件开发的主要过程,这样心中对软件项目才有清醒的认识,才能达到事半功倍的效果。本文就软件开发过程中的一些方法,结合本人开发过的一些软件项目做一些详细论述。
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系统的维护来说成本太高了;为了解决这些重复开发应用系统的成本以及为了增加应用系统的重复使用性发挥面向对象分析/面向对象设计的功能,就必须导入所谓的应用程序服务器,软件开发人员以一种特定的组件形式,例如Microsoft的COM/DCOM,CORBA对象,或是Enterprise Java Bean等,组装企业的逻辑程序代码。这种经过组装,能够执行特定企业功能的对象便称为"企业对象",然后把这些企业对象分发到此应用程序服务器。由于本文不是专门讨论多层系统的文章,所以只是简单提一下,不再赘述。
程序设计中要注意合理的程序设计结构,可以将所有的公用组件放在一起。例如Delphi语言中可以新建一个单元,将所有编写的函数放在这个单元里,其他单元均可以调用,还可以新建一个数据模块(Datamodule),将所有的公共数据库控件放在这里,可以减少系统资源浪费,优化数据库程序设计。
关于程序设计中的技巧很多,这里也不再赘述。
3 软件开发后的工作
软件项目在开发完成后还要进行系统测试,以测试开发出的软件的功能和性能是否达到预定要求。
3.1 软件测试大纲
这是软件设计人员用来自测系统的。包括:
(1)测试环境①硬件环境②软件环境③数据环境④网络环境。
(2)功能测试内容①模拟现场测试②应用现场测试。
(3)性能测试内容
另有附表:附表一 系统功能测试表;附表二 系统性能测试表。
3.2 用户应用测试
由用户在实际使用过程中进行测试,并给出应用证明。
4、总结
开发软件项目是一个庞大的系统工程,以上只是介绍了一般性软件主要是数据库软件的开发过程和设计思想,它要求软件开发者对此要有精深的理解,熟悉软件开发的思路。
通常一个人难以完成所有工作,需要一个良好的合作团队来协作完成,其中需求分析员和系统分析员要提供软件项目的具体要求和设计思想,由软件开发组把这些要求创建出便于维护和可持续开发的系统资源。
分享到:
相关推荐
"软件开发流程规范" 软件开发流程规范是指在软件产品开发过程中,每个步骤的规范和...软件开发流程规范的目的是确保软件开发过程的规范性、可重复性和可维护性,为产品的整个生命周期提供了一个清晰的架构和设计蓝图。
软件开发流程管理制度,基本的软件开发流程管理的文件,可以参考下,从软件工程的理念来看还有参考价值,试试看。
在软件开发过程中,遵循GB1526-89绘制的流程图有助于团队成员间的共识建立。无论是需求分析、系统设计,还是编码阶段,流程图都是必不可少的沟通工具。在需求分析阶段,它可以直观地呈现业务流程;在系统设计阶段,...
"软件开发过程和软件开发生命周期" 软件开发过程是指从软件概念到软件交付的整个过程,包括软件生命周期中的各个阶段。软件生命周期是指软件从提出开发到最终灭亡所经历的时期。软件开发过程模型是软件开发全过程、...
软件开发流程管理规范标准是软件开发过程中的一个重要组成部分,它规定了软件开发的流程、编码规范、注释规定等方面的标准,旨在确保软件开发过程的质量、效率和可维护性。 一、概述 软件开发流程管理规范标准的...
在整个软件开发过程中,项目管理扮演着协调和控制的角色。项目经理需要制定项目计划,分配任务,跟踪进度,管理风险,并确保项目按期完成。 总结来说,"软件开发流程流程计划书"旨在提供一个结构化的开发过程,帮助...
8. **项目管理**:在整个软件开发过程中,项目管理贯穿始终,包括时间管理、质量管理、风险管理、人力资源管理等,以确保项目按时、按质、按预算完成。 9. **敏捷开发**:现代软件开发中,敏捷方法论被广泛应用,如...
软件开发流程规范是软件开发过程中遵循的一系列规则和指导方针,以确保软件开发的质量、效率和一致性。下面是软件开发流程规范的详细说明: 概述 软件开发流程规范是软件开发过程中的重要组成部分,它规定了软件...
软件开发流程图是软件开发过程中每个阶段的产物和要求的总结。该流程图从项目启动到项目上线,涵盖了项目管理、需求阶段、设计阶段、开发阶段、测试阶段和系统上线等几个阶段。 在项目启动阶段,项目经理和项目干系...
软件开发流程图是软件开发过程中的一个重要环节,它规定了软件开发的整个生命周期,从需求获取到系统部署的每个阶段都有明确的步骤和责任人。本文将详细解释软件开发流程图的每个阶段,包括需求获取、初步方案编制、...
软件开发流程是指在软件开发过程中所涉及的一系列活动、步骤和任务的集合,以便确保软件开发的顺利进行和质量保证。本文将详细介绍软件开发流程的各个方面,包括流程的目的、适用范围、定义、输入、输出、角色职责、...
CMMI 软件开发流程 CMMI 软件开发流程是 Capability Maturity Model Integration(能力成熟度模型集成)的软件开发流程模型,旨在提高软件开发的质量、效率和可靠性。该流程模型由多个阶段组成,每个阶段都有其特定...
软件开发流程是构建高质量软件产品不可或缺的一环,它涉及到项目的各个阶段,从需求收集到最终的系统维护。在本文中,我们将深入探讨软件开发的主要流程、相关文档管理和关键活动。 一、软件开发流程 1. **获取...
软件开发流程管理制度IT公司版.pdf 本文档是软件开发流程管理制度IT公司版的总结,旨在加强对定制软件开发工作管理,缩短开发周期,提高软件开发质量,降低开发成本,提高开发效率和效益。下面是对该制度的详细解释...
为加强对定制软件开发工作管理,缩短开发周期,提高软件开发质量,降低开发成本,提高定开发效率和效益,特制定软件开发流程管理制度。