系统架构设计师论文《论行业应用软件系统的开发规划》


[摘要]

本人在一所高校信息技术中心工作,2005年应多个学校和校领导的要求,对以前开发的较独立的十多个学校信息化软件系统进行升级改造,使得各系统之间能够相互进行数据共享,配合工作。所进行的软件项目,与高等院校的学生招生、收费、教学、管理和服务密切相关,具有很强的行业特征,需要使用系统的师生员工(用户单位)、高校管理专家和项目开发人员间良好的分工协作,与常规的通用应用软件开发过程相比,具有明显的差异,主要表现在系统的分析、设计、实现、测试和维护均带有明显的行业特点,行业应用软件的成功开发必须遵循行业规范,正确使用专业术语,及时与专家和用户进行交流

本人在项目中主要负责需求分析和软件系统设计,本文主要从资源互补、角色定位相互协作的角度讨论行业软件系统的开发规划工作,我在实践中发现,行业应用软件系统的成功开发是从其规划到诞生起就应从行业中汲取各种营养,具有行业特征、行业味道,才能满足行业应用的需求

[正文]

作为一所高校信息技术中心的技术骨干和技术负责人,高校内部信息化建设受到我们时常的关注。十多年来,我们与兄弟院校、知名软件企业合作进行了多项与高校信息化建设相关的软件系统开发工作,有学生收费管理系统、学生学籍管理系统、学生成绩管理系统、学生选课系统、学校图书借阅系统、学生奖惩管理系统、学生应聘就业管理系统、学校后勤服务系统、教材管理系统、教师业绩考核系统、学校办公自动化系统等十多个软件项目,覆盖了学校招生、入学收费、教学管理、学生管理、后勤服务和学生毕业的整个过程,这些项目,是我们与不同兄弟院校技术部门、不同企业合作的结果,被省内 30 余家高校使用,它有力地促进了我们与兄弟院校的信息化建设,提高办学的效益和办事效率但随着系统的增多,也暴露出了一些矛盾问题,制约了相关学校的发展和信息化进程:

1、这些软件项目是我们与不同兄弟院校、不同企业合作开发的,也有些是独立开发的,信息难于相互共享。

2、这些软件项目开发于不同时期,期间技术中心人员变更较大,不同阶段、不同时期采用的技术不同,各个系统形式多样,有单机的、C/S 网络结构的、B/S 网络结构的和混合结构的。使用极不方便。

3、经过近年来的高校大发展进程,各校在管理上有了较大变化,原来的一些软件已经不适应学校的发展。

因此,在 2005年我校领导参加省教育厅关于学校信息化建设工作会时,省内 20 余家高校提出让我们牵头进行系统的升级改造工作,并承诺在资金和人力方面给予支持,引起了省教育厅领导高度重视。我校领导将这一艰巨任务以政治任务的形式布置到我们信息技术中心,限时完成。

项目于 2005 年5月启动,成立了由七个人组成的项目组,作为信息技术中心的技术骨干和技术负责人,我参与了该项目的总体架构组,主要负责需求分析和软件系统设计,并完全负责该项目的管理。虽然我们团队的大部分人长期工作在高校技术部门,但对于高校教学、管理和服务中的专业知识掌握并不多,高等教育行业的专业性特强,由开发人员现学领域知识是不现实的,这就需要用户和行业专家的协助。从相关部门聘请行业专家是明智之举。

作为行业性很强的应用软件,它和通用应用软件系统开发有很多不同,我觉得主要有以下几个方面:

一是需求分析阶段专业业务难把握、难摸透,管理目标和专业目标难一致。

二是设计阶段,设计规范难统一,难细化。

三是开发阶段,开发阶段的测试往往由于专业背景各系统联系紧密,难确认测试。

四是实施阶段,实施阶段的业务人员对系统认同差,沟通复杂。

五是整个过程涉及到过多的行业习惯,许多方面不和其他开发雷同。

聘请行业专家做项目组的顾问是应用软件开发过程中较好的策略。行业专家主要是作为领域知识源,提供技术文件和已有应用。在高校信息化改造建设这个项目中,我们从有关部门和其他高校聘请了各分系统的资深专家作为项目的顾间,获取到《高等学校数据规范标准》等技术文件和部分以前编写的源代码,该源代码是多个独立运行的、凌乱的、较小的系统,经过整理后可以用到新系统中,这为领域模型和设计模型的建立打下了良好的基础。

