• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

实验八 团队作业5:团队项目需求建模与系统设计(2)

开发技术 开发技术 4小时前 3次浏览

实验八 团队作业5:团队项目需求建模与系统设计(2)

项目 内容
课程班级博客链接 2018级卓越班
这个作业要求链接 实验八 团队作业5:团队项目需求建模与系统设计(2)
团队名称 玛卡巴卡小分队
团队成员分工描述 熊文婷:任务1,2;
杨子豪:任务4;
贾傲羊:任务4;
于泽浩:任务3,5;
团队协作:任务2,4;
团队的课程学习目标 (1)学习使用UML建模工具Visio;
(2)掌握面向对象需求分析建模技术;
(3)理解和掌握面向对象软件系统设计原理、设计过程和技术。
这个作业在哪些方面帮助团队实现学习目标 (1)在学习使用UML建模工具Visio的时候;
(2)在通过查阅资料学习面向对象需求分析建模技术的时候;
(3)在学习面向对象软件系统设计原理、设计过程和技术的时候;
(4)在撰写完档回顾所学内容的时候。
团队博客链接 实验八 团队作业5:团队项目需求建模与系统设计(2)
团队项目Github仓库地址链接 仓库:实验八 团队作业5

任务1:对实验七的团队项目互评

任务1:按团队项目互评名单,对互评方《实验七 项目需求分析建模与系统设计(1)》的项目成果进行评价,具体要求如下:

(1)阅读互评团队项目博文作业并进行评论,评论要点包括:博文结构、博文内容、任务分工与时间耗费。将以上评论内容发布到互评团队博客评论区。

(2)下载并阅读互评方团队项目资料。

  1. 阅读互评团队项目博文作业并进行评论

    • 结对方团队博客链接:天马行空队——实验七博文

    • 博客点评

      实验八 团队作业5:团队项目需求建模与系统设计(2)

  2. 下载并阅读互评方团队项目资料

    • 结对方Github项目仓库链接:天马行空队——实验七仓库

    • 结对方仓库

      实验八 团队作业5:团队项目需求建模与系统设计(2)

    • 下载内容过程

      实验八 团队作业5:团队项目需求建模与系统设计(2)

    • 下载结果

      实验八 团队作业5:团队项目需求建模与系统设计(2)

    • 文档点评

      他们团队做的好的方面是文档自己添加了封面;
      格式方面:格式是论文的格式,图片放置的大小不一致,图片题注有问题,各级标题分不清;
      内容方面:面面俱到,把能包含的方面都写了,整个文档包含的内容较为全面;

      • 各级标题问题

        实验八 团队作业5:团队项目需求建模与系统设计(2)

        注:二级标题和三级标题一样,没有缩进。

      • 文档图片问题

        实验八 团队作业5:团队项目需求建模与系统设计(2)

        注:图片大小不一样,不美观。

    3.互评团队作业评分成绩:135 分

任务2:使用Visio,应用面向对象分析方法(OOA),完善团队项目的《软件需求规格说明书》

任务2:使用Visio,应用面向对象分析方法(OOA),完善团队项目的《软件需求规格说明书》,并将该文档上传到团队项目Github仓库,文档内容要求如下:

(1)采用用例图表示项目功能需求,模型使用规范一致的图形符号和文字描述内容;

(2)参考《构建之法—现代软件工程》8.5节功能的定位和优先级,给出功能分析的四个象限;

(3)选择适当的UML模型,建立问题域对象模型;

(4)完善项目的WBS,估计各项任务所需时间

  1. 采用用例图表示项目功能需求

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  2. 参考《构建之法—现代软件工程》8.5节功能的定位和优先级,给出功能分析的四个象限

    • 内容学习

      杀手功能:OCR文字识别技术,可以在屏幕上取词解释,拥有独家权威词典,等等。
      外围功能:良好的界面设计,在各个平台上都能运行。
      必要需求:单词短语释义的准确性(如果达不到这一点,用户就不会来使用)。
      辅助需求:可以做各种皮肤(这也许能让一些用户更喜欢这个软件,但不是决定因素)。

    • 四个象限

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  3. 选择适当的UML模型,建立问题域对象模型

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  4. 完善项目的WBS,估计各项任务所需时间

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  5. 文档上传记录

    实验八 团队作业5:团队项目需求建模与系统设计(2)

