复旦大学教学互动系统.docx

上传人:b****2 文档编号:2681324 上传时间:2023-05-04 格式:DOCX 页数:18 大小:394.42KB
下载 相关 举报
复旦大学教学互动系统.docx_第1页
第1页 / 共18页
复旦大学教学互动系统.docx_第2页
第2页 / 共18页
复旦大学教学互动系统.docx_第3页
第3页 / 共18页
复旦大学教学互动系统.docx_第4页
第4页 / 共18页
复旦大学教学互动系统.docx_第5页
第5页 / 共18页
复旦大学教学互动系统.docx_第6页
第6页 / 共18页
复旦大学教学互动系统.docx_第7页
第7页 / 共18页
复旦大学教学互动系统.docx_第8页
第8页 / 共18页
复旦大学教学互动系统.docx_第9页
第9页 / 共18页
复旦大学教学互动系统.docx_第10页
第10页 / 共18页
复旦大学教学互动系统.docx_第11页
第11页 / 共18页
复旦大学教学互动系统.docx_第12页
第12页 / 共18页
复旦大学教学互动系统.docx_第13页
第13页 / 共18页
复旦大学教学互动系统.docx_第14页
第14页 / 共18页
复旦大学教学互动系统.docx_第15页
第15页 / 共18页
复旦大学教学互动系统.docx_第16页
第16页 / 共18页
复旦大学教学互动系统.docx_第17页
第17页 / 共18页
复旦大学教学互动系统.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

复旦大学教学互动系统.docx

《复旦大学教学互动系统.docx》由会员分享,可在线阅读,更多相关《复旦大学教学互动系统.docx(18页珍藏版)》请在冰点文库上搜索。

复旦大学教学互动系统.docx

复旦大学教学互动系统

版本:

0.1

负责人:

高珺

(gaojun@)

王思宝

(sibaow@)

黄锃

(072053034@)

审批人:

戴开宇

(kydai@)

教学互动系统

项目需求说明文档

 

更改记录

版本

状态

日期

0.1

文档草稿

2009-3-1

0.2

文档草稿2

2009-3-4

0.3

文档待审稿

09年3月6日

目录

1引言4

1.1项目目的4

1.2项目范围4

1.3项目分组4

1.4项目答疑4

1.5时间安排4

2概述5

2.1项目背景5

2.2系统特征5

2.3用户识别5

2.4约束条件5

2.5前提和依赖5

3功能性需求6

3.1基本功能6

3.1.1个人信息6

3.1.2权限验证6

3.1.3信息发布及浏览6

3.1.4投票7

3.1.5投条7

3.2扩展功能7

3.2.1校园信息自助等7

3.2.2协同编写(扩展功能)7

3.2.3微博客,SNS,RSS,个人门户等功能(扩展功能)8

3.2.4RIA技术采用8

4非功能性需求9

4.1可靠性9

4.2安全性9

4.3易用性9

4.4灵活性9

4.5可扩展性和可重用性9

4.6设计约束9

4.6.1XML技术要求9

4.6.2(可选)EJB技术要求10

4.6.3(可选)应用框架选择10

4.6.4协同编辑文档提供WebServices实现10

4.6.5所有邮件相关服务使用JavaMail实现。

10

5接口11

5.1用户界面11

5.2硬件接口11

5.3软件接口11

6交付物12

6.1PROJECT112

6.1.1系统功能实现12

6.1.2项目相关文档12

6.2PROJECT212

6.2.1主系统12

6.2.2数据库12

6.2.3JavaDoc12

6.2.4项目相关文档12

6.3可交付物要求13

7评分细则14

7.1Project114

7.2Project214

引言

1.1项目目的

项目的目的是把《高级WEB技术》课程所涉及的基础知识应用于实际WEB开发应用中,做到学以致用。

我们希望通过“教学互动系统”这个课程项目来培养和考察同学对高级WEB技术的综合开发应用能力。

1.2项目范围

项目所涉及的高级WEB技术范围主要如下:

●XML的综合应用(DTD/Schema、DOM/SAX、XSL/X-Path/XSLT)

●JavaEE的综合应用(JSP/Servlet、JDBC、JNDI、JavaMail、EJB、JAXP)

●WebServices的基础应用(以JavaEE平台为主,可选跨平台集成应用)

●对象/关系数据库映射的基础应用(Hibernate、JDO)(可选)

●轻量级JavaEE开发框架的基础应用(Struts、JSF、Spring)(可选)

●可复用JavaEE基础设计模式的应用(可选)

●Web2.0相关技术,如Ajax,RSS等(部分内容可选)

