Function spec

1,Title

        Simple English Learning.

2,Status
     
         Incomplete.

3,Develop principle.

         MVM

4,Overview

          我们是在一个程序上进行二次开发。源程序是清华大学软工小组在2011年开发的一款名为"霸王记单词"的英语学习软件。主要用途为帮助用户有效地进行单词记忆。软件设计初衷拥有以下功能和特点。
          1,用户可以选择不同的单词库进行单词记忆练习。初始软件含有两个单词库。
          2,用户可以针对不同的单词库开设背诵课程(Course),实际上,用户也是通过课程实现单词记忆。在课程中,用户通过系统算法提供的进度进行单词记忆。分阶段。
          3,记忆单词时,用户可以通过,读音,汉语翻译,标签,例句等进行多维背诵。

          存在的问题以及我们开发的目的。
          1,单词库过少(2个),且由于程序设计的缺陷,可扩展性很低,用户无法方便的添加新的单词库。导致用户面很窄,无法满足用户需求。
          开发目标:增加程序可扩展性,提供多种输入接口,方便添加单词词库,满足不同用户需求。
          2,单词库模型设计缺陷,导致储存冗余,且在"create a Course"的时候,会修改词库物理结构,浪费储存空间,占用CPU利用率。
          开发目标:重新设计软件架构,减少冗余储存,增加索引,优化储存方式,减少运行时CPU利用率。
          3,单词库内储存结构混乱且无可扩展性。例如一个单词只能用有一个汉语释义,这显示是不科学的。发音必须调用已有的音频信息,可扩展性及实用性不高。
          开发目标:重新构建存储结构,增加单词属性的扩展性。发音使用微软底层接口,TTS进行单词及例句朗读。

5,Feature List

          除了上文提到的开发目标外,我们进行二次开发主要实现三个Feature。
          1,Supermemo算法
          网上提供了这个记忆算法,是业界公认的优秀的单词记忆算法,可以提供良好的反馈,帮助用户以最佳的进度进行单词背诵。但是只有算法的核心思想,我们的目的是进行代码实现,实现其version 11.0。
          2,能力检测
          如何确定用户的单词量,如何确定单词表中那些单词用户已经认识而不需要再次背诵,这是一个难题。但是也是在背单词中必须的一个反馈,如果没有的话,用户很难保持持久的单词记忆的信心。也不符合软件的初衷。
          3,用户个性化。
          我们这里提到的个性化,不是软件换肤等肤浅的个性化,个不仅仅是用户选择单词库这么简单。我们的目标是,希望开发出插件,能够实现用户在浏览其他界面时,能够自由的添加包含自己感到陌生单词的这个句子,以作为这个句子的例句在单词记忆中出现。这样可以增加实际场景感,增加实用性。

5,Author List

          2012.11.06 10:40  Majun Mobile.
posted @ 2012-11-06 10:41  SuperBrothersTeam  阅读(871)  评论(3编辑  收藏  举报