新浪微博桌面客户端需求分析版本历史目录0. 文档介绍 (5)0.1背景 (5)0.2文档目的 (6)0.3文档范围 (6)0.4读者对象 (7)0.5参考文档 (7)0.6术语与缩写解释 (8)1. 产品介绍 (10)2. 产品面向的用户群体 (10)3. 产品应当遵循的标准或规范 (10)4. 产品范围 (10)5. 产品中的角色 (11)6. 产品的功能性需求 (11)6.0功能性需求分类 (11)7. 产品的非功能性需求 (21)7.1用户界面需求 (21)7.2软硬件环境需求 (22)7.3产品质量需求 (22)7.N 其它需求 (23)附录A:需求建模与分析报告 (24)A.1需求标题1 (24)0. 文档介绍0.1 背景21世纪以来,全球进入一个新经济时代——互联网时代,互联网络和信息通信的迅猛发展创造了一个无疆界的数字世界,交易几乎可以瞬时在世界各地完成,服务产品也不例外。
网络营销工具服务产品更有其独特的优势利用信息技术带来的便捷。
近几年来,互联网发展的十分的快速,许多新型的网络媒体以及网络营销工具都应运而生。
新浪作为一家服务于中国及全球华人社群的领先在线媒体及增值资讯服务提供商,拥有多家地区性网站,以服务大中华地区与海外华人为己任,通过旗下五大业务主线为用户提供网络服务的网站。
此外,新浪是中国的四大门户网站之一,和搜狐、网易、腾讯并称为“中国四大门户”。
目前,新浪网已经成为下辖北京新浪、香港新浪、台北新浪、北美新浪等覆盖全球华人社区中文网站的全球最大中文门户。
在这种竞争时代,针对现在互联网上如雨后春笋般不断冒出各类型的网络营销工具,新浪模仿国外知名的Twitter,并结合当前中国特有的现象,打造出适合国人的一个交流平台。
新浪微博于2009年8月正式进入中文上网主流人群视野。
根据相关公开数据,截至2010年1月,微博在全球已经拥有7500万注册用户。
在2009年8月新浪网推出“新浪微博”内测版,成为门户网站中第一家提供微博服务的网站,微博正式进入中文上网主流人群视野。
新浪微博作为国内第一个推出微博的网站,并同时在推广期间利用名人效应吸引大量用户,奠定新浪微博的用户基础。
根据首因效应,第一个大规模推广微博的网站势必在用户心中留下深刻印象。
此外,新浪微博的平台从一开始就从运营模式着手,有一套较为完善成熟的审核机制,既可以满足中国互联网信息安全规则的需要,又不挫伤使用者的积极性,特别是在用户的分级制度上借鉴新浪“名人博客”的成功经验,利用名人效应和适当的炒作,很快就聚集了大量的人气,根据51免费论文NETJ控的社会化网络统计,新浪微博虽然才推出几个月时间,但已经在极短的时间内成为国内微博客的领跑者。
0.2 文档目的在微博的制作过程中为了满足客户的需求,为了要向客户展示微博要做哪些功能,以及微博的界面,人员分工等等特写此文档。
通过对新浪官方提供的SDK(版本号weibo4j-2010-12-27)的分析,理解了如何通过OAuth 授权来请求服务器验证并获取到数据。
并且掌握了GET、POST、DELETE方法的使用,能够写出SDK中未封装的方法。
在此基础上,通过Netbeans IDE7.0 开放平台,通过可视化开发界面,开放桌面JAVA版的客户端应用。
意义是了解了新浪微博API的运行机制,如何对新浪提供的API接口去封装一个方法,对学习的能力有进一步的提升。
开发的最终目标是能够实现桌面客户端JAVA版,并且实现新浪微博的基本功能,例如:让微博,发图片,搜索好友,获取微博信息等功能。
通过对新浪官方提供的SDK(版本号weibo4j-2010-12-27)的分析,理解了如何通过OAuth授权来请求服务器验证并获取到数据。
并且掌握了GET、POST、DELETE方法的使用,能够写出SDK中未封装的方法。
在此基础上,通过Netbeans IDE7.0 开放平台,通过可视化开发界面,开放桌面JAVA版的客户端应用。
意义是了解了新浪微博API的运行机制,如何对新浪提供的API接口去封装一个方法,对学习的能力有进一步的提升。
开发的最终目标是能够实现桌面客户端JAVA版,并且实现新浪微博的基本功能,例如:让微博,发图片,搜索好友,获取微博信息等功能。
0.3 文档范围此文档主要内容包括:背景、文档目的、读者对象、产品的介绍与应遵循的标准和规范、产品功能介绍、用户群体、产品的功能性与非功能性需求等0.4 读者对象此文档适合系统开发人员、系统管理员、经营者等对象阅读。
0.5 参考文档A.《基于Struts2+Hibernate+Spring实用开发指南》作者:高洪岩编号:ISBN 978-7-122-08096-7发表日期:2010出版单位:化学工业出版社B.《软件工程导论(第五版)》作者:张海藩编号:ISBN 978-7-302-16478-4发表日期:2007出版单位:清华大学出版社C.《网站布局实录》作者:李超编号:ISBN 7-7-03-017716-9发表日期:2006出版单位:科学出版社D.《XML基础教程》作者:孔梦荣、韩玉民编号:ISBN 978-7-81123-4发表日期:2008出版单位:清华大学出版社、北京交通大学出版社E.《UML建模》作者:曹静编号:ISBN 987-7-5084-5243-2 发表日期:2008出版单位:中国水利水电出版社F.《Web程序设计——Jsp》作者:孙延鹏、吕晓鹏编号:ISBN 987-7-115-17819-0 发表日期:2008出版单位:人民邮电出版社G.《SQL Server 2005 实例教程》主编:李立功编号:ISBN 987-7-115-17819-0 发表日期:2008出版单位:中国电力出版社0.6 术语与缩写解释1. 产品介绍微博系统是一套功能齐全而又简便使用的软件,包括用户登录设置、好友粉丝设置、微博应用设置、微博系统管理等这些功能模块。
其中微博应用设置模块中可分为发表微博、评论微博、转发微博以及收藏微博等小模块;在微博系统管理中可以分为会员认证、搜索功能以及名人认证,我们可以随时转发属于自己的原创微博。
2. 产品面向的用户群体“微博”主要面向的用户群体:A.管理员B.产品公司人员C.广大的社会人群3. 产品应当遵循的标准或规范我们所设计的微博参考了最早的微博制作者twitter制作的微博,并加以改进;本软件具有以下特点:1.操作界面美观大方2.功能齐全,本系统包括前台和后台管理,能够实现微博的数字化经营。
3.开放性好,采用标准的开发工具和技术,后台数据库采用SQL Server 2005 实例教程,可以同其他软件交流数据。
4. 产品范围本产品主要用于发表微博、评论微博、转发微博以及收藏微博和管理等为一体的Web应用系统,产品的应用领域包括:A.可以方便客户的登录与使用B.便于发表、评论、转发和收藏C. 管理员能很好的对系统内的信息进行管理,具体功能在下文描述5. 产品中的角色6. 产品的功能性需求6.0 功能性需求分类新浪微博客户端JAVA版,主要实现了下面的功能:1. 用户OAuth登陆验证2. 用户界面UI的设计,微博icon的设计2. 获取用户的信息并在首页上显示3. 用户首页微博列表4. 随机用户微博列表5. 关注用户微博列表6. @我列表7. 用户收到的评论列表8. 用户粉丝列表以及用户最新的一条微博信息9. 用户所有微博列表10. 页面翻页功能(默认返回每页20条微博信息)11. 登陆未读消息提醒,提示音设置12. 用户登陆后,即时消息提醒13. 搜索新用户,并且可以加关注14. 可以取消关注过的某个用户15. 用户个人设置,包括个人信息修改、用户隐私设置和消息提示音开关这三个方面的内容16. 发文字微博,发图片微博,发文字加图片的微博信息17. 对获取到的所有用户的微博消息的评论数、转发数的显示。
18. 刷新首页数据19. 关于/帮助,主要介绍了应用的一些功能和使用方法。
用例图展示形式化图表流程图说明(应用程序运行流程图)注:其中用户选择(N=1,2,3,4,5,6,……),表示在需求分析中,所提到的各种已经实现了的功能。
登录页面:(登陆界面)登陆界面主要分为3个部分,如图:第1部分:应用程序LOGO设计。
第2部分:用户名和密码输入框。
第3部分:登陆按钮,主要采取了mouse事件来切换显示不同的图片。
产生动态的效果。
用户界面:(登陆界面)用户界面分为5个部分组成:第1部分:用户个人信息显示,主要包括:用户图像、昵称、描述、地理位置、粉丝数、被关注数、微博数。
另有两个按钮功能:从上到下分别是刷新和查找功能。
刷新:刷新用户首页数据;查找:查找用户所想关注的对象,并且加关注。
查找用户已经关注过的对象,并且取消关注。
第2部分:微博列表显示。
可以显示的有以下7个方面:A: @用户的微博列表B: 随机用户微博列表C: 用户首页微博列表D: 关注的用户最新微博列表E: 用户的粉丝最新微博列表F: 用户自己的微博列表G: 以上每隔列表中,均显示每项博文转发(transmit)数和评论数(comments)第3部分:状态提示信息和翻页信息这部分主要实现:如果用户选中了某个列表页面,会有相应的提示,当用户发表文字微博的时候,会动态显示用户还能输入多少字符(一次微博最多可以发280个字符,即140个汉字)。
最右边的是左右翻页功能,当选中某个页面显示的时候,会把标志位置成相应的标识,当翻页的时候,会根据标识位决定是对哪个页面进行翻页。
当每页获取到(20/20)时,表示当页信息获取完毕。
第4部分:用户微博文本输入区这部分主要实现:接受用户输入的字符,并且传递出去。
当用户的输入为空的时候,会提示用户“输入不能为空”。
第5部分:功能按钮区域功能从左到右依次为:设置、@我、随机数据、用户首页、发表情、发图片、发微博。
其中每个功能均使用到一个独立的线程,线程之间互斥访问jTextPane1(第2部分区域),显示相应的数据,确保jTextPane1在显示数据的时候不会发生混乱。
在本界面进行UI设计的时候,为了增加动态效果,在鼠标经过某个按钮的时候,采用下面的方法,例如:当鼠标进入jButton4的时候private voidjButton4MouseEntered(java.awt.event.MouseEvent evt) {jButton4.setIcon(newImageIcon(getClass().getResource("/src/hom e_1.png")));}b.当鼠标离开某个jButton4的时候private void jButton4MouseExited(java.awt.event.MouseEvent evt) {jButton4.setIcon(newImageIcon(getClass().getResource("/src/hom e.png")));}7. 产品的非功能性需求7.1 用户界面需求7.2 软硬件环境需求7.3 产品质量需求7.n 其它需求通过本应用的开发,也有些不足的地方需要进行后期的改进。