《信息系统开发实训》实训指导书.doc

上传人:小飞机 文档编号:1628798 上传时间:2022-12-12 格式:DOC 页数:34 大小:918.50KB
返回 下载 相关 举报
《信息系统开发实训》实训指导书.doc_第1页
第1页 / 共34页
《信息系统开发实训》实训指导书.doc_第2页
第2页 / 共34页
《信息系统开发实训》实训指导书.doc_第3页
第3页 / 共34页
《信息系统开发实训》实训指导书.doc_第4页
第4页 / 共34页
《信息系统开发实训》实训指导书.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《《信息系统开发实训》实训指导书.doc》由会员分享,可在线阅读,更多相关《《信息系统开发实训》实训指导书.doc(34页珍藏版)》请在三一办公上搜索。

1、黎明职业大学计算机与信息工程系信息系统开发实训实训指导书2011年11月目 录信息系统开发实训实训大纲3附件一:实训日志模板6附件二:实训报告模板7附录三:本项目的评分标准:9实训一 实训项目的选题与功能需求分析10实训二 数据库设计12实训三 公共数据处理类的创建15实训四 登录窗体与主界面17实训五 处理数据18实训六 维护数据22*实训七 帮助文档的制作与C#的调用25实训三 公共数据处理类的创建(数据访问层)27实训四 业务逻辑层的实现30实训五 表示层的实现(界面设计)33实训六 数据报表、统计与维护34信息系统开发实训实训大纲适用:计算机信息管理学时:60 学分2一、实训目的:信息

2、系统开发实训是计算机网络技术的重要实践环节。通过实训使学生能够更进一步的领会管理信息系统分析、设计与实现的基本知识,了解程序开发的一般过程,熟悉和掌握程序开发的基本流程和注意事项,培养学生综合运用所学知识分析和解决实际问题的能力,提高学生的综合设计和实践能力,为今后开发程序打下基础。二、实训内容和要求(一)实训内容1、用户需求分析 根据所选题目进行认真地需求分析,用户需求分析的信息包括: l 信息需求,用户要从数据库获得的信息内容。信息需求定义了新系统应该提供的所有信息;应描述清楚系统中数据的性质及其联系。 l 处理需求,即完成什么处理功能及处理的方式。处理需求定义了新系统数据处理的操作;应描

3、述操作执行的场合、操作对数据的影响等等。 l 安全性和完整性要求。在定义信息需求和处理需求的同时必须相应确定安全性、完整性。2、数据库结构的确定 、根据项目要求设计ER图、根据ER图设计数据库的关系模式、进行规范化处理后给出各关系之间的关联关系、能根据功能合理设计视图、存储过程与触发器、在DBMS(如SQL Server 2005)中建立数据库,并产生SQL脚本;3、系统总体方案设计 、画出详细的总体框图 、说明各模块的功能、建立某种形式的报表,实现对数据的统计与输出;4、程序设计部分 按总体方案设计与业务逻辑要求进行应用系统开发。要求: l 程序能正确运行l 用户界面友好l 程序功能完善l

4、程序可进行权限控制l 方便用户使用 *5、对于C/S应用系统:应能够生成应用程序和可执行文件,并在相应环境下正确运行;最终要求系统调试并打包成为最终软件可安装运行。B/S系统:应能正确配置站点提供服务。(二)实训总体要求1、实训以小组的形式进行,自由分组,每个小组不得多于4人。各小组在实训进行之前上报组长、成员及项目名称。2. 每个小组要根据实际开发内容进一步明确任务,小组组长负责工作安排,保证每个同学积极参与到项目开发过程。要有计划地定时定量地完成任务,体现出团队精神。3. 认真填写实训日志。4. 在开发各环节中撰写相关的技术文档,最后以小组为单位上交实训报告和源程序清单(以附录形式),正文

5、字数不少于2000字(不包括附录),要求层次清楚、整洁规范、不得相互抄袭,凡正文内容有整段相同者一律以作弊论处。5. 最后递交一个可以运行的系统。6. 明确实训的目的和重要性,认真领会实训的题目,读懂实训指导书的要求,学会设计的基本方法与步骤,积极认真地做好准备工作。7. 实训中,学会如何运用前修知识与收集、归纳相关资料解决具体问题的方法。三、先修课程信息系统分析与设计数据库原理与应用ASP.NET网站建设C#程序设计四教学时间参考分配表序号实训内容学时分配总学时理论学时实践学时1选题、需求分析、系统设计结合在系统分析与设计课内完成2ADO.net核心对象介绍4223ADO.NET调用带参数的

