您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 《Java课程设计》需求分析文档要求
目录1.选题背景....................................................................................................................................12.开发技术概述........................................................................................................................13.功能需求分析............................................................................................................................14.功能设计....................................................................................................................................24.1登录界面功能表..............................................................................................................24.2注册界面功能表..............................................................................................................34.3聊天界面功能表..............................................................................................................44.4文件功能表......................................................................................................................55.系统流程分析............................................................................................................................55.1系统总体设计流程图......................................................................................................55.2详细设计流程图..............................................................................................................66.界面设计....................................................................................................................................96.1登录界面..........................................................................................................................96.2注册界面..........................................................................................................................96.3聊天界面........................................................................................................................107.系统测试..................................................................................................................................118.关键代码说明..........................................................................................................................13小结........................................................................................................................................16参考文献................................................................................................................................1711.选题背景在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而产生的聊天工具越来越多.目前国内外做即时通讯软件的公司很多,产品也琳琅满目,国内有诸如腾讯QQ、新浪UC、网易泡泡、淘宝旺旺等,国外有著名的MSN(新版改名为LiveMessenger)以及跨平台的米聊等。QQ是国内即时通讯软件市场上无可争议的“老大”,您使用QQ可以与好友交流,信息及时发送,及时回复,收发及时功能全面。QQ与国外最大的即时通讯软件MSN功能强大,但它们唯一不足的地方就是必须要联网或者下载到它们的服务端,否则无法脱离Internet使用。本聊天系统,是可以在局域网聊天的一个工具。无需联网,即可进行群聊。所以也存在局限性,只有在同一局域网内的用户才能聊天交流,除此之外,该系统未设置私聊功能。2.开发技术概述本系统采用java技术开发,使用文件保存数据,集成开发环境使用eclipse。开发者应有java程序设计语言、SWING基本GUI组件、多线程、文件使用、socket编程、使用eclipse的基本知识和技能。系统采用两层c/s体系结构,c端负责通过GUI与客户交互,实现注册、登录、收发信息、退出等功能;c端和s端是通过网络交互的。首先服务器启动,建立一个专门用于接收客户端请求的”倾听Socket”,然后等待客户的连接请求。当客户想聊天时,从界面输入信息,然后与服务器建立Socket连接,服务器端的“倾听Socket”收到连接请求后,一般会接收连接请求,并生成一个服务器端socket,专门负责与此客户端socket的通信。一旦连接请求成功,通过I/O流来实现数据的输入输出。用多线程来实现多人聊天功能。3.功能需求分析使得第一次使用的用户可以通过填写个人信息来注册,已注册用户可以在验证他的登录信息后登录,允许在线用户查看其他在线用户的列表,允许用户在公共聊天室中聊天。客户端和用户端的需求如下:a.客户端(1)用户注册界面及结果(2)用户登录界面及结果(3)用户发送信息及结果(4)用户得到信息及结果(5)用户退出界面及结果b.服务器端(1)处理用户注册(2)处理用户登录(3)处理用户发送信息(4)处理用户退出(5)保存服务器日志(6)保存用户聊天信息24.功能设计4.1登录界面功能表表4-1登录功能表序号功能内容控件对象名备注1.用户名输入框JTextFieldtextfield2.密码输入框JPasswordFieldpassword3.登录JButtonb14.取消JButtonb25.注册JButtonb36.存放组件的容器JPanelP1存放b1b2b37.盒式容器BoxbaseBox存box1box28.盒式容器Boxbox1box29.标签JLabel标记用户名密码34.2注册界面功能表表4-2注册功能表序号功能内容控件对象名备注1.用户名输入框TextFieldtextfield12.密码输入框TextFieldPw13.确认密码输入框TextFieldPw24.年龄输入框TextFieldtextfield25.复选框男JCheckBoxC1选定6.复选框女JCheckBoxC27.注册按钮JButtonbsubmit8.取消按钮JButtonbcancel9.存放组件的容器JPanelP1存放信息10.存放组件的容器JPanelP2存放两个提交取消按钮11.存放组件的容器JPanelP3存放性别选项44.3聊天界面功能表表4-3聊天功能表序号功能内容控件对象名备注12.聊天内容显示框TextAreatextareaMessage13.用户列表显示框TextAreatextareaList14.发送内容输入框TextFieldtextfield15.用户列表标签JLabeluserlist16.聊天室标签JLabelchatroom17.退出按钮JButtonbuttonout18.发送按钮JButtonbuttonsent19.存放组件的容器JPanelpanelout存放退出按钮20.存放组件的容器JPanelp21.显示指定组件内容JScrollPanemessagepaneltextareaMessage22.显示指定组件内容JScrollPanelistpaneltextareaList23.显示指定组件内容JScrollPanesendpaneltextfield24.格式布局GridBagLayout()25.GridBagLayout类布置的组件的约束GridBagConstraintsbgc54.4文件功能表表4-4文件功能表序号功能内容控件对象名备注1.指定流里面读取对象ObjectInputStreambr2.从流里读取内容getInputStream3.文件写PrintWriterpw4.读对象readObject5.客户端套接字SocketfromClient建立连接6.服务器端套接字ServerSocketserver建立连接5.系统流程分析5.1系统总体设计流程图聊天应用程序包括登录界面和注册界面,当启动登录界面,用户填写信息后登录,登录的信息将反馈给聊天服务器,服务器验证用户信息,若验证成功则跳到聊天界面,否则,服务器反馈给登录界面拒绝登录消息。启动注册界面,用户在界面填写注册信息,注册信息反馈给服务器,服务器要验证用户信息,验证成功,跳到登录界面,否则,服务器反馈给注册界面,显示错误消息。6聊天应用程序登录界面注册界面将登录消息发送给服务器将注册消息发送给服务器聊天服务器聊天服务器验证登录消息验证登录消息否决登录显示错误消息聊天界面否否是是开始结束图5-1系统总体流程图5.2详细设计流程图1.服务器结构服务器端,处理用户的请求,当收到“来自定时器”消息时,服务器给客户反馈,客户端在聊天界面更新消息和在线用户信息;服务器收到“登录信息”请求时,验证登录信息,验证成功则更新聊天界面里的消息和在线用户信息,否则给客户端反馈“用户不存在”消息;当服务器端接收到“注册消息”请求时,服务器验证注册信息,若验证成功,将注册信息写
本文标题:《Java课程设计》需求分析文档要求
链接地址:https://www.777doc.com/doc-3793168 .html