任务3:查阅资料,回答以下问题

  1. 什么是C/S结构?

    • 什么是C/S架构

      C/S架构是第一种比较早的软件架构,主要用于局域网内。也叫 客户机/服务器模式。

      它可以分为客户机和服务器两层:

      第一层: 在客户机系统上结合了界面显示与业务逻辑;

      第二层: 通过网络结合了数据库服务器。

      简单的说就是第一层是用户表示层,第二层是数据库层。

        这里需要补充的是,客户端不仅仅是一些简单的操作,它也是会处理一些运算,业务逻辑的处理等。也就是说,客户端也做着一些本该由服务器来做的一些事情,如图所示:
      实验八 团队作业5:团队项目需求建模与系统设计(2)

      C/S架构软件有一个特点,就是如果用户要使用的话,需要下载一个客户端,安装后就可以使用。比如QQ,OFFICE软件等。

    • C/S架构的优点

      1 C/S架构的界面和操作可以很丰富。(客户端操作界面可以随意排列,满足客户的需要)

      2 安全性能可以很容易保证。(因为只有两层的传输,而不是中间有很多层)

      3 由于只有一层交互,因此响应速度较快。(直接相连,中间没有什么阻隔或岔路,比如QQ,每天那么多人在线,也不觉得慢)

    • C/S架构的缺点

      可以将QQ作为类比:

      1 适用面窄,通常用于局域网中。

      2 用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。

      3 维护成本高,发生一次升级,则所有客户端的程序都需要改变。

    • 引用来源:深入理解B/S与C/S架构

  2. 什么是B/S结构?

    • 什么是B/S架构

      B/S架构的全称为Browser/Server,即浏览器/服务器结构。

      Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现。

      B/S架构的系统无须特别安装,只有Web浏览器即可。

      其实就是我们前端现在做的一些事情,大部分的逻辑交给后台来实现,我们前端大部分

      B/S架构的分层:

      与C/S架构只有两层不同的是,B/S架构有三层,分别为:

      第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能。

      第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能。

      第三层数据层:主要是接受客户端请求后独立进行各种运算。

      如图所示:

      实验八 团队作业5:团队项目需求建模与系统设计(2)

    • B/S架构的优点

    1、客户端无需安装,有Web浏览器即可。
    2、BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。
    3、BS架构无需升级多个客户端,升级服务器即可。可以随时更新版本,而无需用户重新下载啊什么的。

    • B/S架构的缺点

      1、在跨浏览器上,BS架构不尽如人意。
      2、表现要达到CS程序的程度需要花费不少精力。
      3、在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。
      4、客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)

    • 引用来源:深入理解B/S与C/S架构

  3. 什么是MVC设计模式

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

    • Model、View、Controller

      ​ Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
      ​ View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
      ​ Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

      ​ MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + servlet + javabean的模式
      ​ Model:常用javabean去实现,通过各种类来对数据库的数据进行获取,并封装在对象当中。

      ​ View:常用JSP来实现,通过可直接观察的JSP页面来展示我们从数据库中获取的数据。

      ​ Controller:常用servlet来实现,通过servlet来获取经过javabean包装过的对象(已存入数据库中的数据),然后再发送数据传输到JSP界面。

    • 引用来源:浅谈什么是MVC设计模式

任务4:使用Visio,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书

任务4:以任务2的成果为基础,使用Visio,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书以回答:软件是如何实现用户需求的?文档内容要求如下:

(1) 采用适合的软件设计模式设计软件系统总体结构;

(2) 设计软件系统数据库逻辑结构;

(3) 说明软件重用方案;

(4) 设计关键类的重点服务。

  1. 文档内容(采用适合的软件设计模式设计软件系统总体结构

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  2. 文档内容(设计软件系统数据库逻辑结构

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  3. 文档内容(说明软件重用方案

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  4. 文档内容(设计关键类的重点服务

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  5. 项目仓库上传文档截图

    实验八 团队作业5:团队项目需求建模与系统设计(2)

任务5:完成团队博文作业

  1. 博文撰写

    实验八 团队作业5:团队项目需求建模与系统设计(2)

  2. 各项任务实际花费的时间和分工

    任务名称 计划用时(min) 实际用时(min) 分工
    任务1 60 60 *文婷
    任务2 300 340 *文婷; 团队协作
    任务3 60 120 *泽浩
    任务4 330 400 *子豪; *傲羊; 团队协作
    任务5 90 150 *泽浩;

    注:本次实验虽有个人分工和团队协作,但在实际过程中以团队协作为主,个人分工任务为此成员主导进行,以保证实验按时完成。

  3. 结合实验七、实验八的学习体验,对比陈述结构化软件分析与设计、面向对象分析与设计两类软件开发技术的异同

  4. 学习活动的心得

  • *泽浩

    团队分工:

    协作学习:

  • *文婷

  • *傲羊

  • *子豪


喜欢 (0)