首页 > 代码库 > 作业2——需求分析&原型设计

作业2——需求分析&原型设计

需求分析:

软件的最终目的是用来解决用户的某些问题,需求分析就是要理解要解决的问题,真正明确用户需求。下面是我们初步的需求分析:

1、访问软件项目的真实用户(至少10个),确保软件真正体现用户的需求,为软件最终可用奠定基础。

 技术分享技术分享

 

做了如上图所示的线上采访,大部分人都认为微信点名的方式不错,可以方便老师,但是也存在缺点,比如同学手机没电或者二维码扫不到,甚至有人提出没有智能机该怎么办的问题,这样的问题只能直接和老师提出,我们认为就这个问题可以做一个手动添加的功能。

2、参考《软件需求规格说明书》国标规范文本,撰写对应项目的软件需求规格说明书。提供《需求规格说明书》的Git链接。

a. 除形式上满足规范文本要求外,整体内容必须围绕项目实质展开,对所要开发的项目确保尽力做到清晰完整准确。

 

b. 使用一致的图形符号和文字描述内容。

分析和设计方法:http://www.cnblogs.com/xinz/p/4525232.html

在线作图工具ProcessOn:https://www.processon.com/

c. 所有的缩写须事先定义。

 

d. 需要有一个目录,word排版样式规范美观,图文并茂,通篇文档有一个统一的样式风格。

 

e. 将自己置于读者的立场——如果对软件项目不熟悉的人员,通过阅读这份文档,能否完全读懂软件要做什么。

 

3NABCD 写作,视频

NABCD如下:

(1)N(Need 需求)

随着移动网络和智能手机的普及,以微信为代表的移动APP已经成为人们日常生活中必不可少的一部分;另一方面,传统的纸质化点名方式,具有耗时、数据丢失等种种弊端,早已不适应校园信息化管理和网络时代的需求。基于微信公众平台的课堂点名系统在此背景之下应运而生,本系统依托微信公众平台,以二维码为中介,结合后台数据管理,能够实现课堂点名的便捷化和信息化,为高校的课堂信息化管理提供科学依据。

(2)A(Approach,做法

1、我们的项目主要实现:

   1.1.个人微信号可与学号或工号绑定

   1.2后台可生成带时效性的二维码

   1.3可利用地图定位确定人员所在地点

   1.4在允许定位误差范围内通过扫描生成的二维码完成签到

2、系统的设计与实现 
  2.1 系统开发环境 
  课堂点名系统基于Linux系统下,使用Nginx搭建WEB服务器,采用 PHP 语言开发公众帐号服务器接口程序,使用MySQL作为数据存储系统,使用 Zend Studio作为开发和调试环境。 
  2.2 系统架构 
  本系统的架构主要由三个部分组成,具体如下: 
  (1)系统是基于微信APP建立的微信公众平台,通过微信公众平台接口的开发,代码实现自定义菜单,用户可通过在手机端上下载微信APP并关注微信公众号;通过微信公众号中自定义菜单中的绑定学号功能,输入学生的姓名和学号,将自身微信账号与学生学号绑定。 
  (2)学生通过微信公众号绑定学号后,使用微信扫一扫功能,扫描课堂中老师给出的二维码,微信公众平台服务器会使用http请求接入的网址的方式将数据从微信公众平台传输到业务服务器中,实现微信后台服务器和业务服务器之间的数据传输。 
  (3)业务服务器接收到微信后台服务器传输的数据,对传输数据进行处理,记录学生的课堂签到情况,并将签到情况结果传回给微信公众平台服务器,以网页形式反馈给用户。

(3)B(Benefit,好处)

微信公众平台具有很大的优势: 微信(WeChat) 是腾讯公司于2011121日推出的一个为智能终端提供即时通讯服务的免费应用程序,支持跨通信运营商、跨操作系统平台通过网络快速发送免费语音短信、视频、图片和文字。2012 8 月微信推出了公众平台,通过打造微信公众账号可以实现和特定群体的沟通、互动,旨在为用户提供服务。其优势特点如下: 
  ① 小众传播,传播有效性更高 
  微信公众平台是通过精确查找而进行关注的。用户是真实的,更有价值的。同时,微信公众平台是一对多的传播,开发者只需要建立一套完整的系统或者是编辑一个完整的信息,便可以直达成千上万的用户手中。 
  ②不干扰用户,用户的认可度高 
  微信公众平台不会产生爆炸式的信息,信息的推送更为私密,用户对信息的抓取更为主动。 
  ③用户规模庞大 
  微信公众平台的建立是以微信为基础的,微信在2014年的活跃用户数就已经超过4亿,用户规模遥遥领先。 
  ④开发成本低廉,自定义功能丰富 
  微信公众平台的申请和使用门槛低,高级开发模式为开发者的自定义功能设计提供无限可能。

(4)C(Competitors,竞争)

目前我们所了解的还未有实现此需求的软件,虽然这样一来看似市场潜力大,前途光明,但竞争仍然很激烈。这款产品的竞争比较少,主要的就是教师点名方式和Android的APP。

(5)D(Delivery,推广)

1.我们的平台一开始可以在集大计算机学院普及,然后在集美大学推广,之后不断的完善。

2.最后可以向各大高校进发,率先占领新市场。

 

4团队协作,加强分工,需要描述每个成员的具体分工及占整个文档任务的工作量比例。

  林燕,主要负责需求分析中的NABCD模块的撰写,战整个文档的15%

  代泽旭,主要负责原型设计方面,占整个文档任务的20%

  林至贤 ,主要负责分工、整合各成员的文档,代码规范设定以及最后进行博客的撰写和发表,占整个文档任务的15%

  林燕,主要负责需求分析中的用户采访部分,占整个文档任务的20%

 

原型设计:

  微信作为我们日常使用频率最高的App产品,每天的启动次数与使用时长几乎占据了使用移动终端的一半时间。传统的点名方式有较多的弊端,对于人数较多的班级,老师的点名不仅耗时,耗力,耗神,而且代替签到等作弊行为也层出不穷,老师点名的效率低,记录繁琐。 针对以上问题,结合学生日常习惯,我们以手机为工具,以微信为平台,结合网页后台的教师点名系统,以方便老师的点名,大大提高了点名效率,且自动生成相应的考勤纪律,操作简单,可用性强。 资源包括项目源代码、数据库脚本、软件开发文档。

编码规范:

(一)代码风格规范:首先要坚持代码风格的原则:简明,易读,无二义性。

1.缩进: 使用tab键,较为简单快捷

2.行宽:100字符。

3.括号:在复杂的条件表达式中,用括号清楚地表示逻辑优先级。

4.断行与空白的{ }行:每个“{”和“}”都独占一行。

5.分行:不把多行语句放在一行上。

6.命名:可以用匈牙利命名法来进行命名。

7.注释:每个重要的函数、算法或是他人可能较难理解的地方进行注释

(二)代码设计规范

1.函数:绝大部分功能都在函数中实现。

2.错误处理:考虑到多种情况,按实际编写错误处理代码。特别是在参数的处理上。

3.代码复审:各成员之间进行相互的代码交换复审,并相互提出意见进行改进。

作业2——需求分析&原型设计