ASE-2 从需求分析看软件开发的挑战

不知不觉,学期已过大半,我们的软工作业的需求分析也已落下帷幕。在刚结束的需求分析中,我最大的感受是,清晰的边界以及系统核心业务在软件开发中十分重要

需求分析

我们小组的题目时轨道信号灯控制系统。在最初的类图设计中,我们并没有明确搞清楚我们系统要完成的功能都有哪些,因此,类图的架构设计并不合理,只是想到一个应该是系统的功能就往里面添加,而且太多的功能都交给了列控。后来经由老师提醒,在五个人的不停讨论与修改下,我们首先确定了轨道信号灯控制系统的功能应该是传感数据采集,数据信息处理,控制指令生成,故障处理。有了明确的功能后,我们发现单一级别的控制系统工作量太大而且要交互的对象太多(包括传感器,信号机,另一同级不同区间的控制系统,列控系统等等),于是我们对控制系统做了分级,确定了系统的结构是轨道信号灯控制系统——站间信号灯控制系统——区间信号灯控制系统这样的三级结构,这样才对系统的功能做了比较全面清晰的定义。之后是用例图的构建,在最开始,我们的用例图中几乎罗列了所有的功能模块,而没有考虑到与Actor的交互,除此之外,我们的有些功能名称也含糊不清。在老师指出问题后,我们几乎完全重构了用例图,在跟列控的交互上比较好地做到了清晰明了。但是仍存在的问题是,故障处理模块仍不够清楚。

问题分析

在一开始,我们没有搞清楚我们系统的功能边界,这就导致了对系统功能的过分弱化。后来在画用例图的时候,我们又没有明确需要Actor与我们的系统交互的功能的边界,就导致了用例图中几乎有所有功能模块。现在仍存在的问题是因为,我们没有认识到故障处理模块是我们系统的核心业务之一,对其分析建模不够,这就导致故障处理模块不够清楚。

posted @ 2020-12-14 23:00  wzl_buaa  阅读(136)  评论(1编辑  收藏  举报