6、SQL语句或存储过程6334数据库设计122105公共数据处理模块6156登录窗体与主界面/首页实现6247具体功能模块的实现与测试14148系统测试、填写实训报告669总结与答辩66合计601644五考核办法由指导教师根据学生完成实训任务的情况(实训报告的质量10%,答辩情况10%,实训过程中的工作态度20%,系统开发情况60%)综合打分。成绩评定实行优秀、良好、中等、及格和不及格五个等级。优秀者人数一般不超过总人数的20%。其中工作态度考核内容包括:是否按进度要求完成实训科目;是否认真填写实训日记;是否能与教师、同学较好沟通过等。六、参考文献1数据库系统概论王珊,萨师煊编著 高等教育出版社

7、 2管理信息系统开发技术 宁书林等编著 北京理工大学出版社 3ASP.NET 2.O数据库开发实例精粹 郭瑞军等编著 电子工业出版社 4Visual C# 2008数据库编程实训教程 李志中编著 清华大学出版社附件:1实训日志模板2课程实训报告模板3评分标准附件一:实训日志模板实 训 日 志实训日期实训地点实训题目实训目的实训环境实训内容及步骤体会与建议教师评语附件二:实训报告模板黎明职业大学课程实训报告 题目: (项目名称) 系 别: 计算机与信息工程系 专 业: 计算机信息管理 年 级: 2009 学 号: 姓 名: 任课教师: 填写日期 2011 年 月 日摘 要关键字正文 (本部份另取

8、一页开始)1、正文内容:完成作业的计算机环境(软硬件配置)硬件、软件:项目名称:(1)综述:项目提出及要解决的问题,设计思想;(2)项目要实现的主要功能概要说明完成该项目各组成部分的名称及其主要功能。及各部分之间的关系;(3)数据库设计的ER图,数据库、表的结构(4)实现功能的展示该项目使用说明:输入操作、各功能使用、输出操作的提示。(5)测试中发现的问题(6)课程设计的心得体会(7)参考书目2、格式(1)文档版式:A4,页边距:上下为2CM、左右为3CM(2)字体:宋体 五号字(3)1.5倍行距附录三:本项目的评分标准:系统开发实训评分标准及评分表项 目评 分 细 则 及 标 准得分用户需求

9、分析进行了详细的用户信息需求和处理需求分析(3分)对用户的安全性和完整性要求进行了详细的分析(2分)数据库模式的设计数据库模式的设计能满足用户的信息需求(5分)数据库的完整性数据库模式考虑了数据库的实体完整性、域完整性和关联完整性控制;能正确地进行数据记录的录入、更新和删除(5分)数据库的查询可进行指定数据库的简单查询(5分)可进行多库之间的连接查询(5分)数据库的统计能按用户的要求进行各种数据的统计及打印出统计报表(5分)数据库编程能合理使用视图、存储过程和触发器(5分)应用软件的功能模块程序能正确运行、可进行权限控制(5分)应用软件的功能合理、完善,达到用户的处理需求(5分)应用软件的界面

10、合理友好、用户操作方便(5分)错误处理具有一定的容错性,当系统出错时,能自己处理而不是交给系统(5分)软件的打包与安装应用软件能够正确的打包和安装,并能脱离开发平台正确运行(5分)讲解与回答问题对应用软件的设计思路做总体描述,要求思路清楚,叙述流畅;软件操作熟练;能正确回答老师的提问。(10分)工作量完成基本工作量可得5分,多或少可酌情增减分,最高加到10分。设计说明书设计文档按要求,格式规范、内容完整、正确,可得(10分)项目参与课程设计期间满勤(无迟到、早退、旷课)得(10分);迟到、早退一次扣1分,旷课一次扣2分,扣完10分止实训一 实训项目的选题与功能需求分析一.实训项目选题 选择一个

