想做好定制软件开发工作,必须对定制软件开发流程管理必须做科学,每一步定位清晰,目标明确,下面对定制软件开发工作流进行拆解分析:
需求分析
资深软件系统分析师对企业所面临的管理问题进行分析
需求初步确认
软件系统分析师初步确认企业需求,作为合同确认的依据
系统调研
软件系统分析师对企业的初步需求进行详细调研,确定系统界面的设计和运行的流程
需求说明书
将软件系统分析师对企业详细调研文稿化,经双方讨论确认后,开始系统界面设计
界面设计
专业软件开发工程师及美工设计师完成系统界面设计,经用户确认,开始软件开发
开发及测试
专业软件开发工程师和测试工程师完成系统软件开发和测试,强大测试力量和一对一软件测试体系,确保系统软件质量
使用培训
专业培训讲师对企业进行软件基础知识和系统软件运作流程全面培训
初始化试运行
专业软件工程师辅导用户使用系统,协助用户进行初始化工作;系统初始化完毕,进行试运行阶段,测试系统功能的完善性和全面性
正式切换 双方共同测评系统,确保系统能全面符合用户需求说明书定义的所有功能,正式切换系统
从项目推动过程来讲,可以分为:
1、 项目启动阶段
这一阶段主要是为实施做好准备,由项目指导委员会召开项目动员大会,确定项目组成员,确定项目的计划和目标,建立实施所必须的系统环境。
2、调研分析阶段
项目实施小组在开始系统实施前,先对公司现有的应用系统进行详细调研和分析,根据企业的具体情况和信息化管理的特点确定目标业务流程。对各级用户进行需求调研。最终以双方确认的目标作为下一步具体实施的业务蓝图,并结合软件产品和技术开发实际情况,规划设计详细的解决方案,并进行确认,作为设计开发的基础。
3、 系统开发阶段
根据调研分析的结果,进行系统设计、编码、测试,完成软件的开发。
4、 项目实施阶段
在系统开发完成之后,软件实施进入实质性阶段。项目实施小组要在项目指导委员会的全力支持和相关部门、人员的协作配合下完成大量的具体工作,比如数据分析与导入、系统设置、人员培训、规章制度建立、实施文件归档、客户化修改等。软件的使用者尤其是关键用户必须在这段时间内掌握相关功能模块的操作和应用,以便在系统正式运行后能够独立地使用软件。
5、 试运行阶段
在经过项目实施阶段后,各个模块及整个系统需要试运行一段时间,以确信软件能够在企业中运行良好,并达到预期效果。同时,根据试运行阶段中发现的问题进行系统调整。
6、 系统切换/正式运行
在试运行阶段后,确信软件可以正式开始运行后,需要进行系统切换,企业正式切换到新的业务流程,并在软件上进行企业日常业务处理。至此,软件的实施已经全部完成,进入后期维护阶段。
架构设计
设计的中心思想
1、 以业务逻辑建模,而不是以数据库为中心建立系统模型
对信息系统的设计,应紧紧专注于将企业生产的系统抽象转化为信息系统的模型,能够准确、完整、清晰地了解业务逻辑和业务流程,并且对业务的变化作预先考虑,是项目成功的关键。开发人员容易出现的问题是以关系数据库设计或数据控件的设计代替系统建模,造成的问题是以数据为中心,其结果是系统与数据紧密耦合,难以实现业务逻辑的变化和扩展。
2、 定制软件开发是否满足了用户的期望
为了实现这个目标,完善准确的需求收集和需求分析,是项目成功设计的前提。否则无论这个软件再先进,从用户角度看,也是失败的软件。因此,在设计前期,对需求分析所必须的资源和时间投入,必须有足够的重视和充分的计划。
3、 必须要考虑非软件的因素
任何一个项目都是为了用户实现其业务目的,软件工程也不例外。同时,企业用户作为一个实体,其决策收到其行业特点、用户、市场、上级主管部门、决策人员的个性、企业的定位、企业的现状、长远发展规划、历史因素等综合情况的影响,因此,在架构设计上,应综合考虑这些因素。
设计原则
4、 在可能的情况下,按照“统一规划、统一架构、统一标准”的原则。
5、 以良好的设计模式来保证系统的先进性、合理性和应用扩展性。
6、 系统的模块之间应用和交互,尽可能采用松耦合,以实现系统的灵活性和实用性,延长系统的生命周期,保护用户的投资。
7、 采用以SOA作为体系架构的核心,以保证系统级别和部件级别重复使用和业务重组,便于用户长远的。
8、 系统的开放性要求能软件实现三个无关性:通讯组件的网络及协议无关性,数据来源无关性和用户对流程无关性。
9、 采用有效的需求分析手段,力图实现准确到位的需求分析,
为良好的人机界面设计提供坚实的基础。高度重视用户界面的设计,作到符合不同用户的实际经验和使用习惯,减少对信息系统的畏惧感,提高用户使用信息系统的信心,真正使系统成为提高生产管理效率的有效工具。
10、尽可能采用经过实际运行检验的成熟模块,
从而节省开发资源和缩短开发周期,确保项目按时交付使用。