需求分析心得——人脸情绪识别

  根据老师说的,在软件设计中,对于一个工程项目的完成,需求分析需要用到整个项目实现过程80%的时间,真正编码的时间其实只有20%而已。当然那只是商业模式里的项目,但是肯定是有它的道理的。虽然我们这是第一次以小组的形式共同完成一个项目,认为更多的困难是去自己涉及一些没有学习过的领域,而且还需要交上一个成果,但是在项目的安排表中,留给第一次迭代编码的时间只有三周,之前哟大约五周的时间是用来理解项目需求以及上交各种项目相关文档的。

  开始觉得十分没必要,早点开始编码实现多好,需求不是一开始就从老师给的文档中写明白了么,而且也去找老师谈过一次项目的具体需求了,讲道理需求应该是比较明确了的,但是真正写起需求文档来发现反复确认需求还是很必要的。最初老师给我们的需求只是一个视频输入和情绪曲线图的输出,经过交流和确认之后发现具体写需求文档的时候就有很多有意思和学习的地方。

  一、思维的发散性,对于一个基本的视频输入和图片输出,经过上网分析实现流程,我们认为有许多相通的地方。能够从视频中提取帧分析人脸,那就一定能够从摄像头中提取帧和分析人脸,当设计到摄像头就会引出一个动态出图的过程,动态出图肯定又可以引出一个动态播放视频的功能。同时这两者的本质都是提取图片的信息分析情绪,那么就一定能够增加图片分析情绪的功能。然后一般是用python设计的软件,那么是不是可以写一个web实现人脸情绪识别呢,正好可以联系本学期所学的JAVAEE课程,当然就还可以设计手机APP啦。等等等,总之分析起来,就开始没完没了了,特别是聊到一些细节实现问题的时候就有更多的小需求产生。以至于后来我们都有点害怕了,毕竟我们是第一次做项目,还是得回到现实,先了解自己的能力,时间,精力,本学期在基本需求实现的前提下再去优化和发散吧,毕竟本项目的关键在于识别情绪的准确度。

  二、分析项目的本质,通过仿照模板进行需求文档的撰写时,发现一个需求说明书是由很多部分组成的,通过上网查阅相关信息,比如项目背景,项目应用场合等等,可以明白本项目的实际应用场合以及主要的难点和科技前沿点,开始了解一个项目的细节部分,通过绘制UML的活动图和用例图,以及具体的分工计划也更加了解了整个项目的具体流程,虽然在实现项目的时候是各部分分别编码的,但是系统的分析使得每个组员都对整个项目的实现过程都有所了解会遇到些什么问题,如何解决等等。

  三、分解项目任务,虽然我们的项目并不一定会投入实际使用,分析需求的时候也不要去向大众去了解情况,而且之前也有很多的前辈么早已实现了项目,网上也有许多现成的东西,但是我们依然只是参考,更多是自己思考。将项目的所有需求明确列出和具体分类,明确了方向,并且根据工作量合理分配了任务,明确了各个部分的输入输出,需要的接口,让一切显得都在计划中。

   通过本次的项目需求分析,让我对整个项目变得没那么陌生,有了明确的工作方向,虽然剩下的编码时间不是很多了,但是我相信我们的项目一定能按时完成!

原文地址:https://www.cnblogs.com/huimiang/p/10009556.html