11、进销存管理系统作为本次实训的题目。如果对于进销存管理系统的业务流程不是十分清楚,也根据自已熟悉的领域,选择一个合适的信息管理系统作为本次实训的题目。二.功能需求分析1 进销存系统常见的功能性需求分类功能类别功能名称、标识符描述用户登录用户登录对用户输入的用户名,密码进行验证,验证通过后,该用户可以使用PSS系统中自己拥有权限的那部分功能,否则拒绝使用。维护基本资料销售员资料维护用户修改,删除,新增或查询销售员数据,系统根据用户的操作,对销售员资料进行更新或显示。商品资料维护用户修改,删除,新增或查询商品数据,系统根据用户的操作,对商品资料进行更新或显示。客户资料维护用户修改,删除,新增或查询客

12、户数据(其中包括对客户的联系人的修改,删除,新增与查询以及对客户交易记录的查询),系统根据用户的操作,对商品资料进行更新或显示。供应商资料维护用户修改,删除,新增或查询供应商数据(其中包括对供应商的联系人的修改,删除,新增与查询以及对供应商交易记录的查询),系统根据用户的操作,对供应商资料进行更新或显示。采购采购入库用户通过录入采购入库单增加采购的货物,并可对采购入库单及其单据中的货物明细进行修改、删除与查询。采购退货用户录入通过采购退货单退回货物,并可对采购退货单及其单据中的货物明细进行修改、删除与查询。销售销售出库用户通过录入销售出库单记录销售的货物,并可对销售出库单及其单据中的货物明细进

13、行修改、删除与查询。销售退货用户通过录入销售退货单退回已销售货物,并可对销售退货单及其单据中的货物明细进行修改、删除与查询。库存库存查询用户通过组合不同条件,对库存进行查询、盘点。维护系统维护用户资料拥有系统维护权限的用户可以增加新用户,并可以对用户的资料进行修改、删除以及查询。管理用户权限拥有权限管理的用户可以设定其他用户对软件的访问权限。修改密码用户重新设定自己的密码报表导出导出库存预警库存量低于安全存量的商品系统向用户提供警示信息,以提醒用户及时进货。用户也可将警示信息导出到Excel中。导出商品资料将商品资料信息导出到Excel中。导出采购报表按日期或用户定义的汇总方式对采购信息进行汇

14、总,并将汇总结果导出到Excel中。导出年采购报表根据年度汇总采购支出金额,并按月分将其导出在Excel中。2 根据所选择的系统仔细分析系统的功能,然后画出系统的模块功能结构图3 画出系统的数据流程图或用例图实训二 数据库设计数据库设计是本实训的基础,只有在需求分析的基础上合理设计所需的数据库,才有可能完成本实训。关于数据库的设计可分为以下几个步骤:画出ER画、ER图转化成关系模型、创建数据库、实现完整性约束与一致性约束、创建索引与视图、创建触发器、创建存储过程,最后编写相应的文档。步骤一、画ER图为了减轻学生的负担,本实训给定了一个中文版的NorthWind数据库(是SQLserver附带的

15、比较完善的进销存数据库),学生可以在分析此数据库特征的基础上,画出自己所选系统的数据库的ER图,NorthWind的数据库关系图如下所示:图2 NorthWind数据库关系图注:以上图形是数据库关系图而不是ER图,请同学按照上学期实训所学的Visio软件,建立ER图。步骤二、创建数据库根据每位同学所画的ER图,创建数据库,同时确定每一张表的主键;步骤三、实现完整性约束与一致性约束完整性:根据ER图,建立表间的主从关系,以实现数据库的完整性;SQLservernorthwind新建数据库关系图添加表从主表拖动主键到从表出现下图对话框选择相应的键确定(图2所示)图3一致性:在SQLserver中实

16、现表间的级联删除、级联更新关系;图2按“确定”后,出现图3的对话框,把“更新规则”和“删除规则”均设为“层叠”即可保证数据库的一致性。图4步骤四、创建索引与视图 创建索引与视图可以提高查询速度(本步骤可有可无)步骤五、创建触发器(本步骤可有可无,视具体系统而定)步骤六、创建存储过程如创建“增加产品”的存储过程的代码如下:Create Procedure InsertChanPinDataP_name NVarChar(40),G_ID int,L_ID int,P_DanWeiShuLiang NVarChar(20),P_danjia money,P_KuCun smallint,P_Din

