软件工程第16讲案例:myqq项目v.ppt

上传人:牧羊曲112 文档编号:6434231 上传时间:2023-10-30 格式:PPT 页数:52 大小:2.73MB
返回 下载 相关 举报
软件工程第16讲案例:myqq项目v.ppt_第1页
第1页 / 共52页
软件工程第16讲案例:myqq项目v.ppt_第2页
第2页 / 共52页
软件工程第16讲案例:myqq项目v.ppt_第3页
第3页 / 共52页
软件工程第16讲案例:myqq项目v.ppt_第4页
第4页 / 共52页
软件工程第16讲案例:myqq项目v.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《软件工程第16讲案例:myqq项目v.ppt》由会员分享,可在线阅读,更多相关《软件工程第16讲案例:myqq项目v.ppt(52页珍藏版)》请在三一办公上搜索。

1、软件工程,第16讲 案例分析,潘俊 办公室:北7-1202-C,本讲内容,MyQQ 聊天工具的设计与实现软件开发流程回顾,项目简介,任务:MyQQ 聊天工具系统结构:C/S,通过数据库交换聊天消息,项目需求描述及效果展示,用户注册用户登录个人信息编辑查找/添加好友好友列表聊天,技术实现:WinForms+ADO.NET,需求分析功能分析,主要功能:注册与登录 好友管理 消息管理 个人设置,需求分析界面分析,需要的界面:注册界面 登录界面 登录后的主界面 查找/添加好友界面 聊天界面 系统消息界面 个人设置界面 头像列表界面,需求分析数据库分析,需要的数据表:Users:用户表 Friends:

2、好友表 Star:星座表 BloodType:血型表 FriendshipPolicy:好友策略表 Messages:消息表 MessageType:消息类型表,需求分析辅助类分析,需要添加的辅助类:DBHelper类 UserHelper 类,MyQQ 聊天工具,组长 A,组员 B,组员 C,注册窗体,聊天窗体,个人信息窗体,登录后主窗体,查找/添加功能编码,登录窗体,头像列表窗体,系统消息窗体,查找/添加好友,界面设计、辅助功能,辅助类,查找/添加好友,协助,协助,小组分工,项目计划,项目准备项目框架、建库、建表、提交计划第一次集中编码注册、登录功能第二次集中编码 查找/添加好友、部分聊天

3、功能第三次集中编码 个人信息显示、完整聊天功能第四次集中编码 个人信息修改、完善整个功能项目总结,项目准备:A任务,搭建项目框架提交小组计划,项目准备:B任务,建库建表UsersFriendsFriendShipPolicyStar BloodType Messages MessageType 建关系,第一次集中编码:A任务,设计注册窗体界面实现用户注册功能,第一次集中编码:B任务,设计登录后主窗体显示好友列表,第一次集中编码:C任务,设计登录窗体实现登录功能,第一次集中编码:难点分析,注册功能难点,/获取自动生成的Id值/查询新增加的记录的标识号的 SQL 语句sql=SELECT Iden

4、tity FROM Users;/执行查询语句myQQNum=Convert.ToInt32(command.ExecuteScalar();,第一次集中编码:难点分析,好友列表第三方控件 SideBar,Groups 属性,SbGroup 类型,Items属性,SbItem 类型,第一次集中编码:难点分析,SideBar,/命名空间 using Aptech.UI;,/添加组 sbFriends.AddGroup(我的好友);sbFriends.AddGroup(陌生人);,/添加项 SbItem item=new SbItem(string)dataReaderNickName,(int)

5、dataReaderFaceId);sbFriends.Groups0.Items.Add(item);,显示的文字,显示的图像索引,第二次集中编码:A任务,查找/添加好友窗体设计,第二次集中编码:B任务,查找/添加好友功能实现,第二次集中编码:C任务,聊天窗体设计及功能实现,第二次集中编码:难点分析,添加好友判断流程,第二次集中编码:难点分析,操作显示查询好友结果的 DataGridView,/判断是否有单元格选中 if(dgvBasicResult.SelectedRows.Count=0)/,/判断选中行的第一个单元格是否有值if(dgvBasicResult.SelectedRows0

6、.Cells0!=null)/,表示空,/获得选中行的第一个单元格的值dgvBasicResult.SelectedRows0.Cells0.Value,第三次集中编码:A任务,设计个人信息窗体显示个人信息,第三次集中编码:B任务,完善登录后主窗体,扫描未读聊天消息利用 Timer 实现控制好友头像闪烁,来消息,头像闪烁,第三次集中编码:C任务,头像列表窗体设计及功能实现,第三次集中编码:难点分析,头像闪烁效果:改变头像显示的图片,用Timer控制切换,头像列表:ListView 控件View 属性:LargeIconLargeImageList 属性:指定存放大头像图片的图像列表控件,/判断

