信息系统软件开发流程管理规范_初稿
信息系统软件开发流程管理规范_初稿

软件开发流程管理规范软件开发流程管理规范 (1)一、概述 (2)二、流程 (2)三、附件 (3)附件一、编码规范 (3)1、命名空间 (3)2、命名规则 (3)2.1 文件夹及相关文件命名规则 (3)2.2 数据库表命名规则 (4)3、代码规范 (4)3.1 代码分层结构 (4)3.2 编码规范 (5)4、注释 (6)4.1 注释模板设置 (6)4.2 手工添加注释 (7)4.3 注释要求 (8)附件二、软件需求申请表 (9)附件三、软件开发申请表 (10)附件四、项目组成成员表 (11)附件五、项目策划/任务书 (12)附件六、WBS 表 (13)附件七、项目进度计划表 (14)附件八、项目风险管理表 (15)附件九、项目沟通计划表 (16)附件十、项目会议纪要 (17)附件十一、项目状态报告表 (18)附件十二、项目变更管理表 (19)0 2................................................................................................ . 附件十三、项目总结表.一、概述随着公司规模的扩大、各部门对软件需求的激增、提高效率的工作要求,IT 部门承接的软件开发项目越来越多,而与之相对应的就是软件开发流程不明确,软件项目的随意性较大、可追溯性较差、可统计性模糊、可预测性不足是摆在我们面前最直接的问题。
为了适应公司的发展,IT 部软件开发项目特制订本流程。
二、流程一、需求部门:由上图可以得出以下几个关键步骤:、需求部门首先需要填写《软件需求申请表》,说明需要开发的软件具体用途径、目前I工作模式、工作不方便之处、基本功能等信息;部门评审通过后,通知需求部门,填写《软件开发申请表》,具体列明需要实IT 、待II现的功能、目前工作流程、使用系统后需要达到的状态,可节省的人力、物力,调高的效率等信息;、IV、软件开发测试完成之后,接受IT 部门的软件使用培训,并填写《参与培训确认单》;III、在开发测试过程V软件试用结束后,填写《软件验收表》,完成软件项目的开发流程;软件开发人员IT 中,遇到开发风险增加、需求变更等,都需要配合填写相关的《项目风险管理表》和《项目变更管理表》。
软件开发实施方案(参考模板)

1软件开发实施方案系统开发严格按照软件工程的方法进行组织,系统的开发过程按照需求分析、系统分析与设计要求、系统编码、系统测试几个过程有序推进。
下表所示系统开发流程图,采用原型及迭代方式开发,根据用户需求持续改进,直到最终用户确认满意。
1.1开发流程总述如下图示流程定义了我公司内部的软件开发过程,以指导和规范软件项目中开发过程的定义和相应的实施。
该过程可划分为一系列子过程,包括:软件需求分析、设计、编码、测试、验收、维护,每个子过程又由一系列任务和活动组成,如设计过程又可分为结构设计和详细设计。
但是在实际开发项目中,情况仍然会是千变万化的,因此我们也并不是一成不变的死板执行一个僵化的工作流程,我们的原则是在一个规范流程的指导和约束下,根据具体工程项目的实际要求,为每一个项目评估并制定真正能够最好的满足该项目要求的开发流程。
图 1.4-1 软件开发流程总图在应用系统软件开发项目中,我们仍将遵循这一思想,这一点将在随后的项目开发实施计划部分有具体的体现,在这里和下面的相关章节中,我们仍将围绕着这个完整的开发流程来分析说明,以此来阐明我们对项目开发的完整过程管理思想和相关实践。
下面我们对这个软件开发工作流程进行简要地分解说明。
1.2软件需求分析(1)概述由于应用系统与众多相关应用软件需要进行交互,因此需要先对这些应用系统进行分别梳理,充分做好需求调研工作,编写经项目单位认可并评审通过的《系统需求规格说明书》。
软件需求分析是按照项目定义的软件开发过程,根据系统分配给软件的需求(见《系统需求规格说明书》),进行软件质量特性规格说明的过程。
该过程包括进一步明确软件运行环境,明确对软件的功能、性能和数据要求,以及软件与硬件、软件与软件之间的接口要求等,并对软件需求进行验证和文档化,即完成对软件需求的分析与规格定义。
本元素在整个过程中的位置如下图所示:图示:软件需求分析在软件开发过程中的位置(2)入口准则和出口准则1)入口准则2)出口准则(3)评审评审《软件需求规格说明书》,具体评审过程见《评审程序文件》,对软件需求的评审准则包括:●系统需求和系统设计的可追溯性;●与系统需求的一致性;●内部一致性;●可测试性;●软件设计的可行性;●运作和维护的可行性。
软件开发过程规范

