项目 内容
这个作业属于哪个课程 2016计算机科学与工程学院软件工程(西北师范大学)
这个作业的要求在哪里 实验十一 团队作业7—团队项目设计完善&编码
团队名称 快活帮
作业学习目标 掌握软件编码实现的工程要求。

1.团队软件项目编码实现与规范:

1.包名最好都是小写。
2.类或者接口:如果是一个单词,那么首字母大写(如:Book);如果是多个单词,则每个单词的首字母大写(如:BookCar)。
3.方法或变量:如果是一个单词,那么首字母小写(如:book);如果是多个单词,则从第二个单词开始,每个单词首字母大写(如BookName)。
以上是我们团队商议出的部分编码规范,其他的包括HTML编码规范都已上传到Github《软件编码规范说明书》中。

2.团队项目github仓库地址链接:《软件设计方案说明书》、《软件编码规范说明书》以及本周已完成项目源码

3.成员具体分工及场景照片:


整个任务分为两个部分:
第一部分:对系统设计和详细设计进行改进,整理。

  • 1.杨露露:基于之前已经完成的实验,对团队项目系统设计说明书和详细设计说明进行修改完善,并编写《快活帮团队项目软件设计方案》。占整个文档任务的工作量比例:25%
  • 2.张琳:陈述软件设计准则的体现,并结合燃尽图总结本次实验执行过程,最后编写博文。占整个需求文档任务的工作量比例:24%

