前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >系统架构师论文-论行业应用软件系统的开发规划

系统架构师论文-论行业应用软件系统的开发规划

作者头像
cwl_java
发布2019-10-26 21:59:31
5030
发布2019-10-26 21:59:31
举报
文章被收录于专栏:cwl_Javacwl_Java

论行业应用软件系统的开发规划

摘要

代码语言:javascript
复制
    本人在一所高校信息技术中心工作,2005年应多个学校和校领导的要求,对以前开发的较独立的十多个息化软件系统进行
改造,使得各系统之间能够相互进行数据共享,配合工作.所进行的软件项目,与高等院校的学生招生、收费、教学、管理和服
务密切相关,具有很强的行业特征,需要使用系统的师生员工(用户单位)、高校管理专家和项目开发人员间良好的分工协作
;与常规的通用应用软件开发过程相比,具有明显的差异,主要表现在系统的分析、设计、实现、测试和维护均带有明显的行
业特点,行业应用软件的成功开发必须遵循行业规范,正确使用专业术语,及时与专家和用户进行交流.
    本人在项目中主要负责需求分析和软件系统设计,本文主要从资源互补、角色定位、相互协作的角度讨论行业软件系统的
开发规划工作,我在实践中发现,行业应用软件系统的成功开发是从其规划到诞生就应从行业中汲取各种营养,具有行业特征、行业味道,才能真正的满足应用的需求.

正文

代码语言:javascript
复制
    作为一所高校技术中心的技术负责人,高校内部信息化建设受到我们时常的关注.十多年来,我们与兄弟院校、知名软
件企业合作进行了多项与高校信息化建设相关的软件系统开发工作,有学生收费管理系统、学生学籍管理系统、学生成绩管
理系统、学生选课系统、学校图书借阅系统、学生奖惩管理系统、学生应聘就业管理系统、学校后勤服务系统、教材管理系
统、教师业绩考核系统、学校办公自动化系统等十多个软件項目,覆盖了学校招生、入学收费、教学管理、学生管理、后勤
服务和学生毕业的整个过程,这些顼目,是我们与不同兄弟院校技术部门、不同企业合作的结果,被省内30余家高校使用,
它有力地促进了我们与兄弟院校的信息化建设,提高办学的效益和办事效率.但随着系统的増多,也暴露出了一些矛盾问题,
制约了相关学校的发展和信息化进程,
    1、	这些软件项目是我们与不同的兄弟院校、不同企业合作开发的,也有些是独立开发的,信息难于相互共享.
    2、	这些软件项目开发于不同时期,期间技术人员变更较大,不同阶段、不同时期采用的技术不同,各个系统形式多样
,有单机的、C/S网络结构、B/S网络结构的和混合结构的.使用极不方便.
    3、经过近年来的高校大发展进程,各校在管理上有了较大变化,原来的一些软件已经不适应学校的发展.
    因此,在2005年我校领导参加省教育厅关于学校信息化建设工作会时,省内20余家高校提出让我们牵头进行系统的升级
改造工作,并承诺在资金和人力方面给予支持,引起了省教育厅领导高度重视.我校领导将这一艰巨任务以政治任务的形式布
置到我们信息技术中心,限时完成.
    项目于2005年5月启动,成立了由七个人组成的项目组,作为信息技术中心的技术骨干和技术负责人,我参与了该项目的
总体架构组,主亶负责需求分析和软件系统设计,并完全负责该项目的管理.
    虽然我们团队的大部分人长期工作在高校技术部门,但对于高校教学、管理和服务中的专业知识掌握并不多,高等教育
行业的专业性特强,由开发人员现学领域知识是不现实的,这就需要用户和行业专家的协助,从相关部门聘请行业专家是明智
之举.
    作为行业性很强的应用软件,它和通用应用软件系统开发有很多不同,我觉得主要有以下几个方面:
    一是需求分析阶段专业业务难把握、难摸透,管理目标和专业目标难一致.
    二是设计阶段,设计规范难统一,难细化.
    三是开发阶段,开发阶段的测试往往由于专业背景各系统联系紧密,难确认测试.
    四是实施阶段,实施阶段的业务人员对系统认同差,洶通复杂.
    五是整个过程涉及到过多的行业习惯,许多方面不和其他开发雷同・
    聘请行业专家做项目组的顾间是应用软件开发过程中较好的策略.行业专家主要是作为领域知识源,提供技术文件和已有
应用,在高校信息化改造建设这个项目中,我们从有关部门和其他高校聘请了各分系统的资深专家作为项目的顾问,获取到《
高等学校数据规范标准》等技术文件和部分以前编写的源代码,该源代码是多个独立运行的、凌乱的、较小的系统,经过整
理后可以运用到新的系统中,这为领域模型和设计模型的建立打下了良好的基础.
    用户是应用软件目前和未来的需求提供者,其对项目成敗的重要性是显而易见的.00A过程是从对系统将被使用的方式的