最新资料,Word版,可自由编辑目录软件开发过程规范前言目的本规范的目的是使整个软件产品开发及项目工程阶段清晰,要求明确,任务具体,便于规范化、系统化及工程化.有利于提高软件生命周期的控制及管理,提高所开发软件的质量,缩短开发时间,减少开发和维护费用,使软件开发活动更科学、更有成效.对象本规范面向产品生命周期的所有相关人员,包括管理人员、开发人员、质管人员.要求具有软件开发管理职能的人员要求熟知项目开发的各阶段过程和各阶段过程相应的规范.适用范围适用于产品开发生命周期中的除产品提交外的其他全部过程;规范分为两部分:技术过程规范和管理过程规范,分别适用于软件开发过程中的技术性活动和管理性活动.软件开发过程模型本规范所采用的软件开发过程模型为简化的RUP开发过程模型;软件开发过程是体系结构为中心,用例驱动和风险驱动相结合的过程迭代.开发过程划分开发过程包括多次迭代,每次迭代的目标和侧重点不同;较早的迭代侧重于业务建模和需求建模;而后的迭代则侧重于分析设计和编码.技术过程规范部分概述本规范中将软件开发的整个技术过程分为四个顺序实施的阶段,分别为业务建模阶段、需求阶段、分析设计阶段和实现阶段.在对技术过程规范的描述,按阶段内部的活动和产物对四个阶段分别说明.在本规范中对阶段内活动的说明,是按顺序性活动和持续性活动两类分别进行说明.对于顺序性活动是按该阶段中活动的总体顺序进行的描述,而在实际工作中,从各活动的具体实施的细节来看,各活动之间的顺序是不断交叉变化的.对于持续性活动主要是对贯穿该阶段过程始终的技术活动进行说明.规范中所提到的可选文档是指在其所属阶段,可根据具体情况灵活掌握,开发团队自主决定是否开发的文档产物.而提交文档则是指在项目开发过程中必须开发的文档产物,但可根据具体项目情况,在软件开发计划中明确规定是否要形成正式文档并提交.规范中各阶段提到的技术评审,具体参见评审规范中所对应技术性评审的详细描述.业务建模阶段顺序性活动描述1)开始初步调研,获取初始业务需求,进行问题定义,形成业务概览并建立术语表;2)制定调研记录表册,实施详细的业务调研,建立初始的业务用例模型和业务用例规格;3)分析业务过程,取出可以实现自动化的用例,分析业务部门和实体对象,形成初始的业务对象模型;4)根据初始业务对象模型和初始业务用例模型,分析并提取与系统实现相关的用例和模型, 建立系统域模型;5)精化域模型中的初始用例,详细描述业务流程,分析业务规则,建立精化的业务用例模型,形成业务规则和业务用例规格;6)精化域模型中的初始对象,进行详细的对象描述,分析对象职责和对象间关系,建立精化的业务对象模型,形成业务对象纵览;7)分析业务上的非功能性需求,形成增补业务规格;8)应用业务对象,实现业务用例,制定业务用例实现规格,以验证业务对象与业务用例的正确性,根据验证结果,修正业务对象、业务用例及相关文档;9)汇总业务规则业务用例规格业务对象纵览增补业务规格和业务用例实现规格形成业务架构文档.持续性活动描述1)业务概览在业务建模阶段,根据对项目理解的不断加深,随时进行改进;2)术语表的更新维护;提交文档1)业务概览2)术语表3)调研记录表册4)业务架构文档其附件包括:业务规则业务用例规格业务对象纵览增补业务规格和业务用例实现规格可选文档1)目标组织评价文档规范1)业务概览2)术语表3)项目调研表册4)业务架构文档5)业务规则6)业务用例规格7)业务对象纵览8)增补业务规格9)业务用例实现规格10)目标组织评价技术评审1)业务用例模型评审2)业务对象模型评审需求阶段顺序性活动描述1)界定系统范围,明确委托方需求,形成项目概览系统术语表;2)定义系统角色,根据业务用例规格,分析业务用例,将其转换为系统初始用例,并开始系统原型界面的开发;3)结合增补业务规格,细致分析用例资源条件,形成初始增补规格,同时剔除无法实现的初始用例,形成初始用例规格;4)为初始用例分析划分优先级、分析依赖性,建立初始用例模型,结合初始增补规格形成初始软件需求规格,为子系统分析或包、组件分析奠定基础;5)精化初始用例模型中的用例,详细描述系统交互过程,建立精化的用例模型,用例规格;6)根据初始增补规格和业务规则,进一步深入分析系统的非功能性需求,形成增补规格;7)汇总用例规格增补规格形成软件需求规格.持续性活动描述1)项目概览系统在需求阶段,根据对项目理解的不断加深,随时进行改进;2)术语表的更新维护;3)通过快速原型的开发、试用、修改,与客户和用户交流以不断获取系统需求,并形成用户原型界面描述.提交文档1)项目概览系统2)术语表3)需求规格说明其附件包括:用例规格增补规格4)用户原型界面描述可选文档1)用户接口风格说明2)委托方需求3)用户手册初稿文档规范1)项目概览系统2)需求规格说明3)术语表4)用例规格5)增补规格6)用户原型界面描述技术评审1)需求评审分析设计阶段顺序性活动描述1)根据系统需求规格进行体系结构分析设计,确定系统软件架构,形成配置图和软件架构文档;2)根据需求规格说明和系统软件架构,进一步扩展业务对象模型,建立分析对象模型,明确系统对象的职责;3)根据业务对象,及业务对象之间的关系,结合分析对象和系统软件架构,进行数据库的分析设计,建立数据模型,完成数据库设计工作,形成数据模型纵览;4)应用分析对象实现系统用例,以验证分析对象的正确性,并根据验证结果,修正分析对象模型;5)汇总分析对象模型和基于分析对象的用例实现,形成分析模型纵览;6)根据分析对象模型,结合用户原型界面和数据模型,进行系统类设计,建立设计类模型和构件图;7)实施系统类的详细设计,确定类的属性、方法及参数类型、可见性等,并将用例分配给对象类,形成基于设计类的用例实现;8)汇总设计类模型和基于设计类的用例实现,形成设计模型纵览,为下一步系统的实现明确工作任务.持续性活动描述无.提交文档1)软件架构文档2)分析模型纵览3)设计模型纵览4)数据模型纵览可选文档无.1)软件架构文档2)分析模型纵览3)设计模型纵览4)数据模型纵览技术评审1)软件架构评审2)设计评审实现阶段顺序性活动描述1)根据设计类模型,按照类的详细设计和构件图,结合用例的实现优先级,确定系统实现模型,并根据系统体系结构进行系统集成设计,形成集成模型;2)根据实现模型进行组件编码实现;3)根据集成模型对系统编码实现的组件进行系统集成实现;4)编制用户手册,制作并集成系统帮助,完成客户或用户所需要的其他文档.持续性活动描述无.提交文档1)实现模型2)集成设计可选文档1)用户手册1)实现模型2)集成设计3)用户手册技术评审1)代码评审管理过程规范部分概述在本规范中,对软件开发过程的管理,采用阶段性规划.具体为根据软件开发过程中的技术过程,明确开发阶段,主要依据技术过程规范所描述的技术过程阶段划分;而后,将各阶段根据项目的具体情况和实施要求,划分为利于监控管理的一个或多个迭代过程.本规范对于项目的计划和进度安排,采用由粗到细、由简到繁的方式,首先制定描述软件开发过程总体阶段和迭代的软件开发计划,而后根据所划分的迭代过程,在每个迭代开始时,对该迭代过程进行详细的任务分配和进度规划.本规范中所提到的软件开发计划,包含了开发计划、质量管理计划、技术支持计划等多项内容,但主要以开发计划为主,其他计划视具体项目、团队情况确定是否制定.在本规范中风险管理贯穿整个软件开发过程,包括风险列表的更新维护、风险的跟踪管理.对本规范中的各开发计划的具体实施说明,可参见项目监控管理办法相关说明.规范中各阶段提到的管理评审,具体参见评审规范中所对应管理性评审的详细描述.接受项目活动描述1)根据项目概览标识和评估风险,制定风险列表;2)分析项目风险,制定风险防范和解决措施,形成风险管理计划;3)分析可行性和商业价值,制定商业案例;提交文档1)风险列表2)风险管理计划3)商业案例管理评审1)项目批准评审重新评估项目范围和风险对于较大项目活动描述1)根据项目概览和对项目进一步深入了解,重新标识和评估风险,改进风险列表;2)根据修正项目风险,重新分析项目可行性和商业价值,改进商业案例;提交文档1)修正的风险列表2)修正的商业案例管理评审无.制定开发计划活动描述1)根据不断修正维护的风险列表,完善风险防范和解决措施,改进风险管理计划;2)根据商业案例中说明的项目的开发要求,结合资源和风险状况,建立项目工作分析结构WBS,明确开发阶段和迭代次数,同时完成其他开发相关的计划内容,形成软件开发计划.提交文档1)修正的风险管理计划2)软件开发计划管理评审1)开发计划评审迭代开发管理活动描述1)根据软件开发计划,结合具体的开发状况和资源获取情况,确定在一个迭代期间的开发任务,进度安排,形成迭代计划,并更新软件开发计划;2)按照迭代计划,将工作任务形成任务单,描述任务要求,明确开发人员职责;3)根据本次迭代开发的完成情况和提交的成果,对该迭代开发过程进行分析评价,形成迭代评价,并根据实际情况,提出变更请求.提交文档1)修正的软件开发计划2)迭代计划3)任务单4)变更请求管理评审1)迭代计划评审2)迭代评价标准评审3)迭代评价评审监控项目的实施活动描述1)在项目开发过程中随时监控项目的状态,了解项目的进展,特别是根据风险列表,跟踪风险,及时发现问题,并根据监控结果,及时更新、维护风险列表;2)分析项目监控过程中发现和出现的问题和意外情况,制定解决办法,提出变更请求;3)在监控过程中,根据实际开发情况,调整软件开发计划和迭代计划,并更新和分配新的任务单;4)应项目管理和客户的要求,定期或不定期根据项目的当前状况,制定项目状况评价,进行项目开发状况的汇报.提交文档1)修正的风险列表2)修正的软件开发计划3)修正的迭代计划4)任务单5)变更请求6)项目状况评价管理评审1).PRA评审结束项目活动描述1)在项目开发任务全部完成,开发过程结束时,总结项目的开发过程,分析和评价项目完成情况和提交的成果,形成最终的项目状况评价,提交验收.提交文档1)项目状况评价管理评审1)项目验收评审软件开发过程规范示。
标准的软件开发过程需要编写的文档