第二部分:团队软件项目编码实现。

  • 1.陈润菊:根据小组内成员共同商议制定出的团队项目编码规范,编写文档《软件编码规范说明书》。占整个需求文档任务的工作量比例:25%
  • 2.沙沙:代码的分析(详细分析本团队项目要在代码上做出的改变,具体到类、方法)。占整个需求文档任务的工作量比例:26%
  • 搭建并配置项目集成开发环境这一任务由团队成员共同完成。

    4.本实验执行过程(结合燃尽图):


    1.我们团队燃尽图是以卡片数为统计方式的(根据需求分析结果以及项目设计要求,将整个项目实施过程分为32张卡片)。
    2.Leangoo看板周期目前设置为2019-05-26到2019-06-12。
    3.2019-05-26到2019-05-28期间,团队成员均在有序推进工作(原因是:任务量少并且任务难度相对于整个项目来讲比较容易实现)。
    4.从2019-05-29开始到目前为止,进程推进缓慢(原因是:虽然对需求的确定以及对软件概要设计、详细设计等的改进和完善,使得团队成员更加理解和掌握了团队项目实现过程中的技术以及思想,但与此同时,任务难度增加,在预估进程的完成时间时不够准确)。
    5.目前已经初步设计了编码实现规范与原则,项目其它进程也正在努力跟进中。

    5.软件设计准则的体现:

    1.抽象:我们团队的软件项目在实现过程中用到了MVC三层架构,它的核心就是抽象的分层。而且我们将项目功能分为不同模块,每个模块负责实现自己的功能,体现了单一原则。
    2.强内聚/弱耦合/模块化:将整个项目分为管理员、用户、图书管理等模块,每个大的模块在具体实现过程中又被分为多个小模块,尽量使得各模块之间以及模块内部实现高内聚低耦合。
    3.信息隐藏和封装:在具体的编码实现过程中,利用接口或私有方法等实现信息的隐藏和封装。
    4.界面和实现的分离:首先我们借鉴相似项目的界面框架,将大致界面由相应团队成员实现,然后负责具体代码实现的成员针对界面中的具体内容进行具体实现。
    5.错误情况处理:我们针对可能出现错误或者容易出现错误的情况进行不断地测试,同时,为了尽量减少系统的漏洞,对接收的数据进行适当的处理,比如过滤掉一些特殊的字符,如单撇、双撇、空格等等,比较典型的就是在用户注册时就明确指出字符长度或禁止一些特殊字符。
    6.运行环境假设:(1)Windows7及以上所有Windows系统,且本系统不需要特定的硬件或硬件接口进行支撑;(2)IE 4.0或者更高版本的网络支持;(3)Windows 7 Server 或更高版本,以及Tomcat6.0 或后续版本;(4)Windows 7 Server 或更高版本,以及Mysql5.0或更高版本。
    7.设计方案的灵活性和数据处理能力:我们团队的软件设计方案是由团队所有成员共同商议,并针对项目的具体实现来进行合理设计的。设计方案中包括以下几点:不要将代码写死(消除代码中的常数);抛出异常(由操作的调用者来处理异常);尽量使用并创建可复用的代码;更好地实现高内聚和低耦合(提高替换能力)。
    8.设计中采用的启发式规则:采用最重要也是最基础的是“改善软件结构,提高模块独立性”,同时还有“模块功能完善化”,“设计规模适中的模块”,“降低模块接口的复杂程度”等。

    6.实验心得总结:

    软件项目的实现除了需要精确的需求分析、概要设计和详细设计等,更加需要编码阶段中的编码规范、环境配置以及编码设计准则的实现。通过本次实验,我们团队对“项目编码”有了更进一步的了解,知道编码不是单纯的编写代码的过程,而编写代码也绝对不是“只要实现功能就好了”,都需要实现一定的软件设计准则。所以,我们团队将在今后的软件设计过程中,吸取经验教训、总结以往经验知识、提高团队的整体开发能力,在发挥团队精神的同时,进行“规范”的软件设计,完善团队项目。

    《快活帮》第七次作业:团队项目设计完善&编码的更多相关文章

    1. 《你说对就队》第七次作业:团队项目设计完善&编码

      <你说对就队>第七次作业:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 [教师博客主页链接] 这个作业的要求在哪里 [作业链接地址] 团队名称 <你说对就队> ...

    2. 《毛毛虫团队》第七次作业:团队项目设计完善&编码

      一:实验名称:团队项目设计完善&编码 二:实验目的与要求 掌握软件编码实现的工程要求. 三:实验步骤 任务一:团队软件项目设计完善: 任务二:团队软件项目编码实现: 任务三:在团队博客发布博文 ...

    3. 《逆袭团队》第七次作业:团队项目设计完善&编码

      实验十一 团队作业7:团队项目设计完善&编码 内容 项目 软件工程 任课教师博客主页链接 作业链接地址 团队作业7:团队项目设计完善&编码 团队名称 逆袭团队 具体目标 (1)完善团队 ...

    4. 《hello-world团队》第七次作业:团队项目设计完善&编码

      项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十一 团队作业7:团队项目设计完善&编码 团队名称 <hello--w ...

    5. 《奋斗吧!菜鸟》 第七次作业:团队项目设计完善&编码

      项目 内容 这个作业属于哪个课程 任课教师链接 作业要求 https://www.cnblogs.com/nwnu-daizh/p/10980707.html 团队名称 奋斗吧!菜鸟 作业学习目标 团 ...

    6. 实验十一 团队作业7:团队项目设计完善&编码

      实验十一 团队作业7:团队项目设计完善&编码 实验时间 2019-6-6 Deadline: 2019-6-12 10:00,以团队随笔博文提交至班级博客的时间为准. 评分标准: 按时交 – ...

    7. 实验十一 团队作业7—团队项目设计完善&编码测试

      实验十一 团队作业7—团队项目设计完善&编码测试 实验时间 2018-6-8 Deadline: 2018-6-20 10:00,以团队随笔博文提交至班级博客的时间为准. 评分标准: 按时交 ...

    8. 《ABCD组》实验十一 团队作业7:团队项目设计完善&编码

      <ABCD组>实验十一 团队作业7:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

    9. Spring_Four -- 团队项目设计完善&编码测试

      团队项目设计完善&编码测试 1.文档<软件设计方案说明书>github地址:https://github.com/gzyt/SRS 2.项目集成开发环境 数据库:Mysql 5.0 ...

    随机推荐

    1. BZOJ2073 「POI2004」PRZ 状压DP

      问题描述 BZOJ2073 题解 发现 \(n \le 16\) ,显然想到状压 设 \(opt[S]\) 代表过河集合为 \(S\) 时,最小时间. 枚举 \(S\) 的子集,进行转移 枚举子集的方 ...

    2. SQL Server 迁移数据库 (三)使用SQL脚本

      1. 创建脚本 1.1 在需要迁移的数据库上右击>Tasks>Generate Scrips 1.2 前两步直接Next,第三步我这里选择Save to Clipboard,因为如果选Sa ...

    3. CF-1132 C.Painting the Fence

      题目大意:现在有n个栅栏板,p个工人,每个工人可以涂一段区间的栅栏板,问如果雇佣p-2个工人,最多可以涂多少块栅栏板. 做法:先求出q个工人能涂得最多木板数,并统计每个木板被涂的次数.求被涂一次的木板 ...

    4. 解决4K屏电脑显示问题

      在科技飞速发展的年代,4K屏幕不断成为电视.电脑广告的亮点功能,它在显示效果上,确实效果不错,如下图.但是,在电脑上使用是否会影响眼睛的健康问题,还没有权威的论证. 毕竟4k高清屏幕还不是主流,很多软 ...

    5. [日常] SNOI2019场外VP记

      SNOI2019场外VP记 教练突然说要考一场别省省选来测试水平...正好还没看题那就当VP咯w... Day 1 八点开题打 .vimrc. 先看了看题目名...一股莫名鬼畜感袭来... 怎么T1就 ...

    6. 本地运行vue项目webpack提示 Compiled successfully

      最近在github下载运行别人的vue项目后,如下图提示编译成功,但项目并没有启动       最开始我以为是端口问题,修改了config-index.js里的port端口,重新运行后依然是上图提示 ...

    7. Topshelf + QuartzNet 实现挂载在 WIndows Services 中的定时任务

      直接贴代码了: 首先我们可以把所有的 Job 放到一个单独的 DLL 中,好处是可以共享这些业务 Job.比如我们新建一个 QuartzNetDemo.WinService.Jobs 的类库. 然后, ...

    8. Prometheus K8S中部署Alertmanager

      Prometheus K8S中部署Alertmanager 设置告警和通知的主要步骤如下:一.部署Alertmanager二.配置Prometheus与Alertmanager通信三.配置告警 1. ...

    9. 机器学习(六)--------神经网络(Neural Networks)

      无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时, 计算的负荷会非常大. 比如识别图像,是否是一辆汽车,可能就需要判断太多像素. 这时候就需要神经网络. 神经网络是模拟人类大脑的神经网络, ...

    10. VM1059 bootstrap-table.min.js:7 Uncaught TypeError: Cannot read property 'classes' of undefined

      参考链接:https://blog.csdn.net/liuqianspq/article/details/81868283 1.阳光明媚的下午,我在写CRUD,让数据传到前端的时候,解析的时候报错了 ...