热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2018软工实践作业八之UML设计

1.团队信息队名:小白吃队成员:后敬甲031602409卢泽明031602328蔡文斌031602301葛亮031602617刘浩031602423黄泽031602317黄婧茹03

1. 团队信息



  • 队名:小白吃队

  • 成员:

    • 后敬甲 031602409

    • 卢泽明 031602328

    • 蔡文斌 031602301

    • 葛亮 031602617

    • 刘浩 031602423

    • 黄泽 031602317

    • 黄婧茹 031602315


  • 组长:后敬甲




2.团队分工


WBS

技术分享图片

Alpha版本


任务槽



  • 登陆注册界面完成

  • 自选窗口的识别结算功能实现

  • 学生端界面基本完成,商家端界面尽可能完成

  • 后端服务器搭建、数据库组织

  • 后台数据分析优化


任务分工



  • 后:确定分工、任务分配、进度跟进、博客整理

  • 刘浩:服务器搭建、数据库组织

  • 卢泽明:识别结算功能优化

  • 黄婧茹:前端美工设计

  • 葛亮:前端界面设计

  • 黄泽:数据分析优化

  • 文斌:数据分析优化


燃尽图

技术分享图片



3.UML


工具



  • Process on

    • 选择理由:页面简洁,功能易懂易用;在线制作,无需下载。

    • 评价工具:
      优点:除了选择理由中提到的两点以外,Processon还集成了常用的流程图、思维导图、原型设计、UML等图的绘制功能,再加上友好的团队协作功能,适合个人和团队合作开发。在编辑方面,拥有版本恢复功能,和自动保存功能,避免了因操作失误导致的成果丢失。
      缺点:原型设计不如MockPlus,毕竟MockPlus是专门做原型设计的。拥有文件数量限制,需要开通会员或者其他方法获取。需要联网使用,目前无法离线使用。不过便利之处也在于可以联网。



用例图



  • 必做图


    • 用例图




    1. 该部分描述了用户通过小程序点菜拍照能够进行的操作,以及拍照识别后的支付和数据的处理

    2. 解决了用户的可使用范围,通过我们的系统可以进行自助结账,点餐,数据周报,菜品调整等功能


    技术分享图片


    • 类图




    1. 类图描述了系统每个部分之间的关系、连接情况。

    2. 面临模块太多,比较复杂的问题

    3. 解决了利用类体关系图解决了开发者对各个类体之间关系的宏观认识


    技术分享图片


    • 活动图




    1. 这里描述的是系统的学生/教师和商家所在界面下的主要行为对应的结果。

    2. 面临学生/教师端的分支结构多,在页面设计和返回的逻辑上有一定的复杂性等问题。

    3. 解决了页面之间跳转的选择问题,以及标明学生/教师界端与商家端的联系,使设计界面的时候更为便捷。


    技术分享图片


    • 状态图




    1. 状态图(statechart diagram)是描述一个实体基于事件反应的动态行为,

    2. 显示了该实体如何根据当前所处的状态对不同的事件做出反应,以及由于各种事件的发生而引起的状态之间的转移。


    技术分享图片


    • 实体关系图




    1. 该部分主要介绍了项目的所拥有的模块,以及每个模块所附有的属性。

    2. 主要解决了功能模块的划分,以及属性之间的关系,展示了项目所需要的数据


    技术分享图片


  • 其他图


    • 时序图




    1. 时序图是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。

    2. 面临着需要先与类图,活动图同一等问题

    3. 解决了展示对象之间交互的顺序。将交互行为建模为消息传递,通过描述消息是如何在对象间发送和接收的来动态展示对象之间的交互;


    技术分享图片


  • 泳道图





  1. 该部分描述了各部门的职能和他们之间的联系还有整个项目的不同阶段。

  2. 方便的描述了各职位的职能流程,直观描述了各职位的逻辑关系,便于理解项目流程。


技术分享图片
技术分享图片


  • 包图




  1. 基本表达系统的基本功能, 描述了软件大致需要实现的功能。

  2. 如何对于相关的类进行整合使之成为更加简练的包,对于相关包之间的关系如何显示比较好。

  3. 大致了解整个软件的使用过程

    • 对于繁杂的类实现相当于文件夹的功能, 看起来更加简洁。

    • 实现了uml的附加功能之一。



技术分享图片



4.PSP











































































































PSPPersonal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning计划90120
?Estimate?估计这个任务需要多少时间500730
Development开发4030
?Analysis?需求分析 (包括学习新技术)150200
?Design Spec?生成设计文档3020
?Design Review?设计复审2015
?Coding Standard?代码规范(为目前的开发制定合适的规范)1020
?Design?具体设计1020
?Coding?具体编码150300
?Code Review?代码复审3030
?Test?测试(自我测试,修改代码,提交修改)2020
Reporting报告3020
?Test Repor?测试报告2015
?Size Measurement?计算工作量4020
?Postmortem & Process Improvement Plan?事后总结, 并提出过程改进计划3020
合计580730