标准的软件开发过程需要编写的文档软件开发的标准过程包括六个阶段,而六个阶段需要编写的各类文件达14种之多,在每个阶段需要编写哪些文件,以及这些文件的主要内容见下:1。
可行性与计划研究阶段(1)可行性研究报告:在可行性研究与计划阶段内,要确定该软件的开发目标和总的要求,要进行可行性分析、投资一收益分析、制订开发计划,并完成应编制的文件。
(2)项目开发计划:编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度、所需经费预算、所需软、硬件条件等问题作出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。
2。
需求分析阶段(1)软件需求说明书:软件需求说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解,使之成为整个开发工作的基础。
内容包括对功能的规定对性能的规定等.(2)数据要求说明书:数据要求说明书的编制目的是为了向整个开发时期提供关于被处理数据的描述和数据采集要求的技术信息。
(3)初步的用户手册:用户手册的编制是要使用非专门术语的语言,充分地描述该软件系统所具有的功能及基本的使用方法。
使用户(或潜在用户)通过本手册能够了解该软件的用途,并且能够确定在什么情况下,如何使用它。
3.设计阶段(1)概要设计说明书:概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统.编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计。
运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
(2)详细设计说明书:详细设计说明书又可称程序设计说明书.编制目的是说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关内容合并入概要设计说明书。
(3)数据库设计说明书:数据库设计说明书的编制目的是对于设计中的数据库的所有标识、逻辑结构和物理结构作出具体的设计规定。
软件开发技术规范