理解开始的,在需求诱导时需要从用户的观点对系统建模.需要项目组和用户共同确定使用场景和定义系统的功能和运行需求
;需要用户提供瀆楚而无二义性的终端用户和系统如何相互交互的描述;需要用户提供确认测试的基础.在这外項目中,我们
与用户充分合作,请用户给我们讲解高等学校有关教学、管理和服务的常识、过程、功能等,将用户作为项目组成员,作为
每个阶段的技术评宙的主要成员.
    开发者是应用软件系统的建设者,需要从用户方进行需求诱导,建立领域分析模型;需要将分析模型变换为设计模型,
建立软件的构造蓝图,需要完成编码和测试.由于应用软件具有行业背景,在建立分析模型是需要从各种渠道了解行业知识,
在建立设计模型是需要使用逆向工程技术从现有的系统中得到关键的算法.在进行测试时需要使用用户提供的具有行业特点的
真实的测试数据,开发人员知开需要随时在设计到行业知识时向用户或者专家请教,必须觥在开发一般应用软件事的问题讨论在相对封闭的范围内进行的特点.
    与常规的通用应用软件开发进行比较,专业背景的应用软件开发过程及各个环节的主要差异有:
    (1)在计划阶段,具有行业背景的应用软件系统与普遍应用软件的目标与动机一般是不同的,普遍应用软件以给本公司
或部门带来经济上的收益为目的,而行业应用软件以定好的完成某项职能为目的.高等教育行业的应用系统开发目的是为了对
高校内教育教学、管理和后勤服务进行有效管理,使师生方便、快捷、充分地享受高校资源,提高办学水平和能力.这就要求
系统方案的制定必须符合行业的特征.基于高等教育行业信息化建设改造项目,因其牵扯高校内部教务、人事、财务、学生管
理、招生、就业、团委、后勤等众多部门,针对不同院校,所管理学生的学历层次、学习类型、办学形式等五花八门的管
理方式也有差别,这就增加了应用软件开发的复杂性.
    (2)在需求分析阶段,行业背景的应用软件与普通应用软件相比一般需求比较明确、相对固定和有章可寻.必须获得行
业的各种技术规范、数据共享资料及现行系统的运行数据.在此基础上划出应用软件的作用范围和与周围环境进行数据交换的
接口,在类的划分协作者模型和对象-关系模型.
    (3)在设计阶段,行业背景的应用软件系统与普通应用软件相比,从用户界面设计、数据管理、任务管理到控制机制均
要表现出行业恃征.我们在该项目开发时,邀请有专业知识的用户参加到項目组实施的关键环节中,将设计模型在该行业专家
作用户中进行解释.确保设计模型与领域模型保持一致.数据和任务管理的设计策略需要参专与《高等学校数据规范标准》相
类似的行业标准;通过创建每个操作的过程表示类属性的数据结构而完成对象设计,数据结构和算法必须符合行业需要,使
用对象间的协作和对象关系完成消息设计.在评审设计模型时需耍行业专家和用户的参与,从行业的角度提出修改意见.
    (4)在集成测试阶段,行业背景的应用软件系统与应用软件相比,一殷更强调进行B测试和进行新旧系统对比,需要使用
行业的数据作为测试数据,测试案例需要由用户和专家参与制订,行业数据需要由用户和专家提供,测试结果需要由用户和
专家确认和解释.由于针对高校信息化系统建设牵扯到众多的部门、管理方式和类别多、数据共享关系复杂、数据量非常大,
因此系统测试需要在真实的数据环境中进行.我们在测试高校信息化系统建设(改造)应用软件时使用的是真实的数据,从数据
的采集、传输、储存、处理和显示等的各个环节均使用的是高校各子系统的真实数据,根据测试结果和用户意见进行修改.
    从上面的几个主要差别可以看出,具有行业背景的应用软件的开发需要行业中的各类标准、专业知识、现有相关系统合
人员参与到开发过程中,要使行业特点与信息技术有机结合,在项目管理上还需要包含行业内的相关的人和物.
    在该项目的开发过程中,人员、设备、资料等的方方面面的资源均是由項目组与高校信息化系统共享的,在知识和思想
上充分融合,经过双方的共同努力不仅开发出了满足高等教育行业需要的应用软件,还丰富了双方的知识面,拓展了眼界.
    在实践中我发现,行业应用软件的开发必须遵循行业规范,正确使用专业术语,及时与专家和用户进行交流,要从其规
划到诞生起就从行业中汲取各种营养,使其具有行业特征、行业味道.只有这样,行业应用软件的开开发才能取得成功,并且
被该行业人员认可,应用,才能满足行业应用的需求.
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 论行业应用软件系统的开发规划
    • 摘要
      • 正文
      相关产品与服务
      项目管理
      CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档