团队项目NABCD模型的需求分析

NABCD模型的介绍

Need(需求)—现在市场上未被满足但又急需满足的客户需求是什么?
Approach(方法)—要满足这种需求,我能够提出什么独特的方法吗?
Benefits (收益)—该方法给顾客提供的便利是什么?
Competition (竞争) —对于竞争对手和其他可选择的方案来说,这种单位成本收益的优势在哪里?

  1.  Need 需求

   我们的这次qq项目适用于局域网内的聊天通讯所用,用的数据库轻小而稳定,我们通过了数据设计的第三大范式进行约束表的条件。通讯的速度快而简单并易于操作。

    2. Approach 方法

 我们通过TCP/ip 协议进行编写的,将所有通信消息体结构抽取出来,一种是文本聊天消息,一种是文件消息。

每一种消息都有两个部分组成。分别是消息头 和 消息体。

消息头的结构格式是固定的,消息体的结构因不同的消息而异。

每个消息的消息头由三部分组成

 

消息总长:用一个int表示是这一条消息一共有多少个字节

消息类型:用一个字节表示 1 代表聊天 2 代表传送文件

消息接收者:一个int类型数字

 

发送方必须严格按照顺序和格式将数据依次写入输出流对象中。

服务器读取的时候:

先读取一个int数据,消息长度

在读取一个byte数据,判断是文本还是文件

如果读到的byte是1,那么就读取一个int型,作为接收方的号码,

如果独到的byte是2,那么就是文本消息。读取接收方的号码后,再读取256个字节组成一个字符串当做文件名。不足256则补二进制的0.用总长度减掉前面每个字段的长度,就是文件内容的大小,将这些字节读入,存放到文件中,就完成了文件的传送。

    3. Benefit 好处

     网络通信,通信的是什么?

其实就是传递的byte。好处是速度快

1 间隔符

2 定长字符串

3 消息头+消息体

通过消息头加消息体及定长字符串完成通信

 

    4. Competitors 竞争

我们的竞争优势在哪儿? 一方面是通信速率提高了

二是我们的界面更加的人性化

三是我们的数据库设计更加的合理

    5.  Delivery 推广

     我们的每一个成员在编写代码的同时会写自己代码的测试用例,保证了代码的正确性,我们开放了很多的接口便于以后扩展用。

    我们的产品必须开发的足够完美了我们才会上线,期待我们的1.0版本见世喽!

团队项目NABCD模型的需求分析的更多相关文章

  1. 团队项目--NABCD模型

    蹭课神器 N(need需求) 每个人的兴趣都不一样,或许你很喜欢自己的专业,并且想再进一步学习专业知识:或许你不是太喜欢自己的专业,想上一些自己感兴趣的课程:但是,当你想上你所钟 意的课时,却发现自己 ...

  2. 团队项目NABCD分析

    1.卡片分类讨论 我们团队在软件工程课上对准备开发的帮你项目进行激烈的讨论后,得出了两个特点. (1)信息检索 (2)主动推送 之所以得出这两个特点,是因为我们作为学生,平常在校园里面有很多专用群和Q ...

  3. 团队项目——NABCD

    团队名称:天码行空 团队项目名称:天码记账 团队口号:彰明往事,考察未来 发布后一周内用户量:1千 N(Need)需求 这个软件主要解决了大学生管理自己财务状况的问题,随着手机支付的日趋流行大家对财务 ...

  4. 团队开发项目--NABCD模型

    N(need)需求: 鉴于在学校中的大部分爱学习的学生平时都去拍空教室的占有情况,我们发现有的时候太多,导致同学们们拍照会浪费很长的时间,而且空教室的显示不是一下子全出来,有的时候还会出现无法显示的情 ...

  5. 团队项目-NABCD

    用户需求分析与NABCD 模拟经营类(SIM)游戏:玩家模拟经营一家软件公司,平台初步定为Android. Need需求 任何一款游戏都要有自己的定位和目标群体,这些 iiMediaResearch数 ...

  6. 团队项目 NABCD分析java音乐播放器

    NABCD分析java音乐播放器 程设计题目:java音乐播放器 一.课程设计目的 1.编程设计音乐播放软件,使之实现音乐播放的功能. 2.培养学生用程序解决实际问题的能力和兴趣. 3.加深java中 ...

  7. 团队项目NABCD

    团队成员及项目简介 团队名:伍陸柒 团队成员: 李  俏(20132912 信1301-2) 郝  颖(20132919 信1301-2)http://www.cnblogs.com/haoying1 ...

  8. 图书馆管理系统—NABCD模型竞争性需求分析

    本次课程设计设计题目:“图书管理系统”主要目的是利用数据库软件编制一个管理软件,用以实现图书.读者以及日常工作等多项管理.同时对整个系统的分析.设计过程给出一个完整论证. 1>N(Need 需求 ...

  9. 软工+C(10): 团队项目[NABCD] - 对话式编辑

    上一篇:助教指南,持续更新... 下一篇:从命令行开始逐步培养编程能力(Java) 动机(Motivation) Eating your own dog food, also called dogfo ...

随机推荐

  1. excel if判断时间段早晚班

    =IF(OR(HOUR(B3)={9,10,11,12,13,14,15,16,17,18}),"早班","晚班")

  2. Varchar2 size how to decide?

    When you execute a complicate store procedure, maybe it will execute a long time, maybe you want to ...

  3. 【Android Demo】加载.gif格式图片

    Android系统为了节省内存,一般不支持直接显示gif图片,即使你强制设置了,也只会显示图片的第一帧. 这个 Demo 是在网上看到的,是个思路,还是有些局限性,还是记录下,以后研究吧. 1.效果图 ...

  4. 第16章 Windows线程栈

    16.1 线程栈及工作原理 (1)线程栈简介 ①系统在创建线程时,会为线程预订一块地址空间(即每个线程私有的栈空间),并调拨一些物理存储器.默认情况下,预订1MB的地址空间并调拨两个页面的存储器. ② ...

  5. McCall的软件质量模型

    McCall等认为,特性是软件质量的反映,软件属性可用做评价准则,定量化地度量软件属性可知软件质量的优劣 McCall认为软件的质量模型应该包括 产品的修正.产品的转移,产品的运行 而产品的修正又包括 ...

  6. sublime配置全攻略

    大家好,今天给大家分享一款编辑器:sublime text2     我用过很多编辑器, EditPlus.EmEditor.Notepad++.Notepad2.UltraEdit.Editra.V ...

  7. Python-装饰器详解

    初学python,装饰器是什么玩意儿? 1:装饰器是函数,只不过该函数可以具有特殊的含义,装饰器用来装饰函数或类,使用装饰器可以在函数执行前和执行后添加相应操作. 2:至少两层函数 方式一: 理解方式 ...

  8. 33Mybatis------Mapper的编写

    Mapper编写的三种方法 传统的做法: 接口实现类继承SqlSessionDaoSupport 使用此种方法需要编写mapper接口,mapper接口实现类.mapper.xml文件 1.  在sq ...

  9. usb驱动开发3之先看core

    上节中看到usb目录中有一个core目录,凡是认识这个core单词的人都会想要先看看它是什么,对不?用LDD3中一幅图,来表述usb core所处地位. usb core负责实现一些核心的功能,为别的 ...

  10. MTK 平台上如何给 camera 添加一种 preview size

    1,首先检查该项目所使用的是哪一颗sensor, 就以OV2659 为例OV2659 是一颗2M 的摄像头,Sensor 吐出的数据分辨率能达到 1600*1200,肯定是支持 1280*720 的分 ...