需求分析&系统设计

这个作业属于哪个课程 课程链接
这个作业要求在哪里 作业要求
团队名称 朋友 代打了解一下
这个作业的目标 需求分析&系统设计

一.团队成员的姓名学号列表

学号
姓名
特长
061126 黄天兵 团队队长,善长C++,Java,整个团队中代码量最多,是团队的核心人物。
061127 黄震 擅长C和C++,团队中发挥了重要的作用,个人能力极强。
061128 贾鸿椋 多面手,擅长C和C++,java,代码量多,知识面广,小团队的种子选手。
061129 贾青虎 了解C以及C++,代码量较少,点子比较多,负责部分测试,以及界面设计。
061130 蒋磊 个人能力极强,负责项目测试,软件需求分析,并且创新能力比较强。

二.拟开发项目简介

在此感谢所有参考文献

https://www.msra.cn/zh-cn/news/features/golden-number-game
https://www.cnblogs.com/xinz/archive/2011/08/08/2130505.html
https://blog.csdn.net/qq_32454537/article/details/78115826

1.游戏介绍:“黄金点游戏”

黄金点游戏是一个数字小游戏,其游戏规则是:N个同学(N通常大于10),每人写一个0~100之间的有理数(不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点再逐渐地往下移动.

2.团队对于游戏的看法以及我们的感悟

我们对于这个游戏的最深刻的看法可以用我们对这个游戏的第二名称来诠释 那就是“创新的时机.”据我们了解,这个游戏的最早的记录实践是经济学家Richard Thaler在1997年通过英国《金融时报》给读者出的一道题目。当时没有用黄金点,而是2/3这个分数。当时玩这个游戏的大多是top N的大学生或者IT从业人员,数学基础都是足够扎实的,都是一些智商极高的人员。我们从大数据分析的结果看出,虽然多次游戏之间没有任何联系,是概率中的独立事件,但是前一次游戏的G—number给了所有参与者一个强大的暗示,以后游戏的G—number一定会向下走。下面是清华2008年秋季2学期一个叫“贝爷”的TA给连续12次游戏做的记录,从趋势看,数值会逼近于0,但是变化也不是一帆风顺的,每次触底之后,就会小小反弹一下。

KB3wJx.png

对于这个游戏我们几个人有不同的领悟和不同的看法 大体分为以下几点

(1)赢者通吃

根据游戏的规定,第一名得到全部的分数,第二名一直到倒数第二名的得分都是0分,最后一名还要倒扣分。IT行业就是类似于此的游戏环境,无论第二名或者后面的人有多少亮点发光点,第一名永远是最吃香的。

(2)微弱的优势

一个小团体,或者一个小社会的社会共识从来不是最激进的,每个个体发出自己看似随机的声音,它的进步是缓慢的,有时还要倒退一下,如果只看微博 朋友圈 知乎上的发言,我们可能会觉得德先生和赛先生早已是国人的共识;如果只参加最前沿的科技展览会,我们可能会觉得明天我们就都会用人工嵌入智能芯片同时会同步电子书邮件微博微信再加GPS和云计算。但其实,作为一个社会整体,进步是没有那么快的。那些成功的企业或者集团只是比大众的平均值先走了一小步,就是这一小步,让大部分人看到了产品的“相对优势”从而觉得这很科技,这很前沿。但其实,这些商品可能远没有大家想的那么成功,而只是他发行的时间和发行的时机恰巧满足了大众的需求,所以我们说这种产品成功在了时机上。

KBGjMT.png

3.总结与感悟

所以对我们团队来说,也许这就是一次普普通通的作业中的一个任务需求,一个简单的黄金点游戏。但其实,游戏随简,意味深长。我们认为,开发游戏固然很重要,完成项目需求作业也固然重要,但能从项目开发的过程中感悟到更深层次的东西,获取一些IT行业以及延展到其它领域的一些专业知识,对我们团队的每一个人来说都是一种成长,都是一种经验以及事业上的丰富,所以我们要用心做好此次团队项目,争取收获更多宝贵的东西。

三.典型用户及用户故事

1.典型用户

用户1:蒋磊

特点:以编程为生的程序员,是计算机科学与技术专业出身。熟悉多门编程语言,比较关注算法和程序的效能、内存泄漏等问题。在日常生活中多擅长运用C语言完成大大小小的项目,最适合写一组函数实现高效的数据存储和搜索。也会写一些额外的用户GUI界面开发以及连接控件的行为代码。而且,平常喜欢网路游戏并且很关注电子产品方面的消息,对IT产业了解也较多。最重要的:单身可撩。

用户故事(story)1:

日常生活中很喜欢经典的游戏,例如:马里奥之类的冒险游戏。并且希望通过一些简单但不失韵味的游戏来感受生活的趣味,体验一些深刻的东西,所以在生活中经常会去寻找一些小游戏一些小程序或者观看主播等很多方式来体验经典永流传的游戏模式,感受不同寻常的游戏体验,渴望能收获意想不到的惊喜。

用户2:贾鸿椋

特点:表面简简单单,生活简朴,实则内心世界富含万水千山。同样是一名以编程为主业的程序员,是计算机科学与技术专业出身的大学生。平日喜欢看很多编程语言的书籍,书架上摆满了Essential C++等类似的书籍。另外,个人非常喜欢摄影,对数码电子产品也很关注,平日里喜欢看b站浏览许多相关信息。最重要的:你看不透。

用户故事(story)2:

数码产品是他的第二副业,除了日常完成学习任务之外,他还喜欢用相机走遍成都的街头巷里,记录最朴实无华的川氏生活。因此,他很希望通过一些细小细微的生活细节以及小游戏或者一些零散的文字来感受生活独特的魅力。希望体验以小见大的独特体验感。并且,日常博览群书的他也喜欢浏览很多科技网站,对大大小小的软件开发流程有一定程度的理解,所以他自己的IT观念也有自己很深刻的理解并渴望不断的增进自己的见识增加自己的专业认知。

用户3:Mort

特点:不是计算机专业出身的人员,有自己的主业,编程以及计算机对他来说只曾听闻,而且计算机更多的是用于完成自己日常生活中的一些娱乐需求。平常生活中喜欢运动和健身,对自己的生活没有非常严格的体制要求,喜欢随心所欲的生活。主要学习石油工程一类的学科,平常会浏览很多的相关书籍以及网页以获取专业知识。

用户故事(story)3:

平常会玩很多游戏,大到网络游戏和网页游戏,小到手机上的各种小游戏以及电脑自带的很多小游戏。希望多接触一些有意义的游戏,而不是单纯的为了满足娱乐需求的去玩游戏,想体验一些更有价值的游戏设计和游戏观念,从而获得更帮的游戏体验。

四.项目的主要功能

1.基础功能

游戏的基本功能就是输入输入能够正确无误的运行。基本操作就是一个用户进入到自己的用户界面,然后开始游戏。通过输入一个0~100之间的有理数,完成自己的任务。当多个用户都输入完称自己的数据后,系统会算出所有数字的平均值然后乘以黄金分割数,得到第一轮的G值。然后统计每一名用户的得分,然后进行下一轮游戏。

(1)接收用户传入的数据

(2)根据规则 处理数据

(3)输出G值

KBcscF.png

2.拓展功能

(1)统计所有输入输出的数据,并形成一个矩形信息统计表,从而反应一些问题,利于我们的进一步分析

(2)记录用户自己的游戏记录,设计“排行榜”用来展示每个用户的得分情况。

(3)给程序设计GUI交互界面,尽可能地美化程序的运行过程,设计多个界面的交织网络从而使程序不失单调显得更加完整。

KBfuJ1.png
KBf3LD.png
KBf0Qf.png
KBfDOS.png
KBf2Yn.png
KBf4yT.png
KBfTw4.png

五.概要设计(软件体系结构以及主要业务模块描述)

1.软件体系结构

KsHlAP.md.png

2.主要业务模块描述

(1)用户模块

用户模块主要是以GUI界面呈现的。在多个界面的交互中,用户即可以选择游戏的模式如双人模式、三人模式等,也可以查看自己当前的游戏分数。游戏的进行也主要是在该界面中,用户在每一轮游戏中传输给程序一个数值然后最后可以查看自己的得分详情与自己给出的值与“黄金点G值”的差异。

功能描述:实现游戏的全部过程;可查看自己当前得分与G值走向。

接口描述:输入:模式选择、用户输入的数据。输出:每一轮游戏的G值;每个用户每轮的得分;G值得整体走向。

(2)开发者模块

开发者模块和用户模块不同之处在于开发者可以看到更加详细的G值走向图以及每一轮游戏G值得走向,最重要的开发者还能看到G值得变化趋势分析图。设计此模块得目的就是为了开发者能够更清晰得了解到黄金点游戏的意义所在,背后隐藏的东西能更清晰得发现,也能根据情况及时的调整游戏规则。

功能描述:查看G值走向趋势图

接口描述:输出:每一轮的G值以及总体的G值走向趋势图。

六.初步开发计划

1.任务分配

学号
姓名
任务安排
061126 黄天兵 程序核心代码开发人员,主要负责书写用户GUI界面部分代码以及后期维护。
061127 黄震 开发者界面代码开发,主要负责书写开发者模块的G图导出数据分析部分以及后期维护。
061128 贾鸿椋 功能需求分析人员,主要负责程序各个模块功能细化分析,给编码人员提供详细的规格说明书。
061129 贾青虎 程序开放后负责界面美化设计,精通ps技术,每一个gui交互界面的美化工作都由其完成。
061130 蒋磊 负责网络相关资源搜集,答辩环节准备,在各个模块的工作中均贡献一份力,是整体的完善者。

2.时间安排

时间
任务
二、三周 完成全部模块的开发工作,基本程序可以运行,G图趋势不作硬性要求。
四、五周 设计GUI界面,完成界面间联系优化,界面的美化设计等等。
六、七周 完善G图的趋势分析,测试程序,进行后期代码维护工作。
posted @ 2019-10-27 17:57  iMisuzu  阅读(1259)  评论(1编辑  收藏  举报