www.51jplw.com
3需求分析
3.1功能规定
CMM约束下的软件项目管理系统包括项目管理和CMM两个方面的内容,而CMM的信息又和项目开发的各个进度关联在一起,在部署上为了实现权限设计上的便利及功能的归类划分,系统大体可分为三个模块:
(1)数据查询模块
数据查询模块可分为5个部分。在主页上查看全部项目信息、项目组信息、状态信息、进程信息、日志信息。可以按所选项目查看相关的项目组信息、状态信息,按所选状态信息查看相关的进程信息,按所选进程信息查看相关日志信息。
(2)CMM信息模块
CMM信息模块包括CMM等级信息和CMM信息维护。可在CMM约束页面下显示相关信息,对CMM信息进行维护管理。
(3)数据维护模块
系统的所有数据基本是在数据维护模块中完成。除了项目的相关数据,还有系统用户信息数据维护。在数据维护模块中主要的功能是用户权限的区分。这也是整个项目管理系统中,管理方面的体现。在数据维护模块中按用户的权限等级。第一类用户可以实现项目管理、项目组管理、状态管理、进程管理、日志管理、用户管理。第二类用户可以实现第一类用户的除了项目管理以外的所有功能。第三类用户只能实现日志管理模块,及账号的管理。
图3.1系统结构图
www.51jplw.com
6
www.51jplw.com
3.2软件环境
开发环境 开发时操作系统:Windows XP;开发平台:Tomcat;开发语言:jsp 开发工具:Jbuider2006+SQL Server 2000
+Dreamweaver MX2004+Photoshop 7.0
3.3功能介绍
CMM约束下项目管理系统的核心是权限管理上面的分配。在本系统中体现用户权限的地方是在系统数据维护模块中。在这里主面介绍系统数据维护模块的活动图。
登 陆 数据维护模块 判断用户权限 项目管理 项目组管理 状态管理 用户管理 进程管理 日志管理 退 出 图3.2 系统维护模块活动图
www.51jplw.com
7
www.51jplw.com
4方案设计
4.1概念结构设计
概念结构的主要特点是能真实、充分地反映现实世界;易于理解;易于更改;易于向关系、网状、层次等各种数据模型转换。下面为本系统的E-R图
图4.1系统的实体关系图
www.51jplw.com
8
www.51jplw.com
4.2逻辑结构设计
4.2.1数据字典设计
数据库的逻辑结构设计是把上面的设计用逻辑表格的形式加以表示,并对数据的类型进行定义,以及数据类型是否为是进行说明,在整个过程中必须严格定义每一个具体的数据,形成数据字典。
用户信息=用户ID+用户姓名+登陆账号+登陆密码+职位+权限
项目组信息=项目ID+用户ID+职责
项目信息==项目ID+项目经理ID+项目描述+启动日期+完成日期+CMM 级别+进行状态
状态信息==状态ID+项目ID+状态名称+完成标志+状态描述+启动日期+完成日期+CMM 级别
进程信息=进程ID+状态ID+负责人ID+进程名称+进程描述+启动日期+完成日期+CMM 级别
日志信息=日志ID+进程ID+负责人ID+日志名称+日志描述+启动日期+完成日期+CMM 级别+完成状态
项目信息=CMM级别+CMM名称+CMM描述 4.2.2基础对象表
下面是本信息咨询服务系统所涉及到的数据信息表: 1.人员基本信息表:Emp
表Emp的职位position是对于部门的,如(总工程师,项目经理,助理,商务专员,分析员,程序员。)
表Emp的权限role是对于整个系统的。联系着系统模块的显示。
所有人的权限:查看项目信息、项目组信息、状态信息、进程信息、日志信息、CMM信息。修改账号密码。
总工程师的权限:管理项目、管理项目组、管理状态、管理进程、管理日志、管理人员信息、管理CMM信息。
项目经理、项目经理助理的权限:管理项目组、管理状态、管理进程、管理日志、管理人员信息、管理CMM信息。商务专员、分析员、程序员的权限:管理日志。
表4.1人员基本信息表
字段名 empid empname 描述 用户ID (自动增加) 用户姓名 类型 int varchar 长度 4 50 9
为空 否 否 重复 否 主键 是 外键 www.51jplw.com
www.51jplw.com
username password position role 登陆账号 登陆密码 职位 权限 varchar varchar varchar int 50 50 50 4 否 否 否 否 否 2.项目基本信息表:Project
因为项目经理也会参与到别的项目的项目组中。而在那个项目中他并不是项目经理。所以项目经理ID要存贮在项目基本信息表中。而不从项目组成员表中提取。完成日期减去启动日期为实施过程中项目的完成时间。CMM级别为项目计划安排中的项目所要达到的CMM级别。进行状态标示出项目是在调研。进行。完成。等状态 。
表4.2项目基本信息表
字段名 projectid managerid projname bewrite startdate compldate wholetime condition 描述 项目ID (自动增加) 项目经理ID 项目名称 项目描述 启动日期 完成日期 CMM级别(计划内) 进行状态 类型 int int varchar varchar datetime datetime int varchar 长度 4 4 50 1024 8 8 4 50 为空 否 否 重复 否 主键 是 外键 是 是
3.项目组成员表:Progroup
一个项目只有相应的一个项目组。项目组只有一个项目经理。只有属于此项目的成员才有其相应的权限。项目经理的设计表Progroup的职责duty是对于该项目的,如(项目调研,项目管理,系统分析,编码,维护、编制手册等)
www.51jplw.com
10