一:实验名称:团队项目设计完善&编码


二:实验目的与要求

掌握软件编码实现的工程要求。


三:实验步骤

任务一:团队软件项目设计完善;
任务二:团队软件项目编码实现;
任务三:在团队博客发布博文,结合燃尽图陈述本实验执行过程,上传团队实施本次作业的场景照片,描述团队成员的具体分工、占整个作业任务的工作量比例及完成各自任务的实际时间,每位成员结合任务分工总结本次实验心得,最后由项目组长进行总结陈述。


四:实验内容

项  目 内  容
这个作业属于哪个课程 任课教师博客主页链接
这个作业的要求在哪里 作业链接地址
团队名称 毛毛虫组
作业学习目标 掌握软件编码实现的工程要求。

一:团队软件项目设计完善

a:完善后的《毛毛虫团队项目软件设计方案》github链接地址:《毛毛虫团队项目软件设计方案》

b:项目设计原则的体现:

1.抽象:使用抽象类abstract class作为其他类的基类,通过覆盖来实现所有继承而来的抽象方法。
2.强内聚/弱耦合/模块化:将整个项目分为超级管理员、和普通用户两大模块,分别在每个模块下又有其对应的子模块,让各模块之间和子模块内部实现高内聚弱耦合。
3.信息隐藏和封装:在代码的编写过程中,信息的影藏和封装是通过namespace和class实现的,通常模块之间是以类为基础构建的。
4.界面和实现的分离:我们借鉴了相似项目的框架,了解了Sharpdevelop的插件方式,然后由特定的团队项目成员编写简单的框架,由其他成员针对界面内容进行具体实现。
5.错误情况处理:使用try、catch、finally三个关键字的原则进行处理。
6.运行环境假设:(1)运行环境:Microsoft.NET Framework SDK v4.7;(2)系统开发平台:Microsoft Visual Studio 2017;(3)数据库管理系统软件:Microsoft SQL Server2014;(4)运行平台:Windows 7/ Windows 8/Windows 10。
7.设计方案对于应对变化的灵活性和数据处理能力:团队设计方案由团队成员共同讨论决定,设计方案中具体的灵活性包括:(1)尽量创建可复用的代码;(2)更准确地体现高内聚、低耦合(3)抛出异常。
8.设计中采用的启发式设计规则:(1)模块功能完善化;(2)改善软件结构,提高模块独立性;(3)设计规模适中的模块;(4)降低模块接口的复杂程度。

二:团队软件项目编码实现

a:项目集成开发环境:

系统开发平台: Microsoft Visual Studio 2017
系统开发语言: C#
数据库管理系统软件: Microsoft SQL Server 2016
运行平台: Windows 10
运行环境: Microsoft.NET Framework SDK v4.7

b:《软件编码规范说明书》github链接地址:《软件编码规范说明书》

c:按照软件设计方案说明书要求,选择计算机语言协作编写软件代码,开发软件关联数据库创建程序,进行必要的代码测试;

项目测试:
    登录界面

    系统主界面

    结果分析:

(1)在登录时无法区分超级管理员和普通用户,因此在进行用户权限设置时出现故障,目前此部分正在进行调整。

(2)在数据库设计时,由于数值类型设置不恰当,导致在输入数据时出现字长不够而无法正常输入的情况,经过查看修改后,此部分功能基本能正常运行,但是还需要进一步测试完善。
(3)在进行仓库管理时,发现数据的操作次数只能显示一次的记录,目前正在排查故障当中 。

d:上传本周已完成项目源码到团队项目Github仓库。

本周已完成项目源码请点击仓库链接:https://github.com/maomaochongzu/tuanduizuoyeshiyanba

三:项目总结