5.评估成员的贡献分配


课前评估













































成员参与贡献比例
卢泽明用例图设计13%
张扬状态图设计15%
刘浩类图设计15%
葛亮活动图设计14%
蔡文斌实体关系图16%
李泓泳道图14%
何家伟时序图13 %

课后评估













































成员参与贡献比例
后敬甲燃尽图、博客补充(本组)+E-R图、博客整理(临时组)12%
卢泽明用例图15%
刘浩类图设计16%
葛亮活动图设计15%
蔡文斌实体关系图设计+WBS图设计+博客整理18%
黄婧茹包图(本组)+包图(临时组)12%
黄泽时序图补充(本组)+泳道图、E-R图(临时组)12 %



6.换队感受


原组队员



  • 后敬甲




  1. 我作为临时组员,交换到了第九组,完成本次作业。

  2. 工作氛围:整体还不错,大家都很认真的在做自己的部分,缺点是整体沟通欠佳。

  3. 行动力:行动力也很不错,每个人能及时完成自己的部分和内容。

  4. 临时队长:临时队长是朱跃安同学,能够及时的分配任务,督促大家完成,但事先的沟通和准备要再加强。




  • 婧茹




  1. 其他队的工作氛围:工作氛围挺好的,而且就是组内有什么不懂的提出来就是了,我们团队也挺好的。

  2. 行动力:确定了任务之后大家也都是努力做自己该做的部分,效率很高,我觉得他们队值得我们学习的一点就是分工精细,并且有时间概念

  3. 临时组长也是大概每隔30分钟会过来看一下任务进展,而且一开始就有约定十点半就把自己负责的那部分的图做完,内容写完,以此后面有充足的时间准备其他的。

  4. 时间观念真的值得我们小组好好借鉴。我们小组到了要交前五分钟还在匆忙的赶,约定十一点五十这个时间是真的不利于后面精修。

  5. 临时队长:我觉得临时队长的一个值得我们团队借鉴的优点就是,分而治之。分的很细,整合的时候也很细,就比如有好几种uml图,最后老师会提示字体版面要注意让看博客的能看清,那他就会很明确的




  • 文斌




  1. 对于这次的这波操作,很幸运的是自己没有被换走,依然留在了自己的队里

  2. 换过来的同学都认识,但是因为之前没配合过,还是会担心最后效果怎么样

  3. 好在在临时组长分配完任务后,大家有条不紊的进行自己负责的部分,遇到问题时互相交流,最后的成果还是很OK的。

  4. 夸赞一波自己的队友,很给力,被换到我们组的小伙伴也相当认真,点个赞




  • 葛亮




  1. 临时队长张弛有度,对突发事件有着很好的掌控,有大将风范。

  2. 新队友适应能力普遍很强,对我来说心理上还是与一定压力的,感觉如果不能迅速准确地画出自己负责的 部分,就给小组丢人了。

  3. 氛围的话,不是很好比较,因为原组也没有在现场一起进行过合作,通过现场实践,发现自己的工作效率提升了不少,并且感受到了协作间的阻力。每个人的工作看似相对独立,但实则联系紧密。收获了工作状态下的沟通心得和一定的调节能力。




  • 刘浩




  1. 按照分配我留在了原来的队伍,所以感觉队伍氛围没有变化很大。

  2. 得利于昨天晚上的临时开会,我们队对每个人的任务分配都很清楚,了解了自己的分工后都有主动去了解具体应该要做什么,所以今天上手的速度和效果都还不错,当然也得利于临时队长的优秀指挥和转来同学的认真付出和配合。




  • 黄泽




  1. 总体感想:说实话那天晚上突然知道自己要被换到其他组是十分懵逼的,急了好久,但是也没办法,和那组的成员交流了一下安装了需要用到的软件就开始画图了,真的充满了不安感,但是总的来说这次更换队员的活动是一次意义非凡的活动,带给我很多思考。

  2. 工作氛围:新队伍的工作氛围相当积极,因为人数比较多,大家似乎都争着抢工作,好在有临时组长组织协调才没有乱套,相比之下因为人数少的原因,我原来的小组的工作积极性没有那么高,但是非常有秩序,一切都听队长安排。

  3. 行动力:行动力的方面上,可能是因为新组长求稳,我的新组采取的策略是先一起做完必做的五张图片,再分配(其实是自愿)选作任务图,事实上这样就造成了2-3个人围着一张图做的情况,即便有软件有协同工作的功能,有时也总会有一个人没事干,这就造成了人力资源的浪费。我觉得我更赞同我原来组的做法,将选做图也当作必做图每人分配一张,一并做了,虽然人数更少,但是最后大家都完美完成,效率非常高。

  4. 临时组长:我新组的临时组长是王全炯,挺佩服他做的准备工作的:新队员拉群、对于各个图的讨论、各种素材集合为pdf...但是可能是因为是新组长的原因,统筹规划工作方面做的不是很好,相比我原来的组长还略有些逊色。




  • 泽明




  1. Challenge:自己担任起临时队长的任务,一方面需要统筹每个人的任务,一方面需要将自己的模块做好,并需要在新队友有疑问时给出解答,算是对自己的一个小挑战。

  2. Combination:队友的‘’出走‘’和“引进”,首先就是要对接好工作,将新队友融入到我们团队中。新来的队友都很强,在前一晚知道我们队要做什么,第二天就能快速上手项目的UML,并且完成度较高,值得称赞。

  3. Performance:我觉得今天我们团队表现的比较出色,不论是新队友还是老队友,大家执行力非常强,完成速度也非常可观。浩哥的类图之多,实现之难,文斌完成速度之快,效率之高等等。

  4. Shortcoming:今天比较遗憾的是我们的UML图并不是很好看,审美还需要提高。