17、gGou smallint,P_ZaiDing smallint,P_zhongZhi bitASInsert Into 产品 Values(P_name,G_ID,L_ID,P_DanWeiShuLiang, P_danjia,P_KuCun,P_DingGou,P_ZaiDing,P_zhongZhi)RETURN rowcount上篇 C/S应用程序开发实训三 公共数据处理类的创建一、定义数据库连接SqlConnection luocon = new SqlConnection(Data Source=.;Initial Catalog=JWInfo;Integrated Securit

18、y=True);二、数据处理公共类所包含的常用的方法:执行select 查询语句的方法,返回数据集 public DataSet gettabledata(string strsql) SqlDataAdapter da = new SqlDataAdapter(strsql , luocon ); DataSet ds = new DataSet(); da.Fill(ds); return ds; 执行带参数数组的存储过程的方法 public int Exec_sql(string strsql, SqlParameter paras) luocon.Open(); SqlCommand

19、cmd = new SqlCommand(strsql, luocon); cmd.CommandType = CommandType.StoredProcedure; if (paras != null) foreach (SqlParameter P in paras) cmd.Parameters.Add(P); return cmd.ExecuteNonQuery(); luocon.Close(); 执行不带参数 增加、删除、修改、建表的SQL语句的方法 public int Exec_sql(string strsql) luocon.Close(); luocon.Open();

