Edumatter-MT
面向 Tablet PC/Win8 的五合一教育软件套件:分数计算器、质因数分解、线性方程、二次方程和方程组求解器 (AIC-2013)
项目状态
软件套件 Edumatter-MT 是 Intel® App Innovation Contest 2013 的入围作品,在以下类别/平台进入了第二轮:
- 平台:配备 Windows 8 桌面版的 Tablet PC
- 类别:教育
参赛作品针对 Win8 桌面/Tablet PC 进行了优化,兼容 Win7
应用程序概述
提出的教育软件应用套件包含以下“五合一”学校数学计算器和方程求解器模块:
- FC12 分数计算器
- PF12 质因数分解计算器
- LE12 线性方程求解器
- SE12 线性方程组求解器
- QE12 二次方程求解器
所有模块均可处理分数、整数、带分数和十进制数。
应用程序的技术优势和更广泛的影响
该应用程序实现了新颖的多模态用户界面 (MMUI),支持标准的 PC 键盘/鼠标操作、Tablet PC 和 Ultrabook 的触摸屏操作(包括数字笔),还包括语音增强功能:通过 TTS 进行语音指令。所有版本均实现计算历史记录日志,该日志可导出到外部文本文件,并可从应用程序内部或使用像流行的 Microsoft Notepad 这样的任何文本编辑器进行检索。专业版包含指向扩展“查找导师”的链接,该扩展程序利用 Microsoft 在线 Bing 地图技术 [4, 11]。有关更多实现细节,请参阅以下章节。
应用程序的预期用途
功能/版本矩阵和潜在用例列在下表 1 和表 2 中
表 1:个人用户功能/版本矩阵(最常见的用例)
版本 | 模块/许可 | 计算日志 | 日志输入/输出 | 语音 |
标准版 | 全部 5 个模块,单次许可 | 是 | 是 | TTS |
Pro | 同标准版,外加 ASR | 是 | 是 | ASR/TTS |
企业版 | 同“专业版”带批量许可 | 是 | 是 | ASR/TTS |
表 2:拟议应用程序的潜在用例
用户 | 用例 | 版本 |
学生 | 高中/初中数学学生 | 任意 |
自主学习 | 家庭教育和自主学习 | 任意 |
教师 | 公立/私立学校数学教师 | Pro |
辅导教师 | 私人辅导教师 | Pro |
Edu | 教育机构(政府)及其他机构 | 企业版 |
STEM | 科学、技术、数学和工程专业人士 | Pro |
开发方法
- 从技术角度来看,拟议应用程序应利用 Tablet PC 的新颖 UI 功能、Windows 8 操作系统平台的 UI 功能、.NET/WPF 框架和语音技术 (TTS/ASR)。开发策略将基于关注点分离的核心原则,即:所有布局和美化均通过 WPF/XAML 实现,算法部分通过编译为单个 .NET 程序集的托管代码实现(与现有应用程序相同)。
- 从项目管理角度来看,这项工作属于变更管理阶段,重点在于最大程度地重用现有代码库。
语言、框架、工具
应用程序代码库将使用 C# 语言和核心 .NET 框架库开发,包括 WPF/XAML 和语音对象库。
关于作者
Dr. Alexander Bell 是一位微软技术专家,拥有从 DOS 到 Win 8 的开发经验。他积极参与在线开发社区的数字生活(在 Codeproject 上发表了 19 篇文章和 36 个技巧)。他个人已完成 10 多个企业级 SDLC 项目。除了他的职业职责,Alexander 还热衷于交互式 WebTV 和教育技术:他的在线“多分数计算器”多年来在 Google 上排名第一 [4]。 他是微软 Bing 地图技术的早期采用者 [6]。
竞赛指标(第一轮和第二轮)
创新和用户体验
拟议应用程序将建立在几项创新理念之上:
- 通过高效的多模态用户界面 (MMUI) 改进用户体验 (UX),该界面利用 Tablet PC 的触摸屏(多点触控)功能和 .NET 语音增强功能 (ASR 和 TTS)
- 单窗口解决方案,可在功能区域之间实现直观导航
- 通过新颖的无边框 WPF 窗口实现美学改进
使用平板电脑的关键技术赋能向量
- 针对触摸屏和数字笔操作优化的多模态 UI。
- 通过 TTS 进行语音反馈,包括错误、指令和通知消息。
- 通过 ASR 进行语音命令(可选,仅包含在专业版中)。
- Tablet PC 的显示质量,尤其是其高分辨率,可以在单个窗口应用程序中实现高数据密度/功能聚合。
- 外部 HID(如可拆卸键盘/鼠标、触控笔或数位板)的可用性进一步提高了 UX。
- 方向传感器可在纵向/横向之间切换。
应用程序在所选类别(教育)中的可行性和重要性
- 以“电子学习”为总称的数字教育技术是现代教育改革最重要的变革力量。电子学习使社会各群体积极参与教育过程,包括教育者和学生。它为经济欠发达或地理位置偏远的地区学生提供了获得优质教育的通用途径。此外,通过将教育数字化,可以大幅降低公共教育的成本。
描述清晰度、范围和覆盖范围
下一节(背景和兴趣点)提供了关于概念和实现级别以及相应程序任务/挑战/解决方案的提交创意详细描述。文章主体包含的多个屏幕截图阐明了 UI 实现和使用的核心概念。
用户验收标准和市场前景
用户验收测试 (UAT) 包括以下多个用户验收标准:
- 安装,包括设置/卸载。
- UI 效率(键盘/鼠标操作、触摸屏、数字笔和语音消息)。
- 核心功能:计算和方程求解。
- 数据导出操作。
市场前景基于潜在用户群估算、拟议应用程序的重要性和竞争优势。
演示应用程序性能指标
本节将在 UAT 结束后完成。
背景
原始解决方案 Edumatter-M12 已提交至“The Windows 8* & Ultrabook™ App Innovation Contest” (2012),并获得了提交奖。 它在 Codeproject [1-3] 上有详细讨论。该应用程序的 COTS 版本目前可在商店 [6] 找到。在 Windows 桌面版本发布之前,这款教育软件已被开发为网络应用程序并免费提供给公众。最受欢迎的“多分数计算器”多年来在 Google 上排名第一 [4]。
提交版本 'Edumatter-MT'
提交的教育应用程序软件 Edumatter-MT (适用于 Windows 8 桌面/Tablet PC)包含以下“五合一”学校数学计算器和方程求解器模块:
- FC12 分数计算器
- PF12 质因数分解计算器
- LE12 线性方程求解器
- SE12 线性方程组求解器
- QE12 二次方程求解器
每个模块都提供独特的能力,可以处理任何分数(真分数/假分数)、整数或带分数以及小数的组合。计算结果也以分数和十进制两种形式显示,二次方程求解器 (QE12) 除外,它只输出实数或复数(十进制形式)(原因显而易见,因为后者可能存在无理数根)。
分数计算器 FC12
分数计算器 FC12 扩展了流行的在线多分数计算器 [7] 的功能(*注意*:其在线版本多年来一直位居 Google 搜索列表首位)。编码解决方案已在 Codeproject 文章 [5,6] 中部分讨论过。
FC-12 可以对任何组合的整数和带分数、分数(真分数/假分数)以及十进制数(正/负)执行二元和一元算术运算,例如:4、8.75、2/3、9/4、3 5/7、-6 2/3、9、8.75、-12。任何分数或带分数都可以简化为最简形式。任何假分数都可以转换为带分数,反之亦然。作为额外的便捷功能,所有计算结果都会显示在“历史记录”文本框中,因此可以复制到计算机的“剪贴板”内存中,或存储在标准文本文件中以备将来使用。
图 1:分数计算器 FC-12,示例截图
质因数分解计算器 PF12
作为回顾,质因数分解是指找出任何正整数(整数)的非平凡因子,其中任何整数的平凡因子就是数字 1 和数字本身。任何其他因子都被认为是平凡的,例如,数字 6 有两个非平凡因子:6 = 2*3。
质因数分解计算器 PF12 实现了一个有效的计算算法,可以快速进行最多 **18 位** (! ) 的任何整数的质因数分解,这在任何商业化的学校数学计算器中几乎是无与伦比的。结果显示在计算历史文本框中,也可以复制到计算机的“剪贴板”内存中,或存储在标准文本文件中以备将来使用。
图 2:质因数分解计算器 PF-12,示例截图
线性方程求解器 LE12
作为回顾,线性方程在其规范形式可以写为:
AX + B = C,
其中数字 A、B 和 C 称为方程的系数。线性方程的通用解为:X = (C-B)/A
线性方程求解器 LE12 能够求解具有分数或整数系数的线性方程。结果以分数和等效十进制数的形式显示在计算历史文本框中,也可以复制到计算机的“剪贴板”内存中,或存储在标准文本文件中以备将来使用。
图 3:线性方程求解器 LE-12,示例截图
线性方程组求解器 SE12
作为回顾,线性方程组在其规范形式可以写为:
A1X + B1Y= C1
A2X + B2Y= C2
线性方程组求解器 SE12 能够求解具有分数、十进制或整数系数的线性方程组(参见幻灯片 [1] 中包含的示例截图 #4)。结果以分数和等效十进制数的形式显示在计算历史文本框中,也可以复制到计算机的“剪贴板”内存中,或存储在标准文本文件中以备将来使用。
图 3:线性方程组求解器 SE-12,示例截图
二次方程求解器 QE12
作为回顾,二次方程在其规范形式可以写为:Ax^2+Bx+C=0。
二次方程求解器 QE12 能够求解具有分数或整数系数的二次方程。其输出可以是实数或复数,仅以十进制形式呈现:正如我们从理论中所知(参见文章附带的推荐链接),二次方程的解可能是无理数,因此无法用有限分数表示。与所有前面情况一样,计算结果显示在历史框中,并且可以复制到计算机的“剪贴板”中,或存储在标准文本文件中。
图 4:二次方程求解器 QE-12,示例截图
关注点
编程挑战
存在几个潜在的编程挑战,对应于部分列出的任务。
- 新颖的无边框 WPF 窗口,带自定义控件框
- 触摸屏操作和语音命令集
- 客户端 TabletPC 上可靠的输入/输出操作
- 高效高质量的语音消息
语音增强
作者从事语音增强应用程序开发已十余年,并发表了多篇涵盖两大核心技术(TTS 和 ASR)的文章 [8, 9]。拟议应用程序计划进行语音增强,包括扩展的 TTS 语音消息集(错误消息、指令和通知消息)以及可选的 ASR 语音命令。
使用代码
随着项目的进展,本节将不断更新。
参考文献
- Edumatter M12:学校数学计算器和方程求解器 (CodeProject 文章)
- 快速整数算法:GCD 和 LCM (CodeProject 文章)
- 快速最大公约数 (GCD) 算法 (Codeproject 文章)
历史
- 2004 年发布在线多分数计算器
- 2005 年发布在线质因数分解计算器
- 2006 年发布方程求解器 Web 应用程序
- 2009 年开发了高效的质因数分解算法
- 2010 年开发了利用 TPL 的质因数分解算法
- 2011 年为 Windows 原型化了集成套件 Edumatter M12
- 2012 “Edumatter-M-12”已发布在 Intel 的 AppUp 商店
- 2012 年“FindTutor-2013”应用程序扩展版本已发布在 Intel 的 AppUp 商店
- 2013 年发布了实现新颖无边框 WPF UI 的 Calculator Volta-814D
- 2013 年 8 月 19 日 应用程序文章已提交至 App Innovation Contest (AIC-2013)
- 2013 年 10 月 15 日 应用程序包已提交至 AIC-2013 第二轮
缩略语和简称
- AIO 一体机
- ASR 自动语音识别
- BI 商业智能
- HID 人机接口设备
- GUI 图形用户界面
- MMUI 多模态用户界面(多点触控,语音增强)
- SQL CE SQL Compact Edition
- TPL 任务并行库
- TTS 文本到语音
- UAT 用户验收测试
- UI 用户界面
- UX 用户体验
- WPF Windows Presentation Foundation
- XAML 可扩展应用程序标记语言