不会写程序,如何自建补习班、才艺班信息系统?
你是补习班、家教班、才艺班、游泳班老板或员工,原本以打印件或 EXCEL 处理所有学员、帐务与课务信息,现在想更系统化管理,最好有个针对自家缴费方式、开课、排课模式客制的系统,但不希望太贵太耗时?你可以从这篇文章提供的方法入手,试试用 Ragic 来打造自己的系统。
补习班信息系统需求盘点
Ragic 是个自助设计信息系统的工具,我们提供类似 Excel 的简易编辑接口,但能做到数据库的功能,让不会写程序的人也能为自己量身打造企业应用。对于刚开始使用,对设计体系结构没头绪的订户,只要写信来问客服,我们也会提供设计建议,帮助订户更快上手。
最近一年,客服团队常常接到补习班、家教班、才艺班询问如何设计系统,而许多类型、规模、运作流程不同的机构,共同需求其实大同小异,可以统整成以下三个面向:
(一)管数据:纪录管理数据(老师、学员、上课站点、课程数据/方案/课表数据)
(二)管流程:管理课程订购、缴费流程
(三)管流程:排课、预约上课、点名纪录、请假补课,另外根据出缺席纪录,扣堂数、计算剩余堂数
这三种面向的需求,原则上都可以用 Ragic 最主要的几种工具,搭配自己公司的特定开课模式,设计出相应的系统,过程中完全不需要自己动手写程序。我们不是专门做补习班信息系统的公司,但我们相信,让需求方(你自己)掌握设计系统的工具和原则后,比起外面的包商和工程师,你能更快做出更符合自己想要的东西。
登记好 Ragic ,工具在手上了,只需要再加把劲,确认自家模式、接着拆解背后的流程,就能进一步把以上的需求,变成可用的系统。
本篇文章为课程管理系统的“总论”文章,为了让你 DIY 系统的过程更顺畅,接下来,我们会先列出四种常见的开课类型,并用几个简单的问题,协助你“对号入座”,确认自己属于这四种模式的哪一种(或是哪几种)。接着,你只要根据你所属的模式,找到对应的分流教学文章链接,直接到单篇文章去读相关建议与演示,就可以轻松建置自己的系统了。
这边要说明的是:我们知道很多来寻求 DIY 建置系统的课程单元,之所以没办法找到符合需求的现成应用,很多时候就是因为开课模式并不单纯,经常是“有团课、有个人班,有固定时段上课的、也有可以任选”的四种模式混合体。累积了一些辅导经验之后,我发现这部分大家一开始其实也不用过于烧脑,可以依照你的“混合成分”先选择一个比较适合对应的体系结构来修改即可。
因此,你还是可以先注记自家开课流程包含到四大模式的哪几种,然后来这篇总论文章的最后面,参阅我们“适用于所有模式”的修改建议。有需要的话之后研究时再进一步查看不同模式的详细比较,当作进一步的参阅资源。现在,就先来看看你属于哪种开课模式吧!
开始之前:你属于哪种模式?
同样是提供课程服务的单元,可能有完全不同的课程类型、贩售课程方式、排课原则,因此,一开始,我们要先定位出自己属于那种模式。请先回答以下问题:
A. 开设的课程是团体班?还是一对一班?
一班有一个以上的学生是团体班,例如一般学校课程、补习班大班授课、有氧运动班都是团体班;一次上课只有一个学生是一对一,例如很多一对一家教、一对一游泳课、教练课。
B. 你的团体班课程会要求学生在固定时段出席课程、登记出缺勤,还是开设了多个时段,学生可以任选时段来上课?
如您的组织的开课规则是“团体班固定时段” → 可归类为模式 ⓪,针对此模式我们已经为您设计了一个可直接安装使用的模块,您可以直接到课程管理模块说明文章阅读说明与安装模块来使用,若流程与模块略有不同,也可以参阅文章后段的“进阶教学”来修改模块。
如您的组织的开课规则是“团体班任选时段” → 可归类为模式 ①, 相关说明请见此篇文章。
C. 你的一对一教学课程是已经约好固定上课周期的定期家教模式,或是更弹性的“临时预约”模式?
如您的组织的开课规则是“一对一固定上课时段” → 可归类为模式 ② ,相关说明请见此篇文章。
如您的组织的开课规则是“一对一预约系统” → 可归类为模式 ③, 相关说明请见此篇文章。
以上,我们提到了四种模式,包括“模块默认的情境”以及另外三种模式,整理如下表,点下方表格中的对应链接,即可直达各模式说明。
团体班 | 一对一 | |
固定上课时间 | ⓪ 适用课程管理模块,教学文章链接 | ② 一对一周期课,如一对一固定家教班,教学文章链接 |
任选时段上课 | ① 团班任选时段上课(不用每堂都出席) 例如买 20 堂有氧舞蹈课,教学文章链接 | ③ 一对一预约课,可临时约时段预订,教学文章链接 |
接下来,我们提供一些补充说明、并且提供(ㄧ)不分模式的修改建议、(二)四种模式的进阶比较,有需要可以继续阅读此文来参阅。
注意事项
本文尽量将所知的各种常见模式都纳入讨论中,但不同组织的需求不同、工作流程不同,很少有一体适用的建议方式,本文主要提供常见情境下,设计的灵感、想法,而不是唯一方案,请比对自家流程,决定可参阅哪些部分、哪些部分要调整, Ragic 的优点就是可以因应不同的细微差异,轻松设计出因应自家流程的客制化方案。
接下来,我们提供一些进阶的修改建议。这些修改建议前提都创建在“利用此系列文章建议设计的表单体系结构”上,建议在阅读完分支文章后,再阅读此区块,会比较清楚。
四种模式通用的进阶修改建议
(一)老师数据管理:进一步做到人事管理(工时、薪资)
因为老师通常也是公司的员工(可能是全职可能是兼职),有需要的话可以为“老师名单”创建一张数据相通的多版本表单来纪录老师们的员工基本数据;或者,你可以安装人资模块的人事数据表,在老师数据上链接加载人事数据表数据。
如果还想扩展计算老师授课时数、进而计算老师薪资等的话,由于上课纪录 / 点名单中有授课老师的字段,可以以点名单表单中的数据来生成授课时数信息,可参阅这篇文章中设计自动结算表单的逻辑来做。
(二)课程数据:如果觉得“开课清单”数据太杂...
多数时候我们建议订户将“课程”数据建檔时,同个主题但不同期、不同时段的课程,最好分成不同的数据,这样在处理排课、让学生预约课程、创建点名单等实务流程时会方便许多。
但是,有些订户会觉得这样数据会太多、太杂乱,会找不到想要的。这部分“归类”和“搜索”可以帮一些忙:你可以在课程表单上开设一个归类字段,然后将常需要查找的特定归类创建成共通筛选,这样就可以很快筛选出它们了。也可以将常被搜索的时段、上课站点存成共通筛选。
另外,你也可以可以另外创建一个“课程总表”表单,创建两层式的数据体系结构(大目录为课程总表,细目为开课清单)。首先,你可以创建一个“课程总表”表单,并在其中设置一个独特值字段“课程总表编号”;接着在“开课清单”中新增“课程总表编号”字段,该字段链接自课程总表。最后在“课程总表”插入“开课清单”作为参照子表格,这样就可以在“总表”列表页看大归类、“总表”每笔数据里看各归类开了哪些课了。
(三)订购流程:同样商品不同情形下,有不同的价格
如果你的一堂课会有多种单价:可以比照“一堂课隶属于不同方案”的设计方式,另外设方案清单,不同单价就分成不同方案来看待。或者另外设计一张“价格表”列明所有不同的价格方案,在课程清单表中链接加载价格信息。
(四)缴费流程:“一笔订购单 ≠ 一笔缴费单”的情形
不管是模块还是各种模式的表单建议,针对缴费的部分主要都是默认“订购一次课程就缴一次费用,一笔订购单 = 一笔缴费单”,因此缴费管理的部分都是建议直接在订购单中新增一个“缴费信息的区块”,同时把“订单”跟“缴费单”归并在一张表单。
不过,如果你不是这种情形,你的订购单可能分期付款,或是累积多笔订购之后才归并成一笔缴费数据,那么请看以下建议:
分期:如果你的一期课可分三期缴费,可以修改“缴费信息”区块,新增几个字段,或是将原本附属于“课程订购表”或“方案订购表”里的“缴费信息”区块独立成另外一张表单,用“抛转”或创建子表格套公式、子表格生成新表单的方法来抓取订购单数据生成缴费单。
多期归并:如果你会将多期课并在一期处理缴费事宜:那么你可以考虑另外创建一张缴费单表单,假如一季缴费一次的话,就以学生编号+年度季度为独特值字段(例如 001 号学生 2019 年第三季的费用单,可以是 001-2019Q3),填写课程/方案订购单要链接这个缴费单独特值字段,填订购单时要手动选缴费单编号或套公式带入,然后在缴费单上插入订购单为参照子表格,以带入必要的订购相关信息、计算当期费用等。
(五)修改扣堂数规则
如果你扣堂数的规则和上面的不一样,可以升级专业版进入设计模式修改成你想要的规则。假如你希望只有“正常出席”和“无故缺席”会被扣堂数,请假不扣的话,可以在“选课扣减堂数”字段设置中,拿掉默认值1,设计套用“当日出席状况”的条件公式,例如 IF(D15.RAW='请假出席',0,1)。不过要注意,规则的调整修改跟请假单、加补课单等等都会息息相关,可能需要一起调整。
(六)剩余堂数低于一定水位提醒、警示、阻塞
如果剩下的堂数不够了,学生还是一直订课,会造成一些问题。在 Ragic 你可以设置在“订购单”上“目前剩余堂数”字段小于某个数字之后,系统自动寄信或通知特定人的功能(例如剩余堂数小于 3 堂,通知订购人确认是否准备加购堂数)。这个功能逻辑跟我们在另外一篇文章分享过的“设置最低库存提醒”方法是一样的,主要是透过条件公式与“提醒”功能的搭配来达到。
由于“提醒”的对象可以是特定用户,也可以是特定的 Email,因此,你可以设置提醒公司内部人员(掌握有哪些会员购买的堂数已不够了),也可以设置提醒订购人,或是设置提醒订购人时一起 CC 公司内部留底。
有需要的话,还可以透过条件式格式让剩余堂数低于特定值的时候显示比较醒目的颜色。
另一方面,很多人更需要的,可能是不要让剩余堂数已经是 0 的人预约上课,这部分可以透过在预约表单上设计输入检查机制来达到:链接订购单号时,也多放一个加载字段加载“剩余堂数”信息,然后在这个剩余堂数的字段设置检查,规定该字段必须是正整数(句法为 ^[1-9]\d*$ )即可。
(七)如果你的开课机构混合了多种模式
假如你想要利用 Ragic 的模式设计表单,但你的课程机构会开的课不只有一种模式,例如有团班固定时段/固定学生的课,也有团班吃到饱的课;或是有团班定期课,也有一对一定期课;或是有一对一定期课程,但也可以临时预约单堂的一对一课程,要怎么做呢?首先,不同模式某些部分的表单设计是可以通用的,例如学生、老师、上课站点数据的表单几乎是一样的,直接一起用即可。
第二点是,不同模式的设计是有可能可以兼容的,如同前面所说的,我们针对各模式建议的做法,只是为了让你更快更轻松抓到方向,以设计出更符合你需求的应用(没有多余无用的流程或表单),不过这本来就不是标准答案;例如,我们会针对模式 A 建议 A 作法,针对模式 B 建议 B 作法, A 做法其实也适用于 B 模式,只是以 B 模式的需求来说用 A 做法会让平常的流程比较繁琐一点。这样的状况下,当我希望同时处理 A、B 模式时,就可以直接统一采用 A 做法来设计即可。
一般来说,越能处理弹性状态/相对而言越复杂的表单体系结构,越能兼容于别的模式,因此针对各种不同的“混合”情境,我的建议如下:
如果你还是有细节觉得不清楚的话,可以来信 support@ragic.com 详细说明目前需求,让我们提供建议给你。
四种模式的详细比较
课表制作 | 订购流程 | 预约 / 排课 | 生成点名单/上课纪录 | 扣堂数 | |
⓪ 课程管理模块 (团班、固定时段) |
(1) 可透过在老师/学生/上课场地插入“参照子表格”展示课表。 (2) 在开课清单创建子表格纪录每次上课日期,根据子表格信息生成日历报表 |
创建课程订购单 | 订购即排课 |
开课清单抛转创建点名单。 有必要时,手动带入请假与加补课信息 |
利用动作单击钮 |
① 团班任选时段 | 逻辑同课程管理模块 | 创建课程订购单或方案订购单 | 若课前需要预约则创建预约单,预约单需要有一个链接字段链接自对应的“点名单”数据 |
若无需预约,则抛转开课清单创建点名单,手动输入或条形码扫描记录出席数据
若需预约,则在点名单将预约单插入成为参照子表格,即获取点名名单 |
利用公式 |
② 一对一定期课 | 逻辑同课程管理模块 | 课程订购表 = 开课清单 | 开课即排课 | 在课程订购表开一个子表格来纪录与点名 | 利用动作单击钮 |
③ 一对一预约课 | “预约上课单”直接生成日历报表 |
单堂购买:预约上课单=开课清单=订购单=预约上课单=点名单
买堂数或吃到饱:和 ① 团班任选时段类似,使用方案订购单 |
利用“预约上课单” | 预约上课单 = 上课纪录 | 利用动作单击钮 |
版本纪录
(本文首发于 2018 年 5 月,历经数次修订、改写,扩大演示应用情境,目前最新版为 2019 年 8 月版本,将不同情境分流为不同文章。如果想看旧版文章可点此下载2018 年 5 月原文 PDF 檔、点此下载 2018 年 11 月 PDF 檔。)