用户是应用软件目前和未来的需求提供者,其对项目成败的重要性是显而易见的。00A过程是从对系统将被使用的方式的理解开始的,在需求诱导时需要从用户的观点对系统建模,需要项目组和用户共同确定使用场景和定义系统的功能和运行需求,需要用户提供清楚而无二义性的终端用户和系统如何相互交互的描述,需要用户提供确认测试的基础。在这外项目中,我们与用户充分合作,请用户给我们讲解高等学校有关数学、管理和服务的常识、过程、功能等,将用户作为项目组成员,作为每个阶段的技术评审的主要成员。

开发者是应用软件系统的建设者,需要从用户方进行需求诱导,建立领域分析模型,需要将分析模型变换为设计模型,建立软件的构造蓝图,需要完成编码和测试。由于应用软件具有行业背景,在建立分析模型是需要从各种渠道了解行业知识,在建立设计模型是需要使用逆向工程技术从现有的系统中得到关键的算法。在进行测试时需要使用用户提供的具有行业特点的真实的测试数据。开发人员需要随时在涉及到行业知识时向用户或行业专家请数,必须克服在开发一般应用软件时的问题讨论在相对封闭的范围内进行的特点。

与常规的通用应用软件开发进行比较,专业背景的应用软件开发过程及各个环节的主要差异有:

(1)在计划阶段,具有行业背景的应用软件系统与普遍应用软件的目标与动机一般是不同的,普遍应用软件以给本公司或部门带来经济上的收益为目的,而行业应用软件以更好的完成某项职能为目的。高等教育行业的应用系统开发目的是为了对高校内教育教学、管理和后勤服务进行有效管理,使师生方便、快捷、充分地享受高校资源,提高办学水平和能力。这就要求系统方案的制定必须符合行业的特征。基于高等教育行业的信息化建设改造项目,因其牵扯高校内部教务、人事、财务、学生管理、招生、就业、团委、后勤等众多部门,针对不同院校,所管理学生的学历层次、学习类型、办学形式等五花八门,管理方式也有差别,这就增加了应用软件开发的复杂性。

(2)在需求分析阶段,行业背景的应用软件与普通应用软件相比一般需求比较明确、相对固定和有章可寻。必须获得行业的各种技术规范、数据共享资料及现行系统的运行数据。在此基础上划出应用软件的作用范围和与周围环境进行数据交换的接口,在类的划分协作者模型和对象-关系模型。

(3)在设计阶段,行业背景的应用软件系统与普通应用软件相比,从用户界面设计数据管理、任务管理到控制机制均要表现出行业特征。我们在该项目开发时,邀请有专业知识的用户参加到项目组实施的关键环节中,将设计模型在该行业专家作用户中进行解释。确保设计模型与领域模型保持一致。数据和任务管理的设计策略需要参考与《高等学校数据规范标准》相类似的行业标准,通过创建每个操作的过程表示类属性的数据结构而完成对象设计,数据结构和算法必须符合行业需要,使用对象间的协作和对象关系完成消息设计。在评审设计模型时需要行业专家和用户的参与,从行业的角度提出修改意见。

(4)在集成测试阶段,行业背景的应用软件系统与应用软件相比,一般更强调进行日测试和进行新旧系统对比,需要使用行业的数据作为测试数据,测试案例需要由用户和专家参与制订,行业数据需要由用户和专家提供,测试结果需要由用户和专家确认和解释由于针对高校信息化系统建设牵扯到众多的部门、管理方式和类别多、数据共享关系复杂数据量非常大,因此系统测试需要在真实的数据环境中进行。我们在测试高校信息化系统建设(改造)应用软件时使用的是真实的数据,从数据的采集、传输、储存、处理和显示等的各个环节均使用的是高校各子系统的真实数据,根据测试结果和用户意见进行修改。

从上面的几个主要差别可以看出,具有行业背景的应用软件的开发需要行业中的各类标准、专业知识、现有相关系统合人员参与到开发过程中,要使行业特点与信息技术有机结合,在项目管理上还需要包含行业内的相关的人和物。

在该项目的开发过程中,人员、设备、资料等的方方面面的资源均是由项目组与高校信息化系统共享的,在知识和思想上充分融合,经过双方的共同努力不仅开发出了满足高等教育行业需要的应用软件,还丰富了双方的知识面,拓展了眼界。在实践中我发现,行业应用软件的开发必须遵循行业规范,正确使用专业术语,及时与专家和用户进行交流,要从其规划到诞生起就从行业中汲取各种营养,使其具有行业特征、行业味道。只有这样,行业应用软件的开发才能取得成功,才能被该行业人员认可应用,才能满足行业应用的需求。