软件开发技术规范篇一:软件开发管理规范软件开发过程管理规范济南明湖建筑节能技术开发有限公司一、总则 .................................................. ..................................................... .. (1)1. 软件开发项目管理的目的 .................................................. (1)2. 软件开发项目管理规范适用对象 .................................................. (1)3. 软件项目开发组织管理 .................................................. . (1)二、软件项目立项阶段 .................................................. ..................................................... .. 1三、软件项目实施阶段 ....................................................................................................... .. 2四、项目需求分析过程 .................................................. ..................................................... .. 2五、项目系统设计过程 .................................................. ..................................................... .. 3六、项目开发编码过程 .................................................. ..................................................... .. 3七、测试提交过程 .................................................. ..................................................... . (4)八、项目验收总结阶段 .................................................. ..................................................... .. 4一、总则1. 软件开发项目管理的目的为保障按时、保质、保量完成预期交付的任务,让整个组织能清楚了解项目实施的目的、影响、进度,做到项目组所有成员都理解项目实施的原因、意义及客户的要求。
研发部执行ISO 9001的方案

研发部执行ISO 9001的方案(初稿)研发部作为软件的研究开发部门,承担着公司自研软件项目的开发和维护工作。
在前期进行ISO9001认证工作,在咨询人员的指导下,建立了一套相关的质量体系控制流程,但仅是为了通过评审认证。
为了更好地促进研发部的工作,提高产品的质量,加强对产品过程的控制和管理,提高客户满意度。
在认真吸取这次评审认证工作经验的基础上,参考评审认证过程中编制的流程,结合工作中的实际情况和经验,要按照ISO9001的要求建立起切实可用的研发部的质量管理体系流程。
质量控制流程主要可以分为三个相对独立的部分:新项目的开发、已有项目的维护、客服和技术支持。
一、新研发软件项目新研发软件项目在已建立的质量体系中,应纳入《软件开发控制程序》(CRQ-CX07)和《配置管理程序》(CRQ-CX12)的管理中。
按照已建立的上述程序,在软件开发过程中,应当按阶段进行如下管理。
1、立项阶段:项目立项可以根据客户意向、项目合同或内部立项产生,应产生的文件有《立项建议书》、《项目计划》、《配置管理计划》、《系统开发规范》。
对于因交易规则变化而必须产生的项目立项,可以考虑不编写《立项建议书》,但其中的部分内容要在项目计划中予以体现。
2、需求分析阶段:需求分析为对项目的具体实现的分析过程,应产生的文件有《软件需求说明书》、《评审记录表》,应有客户的认可。
对于因交易规则等变化引起的项目,需求分析应参考相应的交易规则等相关文档。
目前的问题在于:许多客户的需求是十分模糊的,很难具体化,是在边改边用过程中实现具体内容的,导致需求分析也是不停地在修改。
结果就是可能先有设计再编写需求文档。
如目前的ETF项目就是如此,我们先根据他们大概的想法设计出来了,他们看了再提出修改意见。
会导致大量的反复工作。
这样的需求文档也会反复修改,难以维护管理。
尤其是在多人同时进行需求分析或设计的情况下。
保持文档的一致性就十分的关键了。
3、软件设计阶段:应产生的文件有《概要设计说明书》、《详细设计说明书》、包括验收准则的《测试用例》或相关设计文档;提供后续安装、使用和维护活动信息的《用户手册》等。
信息化应用系统开发安全系统要求规范

