《软件
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
》实践报告
准考证号:
考生姓名:
一.实验目的
软件工程是一门实践性很强的计算机专业课程, 该课程的任务是使我们掌握软件工程的基本概念、基本原理、实用的开发方法和技术 。了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,在开发过程中应遵循的流程,准则,
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
和
规范
编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载
。注重方法、技术的实际应用。在上机实践考核中,为培养考生良好的学习与工作作风。要求考生按一定的规范进行上机前的考核准备。熟悉软硬伯环境。上机调试和正确运行程序,以及提交实践考核报告。上机实践考核的述记在机器环境上调试、运行程序和产生正确的结果,。但准备阶段和整理实践报告也十分重要,只有做好充分的准备,熟悉机器及环境,尽可能的正确编码,才能高效率地利用机时。在书写报告时,必须依照
规定
关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定
的格式整理好文档资料,为考生将来从事于软件 开发和研制工作,打下一个坚实的基础。
二.实验环境
1. 硬件环境:
CPU: Pentium 1.8GHz
内存: 512M
硬盘: 40G (局域网)
2.软件环境:
操作系统:Windows 2000
开发工具:Microsoft Visual C++ 6.0
数据库 : Microsoft Access
三. 实践内容
3.1 需求说明书
3.1.1 概述
1. 项目背景
科学技术日新月异的进步,让人类生活发生了巨大的变化,计算机技术的飞速发展,21世纪是信息的社会,而计算机在数据信息处理上有着很大优越性。学生成绩管理是学校的一项重要工作,原有的人工管理存在这着很多不足,造成不足的原因是,在校学生人数众多,并且每个学生的信息过于复杂,从而工作量非常大,给查询、添加、修改、统计、删除成绩带来了不便。因此,如何解决这些不足,使成绩管理更快捷、更方便,具有更高的效率也就成了一个关键问题。随着科学技术的迅速发展学校成绩管理的自动化也越来越迫切,因此有必要开发成绩管理系统的软件系统来辅助学校的教学管理。
2. 目标
软件的目标:实现学生信息数据处理的自动化与智能化。
3. 用户特点
a) 掌握计算机基本操作。
b) 学校老师(可选)
4. 假定与约束
无
3.1.2 具体要求
1. 功能需求
对用户所提需求进行梳理后,将用户需求划分如下:
数据输入功能:可输入班级学生信息包括成绩。
数据保存功能:可保存学生信息。
数据修改功能:对学生信息进行更新修改。
数据删除功能:对学生进行删除。
数据查询功能::对学生信息进行详细查询和模糊查询。
数据统计功能:对学生平均成绩统计,对单科成绩统计,对学生班级成绩进行统计等。
数据打印功能:将查询的结果按一定报表格式进行打印。
系统设置功能:设置系统登陆时的用户名和密码,并对用户名和密码可重设。
2. 外部接口
无
3. 性能需求
1) 数据库
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
容量不小于10万条。
2) 数据库实时性要高。
4. 数据需求
1)数据为学生基本信息,没有特殊数据或字段。
5. 产品化需求
无
3.1.3 运行环境规定
1. 硬件设备:
CPU:P4或P4以上
内存:256M
硬盘:20G或20G以上
2. 支持软件
系统:Windows 2000 或 Windows XP
数据库:Microsoft Access
3.2 设计说明书
3.2.1 概要设计说明书
1. 总体设计
学生成绩管理系统是专为教务工作者设计开发的,具有很强的专用性。由于系统功能比较简单,并且系统处理的数据量不是很大,故设计开发时采用微软的Access数据库。微软的Access数据库在小型数据库系统比较常用,Access是实时性较高的数据库之一,存储速度快,查询效率高。考虑到数据查询的实时性,主程序采用比较常用的ADO数据库访问技术,ADO是微软访问为自已数据库,而专门开发的数据库访问引擎,与Access数据库配合使用具有无缝连接性能,主程序界面开发采用自己比较熟悉的Microsoft Visual C++ 6.0 + SP6。
2. 模块设计
系统按用户需求说明书,可划分成如下功能:
a) 数据输入功能
b) 数据保存功能
c) 数据修改功能
d) 数据删除功能
e) 数据查询功能
f) 数据统计功能
g) 数据打印功能
h) 系统设置功能
系统结构图如下:
3. 数据结构设计
1) 在开发过程中要使用到数据库,需要创建数据库,并在数据库中创建表和视图。表的字段包含如下:
数据库名称:XCSJ.mdb
学生信息表
学号
姓名
出生日期
英语
数学
语文
历史
总成绩
平均成绩
S001
张三
1986-2-22
80
80
90
90
85
管理员信息表
编号
用户名
密码
2) 以C/C ++程序结构为基础,按照模块化思路进行设计,使程序易编写,易维护。确定程序主接口和接口设计方案,多应用现有或成熟的方案。
3) 编码时一定要严格遵守编程规范,命名标准,注释通俗易懂,排版注释量在20%以上,在保证系统编码的正确性、稳定性、可读性的前提下,提高代码效率。
4) 个人必需对所编写的代码进行单元测试。以减少集成测试时的问题,提高软件开发效率,加快软件开发进度。
3.2.2 详细设计说明书
1.引言
1) 编写目的
本说明书是对学生成绩管理系统详细设计的描述,读者为代码编写人员。
2)项目背景
软件名称:学生成绩管理系统
软件用户:教务工作者、
软件运行单位:学校
软件开发方:个人
3)参考资料
设计说明书中“概要设计说明”部分。
4)术语
无
2.软件结构
软件结构按系统功能需求划分成如下模块:
1) 系统设置模块
对管理员的用户名和密码进行管理,可增加、删除用户,可对管理员的
用户名和密码进行修改。
2) 系统数据输入模块
输入学生信息后,就检查学生信息的唯一性,检查输入学生信息各字段
信息的正确性。
3) 系统数据保存模块
可将管理员信息保存到数据库的管理员信息表中,也可将学生信息保存
到数据库的学生信息表中 。
4) 系统数据修改模块
输入要修改的记录的学号后,可对已输入的学生信息进行修改与更新,
并检查输入学生信息各字段信息的正确性。
5) 系统数据删除模块
输入要删除记录的学号,在删除前应提示用户是否要删除此记录,在用户
确认删除后,才可进行删除操作。
6) 系统数据查询模块
数据查询方式应灵活,应设立按照学号、姓名、出生日期及各科成绩进
行查询的程序,可使用模糊查询。
7) 系统数据统计模块
对学生的总成绩、平均成绩进行统计。统计时提示“正在进行统计,请
等待……”,统计完成后应提示“统计完成,请查阅”。
8) 系统数据打印模块
按照设计的报表,编写“学生成绩管理表”打印程序,按一定格式显示
报表数据。
3.模块设计说明
1) 主程序模块:
主程序模块界面设计如下:
编写程序时注意:ADO库的引入
(1)、引入ADO类
#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename ("EOF", "adoEOF")
(2)、初始化COM
在MFC中可以用AfxOleInit();非MFC环境中用:
CoInitialize(NULL);
CoUnInitialize();
源代码清单
//------------- .h 文件--------------------
// 学生成绩管理系统2View.h : interface of the CMy2View class
//
class CMy2Set;
class CMy2View : public CRecordView
{
//只显示自己写的代码,不显示VC++自己生成的代码
protected:
afx_msg void OnButtonQuery();
afx_msg void OnRecAdd();
afx_msg void OnRecDel();
afx_msg void OnRecEdit();
afx_msg void OnChangeEditQuery();
afx_msg void OnButtonQuery2();
afx_msg void OnStatic0();
};
//---------------------. cpp文件----------------------------------
//“数据查询”按钮响应函数
void CMy2View::OnButtonQuery()
{
// TODO: Add your control notification handler code here
UpdateData();
m_strQuery.TrimLeft(); //左对齐
if(m_strQuery.IsEmpty()) //编辑框中为空时
{
MessageBox("号码不可为空!"); //未填入学号时提示
return;
}
if(m_pSet->IsOpen())
m_pSet->Close(); //如果记录集打开,则先关闭
m_pSet->m_strFilter.Format("ID='%s'",m_strQuery);//查询条件
m_pSet->m_strSort="id"; //按id由大到小排序
m_pSet->Open();
if(!m_pSet->IsEOF()) //打开记录集有的数据
UpdateData(FALSE); //更新表单数据
else
MessageBox("无此学号记录!"); //无此学号时提示
}
//“数据修改”按钮响应函数
void CMy2View::OnRecAdd()
{
// TODO: Add your control notification handler code here
CScoreDlg dlg; //定义对象
if(dlg.DoModal()==IDOK)
{
m_pSet->AddNew(); //添加数据与数据库的对应
m_pSet->m_id =dlg.m_id2; //学号
m_pSet->m_name =dlg.m_name2; //名字
继续阅读