艾金森

每一个童年的梦想都值得用青春去捍卫!




用户地图 心情地图 日记地图 笔记地图 时间轴地图 投票地图 习题地图 2024-10-08 Web开发记录【有计划停止更新新增新功能 - 只保留bug修复】掷骰子补丁熬到岁末了兄妹日常2022年2月16日我找到oc文了兄妹日常2022年2月28日安否 的日记 2024/10/21 23:38:33复盘day5海外回归中医善本古籍《望色启微》又到了最后一个月兄妹日常2022年1月3日高考志愿填报部级直属院校介绍明清中医珍善孤本兄妹日常2021年11月29日兄妹日常2021年11月11日兄妹日常2021年12月13日距离 的日记 2024/08/01 15:42:01兄妹日常2022年3月11日jedahdohma 的日记 2024/11/20 13:12:24抽象东西可代所有oc兄妹日常2022年3月30日兄妹日常2021年11月18日兄妹日常2021年12月19日今天这篇填几个之前的坑兄妹日常2022年1月4日兄妹日常2022年4月21日简赤jc 的日记 2025/01/01 11:20:06我杀了自己的表哥兄妹日常2022年3月19日兄妹日常2022年3月22日茶文化博览 中国茶韵兄妹日常2022年1月28日郭文贵欺诈罪行终被定罪,正义得以伸张高考志愿填报部指南及报考技巧站在未来的角度看待现在兄妹日常2022年1月19日兄妹日常2022年1月25日短暂的喘息risk 的日记 2024/11/25 15:21:44高血压、2型糖尿病、高脂血症、肥胖症、膳食运动指导要点基层医务人员应用实操手册(试行)关于五叔的八卦,他的再娶标准,算计还是老一辈会算计以前我总是懊恼自己的选择兄妹日常2022年1月5日重整旗鼓25.1.1 可能是太紧张:人的精力都是有限的。兄妹日常2022年4月10日中华名医名方薪传3本成都营养师培训中心课程肥胖 -6课我不爱自由兄妹日常2022年3月6日UL4200A检测报告GCC证书心学随笔一10.10jedahdohma 的笔记 2024/08/16 10:01:41JS 多级函数,类似class类的写法如何更改Element UI的this.$confirm按钮样式ESP32 【ESP_ERROR_CHECK】说明【用户意见】2024-11-03 【Bug的修复】C语言根据日期判断星期几(使用基姆拉尔森计算公式)软件架构模式 三层cs架构介绍望诊:中医望眼辨证图解突然记起小时候小说中的无证之案解决Vue表格操作行与内容行不对齐的方法书单成瘾丨240727 刘亮程李娟余华蔡崇达新书怎么才算是爽文啊,反正我看的这本不是软考架构-架构风格EPS32 PWM操作 LED控制器呼吸灯实验老年人营养保健手册(专业版)NoSQL 非关系型数据库怪诞行为学--可预测的非理性124.7.20-8.6仿香试香Visual Studio和Visual Studio Code有什么区别EPS32 中断说明系统架构设计师论文《论虚拟现实技术的应用与发展》JS 异步加载并执行对应函数高考志愿填报名校名专业考生分享会话剧ZXF高考志愿填报全攻略54项系统架构设计师论文《论基于构件的软件开发》陶喆蓝砖结尾曲有感系统架构设计师论文《论面向服务架构设计及其应用》Lambda 架构 介绍静注人免疫球蛋白(ph4)的功效与作用是什么EPS32 外部中断EXIT操作 KEY实验英语老教授又想圈钱了EPS32 基础GPIO操作 KEY实验jedahdohma 的笔记 2024/12/10 15:33:54对于完成一件长久事业的方法总结肛肠科手术视频51集罕见中医验方6本系统架构设计师论文《信息系统项目管理中的沟通管理》高考志愿填报讲解大学专业之师范教育类20240728系统架构设计师论文《论软件维护方法及其应用》高考志愿填报中大学城市的选择书单成瘾丨240726 基层公务员读物现在才有闲情看得下书,但我却在迷茫。释怀?ESP32 开发记录【第一步入门感觉开始了】