信息化应用系统开发安全规范1 概述软件不安全的因素主要来源于两个方面,一是软件自身存在错误和缺陷引起的安全漏洞,二是来自外部的攻击。
良好的软件开发过程管理可以很好地减少软件自身缺陷,并有效抵抗外部的攻击。
本规范主要规定了集团信息化应用系统在系统开发的各个阶段所应遵守的各种安全规范,将在不同阶段中所需要注意的安全问题和相关的安全规范进行进一步的描述和规定,以提高集团信息化应用系统的安全性和抵抗外部攻击的能力。
2 可行性计划可行性计划是对项目所要解决的问题进行总体定义和描述,包括了解用户的要求及现实环境,从技术、经济和需求3个方面研究并论证项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如硬件、软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。
2.1 阶段性成果可行性研究报告。
2.2 可行性研究报告重点如下4个方面:1、设计方案可行性研究报告的需对预先设计的方案进行论证,设计研究方案,明确研究对象。
2、内容真实可行性研究报告涉及的内容以及反映情况的数据,必须绝对真实可靠,不许有任何偏差及失误。
可行性研究报告中所运用资料、数据,都要经过反复核实,以确保内容的真实性。
3、预测准确可行性研究是投资决策前的活动,对可能遇到的问题和结果的估计,具有预测性。
因此,必须进行深入地调查研究,充分地占有资料,运用切合实际的预测方法,科学地预测未来前景。
4、论证严密论证性是可行性研究报告的一个显著特点。
要使其有论证性,必须做到运用系统的分析方法,围绕影响项目的各种因素进行全面、系统的分析,既要作宏观的分析,又要作微观的分析。
3 需求分析软件需求分析就是对开发什么样的软件的一个系统的分析与设想,它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言表达出来的过程。
需求分析阶段主要工作是完成需求对业务的表达,这体现在对需求规格说明书中,包括业务流程,子系统划分,状态图,数据流图等,最终通过用户用例完成业务分析测试。
信息系统外包软件开发管理规定