7、 ListView 中是否有选中的项if(lvFaces.SelectedItems.Count=0)/获得选中的头像的索引int faceId=lvFaces.SelectedItems0.ImageIndex;,第四次集中编码:A任务,个人信息修改功能,第四次集中编码:B任务,完善登录后主窗体:扫描未读系统消息右键菜单工具条按钮功能,第四次集中编码:C任务,添加好友请求窗体设计及功能实现,第四次集中编码:难点分析,登录主窗体的右键菜单中删除好友功能从 SideBar 中移除一项,/从SideBar中将选中的项移除sbFriends.SeletedItem.Parent.Items.Remo

8、ve(sbFriends.SeletedItem);,大小头像切换 SideBar 的 View 属性,/小头像sbFriends.View=SbView.SmallIcon;,本讲内容,MyQQ 聊天工具的设计与实现软件开发流程回顾,软件开发流程,比尔盖子是一名建筑工人,起初只干一些比较简单的建筑工作,凭个人技术和经验,不需要特别设计,可以顺利完成,如同编写早期比较小的程序,软件开发流程,新任务:建造一间非常美丽而完整的房间工作变得复杂许多,像不断发展的软件,功能越来越多,越来越复杂,软件开发流程,软件复杂性图形用户界面客户/服务器结构分布式应用数据通信超大型关系型数据库,项目团队中的角色,

9、比尔想到需要更多的人手帮他终于组成了自己工作团队,就像软件中的项目团队,软件项目团队中的角色,项目经理,技术负责人,软件架构师,项目团队,分析师,设计人员,开发人员,测试人员,项目人员构成比例,例子:微软 EXCHANGE 2000 SERVER 的开发:项目经理:25人开发人员:140人测试人员:350人WINDOWS 2000:项目经理:250人开发人员:1700人测试人员:3200人,软件工程师的工作,项目设计与分析编码编写文档测试团队管理,软件工程师的素质,良好的编码能力规范化编码习惯,规范意识团队精神,具有软件工程的概念,求知欲、进取心和学习总结的能力,团队组织和管理能力,软件开发过

10、程,“这次不能盲目开工,我们需要首先好好设计一下!”构想分析设计构造评估,软件的制作过程也非常相似,软件开发过程,软件开发,可行性研究与计划,需求分析,设计,开发,评估/测试,维护,建造房屋,构想,分析,设计,构造,评估,维护,软件开发过程模型,软件开发需要经历几个步骤具体如何实施,具体项目不同,有所区别软件开发过程模型:制作具体软件时,开发步骤的具体实施方法,瀑布模型,瀑布模型,瀑布模型“线性顺序模型”将每个都清楚定义了起止点产生明确的交付成果之间通过文档进行沟通每个都必需完成全部规定的任务(文档)后才能够进入下一个,可行性研究与计划,需求分析,设计,开发,测试,维护,可行性研究报告,需求说

11、明书,设计文档,程序,测试报告,可行性研究与计划,确定项目目的了解系统中客户的期望确定系统的规模论证项目可行性技术可行性 经济可行性 操作可行性社会可行性,需求分析,需求是产品的根源需求工作的优劣对产品影响最大,获取需求客户同行、专家已经存在的同类软件产品行业标准、规则Internet相关资料,可能遇到的问题 用户说不清楚需求误解需求,分析需求,功能需求记录在客户需求说明书中,需求分析,文档介绍,产品功能性需求,产品介绍,产品应当遵循的标准和规范,其他需求,需求说明书,产品非功能性需求,设计,目的:根据用户的需要制定标准,划分并分配任务,设计GUI标准,设计数据库,设计过程模块,设计编码标准,构建原型,分配任务和监督任务,设计涉及的活动,开发,开发,对用户界面进行最后的修改,构建数据库,通过添加代码使其具备功能,评估/测试,本测试每个单元的功能,测试涉及的活动,单元测试,数据验证测试,安全性测试,强度测试,集成测试,维护,为客户提供故障诊断支持网络电话上门应用程序要求的任何软件升级 版本补丁,软件开发过程,比尔通过类似软件瀑布模型的方式成功完成了自己的建筑项目,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号