学籍管理系统的MDA的困惑(banq大哥必看,关于我们学校ecust的)
项目需求分析如下:
学生
---选课
---查看课程表
---上课
---查看考试表
---考试
---查成绩
---评教
---管理个人信息
教师
---授课
---输成绩
---管理个人信息
---查看所教学生的信息
教务处
---开课(根据各院上报的所开课程)
---确定学生的课程(筛选,专业计划)
---管理学生/教师信息
参考http://www.jdon.com/mda/mda.html的分析思路,建立如下模型:
Student
------------
id: int
name: String
pwd: String
......(部分省略)
courseTable: Collection(课程表,表示Student与Course的关系是1:n)
examTable: Collection(考试表)
scoreTable: Collection(成绩表)
Course
--------------------
id: int
name: String
classTimes: Collection(上课时间,表示Course与ClassTime的关系是1:n)
....
AbstractClassTime
---------------
startWeek: int(起始周)
endWeek: int(结束周)
ConcreteClassTime
-------------------
frequency: int (0:每周/1:单周/2:双周/....)
startNode: int(开始节)
endNode: int(结束节)
Exam
-----------------
course:Course
time: Date
place: String
type:String
....
Score
-----------------
course:Course
mark: int
credit: double
.......
不知以上设计怎么样?如果有错请赐教......
假如没错,问题来了,MDA带给我的困惑是:假如我还是要用到关系数据库做为持久化策略(目前还很难摆脱它),那么怎么去设计这个数据库schema呢?无从下手了......
[该贴被jesse于2008-05-24 19:28修改过]