实验十 团队作业6:团队项目系统设计改进与详细设计

项目 内容
作业所属课程 所属课程
作业要求 作业要求
团队名称 《 The One !》
作业学习目标 (1)掌握面向对象软件设计方法;(2)完善系统设计说明书,掌握面向对象详细设计内容、设计原理和技术。

任务一:团队项目github仓库地址链接;

《软件系统设计改进》Github仓库链接

《软件系统详细设计说明书》Github仓库链接

任务二: 团队项目系统详细设计按任务要求完成团队项目系统设计改进总结;

      系统总体设计类图:

项目系统改进总结:####

      在系统设计改进的时候,发现在上周的设计中有一些地方设计结构不够清楚,面向对象的设计方法不是很准确。在项目的改进中加入了系统的总体类图,进行了直观的分析,在类图中可以清晰的了解到各个类之间的关系。在系统的总体用例图中也进行了进一步的详细说明。原始的ER图结构不是很清楚,又重新进行了分析和改进。经过此次改进,我们认识到一个项目的开发不会是一直向前的,经常要做一些迭代的工作,因为很多时候我们在后期的设计和实现过程中可能会发现也许最初的设计是有问题的,这时我们就需要从出现问题的地方重新开始梳理,这可能会花费许多的时间,所以为了减少花费不必要的时间,我们应该尽量在相邻的设计过程中尽量做到完善。

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

团队项目详细设计过程总结。####

    本次的作业主要包括两个部分,一部分是对软件系统设计说明书的改进和完善,另一部分是完成详细设计说明书的书写。就此次任务而言,我们采用分工明确的分配方式,由两个人完成软件系统说明书的改进和博文的编写,两个人按照之前的设计完成详细设计说明书的编写;两个小组的任务量各占此次任务的50%。
     团队项目设计心得:
     软件系统说明书部分:虽然软件系统说明书在上次的任务中已经完成了一部分,但从在课堂上指出其他小组存在的问题中我们也发现了我们项目中存在的问题,在这次的改进部分,我们将上次设计不清楚的部分完善,将设计错误的地方进行了改正,而且新增加了我们设计中缺少的部分。
     软件系统详细设计说明书部分:在一个软件系统项目的开发过程中,详细设计部分是在整个设计部分的重中之重,直接关系到项目能否实现,但详细设计能否顺利完成取决于之前所做的准备工作。
    总体:对于一个项目来说,成员们的能力是一方面,但更重要的是团队中的成员能够同心协力,遇到不懂得问题能够讨论,在所有的设计过程中能够由良好的沟通。有时候在项目初期看起来可能十分困难的事情,只要在开发的过程中能够做好每一步,最终会发现问题也会变得简单。
2  回答以下两个问题:
 (1)何谓软件体系结构、软件设计模式?

软件体系结构:####

  是具有一定形式的结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负责对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组合连接起来。

关于软件体系结构的几种典型####

   定义:
    Mary Shaw和David Garlan认为软件体系结构是软件设计过程中的一个层次,这一层次超越计算过程中的算法设计和数据结构设计。体系结构问题包括总体组织和全局控制、通讯协议、同步、数据存取,给设计元素分配特定功能,设计元素的组织,规模和性能,在各设计方案间进行选择等。
    Kruchten指出,软件体系结构有四个角度,它们从不同方面对系统进行描述:概念角度描述系统的主要构件及它们之间的关系;模块角度包含功能分解与层次结构;运行角度描述了一个系统的动态结构;代码角度描述了各种代码和库函数在开发环境中的组织。
    Hayes Roth则认为软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接、接口和关系。

软件设计模式:####

    设计模式是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。设计模式通常描述了一组相互紧密作用的类与对象。设计模式提供一种讨论软件设计的公共语言,使得熟练设计者的设计经验可以被初学者和其他设计者掌握。设计模式还为软件重构提供了目标。设计模式使人们可以更加简单方便地复用成功的设计和体系结构。将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。

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

C/S:####

   C是英文单词“Client”的首字母,即客户端的意思,C/S就是“Client/Server”的缩写,即“客户端/服务器”模式。C/S结构是一种软件系统体系结构,也是生活中很常见的。这种结构是将需要处理的业务合理地分配到客户端和服务器端,这样可以大大降低通信成本,但是升级维护相对困难。

B/S:####

   B是英文单词“Browser”的首字母,即浏览器的意思;S是英文单词“Server”的首字母,即服务器的意思。B/S就是“Browser/Server”的缩写,即“浏览器/服务器”模式。B/S结构是随着互联网的发展,web出现后兴起的一种网络结构模式。这种模式统一了客户端,让核心的业务处理在服务端完成。你只需要在自己电脑或手机上安装一个浏览器,就可以通过web Server与数据库进行数据交互。

B/S和C/S结构的不同:####

  a.硬件环境不同,C/S通常是建立在专用的网络上,小范围的网络环境。而B/S是建立在广域网上的,适应范围强,通常有操作系统和浏览器就行;
  b.C/结构比B/S结构更安全,因为用户群相对固定,对信息的保护更强;
  c.B/S结构维护升级比较简单,而C/S结构维护升级相对困难;

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

MVC:####

    全名 Model View Controller。是模型(model),视图(view),控制器(controller)的缩写。model 是用于处理应用程序中程序数据逻辑的部分,通常模型对象负责在数据库中存取数据。view 是应用程序中处理数据显示的部分,通常视图是依据模型数据创建的。controller 是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。MVC是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间,提高代码复用性。
原文地址:https://www.cnblogs.com/lswz/p/10965576.html