实验八 团队作业4:团队项目需求建模与系统设计
内容 | 项目 |
---|---|
课程班级博客链接 | https://edu.cnblogs.com/campus/xbsf/nwnu2020SE |
这个作业要求链接 | https://www.cnblogs.com/nwnu-daizh/p/12976163.html |
团队名称 | 梦想进大厂 |
团队成员分工描述 | 鲁斌:建立项目功能需求和问题域对象模型; 陈正丽:编制《智能衣橱软件设计说明书》; 道彤阳:编制《智能衣橱软件设计说明书》,写博客; 李清华:编制项目的WBS,设计功能分析的四个象限; |
团队的课程学习目标 | 学习使用UML建模工具; 掌握面向对象需求分析建模技术; 理解和掌握面向对象软件系统设计原理、设计过程和技术; |
这个作业在哪些方面帮助团队实现学习目标 | 通过项目的不断推进,团队成员已掌握了UML建模工具和 |
团队博客链接 | https://www.cnblogs.com/mxjdc/p/13044198.html |
团队项目Github仓库地址链接 | https://github.com/Bufanbin/WeChatProgram |
一、实验目的与要求
(1)学习使用UML建模工具;
(2)掌握面向对象需求分析建模技术;
(3)理解和掌握面向对象软件系统设计原理、设计过程和技术。
二、实验环境要求
(1)常用UML图形绘制工具:Visio、Rational Rose、PowerDesign,建议采用轻量级的Visio。
(2)在线作图工具ProcessOn:https://www.processon.com/
三、实验内容与步骤
任务1:以团队协作学习方式掌握在线作图工具ProcessOn的软件操作方法。
-
鲁斌:ProcessOn是一款体验感很好的线上作图工具。个人有免费的创建文件机会,还可以团队同时编辑,多人协做有极大的便利性。软件本身内容全面,因为是线上的所以不用占用电脑本身的内存,只要有网络,随时可编辑。而且它本身功能全面,界面友好。
-
道彤阳:ProcessOn是一个方便易用、免费高效的在线作图工具,运用它可以免费制作多种图,还可以免费试用团队项目功能。在这次的学习中我们小组就采用了团队项目的方式进行ProcessOn学习,多人编辑,配合默契,很快就掌握了基本操作,在以后的学习中可以加强练习,提高其作图效率。
-
陈正丽:基本了解ProcessOn的使用流程之后,用ProcessOn画总体结构图和逻辑结构图过程中基本没遇到什么困难,ProcessOn里面的功能齐全,能同时画流程图,UML图等,还具有实时保存,多人协作的功能,完成时能以多种形式保存,分享方式便捷,是很好用的一款作图工具。
-
李清华:ProcessOn采用了在线编辑的方式,轻便快捷,上手门槛低。界面美观易用,功能方面也比较全面。其中有团队功能,可以很好的进行团队协作编辑,非常便利。
任务2:整理实验七作业成果,应用面向对象分析方法(OOA),参考国标GB8567—88中《软件需求规格说明书》格式,编制团队项目需求规格说明书,并将该文档上传到团队项目Github仓库,文档内容要求如下:
(1)采用用例图(或者DFD图)建模表示项目功能需求,模型使用规范一致的图形符号和文字描述内容;
用例图中用户主要有两种,一种是具体用户,另一种是管理员。用户在使用软件时先要进行注册,然后登陆。登陆后会看到软件的四大页面。分别是首页,首页可以查看部分商品和一些常用功能。然后是推荐,这是本软件的核心功能。这部分会根据天气,活动,情绪和身材向用户推荐穿搭。不同的部分里面包含不同的类别,其中活动里面除了有推荐之外还有导航功能。商品那一部分是商品展示,用户可以查看该商品的信息以及点击链接跳转到淘宝购买。我的那部分是个人信息,以及退出。
(2)参考《构建之法》8.5节功能的定位和优先级,给出功能分析的四个象限;
(3)选择适当的UML模型,建立问题域对象模型;
-
整个部分分成五大类,第一类是用户,第二类是管理员,第三类是商品类,第四类是功能类,第五类是功能下细化的类。
-
问题域模型是对客户需求的精确化,面对模糊的需求分析,精细化的设计会时客户和团队成员同时获利。良好的问题域模型可以精确的表达用户需求,同时可以准确地将需求传达给开发者。建立模型的目的是帮助开发团队理解问题领域的各种概念,各种名词,以及它们之间的各种关系。
-
从面向对象的视角来说,问题域建立起来的模型是对需求完整,直接的映射。从开发团队的需要来说,这样会使开发人员对客户所处的问题域有深入的了解。
-
问题域模型建立的目的是让开发团队对问题域有一个全貌式的了解,并作为今后进一步深化的基础,这个模型也是一个静态模型,可以在今后做修改。
(4)编制项目的WBS
(5)估计各项任务所需时间
任务 | 时间 |
---|---|
小程序端设计 | 两周 |
数据库设计 | 一天 |
美化测试 | 三天 |
任务3:查阅资料,回答以下问题:
(1)何谓软件设计模式?
软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
(2)什么是C/S?C/S是client/server的简写,就是客户端/服务器的意思,客户端相对于服务器端而言,每种服务器配有自己的客户端软件,就像 黑客软件的冰河一样,服务器端启动后通过冰河自己的客户端就可以连接到服务器进行操作。
(3)什么是B/S结构?B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。
(4)什么是MVC设计模式?“MVC”模式即:“Model-View-Controller”模式。在这种模式中,通过JSP技术来表现页面,通过Servlet技术来完成大量的事务处理工作,实现用户的商业逻辑。在这种模式中,Servlet用来处理请求的事务,充当了控制器(Controller即“C”)的角色,Servlet负责响应客户对业务逻辑的请求并根据用户的请求行为,决定将哪个JSP页面发送给客户。JSP页面处于表现层,也就是视图(View即“V”)的角色。JavaBean则负责数据的处理,也就是模型(Model即“M”)的角色,Servlet+JSP+JavaBean(MVC)模式适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据。 Servlet+JSP、JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此种模式。
任务4:以任务1的成果为基础,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书。
(1) 采用适合的软件设计模式设计软件系统总体结构;
(2) 设计软件系统数据库逻辑结构;
(3) 说明软件重用方案;
本次我们组的团队项目是智能衣橱微信小程序,我们利用了微信小程序制作平台,这个平台支持在线设计,发布,同时提供了一些参考模板,随做随保存,在线浏览,界面协调。这在软件重用时无需考虑代码复用,重点考虑设计重用和分析重用就可以,在设计重这方面采用多人设计,设计组合,阶段试用,及时收集反馈,响应反馈,不断迭代设计。
(4) 设计关键类的重点服务。
在本次设计中,我们主要分了三个模块:首页(浏览大量衣服),推荐(根据天气,心情,活动等分类进行穿搭推荐),我的(完善个人信息)。
(5)详情请看《智能衣橱软件设计说明书》,点解下面链接:https://github.com/Bufanbin/WeChatProgram
(6)团队项目仓库上传文档后的截图
三、《实验八 团队作业4:团队项目需求建模与系统设计》项任务实际花费的时间和分工
任务 | 实际花费时间(h) | 分工 |
---|---|---|
任务1 | 3 | 团队成员一起学习分享 |
任务2 | 9 | 李清华,鲁斌 |
任务3 | 2 | 道彤阳 |
任务4 | 10 | 道彤阳,陈正丽 |
任务5 | 1 | 道彤阳,李清华 |
四、总结
- 鲁斌:本次团队项目作业我们组分工合理,团队成员尽职尽责,希望我们可以顺利完成之后的项目作业。
- 道彤阳:通过学习本次项目实验,基本掌握了ProcessOn建模工具、掌握并熟练了项目需求分析建模、软件系统设计。团队成员之间配合密切,融洽,积极讨论,希望在以后的学习中大家也可以共同进步,合作愉快。
- 李清华:这次团队项目分工明确,成员之间通过积极的交流协作解决了不少问题,掌握了ProcessOn建模工具,进行了需求建模和系统设计,为后面的开发做好了准备。
- 陈正丽:通过完成此次实验,基本掌握了如何使用ProcessOn画图,如何使用软件设计模式设计软件系统总体结构,设计软件系统数据库逻辑结构,以及掌握了软件设计模式等概念,在协作过程中,出现问题及时交流,互帮互助,深切体验到了合理分配任务能提高完成效率。希望在以后的协作中能更加顺利,取得满意的答案。