实验八 团队作业4:团队项目需求建模与系统设计
内容 | 项目 |
---|---|
课程班级博客链接 | https://edu.cnblogs.com/campus/xbsf/nwnu2020SE |
这个作业要求链接 | https://www.cnblogs.com/nwnu-daizh/p/12976163.html |
团队名称 | Bug生产队 |
团队成员分工描述 | 王元宗:任务一,任务三,任务四 范铂真:任务一,任务三,任务四 刘永胜:任务一,任务二,任务五 乔昊:任务一,任务二,任务五 |
团队的课程学习目标 | 学习使用UML建模工具 掌握面向对象需求分析建模技术 理解和掌握面向对象软件系统设计原理、设计过程和技术 |
这个作业在哪些方面帮助团队实现学习目标 | 通过项目的学习,团队成员掌握了UML建模工具和需求分析功能书的编写 |
团队博客链接 | https://www.cnblogs.com/BugProduce/ |
团队项目Github仓库地址链接 | https://github.com/Wang-yuanz/StudentSystem |
一、实验目的与要求
(1)学习使用UML建模工具;
(2)掌握面向对象需求分析建模技术;
(3)理解和掌握面向对象软件系统设计原理、设计过程和技术。
二、实验内容与步骤
任务1:以团队协作学习方式掌握在线作图工具ProcessOn的软件操作方法。
proceson软件具体分为图形栏、设置面板、工具栏,产品主要围绕用户的绘图需求。
典型功能分析:
1)图形连接后会有导通标志;
2)对图形进行调整会有调整信息展示;
3)文件可进行“协作”;
4)丰富的图形管理库;
5)绘图过程会快速进行自动保存;
产品不足:
1)只能通过拖拽的方式将图形绘制在画布上;
2)图形库包含的范围广,但是每个主题下的图形较少,只能满足基本需求;
3)无法对图形进行圆角大小编辑;
总结
proceson绘图软件操作简单,菜单栏、图形库、设置面板都满足用户基本的使用需求,学习成本低,且其具有团队协作功能,可以进行团队协作完成绘图。
任务2:整理实验七作业成果,应用面向对象分析方法(OOA),参考国标GB8567—88中《软件需求规格说明书》格式,编制团队项目需求规格说明书,并将该文档上传到团队项目Github仓库,文档内容要求如下:
(1)采用用例图(或者DFD图)建模表示项目功能需求,模型使用规范一致的图形符号和文字描述内容;
(2)参考《构建之法》8.5节功能的定位和优先级,给出功能分析的四个象限;
(3)选择适当的UML模型,建立问题域对象模型;
(4)编制项目的WBS
(5)估计各项任务所需时间
任务 | 时间 |
---|---|
项目立项 | 一周 |
项目启动 | 一天 |
需求分析 | 一周 |
系统设计 | 两周 |
项目验收 | 三天 |
项目维护 | 未知 |
(6)文档上传到Github | |
任务3:查阅资料,回答以下问题:
(1)何谓软件设计模式?
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。
(2)什么是C/S?
C/S模式就是指客户端/服务器模式,是计算机软件协同工作的一种模式。
优点:交互性好,对服务器压力小,安全
缺点:服务器更新时需要同步更新客户端
(3)什么是B/S结构?
B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。
优点:不需要更新客户端
缺点:交互性差,安全性低
(4)什么是MVC设计模式?
从设计模式的角度来看,MVC模式是一种复合模式,它将多个设计模式在一种解决方案中结合起来,用来解决许多设计问题。MVC模式把用户界面交互分拆到不同的三种角色中,使应用程序被分成三个核心部件:Model(模型)、View(视图)、Control(控制器)。从全局的角度来看,MVC则表示:M层负责业务的构建和实现、V层负责展示和进行输入输出交互、C层则负责进行整个系统的协调和控制。
任务4:以任务1的成果为基础,应用面向对象设计(OOD)方法,撰写团队项目软件系统设计说明书,以回答:软件是如何实现用户需求的?文档内容要求如下:
(1) 采用适合的软件设计模式设计软件系统总体结构;
设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式使代码编制真正工程化,项目中合理地运用设计模式可以完美地解决很多问题。
我们采用组合模式,将对象组合成树形结构以表示"部分-整体"的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。创建了一个包含自己对象组的类,并提供修改对象组的方法。在系统的文件和文件夹的问题上就使用了组合模式,文件下不可以有对象,而文件夹下可以有文件对象或者文件夹对象。
(2) 设计软件系统数据库逻辑结构;
(3) 说明软件重用方案;
此次我们小组设计的试卷管理系统,利用已有题库管理系统,可以采用题库资源复用,题库页面设计复用等复用方案。代码复用的复用暂时可以考虑到的有学生教师管理员的信息部分的代码设计复用。
在软件重用方面,主要考虑到实际开发过程中,利用已有资源将试卷管理系统开发成为一个更符合学生教师使用的试卷管理系统。
(4) 设计关键类的重点服务。
学生类:学生通过注册登录可以访问系统,查看题库、试卷及答案。
教师类:教师可以查阅试卷、可利用权限内课程题库进行组卷、上传word/pdf格式试卷及试卷参考答案、处于组卷状态的自建试卷/试卷参考答案、可以对本人创建试题进行编辑、删除等操作。
管理员类:管理全体用户,对题库试题、试卷可编辑或删除,老师上传试卷或试题,管理员同意后才可以加入题库或试卷库。
软件设计说明书已上传至GitHub中
任务5:完成《实验八 团队作业4:团队项目需求建模与系统设计》团队博文作业:
psp
任务 | 时间(h) |
---|---|
任务一 | 3 |
任务二 | 8 |
任务三 | 3 |
任务四 | 9 |
任务五 | 2 |
总结
姓名 | 心得 |
---|---|
王元宗 | 在本次实验中,我们首先学习使用了ProcessOn,然后学习了UML建模工具、OOP、等,明白了软件设计的步骤,代码复用、软件重用等技术,我们在设计过程中虽然也遇到了一些小麻烦,但是通过团队成员的沟通,通过共同的大智慧解决了很多问题,顺利完成了本次的实验设计。 |
范铂真 | 在本次试验项目中,我们利用ProcessOn完成了绘制用例图,UML图形,项目系统结构设计图以及数据库逻辑设计图等图形。对于ProcessOn的学习和使用过程更清楚了解。并且在本次试验中,我们通过查资料和讨论,将任务二的几个问题解决,将软件设计过程中的几个关键问题了解和学习。在任务四中,小组讨论和设计项目总体设计结构和数据库的逻辑结构,我们边讨论边将我们实验项目的总体设计更细致的分析和设计。随后编写了项目软件系统说明书。 |
乔昊 | 通过本次实验,我们学习并掌握了ProcessOn的使用方法,及其绘制了系统所需要的设计图。同时也明白了软件开发过程中的步骤,对系统软件的开发有了一定的认识,虽然在本次实验中存在着各种的困难,我们组通过讨论学习,克服了这些困难,并是我们组的配合更加融洽。 |
刘永胜 | 这次实验中首先学习并掌握了在线作图工具processon,发现它在进行模型设计方面非常优秀。在这次实验的开发过程分成分析和设计两大部分。分析方法和设计模式因需求的不同而多彩多样。有的方法会带来一些非常明显的优点,有的方法会带来一些不利的因素。在分析和设计的阶段都采用了UML面向对象的建模方法。使整体更加系统化,标准化,模块化。使用UML设计出来的管理系统,有很多基于业务逻辑抽象出来的类,具有广泛性和重用性。 |