吉首大学信息科学与工程学院课程设计报告书
课程员工管理系统
课题:员工管理系统
姓名:蒋文,
学号: 2012200139,
专业:计算机科学与技术
年级: 10级计科3
指导教师:黄芙慧
基地指导教师:黄芙慧
2013年10 月
一、项目介绍与设计目的
本项目旨在通过一个简化的企业管理信息系统(Enterprise Management Information System,EMIS)项目,使学生在完成对C/C++程序设计语言和基本数据结构与算法课程的学习后,综合运用所学到的语法和算法知识,构建一个接近实际应用场景的软件系统,以达到复习和巩固前期课程内容并为后续课程奠定基础的目的。
通过本项目的实施,可以初步了解包括需求分析、概要设计、详细设计、开发计划、编码测试等环节在内的软件项目开发流程,以及相关技术文档的撰写规范,为以后从事软件项目研发工作增加实践经验。
二、设计方案
1.项目环境要求
硬件环境: 32 位 Intel?x86 及其兼容处理器的个人计算机?
操作系统: Fedora?Linux?R16?
开发工具: GCC?4.6.2,C/C++标准库(STD)及标准模板库(STL)?
应用类型:命令行应用程序?
用户界面:非全屏模式的控制台字符界面?
数据存储:二进制及纯文本文件?
2.项目功能模块
项目功能模块主要包括:部门管理和员工管理两部分功能。其中部门管理包括:增加部门、删除部门和生成部门列表等三项功能。而员工管理则包括:增加员工、删除员工、修改员工信息,以及生成员工列表等四项功能。
3.设计内容
本案在逻辑上可被划分为管理子系统和业务子系统两大模块,分别用于实现对管理员的管理和对部门及员工的管理功能。此外还需提供必要的数据存储策略,以实现对所有数据的持久化,其中:?
管理子系统:实现对管理员的管理功能。具体包括增加管理员、删除管理员、列出所有管理员。?
用户界面:显示主菜单、接受用户输入、向用户显示提示信息、处理结果和必要的反馈。? 业务逻辑:具体实现主菜单的各个功能项,以逻辑对象为载体,在用户界面和数据访问之间传递有关管理员的信息数据。?
数据访问:实现逻辑对象与数据存储之间的序列化与反序列化。?
逻辑对象:实现管理员对象的逻辑模型。?
业务子系统:实现对部门及员工的管理功能。具体包括增加部门、删除部门、列出部门、增加员工、删除员工、修改员工信息、列出部门员工、列出所有员工。?
用户界面:显示运营管理子菜单、接受用户输入、向用户显示提示信息、处理结果和必要的反馈。?
业务逻辑:具体实现运营管理子菜单的各个功能项,以逻辑对象为载体,在用户界面和数据访问之间传递有关部门及员工的信息数据。?
数据访问:实现逻辑对象与数据存储之间的序列化与反序列化。?
逻辑对象:实现部门及员工对象的逻辑模型。?
数据存储:实现整个管理信息系统的数据持久化。
三、总结和分析
通过本项目的实施,可以初步了解包括需求分析、概要设计、详细设计、开发计划、编码测试等环节在内的软件项目开发流程,以及相关技术文档的撰写规范,为以后从事软件项目研发工作增加实践经验。
本项目的研发旨在提供一种,建立在有限技术基础之上的,适度规模的,相对较接近于真实场景的,具有一定可扩展性的典型开发案例。以下几个方面共同构成本项目的研发重点:相对完整的项目开发流程:
本案基本采用传统意义上的瀑布式开发流程,从需求分析入手,到概要设计、详细设计,再到编码和测试。整个过程环环相扣,每一个步骤都严格依赖于前一个步骤的成果和结论。但在编码阶段,本案又结合具体项目的具体特点,引入了某些现代敏捷开发的思想和理念,以一种小幅渐进的方式,提高了可交付物的产出效率。?
多层次的体系与模型设计:
本案一方面在体系架构上采用了由用户界面、业务逻辑和数据访问共同组成的三层结构。同时又在每一层的内部自上而下地进行了从接口到实现再到逻辑对象的三层划分。高聚低耦乃是本项目的开发宗旨之一。?
多源文件系统的构建:
本案最终由多个.h和.cpp文件组成,通过makefile可以对工程的构建方式进行定制。这也是现实世界中常见的工程构建方式之一。一方面通过文件将逻辑层面彼此独立的类和函数组合进行物理层面的划分,另一方面又将类及函数的声明和实现分别放到.h和.cpp中,同时保持文件名的相关性。这样既有利于团队间的分工协作,又突出了相对稳定的接口定义在大型项目开发过程中的重要性。?
基于控制台的字符界面和基于文件的数据存储:
基于控制台的字符界面和基于文件的数据存储,虽然难度不大,但仍有许多细节需要考虑,比如,用户输入的数据不正确如何处理,数据文件损坏或尚未创建如何处理等。在项目开发的过程中越涉及到底层的细节,越需要谨慎对待。?
借助逻辑对象实现业务逻辑的算法与控制:
在三层体系架构中,业务逻辑层往往最复杂且不易调试。因其与具体业务相关,借助
C++语言的建模能力往往能达到事半功倍的效果。
指导老师评语:
成绩评定:
指导老师签名:
基地指导老师签名:
年月日
教研室意见
教研室主任签章
年月日
学院意见
分管院长签章
年月日