Project_design
教学课件自动生成
一、人物画像
case 1:
陈先生是一位在大学任教的老师,他所在的专业是电气工程。5年前他刚刚结束自己的博士生涯,应聘来到这所不错的大学。作为一名年轻的大学老师,他需要每学期担任2~3门本科课程,同时有着较大的科研压力。于是陈先生的时间被分为了两半:准备课程内容,搞科研发文章。前辈们常常以鼓励地态度告诉他:年轻的时候压力大一点,等到以后教职稳定、有所建树,回头看看大家都是这么过来的。
但陈先生最近感到苦恼的是:随着科研项目的进行,他感到需要投入的时间越来越多;而此时,他正在为一门全新的课程开设做准备。经过1个多月对领域资料的查阅与构思,他已在心中为这门课程搭好了框架。剩下的时间不多,他常常需要在实验的间隙中编写课件。而他所摘取的资料片段,往往来自各不相同的格式,可能是书、网页、论文、视频……陈先生摘取编辑的过程中,往往在做着重复的排版工作。同时,当课件的页数到了一定的数量,编辑过程中软件几度崩溃、退出,这让陈先生一看到界面卡顿便心惊胆战,更是时时提醒自己:多按几遍保存。
同时,由于专业课程的内容涉及到公式编写与排版,陈先生面对长串公式带来的卡顿、中断、报错,已经无奈地习以为常。有的时候他会想:为什么在制作课件的过程中,不能支持用LaTex编辑公式呢?每当这时,他由衷地想念起LaTex这位陪伴他多年科研路的老朋友。
- case 2:
王女士是一位高中英语老师,这段时间,学校接到了上级视察的指令,正狠抓教学工作。其中对老师们影响较大的,就是教学教案的评比工作。书写教案工作量巨大,并且还需要花费大量的精力去完成。很多教师对写教案是意见纷纷,多有抱怨。总认为写教案没有必要,写了的教案在上课时又不按照教案去上课,完全是两张皮,写教案就是照搬教参书,一点意义也没有。明明教案的初衷是让老师们熟悉一节课的教学目标、大致的教学过程、构思这节课到底怎么上,但自从教育行业进入信息化时代,大家都制作、使用课件进行教学。教案的工作一定程度上与制作课件重复了,并且在教学工作中,单靠板书、口述的确不如课件来得生动形象,于是这些年,教案在课堂上的流行程度远不及课件。
迫于学校的要求与制度的规范,王女士不得不与同事们一起补起了近一个月以来的教案,她在心中想着:如果可以直接将ppt上的内容与这教案的内容同步就好了……
二、用户调研
2.1 用户访谈
为了大致了解如今教师在制作课件时所碰到的痛点和需求点,我们对教师代表王伟老师进行了相关问题的访谈。从访谈过程中,获取了如下较有用的信息:
中学和大学区别
中学老师有课本,形成教案再形成PPT。课程进行很多次迭代,体系成熟清楚,标准化;大学老师不太一样,更多是知识的创造者。先写PPT,再形成讲义,再写教材。因此在问卷中加入了中学教师和大学教师的身份调查。
代码演示
对计算机专业老师而言,PPT和PDF都无法实现代码的运行,而平台的切换操作易造成教学演示的不方便。因此,若能进行二者的有效合并,将会是一个不错的突破。
在线编辑制作课件
更适用于线上教育,能使制作课件更加简单。并能提供云平台进行存储,不用担心文件丢失、未保存等问题。
课件迁移的不方便性
当希望将参考的课件内容迁移到自身课件上时,在重新排版以及内容转移等方面都需要花费大量不必要的时间。
2.2 问卷总结
根据访谈,小组制作了调查课件制作和使用情况的问卷。截至7月14日0点,共收集到70份问卷,其中教师43份,学生27份,大部分为工科。
卡顿问题
版本适配性与卡顿问题通常容易影响用户的使用感受。而当前市面上制作课件的产品大都已经比较成熟,并没有在这两方面出现非常大的纰漏,但是仍会偶尔出现类似的瑕疵。理想情况下,我们希望能尽量避免这类情况,以给用户更好的体验感受。
动画效果
用户在课件演示时对动画的需求仍较大,动画能协助用户演讲时更生动具象、易于理解,因此是个比较重要的组成部分。
排版耗时
课件的内容是核心,而排版多为锦上添花的作用。然而在制作课件时,若在排版上耗费过多时间,则会造成很多不必要的精力消耗。由统计结果看,还是有多数人在排版上所耗费的时间达到了一半甚至更多,因此我们希望能实现课件自动排版的功能。
在线编辑
从统计结果来看,多数人愿意在线编辑课件。因此,在一定程度上证实了该产品的推出将会获得一定的市场需求。
三、问题定义
3.1 现状
PowerPoint (ppt)
- 微软的Office系列组件之一,是最广泛使用的幻灯片制作工具。
- 功能比较强大、简单易学
- 内置丰富的动画、过渡效果和多种声音效果,并有强大的超级链接功能,可以直接调外部众多文件,能够满足一般教学要求。
- 排版复杂,容易造成卡顿。
Latex
- 基于TEX的排版系统,方便排版,尤其是对于生成复杂表格和数学公式,
- 适用于生成高印刷质量的科技和数学类文档。
- 对掌握要求较高,使用门槛较高。且无动画等交互功能可用。
jupyter notebook
- 内置markdown模块与代码模块,能方便CS老师课上演练及解释
- 不适用于日常课件编写,适用范围较窄
3.2 痛点
- 在使用工具制作课件时,会存在版本适配性、卡顿等问题,影响效率及用户体验。
- 排版操作易重复,课件更新调整知识内容不方便。
- 制作课件时,难以按照较强的教学逻辑进行,导致制作效率低下。
- 在参考已有课件并希望摘录时,内容的迁移会造成很多不方便。
- 排版方便与使用门槛友好不能兼得
- CS类课程需要代码演示时,需要切换窗口。
3.3 需求
- 选择心仪模板并输入相应内容,即可输出较清晰、可使用的演示课件。
- 使用门槛低,能适合大多数课件制作的需求人群上手使用。
- 能按照较强的教学逻辑进行课件制作的过程,增加效率。
- 课件更新迭代时能方便、易操作。
- 课件迁移能避免调整格式的时间消耗。
2.4 创新点
- 自动排版
- 生成树形思维导图,辅助教学内容梳理
- 线上演示+pdf下载
- 云端存储:规避未保存或本地文档易丢失的情况
四、初步设计想法
- 自动排版
实现自动的由markdown文件向latex转码并生成pdf/ppt的自动排版过程,从而简化课件制作的流程,提高教学效率。
- 线上演示&下载
生成课件后,提供线上展示和课件下载的功能,用户既可以选择直接在网页端展示课件,也可以选择下载pdf保存。
- 自动生成树形思维导图
在将markdown解析成latex的同时,按照markdown中的逻辑关系生成树形思维导图并支持下载,以利于用户对教学内容进行总体把握。
- 模版自定义
在markdown已经定义的语法基础上,增加新的语法定义,如可以通过{% bg = “pink”%}指定生成课件的背景颜色等,使生成的课件更加丰富。
此外,还提供几种常见的课件风格模版,生成课件时,用户可以选择希望生成的课件风格,如可以选择学生版和教师版,以更好地应对用户的个性化的需求。
- 在线编辑
课件生成后支持编辑。课件生成后,在网页端提供预览,用户可以在预览版本的基础上调整包括文本位置,内容,图片位置,大小等信息,在对课件完成个性化的调整后再下载或保存。
- jupyter代码演示页面
对于需要进行现场代码运行展示的专业,可以提供内嵌的jupyter代码展示功能。在线展示课件时,可对代码片段进行类似jupyter notebook形式的现场运行展示。
五、原型
5.1 功能设计
项目库
项目库用以展示所有可用项目和可参考风格,可以选择公开或者私有项目。在页面左上角我们提供一个上传本地markdown(zip)文件的接口,允许用户将自己已经在本地编辑好的项目进行上传。
(原型图1:项目库界面)
编辑器
我们向用户提供编辑器页面,在这个页面允许用户对项目进行专门的编辑。其中,左边部分是可编辑窗口,这里用户可以选择是可交互方式进行编辑还是使用使用源代码方式进行编辑;右边窗口是预览窗口,可以将最终的结果的文档形式、思维导图和幻灯片形式展示出来。
(原型图1:以幻灯片形式预览的编辑界面)
(原型图2:以思维导图形式预览的编辑界面)
(原型图3:以文档形式预览的编辑器)
5.2 技术架构
主要框架如上图所示: 通过一个网页暴露给用户相关的接口(譬如接收markdown文件的接口、在线编辑的接口以及模版选择的接口 ),再将接收到的数据打包整合发送给服务器端, 服务器在后端对于发送过来的md/文本文件进行进一步的处理(包括语句分解,分页处理,模版应用,格式编排等), 最后,在服务器端生成对应的ppt\pdf文件并发送给用户。