信息系统外包软件开发管理规定信息系统外包软件开发管理规定第⼀章总则第⼀条为加强信息系统安全保障能⼒,提⾼整体的⽹络与信息安全⽔平,保证软件开发的服务质量,特制订此软件开发管理规定。
第⼆条本制度适⽤于( )部所辖外包软件开发服务商选择、外包合同及质量要求、外包开发过程、软件测试和上线运⾏、交付验收等的管理。
第⼆章外包软件开发职责管理第三条外包软件开发是指利⽤外部信息技术资源为( )信息系统业务应⽤软件开发提供服务,外包以满⾜需求、保证质量、提⾼效率、风险可控、成本可控为基本原则。
第四条外包软件开发由业务需求部门提出需求,业务需求部门与( )部共同成⽴外包开发项⽬⼩组。
第五条外包开发项⽬⼩组负责外包软件开发管理,其基本职能如下:(⼀)根据( )的信息系统建设或外包服务需求,结合IT资源的整体分布和建设情况,确⽴外包项⽬的范围和内容、制定外包年度计划及外包阶段性计划;(⼆)负责协调和组织外包资源,管理外包资源台账信息;(三)规范和制定外包合同和质量的基本要求,根据业务需求部门提出具体的功能和性质指标明确软件开发需求;(四)主持或协助相关部门签订外包服务合同和安全协议;(五)负责外包软件开发过程的⾥程碑控制,负责定期形成外包项⽬情况汇总报告,提交上级领导及外包相关管理部门;(六)负责软件测试、上线运⾏过程的环境和资源保证;(七)负责根据合同要求进⾏交付和验收;第六条享有信息系统外包服务或外包服务的直接应⽤部门为外包使⽤部门,基本职能如下:(⼀)负责编写提交信息系统服务需求,提出具体的功能和性能指标;(⼆)参与外包服务合同和质量要求的制定,外包使⽤部门主要负责业务指标的制定;(三)协助进⾏软件功能和性能测试;(四)协助外包管理部门共同管理外包过程。
第七条商务合作部负责外包项⽬的商务活动,负责外包项⽬的招投标相关⼯作,对于⼤宗外包项⽬需要技术部领导审批。
第⼋条外包项⽬审批通过后,项⽬申请部门需要向产品管理部登记,以便进⾏外包管理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件开发流程管理规范
一、概述
随着公司规模的扩大、各部门对软件需求的激增、提高效率的工作要求,IT 部门承接的软件开发项目越来越多,而与之相对应的就是软件开发流程不明确,软件项目的随意性较大、可追溯性较差、可统计性模糊、可预测性不足是摆在我们面前最直接的问题。
为了适应公司的发展,IT 部软件开发项目特制订本流程。
二、流程
由上图可以得出以下几个关键步骤:
一、需求部门:
I、需求部门首先需要填写《软件需求申请表》,说明需要开发的软件具体用途径、目前工作模式、工作不方便之处、基本功能等信息;
II、待 IT 部门评审通过后,通知需求部门,填写《软件开发申请表》,具体列明需要实现的功能、目前工作流程、使用系统后需
要达到的状态,可节省的人力、物力,调高的效率等信息;
III、软件开发测试完成之后,接受 IT 部门的软件使用培训,并填写《参与培训确认单》; IV、软件试用结束后,填写《软件验收表》,完成软件项目的开发流程; V、在开发测试过程中,遇到开发风险增加、需求变更等,都需要配合 IT 软件开发人员
填写相关的《项目风险管理表》和《项目
变更管理表》。
二、IT 部门:
I、积极对需求部门提出的《软件需求申请表》进行评审、审批,限 3 个工作日完成,
及时反馈结果给需求部门;
II、指导需求部门填写各类表格; III、积极评审需求部门填写的表格、积极沟通,有效获得相对准确的需求,并填写完善,
让需求部门签字确认;
IV、进入开发流程后,积极填写《项目成员组成表》、《项目策划任务书》、《WBS 表》、
《项目进度计划表》等(具体见附件);
V、积极开展人员培训和软件试用工作,编写完善的《XXX 软件试用说明书》,并要求相关人员签字确认,并存档处理。
三、附件附件一、编码规范1、
命名空间
1. 公共类库(公司功能业务):
(1)全局公共类库:
例:生成 dll 文件,添加至最小应用库可全程序引用
(2)局部公共类库(主要区分公司),命名方式为专有业务场景+专有业务名+具体类名:例:(总部)/In(国内市场)/Rb(生产)注:(公共类库)信息登记、评审、信息共享,命名空间最多三层2. 项目程序文件:项目文件名,以核心功能的英文名称为准,格式:ECO_英文名词首字母大写
2、命名规则
文件夹及相关文件命名规则
a) 文件夹:功能文件夹,采用驼峰形式,首字母大写全称
b) 窗体文件:采用驼峰形式,首字母大写全称
c) 接口:I+采用驼峰形式,首
字母大写全称 d) 方法名:采用
驼峰形式,首字母大写全称 e)
窗体控件:同上
f) 局部变量:变量类型缩写(int,fl,str)+驼峰形式
g) 全局变量:不建议使用
h) 常量:全英文大写,不建议出现在页面
i) 数组:功能名称首字母小写+驼峰+Arr
j) List 集合:功能名称首字母
小写+驼峰+List k) 字典:功
能名称首字母小写+驼峰+Dic
l) Dateset:功能名称首字母小写
+驼峰+Ds m) DateTable:功能
名称首字母小写+驼峰+Dt
附表1:
类型前缀(小写)+驼峰样式名词或名词短语对于基本类型
变量,前缀如下表:
StringBuilder 类型,可使用 sb 作为前缀开头,后跟变量名驼峰样式。
对于集合类型变量,如数组、List、Dictionary,可以在变量命名的基础上结尾加入集合类型简写。
如,sqlList,dataDic 等。
数据库表命名规则
命名方法:项目大写首字母+_+功能(全英文大写)【多单词组成的,取单词首字母大写组合】表字段:类似变量命名
索引:表名(或缩写)+_+列名+idx 注:ID、创建人(creator)、创建时间(createTime)、状态(state)、创建人工号(createID)等字段为必须创建的字段;
3、代码规范
代码分层结构
建议每个模块中代码至少分三层结构,根据项目大小决定是否采用这种方式,可以先以一两个项目测试一下这种结构;
例如一个项目的一个模块,可以创建文件夹结构如下所示:
表现层页面
*.aspx 数据
表现层直接面向用户,逻辑层负责后端逻辑处理,数据层负责和底层数据库交互。
表现层调用逻辑层代码,只有查询数据时,表现层可以直接调用数据层;逻辑层负责处理逻辑,为表现层提供调用接口,其数据操作需要调用数据层提供接口;数据层负责提供和处理数据,需要为逻辑层提供调用接口,所有与数据库的操作都只能在该层实现。
编码规范
通用
a) 类功能必须唯一:每个文件中只有一个类(不包括内部类)
b) 行宽限制在 80 个字符内,必须按最低优先级换行
c) 方法代码限制在200 行内
d) 类代码建议限制在1500 行内
e) 方法参数过长,应分行显示,逗号至于末尾
f) 每行声明一个变量,且尽量赋初值,同类型必须连续写
g) 复合语句都需加大括号{ },不要写在一行,if、else 尽量配对出现,try、catch、finally h) 高扇入、合理扇出(尽量不超过三层)
i) 缩进不允许空行
j) 递归要慎用,goto 不允许使用
k) 方法内禁止更改传递过来的参数
l) 实体类中变量应私有化,应包含每个变量的set 及get 方法m) 避免三层以上嵌套循环
n) 代码应包含正确性和容错性处理(try、catch、finally)
o) 编程时应考虑代码的效率(时间、空间),多循环内侧,变量声明放在循环外
p) 对象比较用对应方法不用“==”,例如:
equals,compare to q) 计算尽量避免除法
r) 设计方法可重用性
s) else、finally、catch、
日志必须有出口 t) 堆常量
统一定义,避免用常量字符串
u) 变量必须初始化
表现层
页面端
1、JS 代码和CSS 代码统一放置在html 的head 子元素中;
2、JS 代码需要有注释;
3、页面控件有嵌套情况的,各级需要缩进,并且各级的头尾对齐;页面处理类
1、页面加载时谨慎处理Session 置空;
2、类中多处用到的变量建议创建成员变量,成员变量应私有化(private),位于类代码上方;
3、除用于前台调用的如方法需为public 外,其他方法建议均为private;
4、Page_Load 方法:
建议将页面加载方法中内容加入
if (!
{
}
代码块中,避免页面每次操作后都调用Page_Load 方法;
5、获取页面的服务端控件的值前需对控件值的 null 和空进行判断,避免空指针异常;
6、避免过多或复杂的逻辑处理代码,统一调用逻辑层代码,将展现和逻辑分离;
7、对数据的增删改操作不要直接调用数据层,查询可直接调用数据层代码;
逻辑层
1、除对表现层提供的接口方法外,其他方法均保持私有 private
2、对数据库数据处理调用数据处理层代码
3、对串行的数据处理时事务保证
4、逻辑代码容错性保证
数据处理层
1、除对外提供的接口方法外,其他方法均保持私有 private
2、对数据库的底层访问(获取数据库连接、执行 sql 语句、数据库连接关闭)均调用数据库操作帮助类
3、数据处理层类中只处理数据,避免业务逻辑代码
4、sql 语句编写时避免使用“+”
5、数据库操作帮助类中数据库操作的容错性和事务处理(插入、更新、删除操作需要事务保证)
4、注释
编写任何代码都需要有代码注释,并且代码修改后也要修改注释,保证代码注释同步。
注释模板设置
在 vs 安装目录,以下目录中,找到文件,修改保存后,重启 vs,之后创建新类时即会自动产生注释。
D:\Program Files (x86)\Microsoft Visual
Studio
\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\
但是修改后没有效果。
手工添加注释
创建新对象可以手工添加注释:
注释写法:
块注释注释包含在/*和*/中,
可以有多行。
行注释
以
/*
============================================================= =================
/*
*DESC : 类功能描述
*SINCE :版本
CREATOR: 创建人
心成员(Core team)和项目非核心成员(Extended t e a m)。
附件五、项目策划/任务书
附件六、WBS 表
注:以上工期及费用估算均用最可能值
附件七、项目进度计划表
附件十、项目会议纪要
附件十三、项目总结表。