- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
论软件需求获取技术及应用
【摘要】
2019 3
年 月,我单位联合某高校研发了《程序在线评测比赛考试系统》。系
统以程序代码在线提交自动评测功能为核心,分为题库模块、评测机模块、实验
作业模块、考试模块、比赛模块、抄袭判定模块、用户管理模块等,支持对接教
务平台。在项目中我担任系统架构师,负责架构设计工作。
本文以该系统为例,主要论述了软件需求获取技术在项目中的具体应用。在
需求的前期阶段,以用户访谈和调查问卷结合的方式来进行需求获取;在需求的
中期阶段,以现场观摩的方式来进行需求获取;在需求的后期阶段,采取构造快
速原型的方式,持续迭代,来进行需求细化和系统演进。利用多种技术实施需求
获取,有效地降低了项目风险,最终系统顺利上线,获得了用户的一致好评。
【正文】
笔者在一个专为高校建设计算机专业智能教学一体化平台的单位任职,过往
2019 3
成果有 《计算机组成原理仿真实验系统》等。 年 月,我单位联合某大学
OJ
研发了 《程序在线评测比赛考试系统》项目 (以下简称为 “ 系统”),以取代
原有传统的编程上机考试平台。
系统以程序代码的在线提交自动评测功能为核心,主要分为题库模块、评测
机模块、实验作业模块、考试模块、比赛模块、抄袭判定模块、用户管理模块等。
题库模块主要负责试题和测试用例的管理,用户根据试题要求编写程序代码提交
到系统,系统将测试用例与程序代码发送给评测机模块,由评测机自动编译、执
行、判分,并将结果发送给其他相关模块进行统计;实验作业模块用于在线布置
作业,从题库中选取试题,设置截止日期等要求;考试模块用于学生在线考试,
按教师预先设置的参数自动从题库随机抽题生成试卷,以及向教务平台上传考试
成绩;比赛模块主要用于ACM 竞赛的培训;抄袭判定模块用于鉴定代码与他人
代码雷同率;用户管理模块负责用户信息的管理。在这个项目中,我担任了系统
架构师的职务,主要负责系统的架构设计相关工作。
常见的需求获取技术有用户访谈、问卷调查、现场观摩、原型化方法等。用
户访谈主要对三个之内代表性客户谈话沟通获取需求,优点是灵活性好,适用范
围广,缺点是时间难以安排,信息量大记录困难,需要领域知识,对机密话题敏
感等,适合简单小范围的需求获取;问卷调查主要通过设计调查表来收集用户需
求,优点是可短时间内廉价从大量回答中收集数据,缺点是双方未见面无法澄清
提问,反馈信息不全面,无法深入问题细节,适合大范围需求收集;现场观摩主
要针对较复杂、难理解的流程、操作,优点是直观清晰,缺点是效率较低,适合
复杂需求的获取;原型化方法通过构造一个简易原型系统,根据用户在试用过程
中意见重复修改直到满意,优点是允许用户早期交互反馈,缺点是较为费时,会
误导用户对未来系统有不切实际的希望,适合需求不明确的情况。
OJ
本文主要通过前期、中期、后期三个阶段,分别论述了 系统项目在需求
获取过程中所采用的具体技术方法。
1. 前期阶段
OJ
在此阶段遇到的主要问题就是 平台需要支撑全校编程课程的教学活动,
这就需要有效、快速地全面概括需求。我们采用了用户访谈和调查问卷结合的方
式,来进行需求获取。由于涉及编程课程众多,为了能突出重点,我们先选择了
在教学方式上有代表性的部分课程,如程序设计基础、算法与数据结构、操作系
统等,优先进行,然后再逐渐铺开。我们把需求调研团队分成了几组,分别进行
需求收集。课程教学组长负责课程组的教学领导工作,我们采用了访谈的方式进
OJ
行需求获取,通过与课程教学组长的详细沟通,我们对 系统的主要业务功能、
用户角色等有了整体、全面的了解。由于任课教师具体的教学活动过程较为复杂,
如实验作业、考试、比赛培训等,在课程教学组长的配合下,我们制作了调查问
卷表格,下发给各位任课教师,经过统计整理后,我们获悉了编程课程的教学活
动、过程细节。这种安排主次分明、
文档评论(0)