1、V1.12010/11/26调整文档格式。添加了状态机图。V2.02010/12/16第3章修改了课程模块/项目模块以及消息模块的设计。V2.12010/12/22添加了通知模块的设计。V2.22010/12/29修改了细节问题。1 引言1.1 编写目的为了方便本系统的使用者和软件开发者双方对该软件的出示规定有一个共同理解,使之成为整个开发工作的基础、明确系统需要实现的功能、明确需求边界,特编辑此文档。本文档一经确认,将成为系统开发人员进行开发及用户对系统验收的依据。本文描述了课程设计管理系统的系统结构,分析了本项目的各模块,主要叙述了个模块的功能、性能和结构等方面,明确了接口、类、属性、方法
2、等设计要素。1.2 项目背景软件工程导论、面向对象分析与设计和J2EE平台技术是厦门大学软件学院开设在三年级上学期的专业课程。为了让学生深入理解软件工程的基本概念和原则,掌握面向对象分析与设计方法,具备在J2EE平台上开发大型商业系统的能力。这三门课程引入了跨越三门课程的课程设计,以促使学生以该课程设计为目标,进行问题式学习。1 项目的委托单位、开发单位和主管部门委托单位:厦门大学软件学院Java课程管理系统。开发单位:2-24 WX小组。主管部门:厦门大学软件学院。2 该软件系统与其他1.3 定义1 基本信息:ID,全称,简称、描述,类别,开始时间,结束时间等。2 控制信息:是否记录日志、是
3、否有效(允许学生学习)、是否为小组模式(支持在课程中建立小组),级别(系统级别、课程级别、项目级别或者小组级别)等。3 问题式学习:问题式学习是把学习设置到复杂的、有意义的问题情境中,通过让学习者合作解决真实的问题,来学习隐含于问题背后的科学知识,形成解决问题的技能,并形成自主学习的能力。PBL旨在使学习者建构起宽厚而灵活的知识基础;发展有效的问题解决技能;发展自主学习和终生学习的技能;成为有效的合作者;并培养学习的内部动机。这种模式的典型教学过程是:学生以小组为单位,开始解决一个实际问题;为了解决实际问题,学生往往需要获得一些必要的专业知识;即所谓的学习议题,学生分头查找资料获取知识,然后相
4、互交流所获得的知识,并讨论如何用所获得的知识来促进实际问题的解决;如果在讨论的过程中;小组发现还需要研究另外一些新的学习议题,学生们就需要反复循环地产生学习议题、分头查找资料、小组交流并讨论问题解答,直到问题得到解决;问题解决后,学生们还需要对自己的学习过程进行自我反思和评价,总结所获得的知识和思维技能。4 课程:当前正在开设并纳入课程管理系统管理的课程。基本信息:课程ID,全称,简称、描述,课程类别,课程开始时间,课程周数。控制信息:是否记录日志、是否有效(允许学生学习)、是否为小组模式(支持在课程中建立小组)等。5 主题:在“课程”中,可包含多个主题,主题中可放入文件、URL、论坛链接以及
5、HTML页等资源。主题名称。是否为当前主题。6 项目:“课程”中设定的问题。项目一定隶属于某一个“课程”。包括全称,简称、描述,项目容量(所容纳的最大组数或学生数),项目附加文档,项目负责教师,项目开放报名时间等。是否为小组模式(只支持小组选择项目)。7 作业:用户所需要完成的工作指派。名称、描述、成绩类型(百分制和等级制),开始时间,截至时间,上传文件数目,文件大小限制。是否允许迟交,是否发送消息给教师和助教。8 小组:小组中包含三种不同角色负责助教、组长和组员。组名,描述,最大组员数,最小组员数。是否允许新成员申请小组,是否为开放小组(允许非小组成员查看小组的所有资源)。9 事件:包括系统
6、事件、课程事件、项目事件、小组事件和个人事件五种。10 其他:最大组员数和最小组员数受到“项目”或“课程”中相关设定的约束。1.4 参考资料参考书目:1 美 Craig Larman 著,李洋译,UML和模式应用(原书第3版),北京:机械工业出版社,20062 美 Craig Larman 著,UML和模式应用(英文版第3版),北京:3 王珊 萨师煊 著,数据库系统概论(第四版),北京:高教出版社,20064 Deitel 著,Java大学教程(第六版)(英文版),北京:电子工业出版社,20085 美 Kito Mann 著,铁手、程晓东、何勇译,JSF实战(Java Server Faces
7、 in Action中文版),北京:人民邮电出版社,20076 张海藩著,软件工程,北京:清华大学出版社,20097 Rima Patel Sriganesh著,精通EJB,北京:电子工业出版社,20062 系统的结构2.1 系统组件图2.2 系统部署图2.3 系统包图2.4 页面截图登陆页面的截图课程管理模块页面截图课程管理页面截图2.5 页面导航核心模块状态机图3 课程管理模块设计说明3.1 课程管理模块设计说明3.1.1 模块描述简要描述:课程模块由管理员设定课程,教师可以申请开设相应课程并添加课程下的项目,学生可以在该子系统中以个人方式或小组方式学习该课程,或进入课程以下的项目开展更深
8、层次地学习。3.1.2 功能1. 支持课程的类别管理:可定义课程的类别;支持新增,删除和修改类别。2. 课程信息的设定:包括增加,修改和删除课程。3. 主题管理:在课程中新增、删除和修改主题。4. 资源管理:在主题下新增、删除和修改资源。5. 申请开课:由用户申请开设课程,经管理员批准后,增加课程。6. 选课:学生选择学习课程,可设定选课时间,以及各种可扩展的选课规则。3.1.3 性能 响应时间:任何系统操作响应时间300人的情况。 提示信息:系统将在用户操作后0.5s之内作出响应。 语言适应性:软件支持中文和英文两种显示界面。 可扩展适应性:如果时间允许或用户需求,开发人员将在该模块上实现更
9、多的功能,并且能和原模块良好兼容。3.1.4 模块结构3.1.5 逻辑流程3.1.5.1 开设课程3.1.5.2 删除课程3.1.6 活动图和状态图3.1.7 接口3.1.8 限制条件3.2 项目管理模块设计说明3.2.1 模块描述该模块要求在课程下设立项目让学生参与学习,同时有老师负责,项目内可以建立小组和添加学生。3.2.2 功能1. 教师可新建,删除和修改课程中的项目,每个项目都有负责教师。2. 支持以学生或小组为单位申请加入项目,项目的负责教师批准学生或小组加入项目。3. 学生或小组可以选择转换项目,但需经负责教师批准。4. 可定义规则判断学生或小组能否加入项目(如项目容量,时间等)。
10、3.2.3 性能3.2.4 模块结构3.2.5 逻辑流程3.2.5.1 开设项目3.2.5.2 删除项目3.2.5.3 开设小组3.2.6 活动图和状态图3.2.7 接口3.2.8 限制条件3.3 消息管理模块设计说明3.3.1 模块描述该模块主要负责用户间的通信事务,完美嵌入到其他各系统中,管理员、教师、助教、学生军可以发送消息给系统中的其他用户。其他用户还能根据需要设定接受消息来源的范围。目的意义:通过该子系统发送消息,让不同用户更顺畅地交流和沟通。特点:具有良好的兼容性、独立性,易集成。使用性强。3.3.2 功能1. 具备发送消息、阅读消息、指定接收范围、删除消息的功能。2. 支持用户之
11、间互相传送消息。3. 用户可设定自己接受消息的范围,如只接受同组同学,或同课程的同学或全系统用户的消息。4. 消息历史应记录下来。3.3.3 性能全天候在线,7天*24小时不死机。系统将在用户操作后0.5s之内作出相应。软件支持中文和英文两种显示界面3.3.4 模块的结构3.3.5 流程逻辑该模块较简单,不附活动图和顺序图。3.3.6 接口参见包图、组件图、程序生成的JavaDoc。3.4 通知模块设计说明3.4.1 模块描述该模块用户负责人(如任课教师、项目负责人、组长) 发布其所管辖的部分的通知公告,告知用户一些重要的通知,并允许负责人对自己所发布的通知进行有效的管理。3.4.2 功能允许负责人发布所管辖部分的通知,并且可以修改和删除其所发布的通知公告。3.4.3 性能 正确响应并返回View层调用。 页面响应时间不超过5秒钟。3.4.4 模块的结构3.4.5 逻辑流程3.4.5.1 发布通知3.4.5.2 删除通知3.4.6 接口参见构件图3.4.7 活动图和状态图这个模块比较简单,无需绘制活动图和状态图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1