项目 内容
课程班级博客链接 班级博客链接
这个作业要求链接 作业要求链接
团队名称 TheSuperego
团队成员分工描述 公 * 瑜:团队项目软件系统设计说明书,系统数据库逻辑结构
陈 * 弟:完善WBS,软件系统总体结构设计
杨 * 霞:撰写整体博客,项目互评,任务三
张 * 盼:项目系统需求规格说明书,任务二
团队的课程学习目标 1.学习使用UML建模工具Visio
2.掌握面向对象需求分析建模技术
3.理解和掌握面向对象软件系统设计原理、设计过程和技术
这个作业在哪些方面帮助团队实现学习目标 1.学会熟练使用Visio常用UML图形绘制工具
2.选择适当的UML模型,建立问题域对象模型
3.应用面向对象分析方法,完善软件需求设计说明书
4.完善需求建模与系统设计说明书
团队博客链接 团队博客
团队项目Github仓库地址链接 Github仓库地址链接

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

  • 结对方团队博客链接:链接

  • 结对方Github项目仓库链接:仓库链接

  • 符合(1)要求的博客评论:

  • 结合实验七评分标准,给出互评团队作业评分成绩:

    对结对方博客整体的内容阅读后,给出成绩98分

任务2:使用Visio,应用面向对象分析方法(OOA),完善团队项目的《软件需求规格说明书》,并将该文档上传到团队项目Github仓库
(1)采用用例图表示项目功能需求,模型使用规范一致的图形符号和文字描述内容;

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

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

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

(5)采用OOA技术编制《XXX软件需求规格说明书1.2》上传到团队项目Github仓库截图

(6)文档有关于团队软件项目的需求陈述文字截图

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

(1)什么是C/S结构?

    C/S结构:Client/Server,是一种软件系统体系结构,即客户机和服务器结构。C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。在C/S结构中,应用程序分为两部分:服务器部分和客户机部分。服务器部分是多个用户共享的信息与功能,执行后台服务,如控制共享数据库的操作等;客户机部分为用户所专有,负责执行前台功能,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。C/S结构可以看做是胖客户端架构。客户端实现绝大多数的业务逻辑处理和界面展示,作为客户端的部分需要承受很大的压力,从分利用客户端的资源,对客户机的要求较高。

    目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。

(2)什么是B/S结构?

    B/S结构:即浏览器和服务器结构,Browser/Server。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。

    B/S结构可以看作是瘦客户端,只是把显示的较少的逻辑交给了Web浏览器,事务逻辑数据处理在放在了Server端,这样就避免了庞大的胖客户端,减少了客户端的压力。B/S结构的系统无须特别安装,只有Web浏览器即可。当然AJAXFlex等等的普遍使用也有富客户端的发展方向。

    以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

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

  • MVC是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。
    • Model(模型),是程序的主体部分,主要包含业务数据和业务逻辑。在模型层,还会涉及到用户发布的服务,在服务中会根据不同的业务需求,更新业务模型中的数据。
    • View(视图),是程序呈现给用户的部分,是用户和程序交互的接口,用户会根据具体的业务需求,在View视图层输入自己特定的业务数据,并通过界面的事件交互,将对应的输入参数提交给后台控制器进行处理。
    • Controller(控制器),Controller是用来处理用户输入数据,已经更新业务模型的部分。控制器中接收了用户与界面交互时传递过来的数据,并根据数据业务逻辑来执行服务的调用和更新业务模型的数据和状态。MVC模式将它们分离以提高系统的灵活性和复用性,不使用MVC模式,用户界面设计往往将这些对象混在一起。MVC模式实现了模型和视图的分离。

任务4:以任务2的成果为基础,使用Visio,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书,以回答:软件是如何实现用户需求的?
(1)采用适合的软件设计模式设计软件系统总体结构;

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

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

(4) 设计关键类的重点服务。
(5) 采用OOD技术编制《XXX软件设计说明书1.2》上传到团队项目Github仓库的截图

完成各项任务所花费的时间:

任务类型 预计花费时间(h) 实际花费时间(4)
任务一 0.3 0.5
任务二 4 6
任务三 0.25 0.3
任务四 6 8
任务五 3 3.5

对比陈述结构化软件分析与设计、面向对象分析与设计两类软件开发技术的异同

  • 相同点:

    • 结构化开发方法和面向对象的方法都是软件系统的开发方法。
    • 结构化开发方法和面向对象的方法在运用分解和抽象原则上的要求是完全一致的。分解即化整为零,将问题剥茧抽丝,层层消化﹔抽象则是通过分解体现﹐在逐层分解时,上层是下层的抽象,下层是上层的具体解释和体现,运用抽象可以不用一次考虑太多细节,而逐渐的有计划有层次的了解更多细节。
    • 局部化和重用性设计上的一致。局部化是软件开发中的一个重要原则,即不希望软件一部分过多地涉及或影响软件的其它部分。而面向对象方法则采用数据﹑代码的封装,即将数据﹑代码和操作方法封装成一个类似“黑箱”的整体对象,提高了程序的可靠性和安全性,同时增强了系统的可维护性。也就是说面向对象方法比结构化方法的运用更加深入更彻底。
  • 不同点:

    • 结构化方法是一种面向数据流的开发方法,面向对象方法是一种面向对象的开发方法。
    • 处理问题时的出发点不同。结构化方法是强调过程抽象化和模块化,以过程为中心构造或处理客观世界问题的,它是一种面向过程的开发方法﹔面向对象方法强调把问题域的要领直接影射到对象及对象之间的接口上,是用符合人们通常的思维方式来处理客观世界的问题。
    • 处理问题的基本单位和层次逻辑关系不同。结构化方法把客观世界的问题抽象成计算机可以处理的过程,处理问题的基本单位是能清晰表达过程的模块,用模块的层次结构概括模块或模块间的关系和功能﹔面向对象方法是用计算机逻辑来模拟客观世界中的物理存在,以对象的集合类作为处理问题的基本单位,尽可能使计算机世界向客观世界靠拢,以使问题的处理更直截了当,面向对象方法是用类的层次结构来体现类之间的继承和发展。

实验总结:

  • 杨丽霞:本次团队作业,首先是要学会Visio建模工具学习,然后用此工具设计系统软件并且用面向对象设计方法对系统进行设计,由于初次接触建模图过程比较繁琐,只能慢慢一步一步探索着学习,最后基本学会使用Visio绘图软件,发现它很方便也很使用也容易上手。从项目需求分析建模以及软件系统设计后把毕业设计选题系统清晰明了地展现了出来,但这次不同的是应用面向对象设计方法,虽然在设计的过程中方存在很多的问题,但是经过和组员探讨修改,初步完成了本次的模型设计。在我们组员同伴的分工明确和大家积极配合的情况下,我们顺利完成了本次实验,经历了几次团队作业,慢慢地大家有了默契,任务完成也比较积极。
  • 公海瑜:
  • 张兴盼:
  • 陈来弟:

版权声明:本文为qwe0420原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/qwe0420/p/14843974.html