系统任务书
1.系统概述
1.1 系统名称
本系统名称是科研项目管理系统。
1.2 设计目的
经过实际体验当前系统的录入流程以及采访张晓莹老师的使用感受,我们了解到现有系统存在着许多问题:例如教师录入项目过于复杂、审核管理员无法修改信息只能驳回等。所以我们设计本系统的主要目的是为了简化教师录入科研成果及学院审批的流程。
1.3 主要功能
按照登录账号的身份不同,系统界面和功能略有不同:
普通用户(主要指教师)登录后,主页显示未审核和已审核的项目的基本信息,用户可以点击左侧侧边栏中的主页按钮、添加按钮和查询按钮来跳转到相应页面。在添加页面,用户可以填写项目信息表格(仅需填写少部分必须内容,其它部分可以通过查询期刊级别表等辅助表自动填充,也可由管理员在审核时补充填写)并提交(是否支持 Excel 批量导入待讨论)。在查询页面,用户可以按条件筛选**自己**已审核通过的项目,也可在此页面导出为 Excel 表格。
管理员登录后,主页显示等待审核的项目,每个条目右边有审核按钮,可直接跳转审核页面。管理员也可以点击主页左侧侧边栏中的主页按钮、添加按钮、查询按钮和用户管理按钮。在添加界面中,管理员也可以添加项目。在查询界面中,管理员可以按条件查询**全院**所有已审核通过的项目,并可导出 Excel 表格,也可对已入库的项目进行修改或删除。在用户管理界面中,管理员可以创建新账号以提供给新用户使用,也可删除用户。在审核页面中,管理员可以审核所有未审核的项目,可以对项目信息进行修改、补充或直接驳回。
2.系统角色
2.1 角色1:
普通用户(教师)
1. 查询:查询**自己的***已经入库(审核通过的)论文,可以按各种条件筛选查询论文,同时可以导出查询结果
2. 添加:增加新的论文记录(需要提交管理员审核、补充信息)
3. 修改:修改未入库的论文记录
4. 个人信息:修改密码
2.2 角色2:
管理员(张老师)
1. 查询:查询已经入库(审核通过的)论文
2. 审核
a) 审核教师提交的论文记录(可以同时修改、补充内容,也可驳回)
b) 插入新的会议、期刊库的信息(可选)
3. 修改
a) 修改已经入库(审核通过的)论文信息
b) 修改会议、期刊库的信息(可选)
4. 删除
a) 删除已经入库(审核通过的)论文
b) 删除会议、期刊库的信息(可选)
5. 用户相关
a) 创建用户
b) 删除用户(可选)
c) 给忘记密码的用户重置密码
5. 用户使用流程图
进入系统后,首先出现登录页面:
登陆后,跳转到主页面。可以看到主页面左侧功能栏中有三个选项。主页即为当前页面。
点击待审核论文的“修改”或“查看”,可以跳转到修改页面:
点击已审核论文的“查看”,可以跳转到查看页面,并可以导出论文信息到excel。
点击左侧的“添加”后,跳转到添加页面,在这里进行科研成果的添加。
点及左侧的“查询”后,跳转到查询页面,在这里进行科研成果的查询与导出。
4. 数据字典
1. 三个核心数据表:
a) Paper记录论文信息
b) Author记录作者信息
c) PA记录论文与作者的对应关系
2. 两个辅助数据表:
a) Publication记录期刊、会议的基本信息
b) PaperType记录论文类型(节省空间)
3. 创建数据表的SQL语句
4. create table Publication(
5. Name varchar(100) primary key,
6. Logogram varchar(50),
7. Type char(20) not null, -- conference or periodical
8. ISSN varchar(50),
9. Level char(10) not null -- Aplus, A, Aminor, B, C
10.
11. );
12.
13. create table PaperType(
14. TypeID short primary key,
15. TypeName varchar(20) not null -- special issue, demo etc.
16. );
17.
18. create table Paper(
19. Title varchar(100) primary key,
20. Logogram varchar(100),
21. PublicationName varchar(100) foreign key references Publication(Name) not null,
22. PublicationTime Date not null,
23. StartPage integer not null,
24. EndPage integer not null,
25. Keywords varchar(100),
26. TypeID short foreign key references PaperType(TypeID) not null,
27. ConferenceCity varchar(50) -- 会议举办国家和城市
28.
29.
30. --论文电子版如何存储?
31. );
32.
33. create table Author(
34. ID varchar(12),
35. ChineseName varchar(20) not null,
36. EnglishName varchar(20),
37. -- AuthorIdentity varchar(10) not null, -- teacher or student
38. primary key (ID, EnglishName)
39. );
40.
41. create table PA(
42. Index integer primary key,
43. PaperTitle varchar(100) foreign key references Paper(Title) not null,
44. AuthorID varchar(12) foreign key references Author(ID) not null,
45. AuthorRank integer not null,
46. IsCorrespondent bool not null,
47. IsIndependent bool not null
48. );
5 安全性需求
5.1 潜在的安全性问题
1. 非授权用户对数据库的恶意存取和破坏。例如:非教师或审核者通过非法手段对论文信息或论文内容进行修改和破坏。
2. 数据库中重要或敏感的数据被泄露。例如:教师信息或论文内容的泄露和盗取。
3. 安全环境本身的脆弱性。例如:操作系统安全的脆弱,网络协议安全保障的不足。
5.2 系统安全性要求
1. 防止未经过授权的人员访问数据,确保敏感信息没有被不“需要知道”的人员读取到。控制措施:对提出请求的数据库用户进行身份鉴别,防止不可信用户使用系统。
2. 防止未经过授权的人员删除和修改数据。控制措施:在SQL处理层进行自主存取控制和强制存取控制,进一步可以进行推理控制。
3. 监视对数据的访问和更改等使用情况。控制措施:对用户访问行为和系统关键操作进行审计,对异常用户行为进行简单入侵检测。
4. 对论文内容与信息进行数据加密,只有知道解密方法的人员(教师与审核者)才能获得并知道数据真实内容。
6. 运行环境需求
1. 硬件平台:可以联系学校的cpu服务器资源
2. 操作系统:跨平台网站应用,bs模式,对用户的操作系统没有特殊要求
3. 客户端:网站
4. 部署方式:python后端+前端框架