UVP课程Project开发计划

UVP课程Project开发计划

1 软件简述

    我们设计实现一个名字为”实验室”的软件。即在该软件中模仿各类化学、物理实验。

1.1功能

1.1.1化学实验

       软件可以模拟化学实验。即用户可以选择各类的化学材料,如硫酸,氢氧化钠,氯化钡等等。软件可以模拟一个实验室,用户在其中自由的利用提供的仪器和材料进行各类的化学实验。根据化学反应的结果,产生不同的现象。如产生红色、无色气体,产生沉淀,大量发热,甚至爆炸等。

1.1.2物理实验

       软件可以模拟简单的物理实验,如小球下落实验,伽利略斜面实验等。软件会模拟现实物理场景(参照伽利略体系,不考虑相对论中的高速运动情况)。用户可以定义物体运动的状态,受力情况,接触面摩擦系数等,软件根据这些参数模型对应的实验现象。

1.1.3(选做)生物实验

       软件可以模拟简单的生物实验。如DNA,RNA与甲基绿,吡罗红等试剂反应的现象,简单的基因遗传效果。生物实验实现的难度较大,暂时列出作为选作功能。

1.2特点

1.2.1趣味性

      高中时期,在学习各类理科知识时,我们学习了大量的实验。但是由于实验器材的不足,学习时间的紧张,以及部分实验的危险,很多实验我们都没有真正的动手去做。这个软件可以模拟这些实验,让我们在电脑上就能自己动手去完成,体验错过的乐趣。

1.2.2学习性

      对于化学,物理知识不足的同学,尤其是中学学生来说,这一款软件也是他们学习化学和物理知识很好的教程。甚至有的题目,学生可以直接在这个软件里模拟查看。

2页面架构

      主要页面有三个,为开始页面,物理实验室页面,化学实验室页面。其中实验室页面就是进行实验活动的页面。开始页面是进行简单信息介绍,以及使用说明的页面。

3具体设计

3.1化学实验室页面

      化学实验室页面设计如下
化学实验室
其中,1区域是实验室切换栏,2区域是一个navigator,用于选择不同的实验器材,3区域是实验区,即用户拖拽2区域的器材到这里,进行实验反应。4是记录区,系统会在这里显示实验的历史记录。
      其中2考虑使用功能强大的navigator实现,4就是一个textblock。3主要使用unity2d实现。

3.1物理实验室页面

      物理实验室页面设计如下
物理实验室
      物理实验室的页面与化学实验室无较大区别。唯一的不同在于,2区域从化学器材,变成了物理实验器材,如弹簧,小球,滑坡等。区域4变成了当前各物体的运动速度,加速度,受力等状态。
      其中2考虑使用功能强大的navigator实现,4就是一个textblock。3主要使用unity2d实现。

3.2开始页面

      主页效果如下
主页
      主页上方的一栏为软件Label,下方是五个按钮,对应化学实验室,物理实验室,(生物实验室),帮助,制作团队

4所需技术

4.1UWP设计页面

      基础的页面使用UWP技术开发,如交互页面,页面之间的变换等。
      UWP官方手册 这个网页也是老师长久以来给我们推荐的教程,对于每个控件都有详细的解释。大部分涉及到界面的东西在课堂上都有讲过。

Universal Windows Platform documentation
The Universal Windows Platform (UWP) lets you build apps for any Windows device—PCs, phones, Xbox One, HoloLens, and more—and publish them to the Microsoft Store

      页面设计用的比较多的,应该主要是我们的开始页面,后面的实验室页面可能涉及这一方面的不多。

4.2Unity技术实现动画

      对于实验中的动画效果出现气体,沉淀,发热,以及实验器材的拖动,小球的滚动,使用Unity技术实现。
      Unity2d guide这个链接是Unity2d的guide即入门手册

Welcome to Unity
Unity is not just a 3D engine; Unity is a complete platform for building beautiful and engaging 3D, and 2D, games. In fact, more 2D games are made with Unity than with any other game technology, and companies such as Disney, Electronic Arts, LEGO, Microsoft, NASA, Nickelodeon, Square Enix, Ubisoft, Obsidian, Insomniac, and Warner Bros rely on our tools and features to drive their business.

      主要是对unity2d的介绍,通过这个页面,我确定了unity2d可以用来做我们这个项目,并按照其介绍下载安装了unity,进行了初步的学习。
      不过针对这一项有一些不确定因素,我们并没有找到关于在uwp中嵌入U2D的有关技术,并且在Unity中将项目打包成Uuwp的话,会产生一个有着uwp外壳的Unity游戏,这和我们的课程目的以及项目的要求都不太符合,所以我们还做了第二手准备,假如Unity不好用的话,我们可以选择在uwp本身加入动画效果,来模拟实验过程。
      除此之外,unity2d做的软件往往比较大,这也是一个问题。

4.3数据库?

      数据库方面,目前还没有想好要不要增加记录实验信息,或者用户身份识别的功能。如果实现的话,就使用EFcore实现。
EFcore这个页面是EFcore的overview,主要介绍了EFcore的安装方法和简单使用入门,也是课堂上老师演示用过的网页。

5采访视频

https://space.bilibili.com/237838762/#/
在B站上上传了采访视频,2018.4.11,目前正在审核中,若通过,可以在URL网页中查看

6修改

      在三位同学的建议下,我们做出了这样的修改:
1、针对部分同学,对于物理化学没有兴趣,我们可以对于产生的现象做的更有特点,烟雾,爆炸 沉淀的效果更好看,更能吸引别人。或者因为我们的设计风格是抽象的不拟真的,我们可以在其中加入一些特别的互动体验,例如实验小任务,彩蛋等等。我们也可以去求助物理和化学专业的同学,来为我们提供一些有用的建议
2、提供尽量多的实验材料,物理实验的话分实验模拟,化学的部分我们会在开发过程中评估难度,假如可以的话我们可以尽量做到自由实验。

7同类软件的参考

      我们找到了一些与我们产品类似的APP(chemist等)
      这一款APP可以模拟化学实验。同样有选择试剂,设备等功能。它的实现是仿真现实的,其功能已经非常强大。相比于这个软件,我们更想做成2D的效果,不模拟现实,而是使用简单的动画效果,做一些概念性的展示。
这里写图片描述
这里写图片描述
      这一个软件的化学反应模拟功能更加强大。甚至有浓厚的专业气味。可以非常详细的设置反应物的数量。它的缺点是过于复杂,而且界面也不好看。在我们的制作过程中,化学物理的只是其实是我们的弱项,与此软件对比,我们要更突出交互性的设计。
这里写图片描述
这里写图片描述

8开发模式

      开发模式上,我们选择使用scrum敏捷开发模式。

      Scrum是迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管角色负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。

      选用这个开发模式,主要是考虑两点。一是UVP课程每周有两次课程,正好可以作为我们Scrum每周的站立会议。二是由于我们这个软件要作为成绩评定的作业,Scrum里的sprint非常适合评定我们的工作量,同时保证在结课前能做出一个可以交差的结果。
      还有隐藏的一点,就是我们不太喜欢写文档(逃。

9重点难点分析

      整个项目的难点在于如何使用Unity2d实现实验的效果,并将其和uwp结合起来。界面方面实际上非常简单,如果不设计用户身份认证的话,也不需要使用服务器和数据库,所以项目的重点难点在于如何使用unity。
      对于物理和化学反应的推理实现,由于我们已经很久没有接触这两门科目,可能也会给我们增加一些难度,但是应该可以将反应效果的错误尽量减少降低。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值