第三组(geomystory)需求经理:头脑风暴+核心竞争力+功能集+NABCD+用例文档+功能说明书+技术说明书

头脑风暴

第一天算法

只选出了入围集合={看图猜成语几何或几何游戏电脑版桌游数据库

风暴纪要:
* 软件分类:游戏类(开心消消乐),办公软件类(word),工具类(编辑器,几何画板),计算机辅助教学(CAI类)。评价:从分类算是自顶向下,可是层次过高仍是不能肯定需求,就像不知道吃什么,先决定菜系,川菜,那么是吃水煮肉片仍是鱼香肉丝,夫妻肺片呢。
* 你们的共同爱好游戏,理由:游戏最容易吸引人的注意。游戏的“即时反馈”性很强,能持续的给人刺激,还有华丽的特效等。可是游戏也是很难的,创造者是稀有动物,抄袭者却大行其道。游戏应该传递一种价值观,讲述一个故事,带给人们快乐。
* 游戏分类:第一人称射击(FPS,表明做CS),多人在线战术竞技游戏(MOBA,表明做DOTA),即时战略(RTS,表明做RA2),角色扮演(RPG,表明做仙剑奇侠传),其余的如动做类(鬼泣),格斗类(拳皇),体育竞技类(FIFA),赛车类(极品飞车)等技能树更加不适合UWP,时间有限,暂时不考虑
* Unity是一个专业的游戏引擎,若是用uwp造一个那样的游戏,剧情,建模,可能会给人一种“做文跑题”的感受。
* 能够考虑一个“炫酷的文本编辑器”,能够打字,删除有特效,可是你们以为这个刺激是短暂的,用户只会以为暂时的新奇。另外,特效的绘制有可能致使文本输入输出也须要用引擎,这样便于定位
* 关于学习与游戏结合,尚未更好的创意
* 看图猜成语是一种模式,一种比较成熟的模式,核心是几个描述与描述对应的概念的匹配,能够拓展,看图猜计算机体系结构术语,帐户,闯关,联网对战功能
* 桌游是更成熟的模式,可是呈现方式须要部分美工加持。桌游是,玩家,规则,的集合,配合背景音乐,美工,音效,容易作出中等偏上的程序。难点:联网模式服务器,单机模式AI,抄袭现有仍是创造新游,若是抄袭现有的可否超越前做,若是创新是否能作到好玩。
* 几何是一个挑战,虽然是平面的(未探讨3D),可是几何计算与呈现引擎可能有比较大的挑战,若是是游戏关卡或者说玩法须要必定的创造性。
核心需求:
* 没有公司利益,典型用户须要的就是咱们追求的
* 不能为了堆叠技术而创造太多关联松散的功能
* 能作到让用户眼前一亮是终极目标
安全

头脑风暴总结:服务器

你们都想作一个炫酷的程序,并且以为目前作过的各类课程设计(例如成绩管理系统,工资管理系统,图书管理系统)等都没有活力,没有趣味性,普通的工具类软件都很日常,难以达到已有的水平,作一个游戏或许是一个好选择,可是游戏须要的技术难度大,并且游戏自成体系,选择游戏又形成了组员的选择困难症。网络

次日:数据结构

参考“欧几里得”这款有游戏,定下方向——几何游戏,经过画出题目要求的几何元素过关,放弃“带特效的文本编辑器”架构

  

 

 

 

核心竞争力:app

* 炫酷的软件将使你眼前一亮编辑器

功能集:函数

*游戏的“引擎”是核心,按照通用的MVC架构,分红模型部分,视图部分,控制部分

  1.模型——几何建模,包含数据结构定义

  2 视图——模型显示算法,控制显示和隐藏

  3 控制——增删改查几何实体,调整几何实体(例如改变一条直线的方向,直线上的点会变化)

 

* 闯关模式

* 个性设置

* 成就系统

* 金币解锁

* 大神支招

*  悬赏优秀自定义关卡

 

NABCD:

学习了软件工程以后,咱们只是大体了解了编写大型软件须要软件工程,不然就会遇到“软件危机”,具体的软件危机是什么,咱们却不甚了解。你们熟悉软件工程经典的秋千图,它介绍了软件开发中个各类问题,看的时候难免以为可笑,可是当你的软件足够大,这些问题就会出如今你的面前。

 

正文

需求从用户开始,游戏是人类的天性,每一个人都喜欢玩游戏,游戏吸引人的地方在于不一样的游戏有不一样的乐趣,李如意惊险刺激,持续反馈,虚拟成就等等,咱们作的这款游戏,最终的目的就是吸引人(开发者的但愿)和好玩(用户的最求)。

由于咱们并无被某个公司委托,因此咱们自身也客串用户。

 

N(Need, 需求)

·与老师探讨的过程当中,出现了第一个需求:学习是否是也能像游戏同样吸引人。若是能把游戏和学习结合起来,好比在游戏中加入“即时反馈”系统,这也涉及到软件定位问题,咱们的软件究竟是一款游戏软件,仍是一款学习软件,

最终的讨论结果是,游戏(加上学习元素)。

·解密类游戏是一个吸引人的游戏类别,固然,解密游戏也有不少种,你们能够找到不少“密室逃脱”“侦探”小游戏,“古墓丽影”中的劳拉在探险的过程当中也须要解决不少谜题,前一段时间风靡手机端的游戏“记念碑谷”总给人一种柳暗花明之感,

咱们也能够制造一款解谜游戏。

·时间有限是开发人员的限制,你们都不想去编剧本,不想写角色扮演类游戏(RPG)解谜剧本,能够考虑纯粹一些的解谜。就像“宝石迷阵”“鳄鱼洗澡”游戏同样,创造一个环境,纯粹的解谜,这样能够把时间专一于编码开发而不是编剧。

·几何相对于物理类容易许多,不须要物理学中力学那样复杂的游戏引擎支持,定义一个坐标系,画直线圆,知足条件(例如玩家画出了一个圆的圆心,必须是推理画出来的,而不是随便画出来的)就能够过关。闯关!对,闯关类游戏,达成条件就能过关。

·有些玩家喜欢容易上手的关卡,有些玩家喜欢困难的挑战,这就是用户调研环节G用户提到的“难易比例适中”,合理的关卡设计能让用户玩的开心,增长游戏“黏度”。

·各个游戏老是有奇奇怪怪的成就系统,甚至扫雷也有:

成就系统有魔力,这是公认的,咱们的软件也要有成就系统。

·组员C有舍友是游戏的资深玩家,组员C受到影响也常常玩这款游戏,给咱们提供了一些额外的建议,有的关卡解法可能用户难以想到,而闯关一般是不容许用户跳跃的,这样会形成用户长久的卡在同一个地方,

回想起“友商”“开心消消乐”的作法,软件须要有能够跳过关卡的功能,或者能有一些小提示。

·政策需求,软件须要知足一个国家地区的法律法规,咱们的软件须要一个防沉迷系统。

·盈利系统是用户不须要甚至讨厌的,倒是游戏开发商须要的,而咱们做为软件的实际开发者,也会受到此影响,将来可能会有免费去广告,充值钻石,购买过关,购买提示等功能。

 

 A(approach, 作法)

技术上咱们须要一个能表达几何的方法,须要数学中的坐标系几何定律,须要几何的元素(例如点线圆),这些凭咱们所学的知识能够应付,而后咱们须要在计算机中实现几何的方法,他们包括UWPC#

可是光有这个还不够,咱们发现Unity自身就能够写UWP程序(选项中选择提交到WINDOWS应用商店)不必定好学,DirectX可让咱们的程序更漂亮,可是DX有大量本级实现的细节,必须使用C++,而UWP的C++实现比较复杂

,因此咱们的计算机图形学仍是经过C#来实现,那样的话咱们的软件看起来可能会很“朴素”,并不吸引人。

后来咱们发现了NuGet中的Win2D它封装了DX,并且能够与XAML配合,正是咱们须要的。还有一些技术来实现,就是图形计算须要解方程,而方程在计算机中的表达就是矩阵,这就意味着咱们使用了线性代数

须要注意的是,交互方式设计对游戏体验影响很大,应该着重优化,

 

B(Benefit, 好处)

  • 一款游戏,最重要的是带给玩家快乐,咱们这款游戏关卡设计难易比例均衡,能让人愉快的继续玩下去;
  • 寓教于乐是不少老师的追求,本款游戏能够实现,在游戏的过程当中用户加深对几何的理解,数学几何轻轻松松拿100分;
  • 自由模式以及经典画法演示开启了一扇崭新的大门,用户能够创造保存他们喜欢的“几何城堡”,这个图形是用数学描述的,和矢量图形同样,显而易见的好处就是放大缩小不会失真,这也算是一个小型的“几何画板”;
  •  

  • 软件提供经典的几何算法的演示,好比尺规做正十七边形的动画演示,让热爱数学,热爱几何的人有独特的收获;

 

C(Competitors, 竞争)

咱们选择“欧几里得”这款软件做为主要的竞争对手。

 

  • 未被知足的需求:“缺个女友”(能够认为表明社交,联网需求,也能够认为是客户无理取闹),多语言支持,登陆帐号来保存进度,老玩家鼓励系统,历史上悬而未决的几何难题题库
  • 平手:游戏模式设计,关卡设计,合理的提示,
  • 我方优点:跳过关卡功能,"解析几何"功能,成就系统,计时系统,尺规做图动画演示
  • 我方劣势:术语表,定理查询,记录保存与重现操做历史,历史成绩查询,模型实现以及算法优化,隐藏的第四颗星(优秀的关卡设计)
  • 对用户无用的功能:防沉迷系统,盈利系统(广告,充值),精力系统(变相防沉迷,实际是盈利)

 

D(Delivery, 推广)

  • 这一款软件是生产实习的做业,将会提交到WINDOWS AppStore
  • 朋友之间的推广将会成为本游戏的第一批用户,这或许是咱们的软件进入AppStore排行榜的关键
  • 免费促销活动,将会吸引一批尝鲜的用户
  • 咱们没钱打广告

 

电梯演说

各位领导/投资人/合做伙伴: 咱们的产品 <几何迷城 geomystery> 是为了解决N <游戏与学习不能兼得> 的痛苦, 他们须要C<经过游戏打发无聊的时间,同时还能兼顾学习>, 可是现有的方案并无很好地解决这些需求,

咱们有独特的办法A,<例如尺规做图实践与游戏闯关结合>, 它能给用户带来好处B,<难易结合,定义严格,使用户着迷而不沉迷>, 远远超过竞争对手C<“欧几里得”>.

同时,咱们有高效率的推广D方法:<发布到商店,限时免费>,能很快地让大部分用户知道咱们的产品,并进一步传播。

 

 ===================================================炫酷的分割线====================================================================

 

用例文档:

标题:用户得到一个身份(本地或联机,游客或会员),能够进入游戏,保存游戏进度

角色:某个游戏玩家

主要成功场景:

一.注册过的用户登陆

步骤:

  *加载游戏资源,现实启动动画,同时播放音乐,以后分红(1. 2.)两种状况

  1.登录过的帐户且选择保存密码并自动登陆状况

    *登录自动完成,能够进入游戏了

  2.用户登陆

    用户输入用户名 密码 点击"登陆"按钮

  *用户成功进入游戏

二.未注册过的用户,能够选择"游客登陆"按钮,或者选择"注册"按钮跳转登录页面2.

步骤:

  1.点击“游客登陆”按钮,用户得到一个本地的临时身份(能够转正),并进入游戏

  2.用户点击"注册"按钮,跳转到注册页面,用糖户注册以后返回,此时用户能够选择登录本身刚刚注册的帐号,或者仍然选择游客登陆

拓展场景:

1.用户注册

  用户填写"注册,用户输入昵称,密码,确认密码,密码找回邮箱"等表单,勾选"赞成许可协议"后,点击"注册"按钮,完成游戏帐号注册操做

2.密码输入错误

  服务器找不到匹配的用户名和密码,就会返回一个错误,客户端显示"用户名和密码错误".(密码通过MD5等散列函数变换后传输,且限制IP的尝试次数)

 

功能说明书:

软件启动,伴随着优美的使人振奋的音乐,用户等待资源加载完成。

此时窗体上有五行,

最上边一行是用户名输入框,

第二行是密码输入框,

第三行是“保存密码”“自动登陆”两个复选框,

第四行是“登陆”“游客登陆”两个按钮,

最后一行是“第三方登陆”“尚未帐号?点击这里注册”两个按钮。

若是你尚未本游戏的帐号,你能够选择“游客登陆”,先进入游戏试玩一下,也能够点击“注册帐号”按钮,填写表单,设置好用户名密码并记牢,若是注册成功之后你就能够享受注册用户非凡的游戏体验了

若是你是注册过本游戏帐号的玩家,输入“用户名”和“密码”,点击“登陆”,便可登陆,若是你不想每次进入游戏都输入用户名和密码再点击“登陆”,

你能够在点击“登陆”进入游戏以前,勾选“保存密码”框,下一次进入游戏前你就能够发现密码已经填写好了,点击登录就能够了,

若是你连“登陆”也不想点击,就在点击“登陆”进入游戏以前,勾选“自动登陆”框(必须勾选保存密码),再点击登陆,这样打开软件就自动帮你登录,而且进入游戏。

注:第一次登录的用户须要联网才能登录,帐户数据的同步也须要联网

 

技术说明书:

一般的登陆界面像这样

 

而淘宝网竟然有用户登陆的体验反馈,这是合理的需求采集(A/B),不是过分需求

https://survey.taobao.com/survey/Q095thIx2?spm=a2107.1.1000340.2.72670377MiAiNT

输入框使用TextBox,登陆按钮和游客登陆使用Button(可使用背景色,也能够考虑使用Image做为context),

第三方登陆与用户注册能够考虑使用HyperlinkButton(超连接按钮),由于用户使用次数差别,可是也可使用Button,

 当用户点击注册,会跳转到注册页面,将用户填写表单格式化称XML或者JSON发送到服务器,服务器会储存这些信息,用以建立用户数据

当用户点击“登陆”,在联网条件下,会加密用户的用户名和密码发送给服务器以验证用户身份,返回验证信息,验证信息是登录成功,玩家就能够进入游戏界面

在无网络状态下,用户可使用本地数据库登陆,可是信息只有同步后才能与服务器一致,并且同步涉及合法性检查部分

用户点击游客登陆,实际上是建立了一个本地的无密码的用户,这些数据只存在于并保存本地,若是APP数据损坏或者手机存储出现问题,颇有可能形成本地用户帐户数据损坏,因此推荐用互联网注册,进度能够更安全的保存

一台设备只能够有一个游客帐户,可是游客帐户能够选择升级补充注册,至关于注册的时候把当前的本地用户数据同步给新用户

最理想的条件下,游客帐户能够与一个“老玩家”用户数据同步

注:只是一款小游戏,并且即便存在应用内购买,价格也很便宜,理论上来讲应该不会出现用本地用户批量生产“大神玩家”的状况,可是是否能与已有的帐户同步还须要市场部门进一步分析

相关文章
相关标签/搜索