20、 SqlCommand cmd = new SqlCommand(strsql, luocon); return cmd.ExecuteNonQuery(); luocon.Close(); 执行带统计功能的SQL语句的方法 public int Exec_Scalar(string strsql) luocon.Close(); luocon.Open(); SqlCommand cmd = new SqlCommand(strsql, luocon); return Convert .ToInt32(cmd.ExecuteScalar().ToString(); luocon.Close(

21、); 执行存储过程,返回SqlCommand的方法private SqlCommand CreateCommand(string ProcName, SqlParameter Prams) Open(); SqlCommand Cmd = new SqlCommand(ProcName, Connection); Cmd.CommandType = CommandType.StoredProcedure; if (Prams != null) foreach (SqlParameter Parameter in Prams) Cmd.Parameters.Add(Parameter); ret

22、urn Cmd; 实训四 登录窗体与主界面1.windows桌面应用程序的常见登录窗体及其代码图4“确定”按钮的基本代码:private void OK_Click(object sender, EventArgs e) if (username.Text =) MessageBox.Show(用户名不能为空); else if (password.Text = ) MessageBox.Show(密码不能为空); else DataSet ds = new DataSet(); ds = mydb.gettabledata(select * from 用户 where 用户名= + user

23、name.Text + and 密码= + password.Text + ); if (ds.Tables0.Rows.Count = 0) MessageBox.Show(用户名或密码不正确); else FrmMain FM = new FrmMain(); FM.Show(); this.Hide(); 思考以下问题: 如果想实现验证码,如何做? 如果用户有超级用户与普通用户之分,两者能访问的模块有所区别,则如何处理?每位同学对主界面的设计不可能一样,请大家自已设计实训五 处理数据一. 基本信息维护常见的基本信息处理的界面如及功能如下图2所示,本实训指导书中给出了对于“产品”表进行增、

24、删、改、查询等基本功能的代码,在实训过程中,同学可以根据自己所选择的题目适当调整功能。图51.查询处理加载查询依据(表字段)要实现查询功能,一般在Form一加载时即把表的字段名加载到Combobox中,用户可以选择任何一个字段作为查询依据,所以首先要实现加载字段名的问题,常见的代码如下:DataSet ds = new DataSet(); ds = mydb.gettabledata(SELECT name FROM sys.syscolumns WHERE (id = OBJECT_ID(产品) ); for (int i = 0; i ds.Tables0.Rows.Count - 1;

25、 i+) ComboBox1.Items.Add(ds.Tables0.Rowsi0.ToString(); DataSet ds1 = new DataSet(); ds1 = mydb.gettabledata(select * from 产品); dataGridView1 .DataSource = ds1.Tables 0;实现查询功能参考代码如下:DataSet ds2 = new DataSet(); ds2 = mydb.gettabledata(select * from 产品 where + ComboBox1.Text + like % + TextBox1 .Text

26、+%); dataGridView1.DataSource = null ; dataGridView1 .DataSource =ds2.Tables 0;其中:mydb是数据处理类的对象,gettabledata是数据处理类中的自定义方法(见实训三的2.)。2.删除处理删除时一般先选择DataGridView的某一行或某几行,然后删除。删除的原理是先把物理表的字段加载到一个数据集DS中,然后根据用户选定的DataGridView行号或关键字段的值,删除数据集的某一行或某些行,然后把数据集回写到数据表中。 删除常见的有两种方法:一是使用DataSet和SqlDataAdapter实现删除功能

27、;二是直接使用SQL语句或存储过程实现删除功能。使用DataSet和SqlDataAdapter实现删除功能的通用代码如下:try SqlDataAdapter da = new SqlDataAdapter(select * from 学生信息, mydb.luocon); DataSet ds = new DataSet(); SqlCommandBuilder cb = new SqlCommandBuilder(da); da.Fill(ds); if (MessageBox.Show(真的要删除吗?, 提示, MessageBoxButtons.OKCancel) = DialogR

28、esult.OK) for (int i = 0; i ds.Tables0.Rows.Count; i+) if (dataGridView1.Rowsi.Selected = true) ds.Tables0.Rowsi.Delete(); MessageBox.Show(删除成功); da.Update(ds); dataGridView1.DataSource = ds.Tables0; catch MessageBox.Show(删除失败); 直接使用SQL语句或存储过程实现删除功能try for (int i = 0; i dataGridView1.Rows.Count - 1;

29、 i+) if (dataGridView1.Rowsi.Selected = true) int ChanPinID = Int32.Parse(dataGridView1.Rowsi.Cells0); int m = tdb.Exec_str(delete from 产品 where 产品ID= + ChanPinID); MessageBox.Show(删除成功); catch MessageBox.Show(删除失败); 3.增加记录增加记录的常见有两种方法,一是使用DataSet和SqlDataAdapter实现删除功能;二是直接使用SQL语句或存储过程实现删除功能。使用DataSe

30、t和SqlDataAdapter实现增加功能,该方法的原理与删除操作十分类似,先是加载数据集,然后向数据集增加一条记录,最后回写到物理表中,参考代码如下:SqlDataAdapter da = new SqlDataAdapter(select * from 产品, tdb .luocon ); SqlCommandBuilder cb = new SqlCommandBuilder(da); DataSet ds= new DataSet(); da.Fill (ds); DataRow dr = ds.Tables0.NewRow(); dr0 = 产品名称TextBox.Text; dr

31、1 = 供应商IDTextBox.Text; 。 try ds.Tables0.Rows.Add(dr); da.Update(ds); MessageBox.Show(添加成功); catch MessageBox.Show(添加失败); 使用存储过程实现删除功能,此方法必须先创建删除的存储过程,接着编写能够执行删除操作的方法(可使用实训三的),最后调用该方法来执行存储过程。参考代码如下:SqlParameter mypara = new SqlParameter9; mypara0 = new SqlParameter(Number, SqlDbType.NVarChar, 4); myp

32、ara1 = new SqlParameter(Name, SqlDbType.NVarChar, 40); mypara0.Value = 产品IDTextBox.Text; mypara1.Value = 产品名称TextBox.Text; int k= Sdb.Exec_pro(add_product, mypara ); if (k = 0) MessageBox.Show(添加失败); else MessageBox.Show(添加了一条记录);实训六 维护数据维护数据的操作一般包含数据的导入、导出、数据备份、数据还原等功能。1. 从SQL表导出到Excel表try int row

33、, col ; bool IsOnlyVisible= true ; Excel .Application myexcel= new Excel.Application (); myexcel .Application .Workbooks.Add (true ); col = 1; for (int n=0; ndataGridView1 .ColumnCount -1; n+) if (IsOnlyVisible ) if (dataGridView1 .Columnsn.Visible ) myexcel .Cells 1,col = dataGridView1 .Columnsn.He

34、aderText ; col = col+1; else myexcel .Cells 1, n+1= dataGridView1 .Columns n.HeaderText ; row =2; for (int i=0; idataGridView1 .RowCount -1; i+) col =1; for (int j=0; jdataGridView1 .ColumnCount -1; j+) if (IsOnlyVisible ) if (dataGridView1 .Columnsj.Visible ) myexcel .Cells i+2, col = dataGridView1

35、.Rows i.Cells j.Value .ToString (); col =col +1; else myexcel .Cells i+2, j+1=dataGridView1.Rows i.Cells j.Value.ToString () ; myexcel.Visible = true ; catch (Exception ex) throw ex; 2. 数据备份图6try string strBacl = backup database db_CSManage to disk= + txtPath.Text.Trim() + + txtName.Text.Trim() + .bak; int i = sdb.Exec_str(strBacl);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号