临时队员



  • 张扬




  1. 初来新组的不适应,需要时间来知道新组在做什么

  2. 关心、担心自己原来的组(因为是组长)

  3. 新组因为都认识,配合的还不错,(*^__^*)




  • 家伟




  1. 工作氛围:小二结账队员相互之间都很友好,对我们这些新队友也都很和善,有问题能够主动帮忙,在我工作迟迟没有完成时也在旁边一直鼓励、帮助我。

  2. 行动力:具体没有什么观察,但在我遇到问题或者对产品功能不清楚的时候团队的成员都会主动询问我有什么不理解的地方,在确认有需要改动时也能够很快的对设计做出改动。

  3. 临时队长对比原队长:感觉都蛮好的,两个队长都是很和善的人,在有问题的时候可以慢慢相互沟通交流;新队长也会主动询问新队友是否有需要帮助的地方,在有困难的时候基本上是“随叫随到”。




  • 李泓




  1. 小白吃队 工作氛围良好,分工明确,执行力强,行动快

  2. 临时队长分配合理,有威信,缺点:直男审美



推荐阅读
  • 本文详细介绍如何在 iOS 7 环境下申请苹果开发者账号,涵盖从访问开发者网站到最终激活账号的完整流程。包括选择个人或企业账号类型、付款方式及注意事项等。 ... [详细]
  • 鼠标悬停出现提示信息怎么做
    概述–提示:指启示,提起注意或给予提醒和解释。在excel中会经常用到给某个格子增加提醒信息,比如金额提示输入数值或最大长度值等等。设置方式也有多种,简单的,仅为单元格插入批注就可 ... [详细]
  • 本题要求在一组数中反复取出两个数相加,并将结果放回数组中,最终求出最小的总加法代价。这是一个经典的哈夫曼编码问题,利用贪心算法可以有效地解决。 ... [详细]
  • 本篇文章介绍如何将两个分别表示整数的链表进行相加,并生成一个新的链表。每个链表节点包含0到9的数值,如9-3-7和6-3相加得到1-0-0-0。通过反向处理链表、逐位相加并处理进位,最终再将结果链表反向,即可完成计算。 ... [详细]
  • Appium + Java 自动化测试中处理页面空白区域点击问题
    在进行移动应用自动化测试时,有时会遇到某些页面没有返回按钮,只能通过点击空白区域返回的情况。本文将探讨如何在Appium + Java环境中有效解决此类问题,并提供详细的解决方案。 ... [详细]
  • 如何清除Chrome浏览器地址栏的特定历史记录
    在使用Chrome浏览器时,你可能会发现地址栏保存了大量浏览记录。有时你可能希望删除某些特定的历史记录而不影响其他数据。本文将详细介绍如何单独删除地址栏中的特定记录以及批量清除所有历史记录的方法。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 探索新一代API文档工具,告别Swagger的繁琐
    对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ... [详细]
  • 本文探讨了在构建应用程序时,如何对不同类型的数据进行结构化设计。主要分为三类:全局配置、用户个人设置和用户关系链。每种类型的数据都有其独特的用途和应用场景,合理规划这些数据结构有助于提升用户体验和系统的可维护性。 ... [详细]
  • InmyapplicationIhaveQGraphicsScenewithpixmapaddedandallisviewedinQGraphicsViewwithsc ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
  • 本文详细介绍了如何在Android 4.4及以上版本中配置WebView以实现内容的自动高度调整和屏幕适配,确保中文显示正常,并提供代码示例。 ... [详细]
  • 本文介绍了如何通过Java代码计算一个整数的位数,并展示了多个基础编程示例,包括求和、平均分计算、条件判断等。 ... [详细]
author-avatar
白云下6_136
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有