a:结合燃尽图陈述本实验执行过程:

    在执行本次实验的过程中,我们先对团队项目进行了系统设计,然后在大家的齐心协力下共同完成《软件设计说明书》,然后我们确定了项目集成开发环境,Microsoft Visual Studio 2017,链接Microsoft SQL Server 2016数据库和Microsoft.NET Framework SDK v4.7运行环境以及Windows 10运行平台,接着编写了《软件编码规范说明书》以便于后面代码的编写,目前完成的代码有:

    (1)DataCon类:用来访问SQL server数据库并且执行基本的SQL语句。

    (2)DataOperate类:调用SQL存储过程、执行数据验证、数据控件绑定图标的绘制等功能。

    接下来我们准备对数据库设计模块进行设计。

b:团队实施本次作业的场景照片:

c:团队成员的具体分工、占整个作业任务的工作量比例及完成各自任务的实际时间:

成员姓名 成员具体分工 占整个作业任务的工作量比例 完成各自任务的实际时间(min)
王雪刚 分配成员项目任务,组织团队成员编写代码;编写《项目软件设计方案》;编写代码。 28% 1780min
陈倩倩 编写博客文档,编写代码 25% 1750min
陈  靖 编写《软件编码规范说明书》,编写代码。 25% 1750min
唐  璐 编写代码。 22% 1700min

d:实验心得总结:

    团队项目进行已有将近两个月,回想起当初建立团队、选定题目时大家还都是懵懵懂懂,不知从何开始,如何进行,可转眼间就已经到了编写代码,系统实现的时候了。从团队项目的原型设计到团队项目的需求调研与分析,再到需求改进以及详细设计说明书的编写,团队项目的每位成员都认真对待,亲身体会团队项目开发的实际过程,这个过程无论是外在因素还是知识技能方面都让我们学会了很多。我们期待项目完成的那一刻,喜欢看到燃尽图一点点下降的感觉,因为这是我们努力的体现。

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

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

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

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

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

  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. 浅析Jupyter Notebook

    一 概述 Jupyter Notebook是以web交互式的编程接口,是IPython notebook的升级版本.主要是针对python,另外支持运行 40 多种编程语言.Jupyter可以在个人机 ...

  2. 如何让div中的span垂直居中 ----height:100%设置div的高度

    如果div中只有一个span一个元素,可以使用line-height.如果div中还有其他元素,可以设置span的css如下: .span{ position: absolute; top: 50%; ...

  3. Find First and Last Position of Element in Sorted Array

    问题:给定一个有序数组和一个目标值,输出目标值在数组中的起始位置和终止位置,如果目标值不在数组中,则输出[-1,-1] 示例: 输入:nums = [1,2,3,5,5,7] target = 5 输 ...

  4. php 数值转多少年,多少天,多少时,多少分,多少秒

    function Sec2Time($time){ if(is_numeric($time)){ $value = array( "years" => 0, "da ...

  5. Codevs 1688 求逆序对(权值线段树)

    1688 求逆序对  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description 给定一个序列a1,a2,…, ...

  6. vue+element级联选择器对接后台数据

    1.后台接口返回的数据肯定要和级联选择器的数据一致,所以我专门弄个model存放返回的值,如下:/** * @Auther: GGDong * @Date: 2019/4/3 10:30 */@Get ...

  7. Java反射机制调用对象的方法 —— 将一个对象的属性值赋值给另一个对象的属性

    模拟一个场景: 众所周知,EasyExcel导出Excel文档是依赖于注解完成的,在实体类需要导出的属性上面加上注解,导出的时候会自动识别该属性. 假如我们现在需要导出用户的信息,又不想污染原本的实体 ...

  8. 教程 | Linux常用命令大全

    Linux常用命令 目录操作命令 ls 命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls 执行权限:所有用户 功能描述:显示目录文件 ls (显示当前目录下文件) ls 目录名 ( ...

  9. W3C标准以及规范

    1.什么是DOCTYPE DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本.其中的DTD(例如xhtml1-transitional.dtd ...

  10. 03.Jquery Mobile中的按钮

    一. 基础按钮 1.设置链接的data-role,使其变成按钮. <a href="index.html" data-role="button">L ...