《黑白团团队》第六次作业:团队项目系统设计改进与详细设计

项目 内容
作业课程地址 任课教师首页链接
作业要求 团队项目
填写团队名称 黑白团团队
填写具体目标 认真负责,完成项目

任务1:团队项目系统设计改进

a.分析《黑白团团队项目系统设计说明书》初稿的不足,特别是软件系统结构模型建模不完善内容;

经过老师的指导和重新审核概要设计,我们发现了很多不足的地方。

1、编写目的叙述不完整,改进如下:

改进前:

此项目“导游众评网”,针对所有对有计划出游却不知道如何选择旅行社和导游的用户设计出的网站 ,为这类用户提供了简洁明了的导游选择, 所有数据真实可靠,严> 格控制弄虚作假的导游评论以及恶意刷好评的一切行为,针对这些用户所编写的概要设计说明书,让用户更清晰的了解此网站的用途和功能等。

改进后:

此项目“导游众评网”,针对所有对有计划出游却不知道如何选择旅行社、导游和已经跟团旅行并对这次旅行中导游的服务有建议或意见却无处安放的用户设计出的网站 ,为这类用户提供了简洁明了的导游选择, 所有数据真实可靠,严格控制弄虚作假的导游评论以及恶意刷好评的一切行为,针对这些用户所编写的概要设计说明书,让> 用户更清晰的了解此网站的用途和功能等。

2、编写背景中对用户的叙述不完整,改进如下:

改进前:

用户:针对想要去旅游不知如何选择旅行社和导游的群体,提供最优导游选择。

改进后:

用户:针对想要去旅游不知如何选择旅行社和导游的群体,提供最优导游选择;针对跟团旅行后对此次旅行中导游的服务有意见或建议和对是导游服务的感受无处安
放,提供发表言论的平台。

3、根据老师的指导我们将对用例图进行了改进。

b. 将完善内容以《XX团队项目软件系统设计改进》为名发布在团队博客中,并在团队项目Github仓库中更新《软件系统设计说明书》
任务2:团队项目系统详细设计

任务3:在团队博客发布博文,陈述本次作业实施过程,描述团队成员的具体分工、占整个任务的工作量比例及完成各自任务的实际时间,总结团队项目详细设计心得,总结中要体现每个成员的工作内容。

回答以下三个问题:

(1)何谓软件体系结构、软件设计模式?

软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目 的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠> 性、程序的重用性。
设计模式(英语 design pattern)是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年 > 代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。这个术语的含义还存有争议。算法不是设计模式,因为算法致力于解决问题而非设计问题。设计模式通常描述了一组相互紧密作用的类与对 象。设计模式提供一种讨论软件设计的公共语言,使得熟练设计者的设计经验可以被初学者和其他设计者掌握。设计模式还为软件重构提供了目标。 描述模式的格式大致分为以下四个主要部分:
模式名称(Pattern Name):每一个模式都有自己的名字,模式的名字使得我们可以讨论我们的设计。
问题(Problem):在面向对象的系统设计过程中反复出现的特定场合,它导致我们采用某个模式。
解决方案(Solution):上述问题的解决方案,其内容给出了设计的各个组成部分,它们之间的关系、职责划分和协作方式。
效果(Consequence):采用该模式对软件系统其他部分的影响,比如对系统的扩充性、可移植性的影响。影响也包括负面的影响。
动机(Motivation):该模式应该利用在哪种情况下是本节提供的方案(包括问题与来龙去脉)的责任。
应用(Applicability)
结构(Structure):这部分常用类图与互动图阐述此模式。
参与者(Participants):这部分提供一份本模式用到的类与物件清单,与它们在设计下扮演的角色。
合作(Collaboration):描述在此模式下,类与物件间的互动。
结果(Consequences):这部分应描述使用本模式後的结果、副作用、与交换(trade-off)
实现(Implementaion):这部分应描述实现该模式、该模式的部分方案、实现该模式的可能技术、或者> 建议实现模式的方法。

(2)什么是C/S与B/S结构

C/S模式就是指客户端/服务器模式,是计算机软件协同工作的一种模式。
由于Web浏览器的兴起,B/S模式逐步取代了C/S模式,被更广泛地应用。随着计算机网络技术的成熟和应用普及,特别是局域网的发展、PC机的出现,越来越多的用户和企业开始使用计算机管理一些事务。C/S模式有以下特点:
1、C/S模式将应用与服务分离,系统具有稳定性和灵活性。
2、C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性 。
3、由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快。
4、在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂。
PC机的资源没有大型、中型甚至小型主机丰富,但将多台PC机联成网,必然会增加资源含量,各个用户都在网络上来共享所有资源。根据客户/服务器(Client/Server简记为C/S)体系结构的概念,至少用两台计算机来分别充当客户机和服务器角色。
客户端可以是X86体系的风机或RISC体系的工作站等,而服务器端硬件一般比较高档,比如:高档PC服务器或SUN专用服务器;操作系统也比较高档,比如: Windows NT和 Unix。
B/S架构即浏览器和服务器架构模式。它是随着Internet技术的兴起,对C/S架构的一种变化或者改进的架构。在这种架构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。B/S架构是WEB兴起后的一种网络架构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server同数据库进行数据交互。 这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。
软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命 >的方式是“瘦”客户机,“胖”服务器。

(3)什么是MVC设计模式?

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:[1]
Model(模型)表示应用程序核心(比如数据库记录列表)。
View(视图)显示数据(数据库记录)。
Controller(控制器)处理输入(写入数据库记录)。
MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
  通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分。
  通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。
  通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。
MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

猜你喜欢

转载自www.cnblogs.com/hbtt/p/10958543.html