收藏 分销(赏)

信息系统分析与设计课程设计2.doc

上传人:s4****5z 文档编号:8754034 上传时间:2025-03-01 格式:DOC 页数:17 大小:805.01KB 下载积分:10 金币
下载 相关 举报
信息系统分析与设计课程设计2.doc_第1页
第1页 / 共17页
信息系统分析与设计课程设计2.doc_第2页
第2页 / 共17页


点击查看更多>>
资源描述
信息系统分析与设计课程设计 课程设计题目 姓  名 学  号 2012 专  业 信息管理与信息系统 指导教师 2013年6月24日 14 目录 1.系统规划 1 2.系统分析 1 2.1系统主要业务分析 1 2.2系统数据流分析 2 2.3数据字典 4 2.4数据加工描述 4 3.系统设计 5 3.1 系统功能分析 5 3.2 信息处理分析 6 3.3数据库设计 6 3.4代码设计 7 3.5面向对象建模工具UML 8 3.6人机界面设计 9 4.系统实施 11 4.1程序处理流程图 11 4.2主要算法源程序 11 4.3模拟运行数据 14 5.总结 15 1.系统规划 随着超市形态的高速发展,其经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。而依靠现代化的计算机信息处理技术来管理超市,能节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。基于本学期所学知识,本系统拟定采用B/S架构体系,应用面向对象的开发技术予以实现。 本系统的具体实现:基于Microsoft Visual Studio 2008开发平台,采用ASP.NET开发技术,以SQL Server 2008作为后台数据库。 2.系统分析 以下为本系统分析阶段的相关描述: 2.1系统主要业务分析 (1)进货业务 进货管理是企业生产经营活动中及其重要的一环,它关系到产品质量能否得到保证,生产是否能够顺利进行,采购成本能否得到有效控制等问题。下面是进货业务程序的主要内容:超市根据自身的资金条件和销售状况,综合分析市场规律,拟定采购计划表。 (2)库存业务 库存管理是指在上产经营中为销售和耗用而存储的各种资产。企业存货不当都会增加不必要的费用:存货过多将导致物资的积压、存储费用增加、流动资金周转不利,并且过量的库存会掩盖管理不善的问题。存货不足则影响企业的正常销售活动。因此,需科学合理地确定某库存物资的库存控制参数。如:最佳订货批量、最大库存量、最佳缺货量、最佳订购周期等,进行严格的库存控制工作。 (3)销售业务 销售对一个企业的生存和发展是至关重要的,对外关系到企业产品、服务和企业形象等多方面因素,对内涉及到销售、库存、财务等信息。此外信息化的高速发展为企业的销售工作提出了新的挑战,封闭意味着落后,超市要抓住时机,引入现代化的销售管理模式,实施企业的信息化、智能化销售管理。 系统业务流程图如下: 图2.1-1超市业务流程图 2.2系统数据流分析 图2.2-1关联图 图2.2-2顶层图 图2.2-3第一层图 2.3数据字典 数据流条目 (1)F1销售信息=销售单号+商品编号+销售数量+销售日期 (2)F3库存信息=商品编号+库存数量 文件条目 (1)文件名:D1销售清单 组成:{销售单号+商品编号+销售数量+销售日期} 组织:按销售单编号递增排列 (2)文件名:D3库存清单 组成:{商品编号+库存数量} 组织:按商品编号递增排列 (3)文件名:商品清单 组成:{商品编号+名称+计量单位+类别+单价+备注} 组织:按商品编号递增排列 2.4数据加工描述 (1)加工名:1销售更新 加工逻辑:根据销售信息更细销售清单 输入流:前台销售信息,库存信息 输出流:更新销售清单/库存清单 (2)加工名:3库存更新 根据进货信息和销售信息更新库存信息 输入流:进货信息,销售信息 输出流:更新库存数据 3.系统设计 3.1 系统功能分析 本系统采用自顶向下方法开发,其功能模块主要有如下几个部分:进货管理模块、库存管理模块、销售管理模块、员工管理模块和系统模块。我主要的任务就是分析 具体的功能描述如下: 库存管理:对采购来的产品进行企业内部编码入库,产品分类等活动,同时能够根据销售清单进行出货管理,以及库存统计。 销售管理:提供一般的销售管理,能够进行销售明细查询和打印销售报表。 图3-1功能分析图 3.2 信息处理分析 图3-2系统信息处理流程图 3.3数据库设计 3.3.1 E-R模型 超市管理系统数据库E-R模型,如图所示: 3.3.2数据库逻辑结构设计 结合以上E-R图,可以导出各个关系,即逻辑结构设计。如下: 用户表:帐号、密码、权限; 商品表:商品编号、名称、计量单位、类别、单价、备注; 销售表:商品编号、销售数量、销售日期; 库存表:商品编号、库存数量; 3.3.3数据库物理结构设计 (1) 用户清单(Users) 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 帐号 UserID char 7 P/F NOT NULL 密码 passWord char 6 NOT NULL 权限 permission Char 8 NOT NULL 说明:此表存放系统用户信息。 (2) 商品清单(MerchBill) 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 商品编号 merchID char 7 P NOT NULL 名称 mName nvarchar 80 NOT NULL 计量单位 Unit varchar 4 NOT NULL 类别 kind nvarchar 8 NULL 单价 price money 4 NOT NULL 备注 others ntext 50 NULL 说明:此表存放商品信息。 (3) 销售清单(SaleBill) 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 商品编号 merchID char 7 P/F NOT NULL 销售数量 saleNum int 4 NOT NULL 销售日期 saleDate datetime 8 NOT NULL 说明:此表存放销售信息。 (4) 库存清单(StoreBill) 中文字段名 英文字段名 字段类型 长度 主键/外键 字段值约束 商品编号 merchID char 7 P/F NOT NULL 库存数量 storeNum int 4 NOT NULL 3.4代码设计 1)“职工清单”中的“职工编号”的代码设计如下: 2)“商品清单”中的“商品编号”的代码设计如下: 前两位商品大类,中间两位主要表示商品的具体型号,后三位是辅码代表商品的产地。 3.5面向对象建模工具UML 1. 销售管理模块 功能:本模块的主要功能是把销售信息写入销售清单,同时对库存清单进行更新,以备用户将来对库存信息进行查询和打印,此外还可以对销售信息进行查询和盘点功能。 销售信息查询:根据商品销售情况,按需要对销售情况进行查询。在该查询模块中,可以按照商品的编号、销售日期等多种方式进行商品销售信息查询。 (1)销售模块的用例图,如图所示: (2)销售管理模块的活动图,如图所示: 2. 库存管理模块 功能:本模块的主要功能是商品信息的查询和更新,库存信息的查询和更新。 输入项、输出项:本模块的数据输入项主要是商品编号。 (1)库存管理模块的用例图,如图所示: (2)库存管理模块活动图,如图所示: 3.6人机界面设计 3.6.1登陆界面 3.6.2前台收银界面 3.6.3后台管理 4.系统实施 4.1程序处理流程图 4.2主要算法源程序 4.2.1配置数据源 <connectionStrings> <add name="ConnString" connectionString="Data Source=localhost;initial catalog=supermarket;Integrated Security=sspi" providerName="System.Data.SqlClient" /> </connectionStrings> 4.2.2登录页面 protected void LinkButton1_Click(object sender, EventArgs e) { string strConn = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; SqlConnection Conn = new SqlConnection(strConn);//定义新的数据连接控件并初始化 Conn.Open();//打开连接 string strsql = "select * from Users where USERID='" + TextID.Text + "' and PASSWORD = '" + TextPwd.Text + "'"; SqlDataAdapter Cmd = new SqlDataAdapter(strsql, Conn);//定义并初始化数据适配器 DataSet ds = new DataSet(); Cmd.Fill(ds); //将数据适配器中的数据填充到数据集ds中 Conn.Close();//关闭连接 if (ds.Tables[0].Rows.Count == 0) { Response.Write("<script>alert(\"用户名不存在或密码错误,请确认后再登录!\");</script>"); return; } DataRow Myrow = ds.Tables[0].Rows[0]; if (Myrow[3].ToString().Trim() == "管理员") { Session["pass"] = "ok"; Session["Uname"] = Myrow[1].ToString().Trim(); Session["Level"] = Myrow[3].ToString().Trim(); Response.Redirect("admin_default.aspx?name=" + Myrow[1].ToString().Trim()); } else { Session["pass"] = "ok"; Session["Uname"] = Myrow[1].ToString().Trim(); Response.Redirect("settleaccounts.aspx?name=" + Myrow[1].ToString().Trim()); } } 4.2.3销售页面 private void fill() //GW数据源更新函数 { DataSet myds = new DataSet(); myds = (DataSet)Session["myds"]; Gw.DataSource = myds.Tables["sell"] ; Gw.DataBind(); } protected void addsell_Click(object sender, EventArgs e) { time.Text = System.DateTime.Now.ToString(); try { string strConn = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; SqlConnection Conn = new SqlConnection(strConn);//定义新的数据连接控件并初始化 Conn.Open();//打开连接 string information = "select mName from Merchans where merchid like '" + sname.Text.Trim() + "'"; string sprice = "select Price from Merchans where merchid like '" + sname.Text.Trim() + "'"; string kucun = "select storenum from Storebill where merchId like '" + sname.Text.Trim() + "'"; kc -= i ; string skc = kc.ToString(); DataSet myds = new DataSet(); myds = (DataSet)Session["myds"]; DataRow row = myds.Tables["sell"].NewRow(); row["价格"] = s1; row["商品"] = sname.Text; row["名称"] = s; row["数量"] = amount.Text; myds.Tables["sell"].Rows.Add(row); Session["myds"] = myds; fill(); string ms = "INSERT INTO salebill(merchid,salenum,saledate) VALUES ('" + sname.Text + "','" + amount.Text + "','" + time .Text.Trim() + "')"; SqlCommand Comm = new SqlCommand(ms, Conn); Comm.ExecuteNonQuery(); string kuc2 = "UPDATE Storebill SET storenum='"+skc +"' WHERE merchId like '" + sname.Text.Trim() + "'"; SqlCommand kuc3 = new SqlCommand(kuc2, Conn); kuc3.ExecuteNonQuery(); Conn.Close(); amount.Text = ""; time.Text = System.DateTime.Now.ToShortDateString(); sname.Focus(); } catch { Response.Write("系统出错,请稍候重新操作!"); } } 4.2.4商品入库页面 protected void Button1_Click(object sender, EventArgs e) { try { string strConn = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; SqlConnection Conn = new SqlConnection(strConn);//定义新的数据连接控件并初始化 Conn.Open();//打开连接 string sqlstr = "select * from storebill where merchid='" + DropDownList1.Text.Trim()+"'"; SqlDataAdapter Cmd = new SqlDataAdapter(sqlstr, Conn);//定义并初始化数据适配器 SqlCommandBuilder scb = new SqlCommandBuilder(Cmd); DataSet ds = new DataSet(); Cmd.Fill(ds); //将数据适配器中的数据填充到数据集ds中 if (ds.Tables[0].Rows.Count == 0) { string sqlstr1 = "select * from storebill"; Cmd.SelectCommand = new SqlCommand(sqlstr1, Conn); Cmd.Fill(ds); DataRow newrow = ds.Tables[0].NewRow(); newrow["merchid"] = DropDownList1.Text.Trim(); newrow["storenum"] = Convert.ToInt32(TextBox2.Text); ds.Tables[0].Rows.Add(newrow); Cmd.Update(ds); } else { string str = "UPDATE Storebill SET storenum=storenum+'" + Convert.ToInt32(TextBox2.Text) + "' WHERE merchId ='" + DropDownList1.Text.Trim() + "'"; SqlCommand kuc = new SqlCommand(str, Conn); kuc.ExecuteNonQuery(); } sqlstr = "select merchans.merchid 商品ID,Mname 名称,storenum 数量 from storebill,merchans where merchans.merchid=storebill.merchid"; Cmd.SelectCommand = new SqlCommand(sqlstr, Conn); DataSet ds1 = new DataSet(); Cmd.Fill(ds1); Conn.Close();//关闭连接 GridView1.Caption = "<b>商品库存清单</b>"; GridView1.DataSource = ds1.Tables[0]; GridView1.DataBind(); } catch { Response.Write("系统出错,请稍候重新操作!"); } } 4.3模拟运行数据 用户登录数据: 商品信息数据: 商品库存数据: 5.总结 通过这次课程设计的实践,使我对信息系统的项目开发有了更加深刻的认识,同时,对C#.NET和ASP.NET技术也进行了更细致的学习,更加重要的是我切身感受到了团队合作的力量,在系统开发过程中,每个同学都积极参与,发挥自己所长,遇困难大家一起商量探讨,共享所得成果。 与此同时,还要感谢句全老师这学期对我们的细心教导,带领我们大家一起学习信息系统分析与设计这门课程,相信这对我们以后的工作大有裨益。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服