还剩21页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
学号0120810340929课程设计题目资产管理系统软件设计学院计算机科学与技术专业计算机科学与技术班级计算机0809姓名娄俊凯指导教师汪祥莉2012年01月10日目录TOC\o1-3\h\z\u题目资产管理系统软件设计
31.系统描述
41.1目的
41.2设计原理及开发平台
42.系统分析
42.1资产管理流程图
42.2系统功能结构图
53.数据库设计
53.1数据表设计
53.2数据库关系图
63.3数据表内容
63.
3.1资产信息表
63.
3.2员工表
63.
3.3用户表
74.系统设计
74.1程序主文件架构
74.2资产处理文件架构
74.3员工信息文件架构
85.运行结果
85.1程序登录
85.2主窗口
105.3资产信息
105.4资产处理
115.
4.1增加资产
115.
4.2修改资产
125.
4.3减少资产
125.5员工信息
135.
5.1员工信息主界面
135.
5.2增加员工信息
135.
5.3修改员工信息
145.
5.4删除员工信息
145.6返回登录
155.7退出系统
156.主要代码
166.1数据库连接相关代码
166.2数据库操作相关代码
166.
2.1验证用户名相关代码
166.
2.2增加数据操作相关代码
176.
2.3修改数据操作相关代码
186.
2.4删除数据操作相关代码
197.软件评估208结论及心得体会20附录21F1参考文献21课程设计任务书学生姓名娄俊凯专业班级计算机0809指导教师汪祥莉工作单位计算机学院题目资产管理系统软件设计初始条件一个公司希望为管理它的每批资产(如PC机、打印机、汽车、桌子、椅子等)建立一个数据库资产被分为几类,如计算机和设备一个资产被分配给一个员工财务人员要检查每批资产的现有市场价值,并记录下日期和现有价值公司也许会决定卖掉现有资产同样,每批资产都要进行维护预备内容数据结构,软件工程,面向对象程序设计,数据库技术,编译原理,可视化编程要求完成的主要任务
1.根据上述的初始条件,进行调查分析并设计适当的属性设计系统总体方案并用UML加以描述,设计体系架构,确定计算模式,确定开发技术,设计一个资产管理数据库,实现资产分类、分配等相关信息的管理,DBMS可选SQLServer
2005、ORACLE、DB
2、XML、MYSQL等
2.基于该数据库,实现应用程序,程序设计语言(工具)使用C#.NET2010/2008/Eclipse/Jbuilder
3.完成课程设计说明书,其格式遵守学校今年的新规定主要内容包括应用软件系统分析,设计,实现,评估等时间安排本学期第17-19周
1.查阅、消化资料,系统调查2天
2.系统分析采用UML工具3天
3.总体设计,实施计划采用UML工具3天
4.系统开发与实现用指定语言工具5天
5.撰写报告2天指导教师签名2011年12月23日系主任(或责任教师)签名年月日资产管理系统软件设计
1.系统描述
1.1目的运用所学的知识,通过对资产管理系统的设计,实现对C#编程语言和SQLServer数据库的综合应用,加强对软件工程设计思想的理解,进一步实现对UML建模语言的熟练应用;C#编程的语言的使用,掌握一种新的语言,增强编程能力;SQLServer的使用,能更加了解数据库的应用;通过VisualC#与SQLServer的结合,既学到了一门新的编程语言——C#,又很好的对数据库查询、删除、修改等数据库操作相关语句的内容进一步加深了理解
1.2设计原理及开发平台利用软件工程的思想,对设计系统的总体方案用UML加以描述,设计体系架构,确定计算模式利用C#的面向对象编程语言,结合SQLServer数据库管理软件进行管理系统的开发操作系统Windows7开发平台VisualStudio
2008、SQLServer2005语言C#
2.系统分析
2.1资产管理流程图
2.2系统功能结构图
3.数据库设计
3.1数据表设计user表,用于存储登录用户名密码资产信息表assets员工表staff
3.2数据库关系图Assets表通过外键使用员工号和staff表相连接
3.3数据表内容
3.
3.1资产信息表
3.
3.2员工表
3.
3.3用户表
4.系统设计
4.1程序主文件架构
4.2资产处理文件架构
4.3员工信息文件架构
5.运行结果
5.1程序登录数据库中保存了的用户名为123,密码为123的用户,使用此帐号登录,登录成功如果不输入用户名、密码直接登录,出现提示,如下图当输入的用户名、密码错误时,清空文本框,如下提示
5.2主窗口当登录成功点击确定后进入主窗口,如图
5.3资产信息在主窗口点击资产信息可以预览到所以资产分类、维护以及被使用的信息,如图
5.4资产处理如果要对资产进行处理,点击主窗口的资产处理可以得到如下界面
5.
4.1增加资产在文本框里输入相应的信息进行资产的增加操作,点击增加资产按钮,增加成功有一下提示,如图点击确定按钮,可以看到数据表中信息已经更新
5.
4.2修改资产进行资产价值评估以及维护后,都需要对资产的信息进行修改,在数据框中点击任意资产的一个单元格信息,会出现在文本框中,然后进行修改,点击更新资产信息按钮,修改成功有以下提示,如图点击确定按钮,可以看到数据表中信息已经更新
5.
4.3减少资产当公司变卖了资产后,就需要删除此条资产信息,在数据框中点击任意资产的一个单元格信息,会出现在文本框中,然后进行删除,点击减少资产按钮,删除成功有以下提示,如图点击确定按钮,可以看到数据表中信息已经更新
5.5员工信息
5.
5.1员工信息主界面如果要对员工信息进行处理,点击主窗口的员工信息可以得到如下界面
5.
5.2增加员工信息当需要增加员工时,在文本框中输入相关信息,点击增加按钮,添加成功有如下提示点击确定按钮,可以看到数据表中信息已经更新
5.
5.3修改员工信息当员工信息需要修改时,在数据框中点击任意资产的一个单元格信息,会出现在文本框中,然后进行修改,点击修改按钮,修改成功有以下提示,如图点击确定按钮,可以看到数据表中信息已经更新
5.
5.4删除员工信息当员工辞职或者其他原因需要删除员工信息时候,在数据框中点击任意资产的一个单元格信息,会出现在文本框中,然后进行修改删除,点击删除按钮,删除成功有如下提示,如图点击确定按钮,可以看到数据表中信息已经更新
5.6返回登录当点击返回登录按钮时候,返回到登录界面
5.7退出系统当操作结束需要退出时候,点击退出按钮或者右上角的X,有如下提示,点击“是”退出应用程序
6.主要代码
6.1数据库连接相关代码classDBConnection{//定义MyConnection方法,用户在使用时只需调用这个方法就可以连接数据库publicstaticSqlConnectionMyConnection//建立一个静态方法{//返回数据库连接字符串returnnewSqlConnectionserver=WIN-7SGESPPEL05\\SQLEXPRESS;database=assetsmana;uid=sa;pwd=123456;}}classDBOperate//数据库操作{publicstaticSqlConnectionconn;publicintOperateDatastringstrSql{conn.Open;SqlCommandcmd=newSqlCommandstrSqlconn;inti=intcmd.ExecuteNonQuery;conn.Close;returni;}}
6.2数据库操作相关代码
6.
2.1验证用户名相关代码stringname=username.Text.Trim;stringpwd=password.Text.Trim;SqlConnectionconn=PMSClass.DBConnection.MyConnection;conn.Open;SqlCommandcmd=newSqlCommandselect*from[user]where用户名=+name+and密码=+pwd+conn;SqlDataReadersdr=cmd.ExecuteReader;sdr.Read;ifsdr.HasRows{……}
6.
2.2增加数据操作相关代码privatevoidstaffadd_ClickobjectsenderEventArgse{try{//实例SqlConnection对象打开数据库连接SqlConnectionconn=newSqlConnection;conn.ConnectionString=Server=WIN-7SGESPPEL05\\SQLEXPRESS;uid=sa;pwd=123456;database=assetsmana;conn.Open;stringSqlIns=insertintostaffvalues+staffID.Text++staffname.Text++staffsex.Text+;//创建SqlCommand对象实例SqlCommandcommand=newSqlCommand;//设置SQL语句command.CommandText=SqlIns;//调用打开数据库连接方法command.Connection=conn;//执行添加数据command.ExecuteNonQuery;MessageBox.Show数据添加成功!;//创建SqlDataAdapter对象实例SqlDataAdapterAdapterSelect=newSqlDataAdapterselect*fromstaffconn;//创建DataTable对象实例DataTabledt=newDataTable;AdapterSelect.Filldt;//填充控件staffview.DataSource=dt.DefaultView;}catchExceptionee{MessageBox.Showee.Message.ToString;}}
6.
2.3修改数据操作相关代码privatevoidstaffchange_ClickobjectsenderEventArgse{try{ifstaffID.Text=={MessageBox.Show员工号不能为空!;return;}ifstaffname.Text=={MessageBox.Show员工姓名不能为空!;return;}ifstaffsex.Text=={MessageBox.Show员工性别不能为空!;return;}//实例SqlConnection对象打开数据库连接SqlConnectionconn=newSqlConnection;conn.ConnectionString=Server=WIN-7SGESPPEL05\\SQLEXPRESS;uid=sa;pwd=123456;database=assetsmana;conn.Open;//构建字符串stringstrselect=select*fromstaffwhere员工号=+staffID.Text+;SqlCommandcmd=newSqlCommandstrselectconn;//查询输入编号是否有效intintCount=Convert.ToInt32cmd.ExecuteScalar.ToString;ifintCount!=0{stringSqlIns=updatestaffset员工号=+staffID.Text+员工姓名=+staffname.Text+员工性别=+staffsex.Text+where员工号=+staffID.Text+;//创建SqlCommand对象实例SqlCommandcommand=newSqlCommand;//设置SQL语句command.CommandText=SqlIns;//调用打开数据库连接方法command.Connection=conn;//执行添加数据command.ExecuteNonQuery;MessageBox.Show数据修改成功!;fillDataview;}else{MessageBox.Show员工号有错误,无法修改记录!;}}catchExceptionee{MessageBox.Showee.Message.ToString;}}
6.
2.4删除数据操作相关代码privatevoidstaffsub_ClickobjectsenderEventArgse{try{ifstaffID.Text=={MessageBox.Show请输入员工号信息!删除信息;return;}//实例SqlConnection对象打开数据库连接SqlConnectionconn=newSqlConnection;conn.ConnectionString=Server=WIN-7SGESPPEL05\\SQLEXPRESS;uid=sa;pwd=123456;database=assetsmana;conn.Open;//构建字符串stringstrselect=select*fromstaffwhere员工号=+staffID.Text+;SqlCommandcmd=newSqlCommandstrselectconn;//查询输入编号是否有效intintCount=Convert.ToInt32cmd.ExecuteScalar.ToString;ifintCount!=0{stringSqlIns=deletefromstaffwhere员工号=+staffID.Text+;//创建SqlCommand对象实例SqlCommandcommand=newSqlCommand;//设置SQL语句command.CommandText=SqlIns;//调用打开数据库连接方法command.Connection=conn;//执行添加数据command.ExecuteNonQuery;MessageBox.Show删除修改成功!删除信息提示;fillDataview;}else{MessageBox.Show员工号输入错误,无法删除信息记录!;}}catchExceptionee{MessageBox.Showee.MessageToString;}}
7.软件评估软件在设计构建开发完成之后,运行正常,数据增加、删除、修改正常,整体来说没有什么问题,属于小巧可用型但是软件所存在的一个缺陷就是所能实现的功能太少,虽然软件能实现的功能已经基本符合了所开发的要求,操作也很方便,但是软件的功能显得过于简单、单调,具体功能不够细分详细8结论及心得体会本次课程设计使用的语言是C#,在之前的学习当中所用到语言基本上没有用过C#语言,学校在开设的课程当中也没有C#语言程序开发这门课程所以本次课程设计使用的C#语言基本上属于一种陌生的语言,在开发软件过程中边学习,边开发由于使用visualstudio2008做C#windows窗体应用程序开发和使用visualC++
6.0做MFC的开发有点类似,所以就以MFC的基础进行了软件的开发因为是对C#语言掌握的不熟悉,开发的时候还得重新学习这门语言,所以导致开发的软件功能比较简单,但是在软件开发好后,运行没有出现什么问题本次课程设计收获最大的就是重新认识了一门新语言——C#附录F1参考文献【1】《学通C#的24堂课》王小科赵会东等编著清华大学出版社
2011.06【2】《C#程序设计标准教程》王小科吕双编著人民邮电出版社
2009.03【3】《VisualC#+SQLServer数据库开发与实例》李律松马传宝李婷编著清华大学出版社
2006.08【4】《C#入门经典(第4版)》KarliWastonChristianNagel等著清华大学出版社
2008.12【5】《数据库系统概论(第四版)》王珊萨师煊高等教育出版社
2006.05本科生课程设计成绩评定表班级计算机0809 姓名娄俊凯 学号0120810340929序号评分项目满分实得分1学习态度认真、遵守纪律102设计分析合理性103设计方案正确性、可行性、创造性204设计结果正确性405设计报告的规范性106设计验收10总得分/等级评语注最终成绩以五级分制记优(90-100分)、良(80-89分)、中(70-79分)、及格(60-69分)、60分以下为不及格 指导教师签名 20年 月 日否是系统登录是否登录资产维护资产检查资产减少资产增加资产变卖资产信息资产管理系统资产信息资产处理员工信息增加资产删除资产维护更新增加员工删除员工修改信息。