《AlwaysRun!》第七次作业:团队项目设计完善&编码
项目 | 内容 |
这个作业属于哪个课程 |
https://home.cnblogs.com/u/nwnu-daizh/
|
这个作业的要求在哪里 |
https://www.cnblogs.com/nwnu-daizh/p/10980707.html
|
团队名称 | AlwaysRun! |
作业学习目标 | 掌握软件编码实现的工程要求 |
任务1:团队软件项目设计完善:
根据OOD详细设计要求,修改完善团队项目系统设计说明书和详细设计说明,将完善后的内容的以《XX团队项目软件设计方案》为名发布在团队博客中,并在团队项目Github仓库中上传文档《软件设计方案说明书》。在团队博客总结中陈述项目技术设计是如何体现下列原则的:
- 抽象
软件开发本身,就是一个不断抽象的过程。我们把业务需求抽象成数据模型、模块、服务和系统,面向对象开发时我们抽象出类和对象,面向过程开发时我们抽象出方法和函数。
- 强内聚耦合/模块化
耦合度--体现模块之间的独立性,越低越好。(耦合度低,即模块的独立性好,其他模块的改动几乎不影响该模块,拓展性好),如果两个模块中的每一个都能独立地工作而不需要另一个模块的存在,那么它们彼此完全独立,意味着模块间无任何连接,耦合程度最低。但是,在一个软件系统中不可能所有模块之间都没有任何连接。因为只有当某些模块的输出数据作为另一些模块的输入数据时,系统才能完成有价值的功能。
- 信息隐藏和封装
封装的一个主要的好处,就是增加软件代码的内聚性。通过增加内聚性,进而提高可复用性和可维护性。信息隐藏的好处,正好和“封装”的好处相呼应。封装是为了提高内聚性;而信息隐藏是为了降低耦合性。通过降低耦合,一样可以达到提高可复用性、可维护性这2个目的。
- · 界面和实现的分离
MEF+MVVM
具体就是多个view modle 用mef实现切换.
- · 错误情况处理
检查被调函数的返回值或输出信息
- 程序级别的灵活性,主要通过参数化配置程序低级别的灵活性。
- 高度可配置性,包括各种虚拟机参数、属性文件和XML配置文件。
- 脚本,脚本是扩展复杂功能的利器,但对用户的要求也比较高。通常应该面向开发人员的工具产品。或者在产品部署之前由现场实施人员来完成。
- 插件系统或者模块化平台,插件系统平台从理论上提供了无数的可扩展性。比如Eclipse和NetBeans平台。这儿是抽象的最高点,产品可以一无用处,也可以无所不能。完全看市场有什么插件,用户怎么配置。设计方案的数据处理能力:
(1)分析推理能力和动手实践能力
(2)数据测量和数据管理
(3)可视化分析
(4)语义引擎
(5)算法
- 设计方案的软件重用情况:
- 软件重用被视为解决软件危机,提高软件生产率和质量的有效途径,近年来的软件重用研究的结果表明,基于体系结构,物定域的重用能够有很大的改进。是提高软件开发生产率和目标系统质量的重要途径。本次设计采用了源代码重用、架构重用、应用框架的重用、业务建模的重用、文档及过程的重用、软构件的重用、软件服务的重用。
- 设计中采用了哪些启发式规则?本次设计中采用的启发式规则有设计结果应该清晰易懂;一般-特殊结构的深度应适当;设计简单的类;使用简单的协议;使用简单的服务;最小设计变动
任务2:团队软件项目编码实现:
团队项目github仓库地址链接:
https://github.com/2016710104ZXFL/-AllRun/compare
任务3:在团队博客发布博文,结合燃尽图陈述本实验执行过程,上传团队实施本次作业的场景照片,描述团队成员的具体分工、占整个作业任务的工作量比例及完成各自任务的实际时间,每位成员结合任务分工总结本次实验心得,最后由项目组长进行总结陈述。
(1)实施本次作业场景照片:
(2)团队成员各自任务所需时间:
成员 | 分工 | 工作量比例 | 各自完成的时间(min) |
徐浩杰 | 团队项目的初步编码实现 | 25% | 360 |
李敏 | 修改系统设计说明书详细设计说明书 | 30% | 320 |
冯婷秀 | 团队项目的初步编码实现 | 25% | 360 |
种兴达 | 负责博客园内容 | 20% | 200 |
(3)总结:
这次团队作业大家都积极参与,分工明确。我们完成了《软件设计方案说明书》和《软件编码规范说明书》,并且更新了燃尽图。我们对系统的功能进行了比较全面的分析与设计,进一步完善了我们的软件。
在程序日趋完善的过程中,我们也遇到了很多这样或那样的问题,但是经过我们自己的不懈努力,不断查阅资料,上网搜索解决方案,最终都得到满意的答案。同时,同学也给了我们不少的启迪和帮助,使我们的课题能够顺利的完成。正所谓“三人行,必有我师焉”,更何况我们是四个人的小组呢,我们会再接再厉,认真完成每一次作业。
《AlwaysRun!》第七次作业:团队项目设计完善&编码的更多相关文章
- 《你说对就队》第七次作业:团队项目设计完善&编码
<你说对就队>第七次作业:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 [教师博客主页链接] 这个作业的要求在哪里 [作业链接地址] 团队名称 <你说对就队> ...
- 《毛毛虫团队》第七次作业:团队项目设计完善&编码
一:实验名称:团队项目设计完善&编码 二:实验目的与要求 掌握软件编码实现的工程要求. 三:实验步骤 任务一:团队软件项目设计完善: 任务二:团队软件项目编码实现: 任务三:在团队博客发布博文 ...
- 《快活帮》第七次作业:团队项目设计完善&编码
项目 内容 这个作业属于哪个课程 2016计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十一 团队作业7-团队项目设计完善&编码 团队名称 快活帮 作业学习目标 掌握 ...
- 《逆袭团队》第七次作业:团队项目设计完善&编码
实验十一 团队作业7:团队项目设计完善&编码 内容 项目 软件工程 任课教师博客主页链接 作业链接地址 团队作业7:团队项目设计完善&编码 团队名称 逆袭团队 具体目标 (1)完善团队 ...
- 《hello-world团队》第七次作业:团队项目设计完善&编码
项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十一 团队作业7:团队项目设计完善&编码 团队名称 <hello--w ...
- 《奋斗吧!菜鸟》 第七次作业:团队项目设计完善&编码
项目 内容 这个作业属于哪个课程 任课教师链接 作业要求 https://www.cnblogs.com/nwnu-daizh/p/10980707.html 团队名称 奋斗吧!菜鸟 作业学习目标 团 ...
- 实验十一 团队作业7:团队项目设计完善&编码
实验十一 团队作业7:团队项目设计完善&编码 实验时间 2019-6-6 Deadline: 2019-6-12 10:00,以团队随笔博文提交至班级博客的时间为准. 评分标准: 按时交 – ...
- 实验十一 团队作业7—团队项目设计完善&编码测试
实验十一 团队作业7—团队项目设计完善&编码测试 实验时间 2018-6-8 Deadline: 2018-6-20 10:00,以团队随笔博文提交至班级博客的时间为准. 评分标准: 按时交 ...
- 《ABCD组》实验十一 团队作业7:团队项目设计完善&编码
<ABCD组>实验十一 团队作业7:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...
- Spring_Four -- 团队项目设计完善&编码测试
团队项目设计完善&编码测试 1.文档<软件设计方案说明书>github地址:https://github.com/gzyt/SRS 2.项目集成开发环境 数据库:Mysql 5.0 ...
随机推荐
- 【嵌入式硬件Esp32】MQTT链接测试工具
1.Eclipse Paho MQTT Utility GUI测试工具 下载地址: 链接:https://pan.baidu.com/s/1ivxk3DWJkod-jBsowlcoBA 提取码:0lp ...
- 【ARM-Linux开发】【CUDA开发】【视频开发】关于Linux下利用GPU对视频进行硬件加速转码的方案
最近一直在研究Linux下利用GPU进行硬件加速转码的方案,折腾了很久,至今没有找到比较理想的硬加速转码方案.似乎网上讨论这一方案的文章也特别少,这个过程中也进行了各种尝试,遇到很多具体问题,以下便对 ...
- 面试之leetcode分治-求众数,x幂等
1 leetcode50 计算 x 的 n 次幂函数. 实现 pow(x, n) ,即计算 x 的 n 次幂函数. (1)调用库函数 (2)暴力o(N) (3)分治 xxxxxx.......x ...
- 学习数据结构Day2
之前学习过了数组的静态实现方法,同时将数组的所有有可能实现的方法都统一实现了一遍,之后支持了泛型的相关 概念,接下来就是如何对数组进行扩容的操作也就是实现动态数组. private void resi ...
- javaNIO核心概念
在java的阻塞IO中使用InputStream和outputStream来进行输入和输出,那么两种流是相互独立使用的,而且每次数据传输都要通过“用户态数据”向“os内核态数据”copy或从“os内核 ...
- 创建 django 项目命令
创建Django项目 django-admin startproject HelloWorld Django创建app cd HelloWorld python manage.py startapp ...
- Kafka-Docker:使用Docker运行Apache Kafka的步骤
1.目标 在这个Kafka教程中,我们将学习Kafka-Docker的概念.此外,我们将在Kafka中看到Docker的卸载过程.这包括使用Docker 运行Apache Kafka的所有步骤 .除 ...
- (五)linux 学习 --重定向
The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap07.html 文章目录 标准输入.输出.错误 ...
- python技巧 — 整合 User-Agent 大全汇总
一.IE 浏览器 而IE各个版本典型的userAgent如下:Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)Mozilla/4.0 (compat ...
- PB数据窗口只存储过程数据源创建
必须在 Manual Rault Set 上打勾,不然不能设置显示列. 显示列的数据必须和存储过程返回值的顺序一致,否则会出现数据和列名两边不对应的情况