1.3项目分组

考虑到项目本身具有一定的复杂性和工作量,所以允许以每组3-4人左右为单位进行项目团队开发。

分组以自愿组合为原则,但未能及时组队的同学由我们随机安排并通知。

项目的分工由小组成员自行商议,但要求每个同学对其中的每个模块都相当熟悉。

1.4项目答疑

项目需求方面的答疑由高珺负责,其他技术方面的答疑由任课教师和全体TA共同完成。

答疑方式以电子邮件为主,如有任何建议和意见请及时与我们取得联系。

1.5时间安排

PROJECT1:

2009-5-1023:

59以前提交、提交后两周内组织进行面试和评分

PROJECT2:

2009-6-1921:

00以前提交、提交后两周内组织进行面试和评分

概述

1.6项目背景

“教学互动系统”提供了一个师生进行交流的空间,类似于一个虚拟的教学、交流平台。

在这个平台中,教师可以发布与课程相关的信息,回答学生的问题,而学生则可以与教师进行方便的沟通,以及共同协力维护课程信息。

1.7系统特征

我们的“教学互动系统”是一个基于Web2.0技术的交流平台,注重于用户的协同,多用户的资源贡献(包括一个简单的wiki,以及多媒体文件的交流)。

处于简化系统的目的,本项目只需专注于一门课程即可。

系统必须是基于B/S架构的,部署在JavaEE应用服务器上,这是本项目的重点。

而对于系统所采用的框架不做具体要求。

1.8用户识别

“教学互动系统”中的用户包括三种:

教师、助教和学生。

其中教师相当于系统的超级管理员,助教相当于系统的普通管理员,而学生则相当于一般用户。

这三者之间的权限关系为包含的权限关系,即教师拥有助教的所有权限,助教拥有学生的全部权限。

1.9约束条件

必须以组为单位独立按时完成,不可以代工和抄袭。

对于开源项目的参考和开源框架的应用是鼓励的,但不能够直接套用现成的开源项目来交付。

1.10前提和依赖

可以熟练编写HTML、CSS、JavaScript。

掌握XML和JSP/Servlet的基础应用,对数据库设计、JavaEE架构和WebServices有一定的了解。

功能性需求

1.11基本功能

系统需要为“学生”提供以下功能:

申请注册;编辑自己的基本信息,发布公共、私人信息;对感兴趣的话题进行投票(比如“XML这个部分是否讲得过细?

”,“课程进度如何,A、快了点;B、刚好;C、慢啊慢”);查看教师发布的公开内容。

针对课程内容进行提问并可以看到回答;自动选择Topics和Project分组,并查询相关信息。

下载课件和相关辅导材料。

系统需要为“助教”提供以下功能:

所有“学生”的功能,编辑“学生”发布的公共信息,审批“学生”的注册信息,发布课程相关信息。

回答学生提问,选择学生发送email进行课程通知;查询并调整Topics和Project分组.

系统需要为“教师”提供以下功能:

除“注册申请”外的所有“助教”功能,注册用户的所有功能,审批“助教”的功能。

上传课件,辅助资料等。

用例图大致如下:

1.11.1个人信息

“教师”是系统内置的用户,在系统部署时产生。

其他用户都需要在填写注册信息后,由系统管理员审批过才是真正的用户(注册用户)。

