诊所信息管理系统设计报告【c++课程设计】
(1)在一条医生记录中,包括医生的专业说明(specialty),如内科医生(surgeon)、儿科医生(pediatrician) 、产科医生(obstetrician)及全科医生(general practitioner)。 (2)Doctor记录还含有诊费(off_vist_fee)。 (3)在一条患者记录中,包括该患者产生的药费(drug_fee) ,患者的诊费(即医生的诊费)。 (4)在一条账单记录中,包括一条患者对象、该患者对应得主治医生、该患者产生的诊费和药费。 (5)应用程序能够显示出诊所中每个患者的信息和对应主治医生的信息。 (6)能够统计出所有患者的总费用。 (7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 (9)普通用户只能查询医生信息--不用登陆,要想维护该系统需要管理员登陆。【自己额外增加的功能】 ### 诊所信息管理系统设计报告知识点解析 #### 一、项目背景与目标 - **课程设计目的**:本项目旨在帮助学生巩固面向对象编程的基础知识,尤其是C++语言,并通过实践来提升他们的综合技能。具体包括: - 巩固面向对象程序设计知识,增强学生的实践能力和综合素质。 - 培养学生运用面向对象方法进行设计和开发的能力,并熟悉至少一种编译器的使用。 - 提高学生分析和解决实际问题的能力。 - **实验目的**:实现一个小型诊所信息管理系统,重点在于掌握类的设计方法以及继承和派生机制的应用。 #### 二、技术栈与环境配置 - **软件环境**:Visual Studio 2015 和 StarUML。 - **硬件环境**:便携式计算机。 #### 三、系统总体设计 - **问题描述**:设计一个信息管理系统,用于管理诊所的医生、患者和账单等信息。 - **功能需求**: - **医生信息管理**:存储医生的专业领域和诊费等信息。 - **患者信息管理**:记录患者的药费和诊费。 - **账单管理**:包含患者信息、主治医生信息、药费和诊费等。 - **信息展示**:显示每个患者的详细信息及其对应的主治医生。 - **费用统计**:汇总所有患者的总费用。 - **数据持久化**:支持数据的保存和读取功能。 - **访问控制**:区分普通用户和管理员,前者仅能查询医生信息,后者具有系统维护权限。 - **设计思路**: - 进行系统分析,设计系统框架和用户界面。 - 分析系统实体及其关系。 - 构建系统流程图。 - 定义系统中的各个类及其属性和方法。 - 实现类的功能。 - 编写并调试代码。 - 编写课程设计报告。 - **类模块设计**: - **基础类**: - `Person` 类:定义了姓名、性别、年龄等基本属性。 - **继承类**: - `Doctor` 类:继承自 `Person` 类,增加了专业领域和诊费属性。 - `Patient` 类:继承自 `Person` 类,包含了药费和诊费属性。 - **组合类**: - `Bill` 类:组合了 `Patient` 类的对象,并增加了主治医生信息、药费和诊费等。 - **类关系**: - `Patient` 类继承自 `Person` 类。 - `Doctor` 类继承自 `Person` 类。 - `Bill` 类组合了 `Patient` 类。 - **成员函数**: - `Doctor` 类:增加、查询和显示医生信息。 - `Patient` 类:增加、查询和显示患者信息。 - `Bill` 类:增加、查询和显示账单信息;统计所有患者的总费用。 - **结构设计**: - **系统流程**:包括登录、查询、添加等功能模块。 - **界面设计**:分为普通用户界面和管理员界面。 - **代码设计特点**: - 用户界面友好,采用清屏函数提高用户体验。 - 界面函数独立,增强代码可读性和减少冗余。 - 在增加账单时自动更新患者信息。 - **StarUML图形设计**:使用用例图来描述用户与系统功能的关系。 #### 四、总结 该项目通过设计一个完整的诊所信息管理系统,不仅让学生掌握了面向对象编程的基本原理和技术,还锻炼了他们分析问题、设计解决方案的能力。此外,通过具体的代码实现和功能测试,进一步加深了对C++语言的理解和应用能力。
剩余34页未读,继续阅读
- 粉丝: 29
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助