• 1.功能需求

本程序的使用者为局域网用户。程序实现的主要功能是局域网的常见格式的文件的传 
输。其用例图如图1。本程序可通过可视化操作界面实现一对多的文件传输。

  • 1.1模块分析

为实现局域网文件传输, 该程序具体可分为4部分: 
   (1) 文件 
    主要功能包括对文件名、文件路径以及文件大小的设置与获取。 
   (2) 服务端 
    提供对方与本地连接的套接字,响应对方连接的请求,通过网络通信,处理接收文件的过程。 
   (3) 客户端 
    通过IP地址和端口号向目标主机发送连接请求,通过网络通信,处理发送文件的过程。 
   (4) 用户界面 
    给用户提供友好的图形化的界面,响应用户的操作。包括与目标主机的连接、发送文件、选择文件、接收文件、消息提示等几部分。

  • 2.概要设计

流程时序图

描述说明
简要说明 整个软件的工作流程
前置条件 系统网络处于同一个局域网,并且双方都安装此软件
后置条件 成功后置条件 监听网络对方用户的行为
失败后置条件 监听本机用户的行为
角色 局域网内的用户
触发条件 双方都安装此软件并且,都输入对方IP,软件处于网络监听状态
基本事件流描述、步骤 用户输入对方IP,成功连接(对方输入本机Ip),即可选择发送对话,发送文件操作,对方接收对话或文件,用户接收文件,软件开始保存文件。
备选事件流、步骤 对方拒接接收文件,本机返回状态信息,取消文件发送。
  • 2.1协议实现过程

TCP协议工作流程:

UDP协议工作流程:

  • 2.2聊天功能的流程设计

采用DUP协议设计即时聊天功能在即时聊天功能中设计了一个发送端和一个接收端发送端和接收端处于同一个平台中为了使通信双方能够造一次连接中进行多次通信在接收端采用了多线程实现多次通信。在通信建立的时候通信的发起方首先填写通信的ip地址和port端口然后发送消息给接收者。接受者需要在同样的端口上等待发起者的信息。

发送端:

接收端:

  • 2.3文件传输功能实现流程

使用TCP协议实现文件传输功能在文件传输开始时由发送方给接收方发送一个消息消息内容为待发送文件的文件名和长度。接收端收到后判断是不是传送的文件如果是传送的文件接收方择是否接收文件。然后开始传输文件文件传输完成后自动关闭服务器端和客户端。

发送端:

接收端:

3.SRS文档的更多相关文章

  1. SRS文档

    1什么是用例? 在介始用例方法之前,我们首先来看一下传统的需求表述方式-"软件需求规约"(Software Requirement Specification).传统的软件需求规约 ...

  2. 图书馆管理系统 SRS文档

    图书馆管理系统 SRS文档 编写人:魏晓 日期:2015年05月27日 1介绍 1.1编写目的 图书管理系统需求规格说明书是为了让系统的涉众就该系统的需求达成一致认可,明确该系统的需求,为后续的开发工 ...

  3. 团队作业:SRS文档-飞机大战

    本实验为团队合作项目作业的一部分:SRS文档-飞机大战 项目分工:SRS文档项目为梁JM负责完成 实验要求: 3.SRS文档(第二周,截止5月31日)              要求对所选项目进行用例 ...

  4. 五子棋游戏SRS文档

        SRS技术文档,包括对SRS的解释说明.SRS描述规范.软件需求规格说明书(SRS,Software Requirement Specification)是为了软件开发系统而编写的,主要用来描 ...

  5. SRS文档 王倩倩 201303014004

    设计阶段 Spec 图书管理系统functional spec:软件功能说明书, 主要用来说明软件的外部功能, 和用户的交互情况 (把软件当作一个黑盒子).从用户的角度描述软件产品的功能, 输入,输出 ...

  6. SRS文档 软件需求说明书

    [摘要] 随着信息时代科技的飞速发展,经济全球化已广为人知,英语作为全球最主要的语言之一,受到越来越多的人的喜爱,不仅为了增长知识,也为了能适应社会发展的需求.但是,学英语最重要的事首先是积累词汇,没 ...

  7. 团队第二周:SRS文档

    项目计划: 对于这次的实验,我们组计划进行一个图书管理系统的项目书写,在第一阶段,对该项目先进行一下规划,总结该项目的注意事项以及实验要求,并加以实施. 下面我先对我们项目的要求坐一下说明: 1定义五 ...

  8. 团队作业-第二周-SRS文档

    移动课堂点名的用例图:

  9. 团队项目 SRS文档

    一:实验内容:用例模型的建立 简介: 图书管理系统是使用计算机实现图书大量信息处理的电子档案管理系统,在本系统中主要满足借书者.图书管理员和系统管理员3方面的需求.对借书者来说主要是查询个人信息.查询 ...

随机推荐

  1. CSS3基础01

    一.选择器: 分为关系选择器 ,属性选择器 ,伪类选择器 1.1关系选择器  后代选择器   ul li  选择所有的后代元素 子代选择器   ul > li 选择ul的儿子 紧邻选择器  .b ...

  2. {Reship}{Matting}Image Matting

    ======================================== http://www.alphamatting.com/index.html ==================== ...

  3. eclipse 使用

  4. Linux内核分析第六周学习总结:进程的描述和进程的创建

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.进程的描述 ...

  5. iOS /* */多个嵌套解决

    解决办法 #if 0 /* */ #endif

  6. 1032 - A-B 组合数学

    http://www.ifrog.cc/acm/problem/1032 1032 - A-B Time Limit:1s Memory Limit:128MByte Submissions:680S ...

  7. json传值以及ajax接收

    一开始进入公司,做起项目来比较不知所措,现在一个月过去了,越来越得心应手,下面是json向前端传值以及前端ajax接收,给自己记下也分享给大家. 这是两个类型不同的json与ajax的数据交互(集合. ...

  8. 开发Android应用怎么更改LOGO图标

    开发安卓应用怎么更改LOGO图标,我们知道我们开发安卓程序的时候,都需要给他整一个logo,一般开发程序都会自动一个图标,我们怎么给他更换自己想要的logo图标,之前大家看过我们写的怎么安装程序到虚拟 ...

  9. Sorted Union

    function unite(arr1, arr2, arr3) { //return arr1; var args = Array.from(arguments); var arr = args.r ...

  10. 高并发访问mysql时的问题(一):库存超减

    如果在对某行记录的更新时不采取任何防范措施,在多线程访问时,就容易出现库存为负数的错误. 以下用php.mysql,apache ab工具举例说明: mysql表结构 CREATE TABLE `yx ...