系统需要为所有的注册用户(包括“教师”记录以下信息:

用户ID,密码,姓名(需要双重输入验证),电子邮件地址(需要合法性验证),兴趣爱好,头像,签名档。

以上信息除用户ID外,注册后对其他用户不可见。

以上信息除兴趣爱好,头像,签名档之外,都为必填信息。

用户登录后可以查找其他用户的基本信息(即除密码外的全部信息,包括用户的身份)。

1.11.2权限验证

使用“用户名-密码”的方式对所有用户进行验证。

出于系统安全的考虑,密码不可以明文存放,一律需要散列处理。

只有当用户使用用户名和密码登录以后,才能进行相关的权限操作。

“学生”注册后,“教师”和“助教”可以查看待批准学生列表,并对符合条件的学生进行审批;“教师”还可以看到待审批的“助教”列表。

“学生”或“助教”被审批通过后,系统将向其注册email中发送一封欢迎邮件。

“助教”可以封禁和解封学生的使用权限,“教师”可以封禁和解封“助教”和“学生”的使用权限。

被封禁状态下的用户在登录后,将得到一个被封禁的提示,不能进行任何操作。

在注册和登录过程中,采用Ajax,提示该用户名是否可用。

1.11.3信息发布及浏览

“教师”和“助教”可以发布信息,这些信息被赋予一个或多个标签,如课程资料,课程PPT,作业发布,Java,EJB,娱乐等等。

标签在信息发布时手工输入,标签的名称可以按照信息的具体的内容随意选定,也可以没有标签。

发布的信息为RichText,即有格式的富文本,还可以在信息中插入视频、图片,附加文件。

所有用户都可以在登录后看到所有发布的信息,并通过搜索页面查找相关信息,搜索的条件可以是简单查询,也可以是定义各种查询条件的复杂查询。

1.11.4投票

用户可以针对某一话题发动投票。

投票分为课程相关的投票和一般投票,只有“教师”和“助教”可以发布课程投票。

发起投票的用户应当注明投票的描述,投票的类型(单选,多选等),投票的有效期,是否匿名投票。

可以为投票加上标签。

投票的结果应当采用图形化显示(如柱状图、饼状图等)。

投票一旦发布,只有“教师”或者“助教”可以对其进行修改、关闭(停止新的投票)、删除。

1.11.5投条

“教师”和“助教”可以针对学生的某些特征(如爱好,或者全体学生,或者指定的部分学生)群发email。

系统提供邮件编辑功能(RichText,可以附加附件)。

1.12扩展功能

提供同学进一步锻炼自己能力的机会,提供各种课堂介绍的较为前沿的技术实践机会,并借此区分水平,扩展功能予以加分。

同学也可以根据自己的想法来进行功能扩展,在文档中写明。

1.12.1校园信息自助等

可以通过调用外部WebServices来集成一些实用的功能,用于校园生活。

比如,集成GoogleMap,方便复旦校园地图信息的查找。

针对地图信息可以融入非地图信息,比如对食堂的评价等,作为扩展功能。

1.12.2协同编写(扩展功能)

系统中有部分文档可由用户协同编写(RichText),相当于一个特定目录,目录中存放一些注入心得体会,新技术介绍等文章。

用户可以在目录中新建、编辑新条目。

要求记录所有条目的编辑历史信息,包括创建人,编辑人,创建时间,最后一次编辑时间等等。

浏览条目的用户可以查看这个信息。

此功能还需要提供WebServices访问。

1.12.3微博客,SNS,RSS,个人门户等功能(扩展功能)

可以借助开源项目,集成微博客,SNS,RSS等功能。

以RSS为例,比如教师的信息发布,可以由系统自动更新feed,学生只需要应用通用的RSS客户端进行订阅,可以收到课程的最新发布信息等。

1.12.4RIA技术采用

在表现层采用Dojo,Ext.等技术,实现很好的用户体验。

DojoFishEye:

FlickrWord:

非功能性需求

1.13可靠性

系统必须是稳定的、健壮的。

用户执行合法操作、输入合法数据,应得到功能性需求部分描述的预期结果,不能出现程序的堆栈信息或是自定义的错误页面。

用户执行非法操作,不能出现程序的堆栈信息,应出现自定义的错误页面。

用户输入非法数据,应返回输入非法数据的页面,并提示输入数据非法。

1.14安全性

系统必须是安全的、完整的。

涉及密码信息的数据字段不可以用明文进行存储。

1.15易用性

系统必须是可用的、易用的。

功能性需求部分未定义的系统流程,可以自己定义处理的流程。

这些自定义的流程。

要符合用户的操作习惯,简单易用。

1.16灵活性

系统必须是灵活的、能够适应一定需求变化的。

可以考虑采用分层架构以及设计模式进行粒度、职责划分,以增强系统的灵活性。

1.17可扩展性和可重用性

采用N层架构开发,各层的组件划分合理,接口定义清晰,可以方便的进行扩充,修改,以及功能重用,这点非常重要,需要在设计文档中详细写明。

1.18设计约束

XML技术要求

查看用户信息的功能中,用户的信息存放在关系型数据库中,由特定的模块(Servlet/JSP或Struts中的Action)将其按照参数进行抽取并包装成一个xml文件。

然后在通过xslt方式转化成页面进行呈现。

(可以使用浏览器的xslt引擎,也可以使用软件包将其转化成html后再呈现)。

但必须有一个方法,可以让用户在浏览器端访问到xml文件的内容(如果使用浏览器的xslt引擎,则只需有查看页面源文件即可)。

EJB技术要求(扩展功能)

使用EJB3.0中的EntityBean和JPA或者Hibernate进行对象/数据库记录映射。

应用框架选择(扩展功能)

使用Struts、JSF或其他开源MVC框架进行系统编写。

协同编辑文档提供WebServices实现

对于协同编辑的页面提供可以通过WebServices进行访问的方法,具体浏览方式随意,但是必须是WebServices方式提供的内容。

所有邮件相关服务使用JavaMail实现。

接口

1.19用户界面

自行设计主系统和阅读器界面,以简洁易用为目标。

1.20硬件接口

能够顺畅运行在512M以上内存的X86个人计算机上。

1.21软件接口

1.数据库:

MySQL(推荐),JavaDB等

2.JavaEE应用服务器:

Tomcat,JBOSS等

3.WebServices开发包:

Axis,JWSDP等

4.集成开发环境:

Eclipse,NetBeans等

5.操作系统:

Windows2000,XP和2003

6.浏览器:

IE6.0或以上和FireFox3.0或以上

1.22提示

1.上传功能可以采用JspSmartUpload组件,或者Apache的commons

2.可以使用Ajax框架,但需要在文档中说明。

3.如果提交相关的压力测试报告等,作为扩展功能加分。

4.富文本编辑可以使用FCKeditor,效果如下

交付物

1.23PROJECT1

系统功能实现

完成除以下功能外的其他功能。

∙注册成功后的欢迎email

∙投条功能

∙投票功能

∙Project分组,TA调整功能

∙扩展或可选部分

项目相关文档

项目文档统一用doc格式或pdf格式提交。

团队分工安排表和自我评分表附在项目设计文档最后,最终只提交一份文档。

项目设计文档:

项目的用例提炼、架构概要设计、关键功能详细设计,WebServices用户基本信息查看部分的xml的Schema。

团队分工安排表:

团队成员名单、各自参与的任务、对整个project的贡献百分比。

自我评分表:

按照评分细则进行自我评估以及扩展功能点的说明。

1.24PROJECT2

主系统

主系统源代码和可以直接部署的WAR/JAR/EAR包(包括用到的非JavaEE标准的各种扩展JAR包、数据库连接JAR包和开源工具JAR包等)。

至少完成一个扩展功能

数据库

需要提供两份数据库SQL脚本:

1、数据库的SQL清空、创建脚本;

2、数据库的初始或测试数据的SQL插入脚本,要求在这些数据插入后,系统的所有功能都至少有2条或以上数据。

JavaDoc

主系统“视图层”以下各层次的源代码对应的JavaDoc,使用Java标准Doc工具生成,注释的粒度和风格需符和SUN的JavaDoc注释风格。

项目相关文档

项目文档统一用doc格式提交。

团队分工安排表和自我评分表附在项目设计文档最后,最终只提交一份文档。

项目设计文档:

项目的用例提炼、架构概要设计、数据库设计、关键功能详细设计。

使用手册。

团队分工安排表:

团队成员名单、各自参与的任务、对整个Project的贡献百分比。

自我评分表:

按照评分细则进行自我评估以及扩展功能点的说明。

1.25可交付物要求

可交付物需要有一份清单以及运行、配置的说明,成员名单以及组长的联系方式以便有问题是能够及时联系。

评分细则

1.26Project1

Project1占Project总分的40%。

假设Project1的满分为40分,对于各个功能点实现情况的评分细则如下:

编号

功能点描述

分值

1

用户注册、审批

5

2

用户搜索

2

3

XSLT转化用户基本信息及呈现

8

4

用户权限、验证

4

5

发布课程信息(富文本,附件)

7

6

课程信息检索(标题检索、标签检索)、浏览

4

7

相关文档

10

注:

1.延期扣分规定:

每延1天(不足1天算为1天)扣2分,延期超过5天即不再接受递交。

特殊情况除外。

2.对于有创新性的功能点扩展或改进,请在文档中说明,可酌情加分。

1.27Project2

Project2占Project总分的60%。

假设Project2的满分为60分,对于各个功能点实现情况的评分细则如下:

编号

功能点描述

分值

1

注册流程中的欢迎邮件

2

2

投票

8

3

投条

5

4

扩展功能(4选1)

10

5

Project分组,TA调整

5

6

数据库设计

5

7

分层架构、设计模式应用、职责划分、系统的灵活性

5

页面大方美观

2

项目设计文档、团队分工安排表、自我评分表

10

10

有一定的测试代码和必要的注释、命名规范

3

11

自由拓展(按难度,适用性进行评分)

5

注:

1.延期扣分规定:

每延1天(不足1天算为1天)扣3分,延期超过5天即不再接受递交。

特殊情况除外。

2.对于有创新性的功能点扩展或改进,请在文档中说明,可酌情加分。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2