经过了《机房收费系统》的实战演练,对开发一个系统有了初步的了解,要做一个机房收费系统,面向用户、系统内部功能逻辑划分、数据库的设计等等,自考学习了《信息系统开发与管理》、后来进行《软件工程视频》的进一步熟悉,发现自己的机房收费系统——小试牛刀,还存在许多问题,是万万不能拿来投入使用的,需要更多的完善和修饰,在一个系统的开发过程中,需要文档资料来记录开发轨迹,作为开发人员工作的依据,具体了解它一下。
系统开发过程涉及的文档,依据软件开发过程的几个阶段大致划分了一下:
详细介绍:
软件系统开发人员对现有系统从技术、经济、管理和开发环境等几个方面,对系统开发的可行性进行分析研究,板鞋新系统开发的可行性分析报告,反映了开发人员对系统开发的看法、最终交由单位最高管理者进行审核,当条件可行时,可以进行下一步的系统分析阶段继续开发,当某些条件不成熟,那么需要改变系统目标,创造条件再次进行可行性研究;如果完全不可行,那么应该果断放弃,避免造成人、物、财力的浪费。
报告内容:
-------引言
包括项目摘要、开发背景、参考资料和专门术语等内容。其中,项目摘要主要包括现行系统的名称、目标和功能等;开发背景包括系统的用户、开发者、立项过程、本系统与其他系统关系等;参考资料包括项目合同或批文、开发规范等;专门术语主要指本报告中所涉及的各种专业属于或英文缩写等。
------现行系统调查与分析
包括系统初步调查(组织结构层次、任务和范围等)、主要业务流程及对信息的需求、现行系统运行的各项费用开支及人员和设备情况、现有计算应用情况(配置、使用效率和存在的问题等)、现行系统存在的主要问题和薄弱环节、需求分析结论(用户提出的和开发人员分析得出的需求)。
------ 新系统建设方案
新系统的目标、新系统规模及初步方案(规模、组成和结构等)、系统及人员培训实施方案、投资方案(投资金额、来源和时间安排等。)
------可行性论证
从技术可行性、经济可行性、管理可行性、开发环境可行性等几方面做文字论述。
------结论
概括性地阐述可行性分析的结论:可行还是不可行。
在经过开发人员和用户只之间的充分交流后,开发人员充分了解用户的的需求,并且对项目的各项需求进行全面分析后编制的项目开发计划,是项目进行的总体框架,也是项目管理组的工作依照,合理地估算软件项目开发所需的资源(包括人力资源等) 、成本经费和开发进度=风险估算等,并控制软件项目开发过程按此计划进行。
用户对软件提出需求,才需要开发人员的工作,对于当前系统的全面分析,对新系统的要求明确表达了用户对于新的软件需求,需要开发人员与用户之间进行充分的交流,开发人员真正了解用户的想法,达到想要新系统的功能目标,作为系统开发工作之前的最重要环节,把握好开发的大方向,开发工作再进行下去才有意义。便于用户、开发人员进行理解和交流,反映出用户问题的结构,可以作为软件开发工作的基础和依据,并作为确认测试和验收的依据。
属于软件详细设计阶段产生的文档,对于软件系统开发过程中涉及的所有数据问题,包括数据的描述,数据的采集要求,数据的加工处理过程,数据的约定等,在整个开发过程中涉及的数据及数据流的具体要求都有详细的说明,为了提供关于处理数据的描述和数据采集要求的技术信息。
在项目开发过程中,需要对开发工作有一个记录,包括本月的项目进度、状态,耗费的资源与时间,有关遇到的问题以及项目开发某个环节的建议,实际的开发情况会为整个项目开发计划的执行程度提供一个参照,方便下个月开发工作的有效执行,根据上个月的月报安排部署下个月的具体工作,不会造成工时、人力、物力资源的浪费,在提高每个阶段的开发效率同时,也带动了项目总体的开发执行效率。
又称为系统设计说明书,在宏观的角度上对软件系统的设计说明,一个完整的软件项目,是一个完整系统,它需要许多的子系统提供支撑,相互配合,那么将复杂的系统设计成为若干子系统和一系列基本模块将体现在概要设计说明书中,模块结构的设计、网络的设计等等,为详细设计阶段提供大大的框架。
又称程序设计说明书, 按照概要设计总体的要求,在概要设计那个大的框架下填充内容,说明一个软件系统各个层次中的每一个程序 (每个模块或子程序)的设计,将相关的细节方面也要设计清楚,包括编码设计、输入输出设计、人机界面设计、处理过程设计、以及数据库设计等等,新系统的物理模型,系统实施的主要依据。
系统实施的测试阶段产生的文档,当系统开发工作基本完成,软件系统将会投入使用,面向庞大多样的用户人群,开发出的软件系统要避免出现问题,确保软件可以顺利地被用户使用,不出现任何意外情况,这也是最基本的新系统目标,那么在产品上线投入使用之前,必须进行软件测试这一工作,在工作开展前,需要一个详细确实可行的项目测试计划,包括测试目的,要测试的内容,参加测试的人员,测试分任务的安排以及最后的测试评价等,作为项目完善和维护的参考资料。
测试工作的进行,需要测试分析报告的最终总结,测试分析报告是对各项测试内容的测试概要、测试结果的整合,通过对测试结果的分析以及实际进行测试的内容与预定测试内容的偏差,对新系统的功能以及性能有大致的了解,分析出软件的不足之处以及后期开发相应部分的建议,是难能可贵的测试资料,对新系统的检查,评价新系统是否到达预期目标,是否可以交付使用。
用户手册面向用户,是对当前新系统的简要概括,新系统在用户面前就是一个黑盒子,用户不了解它,也不知道如何使用以到达自己的目的,这时候就需要有一个用户手册来进行指导说明,以用户理解的语言详细阐述,关于系统输入输出的格式、可以运行和安装需要的环境,当前系统的主要功能、出错处理等的介绍,使读者明白面前的新系统有什么作用以及在实际操作之前要有的对新系统的基本了解。
操作手册是系统级别的文档,而用户手册是需求级别的文档。操作手册讲述的是如何操作该系统的某个页面(你可以根据系统的菜单,一个一个的讲述它的操作按钮),对当进行的一些基本操作的说明,比如说当你新购买了一个蓝牙耳机,包装盒里会有一个使用说明,上面有具体说到,按哪个键进行什么操作会执行什么功能,按键及点击的一系列操作流程等等,面向系统的指导资料。
如同实验报告一样,每次进行完实验,学生都会完成一份实验报告,有对整个实验过程的总结、对实验结果的观察记录和对实验的出错分析、改进性建议等,当我们庞大的软件项目开发完成后需要细致的总结分析,项目开发的最终结果,是否到达预期目标,整个开发过程中遇到的问题,包括技术方法、生产效率、产品质量等等,总结的同时也是对各方面开发工作的建议,分析出错的原因,总结经验与教训,将对以后的项目开发进行提高强有力的经验技术支撑。
软件在投入使用一段时间后,由于使用时间的增加,使用的用途多样化,会暴露出一些在投入使用前未出现的问题,软件工程的开发,有很大一部分资金花在了软件的维护上面,软件开发期一般为1-3年,而维护期一般为5-10年,开发基本完成的系统不是完美的,需要在硬件设备、系统软件、应用系统软件、网络、数据、运行环境等方面进行维护,比如说经常更新的QQ通讯软件,以前的网络环境是2G、3G,随着科技的快速发展,逐渐形成了4G的网络环境,软件就必须进行改进网络的接口以适应性的运行环境,是新系统保持持久生命力的核心。
在写这篇文档概述之前,不知道怎么写,原本打算结合百度上的相关介绍和信管那本书的文档描述来写这篇博客,但是写着写着发现,那并不是自己脑子里的知识,即使写的再完美也没有自己的理解,不是自己的东西,后来决定结合自己的理解写写看,这是对文档的初步理解,以后随着学习的深入再逐渐完善。一直在担心自己的知识没有那么多,写不出很充实的技术文章,同时也是对CSDN抵触的根源,写完博客,感觉心里舒服多了。
本人才疏学浅,对CSDN上技术性的文章不太感冒,请大家多多提出宝贵意见,帮助菜鸟成长。