实验八 团队作业5:团队作业5:团队项目需求建模与系统设计
课程班级博客链接 | 2018计算机科学与技术 |
---|---|
这个作业要求链接 | https://www.cnblogs.com/nwnu-daizh/p/14716083.html |
团队名称 | 奋斗的小菜鸟 |
团队成员分工描述 | 魏娜娜:画UML活动图,用例图,编写博客 王会娟:WBS的完成,象限图,文档编写,编写博客 牛建疆:画UML活动图,象限图,WBS的完成,编写博客 马艳:WBS完成,用例图,文档编写,编写博客 一起查看结对方的博客;学习建模工具Visio,整个实验一起讨论完成 |
团队的课程学习目标 | 1. 共同学习使用UML建模工具Visio; 2. 学习掌握应用面向对象分析方法(OOA),完善团队项目的《软件需求规格说明书》 3.理解和掌握面向对象软件系统设计原理、设计过程和技术,完成项目软件系统设计说明书 |
这个作业在哪些方面帮助团队实现学习目标 | (1)我们首先一起查看了接对方的博客,发现自己的不足,也对对方提出了建议 (2)我们共同学习了建模工具Visio,对于团队项目的《软件需求规格说明书》进行完善 (3)应用面向对象设计(OOD)方法,并编写了团队项目软件系统设计说明书 |
团队博客链接 | 奋斗的小菜鸟1 |
团队项目Github仓库地址链接 | https://github.com/wang815-hui/borrowing-parter |
博文正文
任务1:按教师公布团队项目互评名单,对互评方《实验六 项目需求分析与原型设计》的项目成果进行评价;
评价小组 | |
---|---|
结对方团队名称 | 星辰斗士 |
对方团队博客链接 | (https://www.cnblogs.com/muda/p/14783160.html) |
对方Github项目仓库链接 | https://github.com/lixiaolot/BruseResponse |
评价内容链接 | https://www.cnblogs.com/muda/p/14783160.html |
-
结对方仓库
-
互评内容:
-
结合实验七评分标准,给出互评团队作业评分成绩
我们给星辰斗士团队实验七的评分是:130
任务2:使用Visio,应用面向对象分析方法(OOA),完善团队项目的《软件需求规格说明书》,并将该文档上传到团队项目Github仓库
-
采用用例图表示项目功能需求,模型使用规范一致的图形符号和文字描述内容
- 游客用例图和注册用户用例图
- 管理人员用例图和泛化关系
- 包含关系
- 系统总体用例
- 游客用例图和注册用户用例图
通过参考《构建之法—现代软件工程》8.5节功能的定位和优先级,学习功能分析的四个象限
-
功能分析的四个象限:
杀手功能:针对某一应用需求我们的竞争对手和用户已经决定了的必要满足的需求,我们的创新功能也在这一部分。
外围功能:辅助性的功能,比如良好的用户体验界面等。
必要需求:能够准确解决用户主要功能的需求,比如词典软件要保证短语释义的准确性。
辅助需求:非必要需求,比如换肤等功能。 -
本项目的功能分析的四个象限
- 第一象限(杀手功能,必要需求):可以实现在线预订书籍的功能和书籍的借还功能。
- 第二象限(外围功能,必要需求):可以实现图书导航、搜索书籍、用户注册登录以及书籍详情查看等功能。
- 第三象限(外围功能,辅助需求):系统换肤功能和借还书提醒功能。
- 第四象限(杀手功能,辅助需求):书籍借还记录,读者借阅信息查询功能。
-
针对不同的功能,有五种解决方法:
- 维持----最低成本维持此功能
- 抵消----快速地达到“足够好”、“和竞争对手差不多”
- 优化----花大力气做到并保持行业最好
- 差异化----产生同类产品比不了的功能或优势
- 不做----砍掉一个功能,有时我们不需要做所有的功能
-
本项目四个象限
-
选择适当的UML模型,建立问题域对象模型
- 活动图
- 活动图
-
完善项目的WBS,估计各项任务所需时间
-
完善之后的WBS
-
估计各项任务所需时间
-
-
完善团队项目的《软件需求规格说明书》,并将该文档上传到团队项目Github仓库
-
完善团队项目的《软件需求规格说明书》
-
将该文档上传到团队项目Github仓库
-
任务3:查阅资料,回答以下问题C/S结构
-
C/S结构
服务器/客户机结构。C/S结构通常采取两层结构。客户机通过局域网与服务器相连,接受用户的请求,并通过网络向服务器提出请求,对数据库进行操作。服务器接受客户机的请求,将数据提交给客户机,客户机将数据进行计算并将结果呈现给用户。 -
B/S结构
随着Internet和WWW的流行,C/S无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。它是C/S架构的一种改进,可以说属于三层C/S架构。
B是英文单词“Browser”的首字母,即浏览器的意思;S是英文单词“Server”的首字母,即服务器的意 思。B/S就是“Browser/Server”的缩写,即“浏览器/服务器”模式。B/S结构是随着互联网的发展,web出现后兴起的一种网络结构模式。这种模式统一了客户端,让核心的业务处理在服务端完成。你只需要在自己电脑或手机上安装一个浏览器,就可以通过web Server与数据库进行数据交互。
-
MVC设计模式
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + servlet + javabean的模式。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。常用javabean去实现。
View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。常用JSP来实现。
Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。常用servlet来实现。
任务4::以任务2的成果为基础,使用Visio,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书,回答:软件是如何实现用户需求的?
-
完善之后的团队《软件系统总体设计说明书》
-
将《团队项目软件系统设计说明书》上传到Github仓库
-
Github仓库链接
-
Github仓库截图
-
任务5:完成《实验八 团队作业5:团队项目需求建模与系统设计(2)》团队博文作业
- 任务分工以及实践花费时间
任务内容 | 实际花费的时间(min) | 分工 |
---|---|---|
任务1 | 20 | |
实验六团队互评 | 20 | 大家一起阅读互评方撰写的博客内容、项目需求分析建模与系统设计、软件需求规格说明书,给出总体的评论 |
任务2 | 110 | |
学习Visio的软件操作方法 | 30 | 注册并使用Visio,然后一起交流讨论 |
学习面向对象分析方法(OOA) | 30 | 大家聚在一起共同讨论,学习OOA方法 |
完善团队项目的《软件需求规格说明书》 | 50 | 马*负责整理完善实验七中的系统需求规格说明书 |
任务3 | 30 | |
查找资料 | 30 | 大家共同查找资料,完成老师提出的三个问题。 |
任务4 | 90 | |
面向对象设计(OOD)方法 | 30 | 大家聚在一起共同讨论,学习OOD方法 |
编制团队项目的WBS,估计各项任务所需时间 | 30 | 王和 牛负责编制WBS并估计时间,同时马* 和 魏**协助完成 |
撰写团队项目软件系统设计说明书 | 30 | 魏负责将资料总结起来编制最终的软件系统设计说明书,王负责补充,同时 牛和马*协助完成,最后由魏将所有文档资料上传至Github |
任务5 | 40 | |
以博客形式记录本次任务 | 40 | 王负责博客的撰写,同时马* 、牛、魏**辅助完成 |
- 心得
- 魏**:本次团队项目学习,我们首先进行的是对VISIO建模工具的学习,该项建模任务基本可以说是全员参与了,因为两个文档每个人都有撰写,而且都有对应的图表,因为之前我一直使用的是Visio来绘制流程图之类。所以对该工具只是简单的熟悉了以下就上手了。总体感觉很不错,相对应的工具功能还是比较齐全的。但是之前没有绘制过类图等一些图,所以也学习了相关的绘制标准和知识。在这里花费了一些时间。最后和队友一起完成所有的用例图等图表的绘制。对于项目需求分析建模这项任务我们是在之前的原型设计基础上进一步将需求建模规范化,专业化。根据国标GB8567—88中《软件需求规格说明书》格式制定出了我们项目自己的需求分析文档,并建立相关模型。也学到了很多撰写文档的技巧和知识。对于软件系统设计任务的学习,我们团队成员一起设计出整体的软件总体框架,再将其细粒分模块设计。最终设计出我们的整体系统框架。但这里主要难点在于类图的制作,因为之前没有相关的实操,所以在绘制类图的部分下了很大功夫才按照标准绘制出来。
- 牛**:在本次作业中,我们共同学习了VISIO建模工具,熟悉了UML模型的绘制。我主要负责的是需求分析建模部分,一开始做的并不顺利,虽然理论课已经学习过,但是实践起来才发现各种问题,于是不得不重新学习,仔细研读,才顺利做出了各个模块和系统总体的用例图。而对象模型图我们原先组内商量做类图,可是类图过于复杂,各种类的关联关系交错。最后在组长的帮助下完成了这部分。本次作业团队成员积极协作,分工明确。大家在有困难时互相帮助,有疑惑时共同商讨,不足之处在慢慢改进。后面团队会更加团结的。
- 王**:团队成员仔细阅读任务要求后,组长给每个成员分配了任务,这样加快的任务的完成速度,成员专心完成自己的任务;在个人任务完成之后,通过成员之间讨论,对自己负责的任务进行多次迭代修改,在原来的基础上进行完善。本次任务中用到了在线作图工具VISIO,通过团队成员对该工具的协作学习以及使用,发现VISIO建模工具是一个特别方便的工具,里面有多种类型图的图元,并且功能齐全、操作简单。
- 马*:作业前期任务主要是利用VISIO建模工具绘图。大家共同学习了VISIO建模工具,完成了用例图、类图、WBS、数据流图等。完成了一系列分析建模。其实主要的问题不在于绘图工具的使用,而在于我们对于需要建立的模型的认识不明朗,例如绘制类图的时候无从下手。完成了这些,大家又协作完成了项目需求报告和系统设计报告。我其实不是一个可以独立做事情的人,所以很喜欢这种大家可以一起商量共同完成事情的氛围,非常感谢队友的帮助以及通力合作。