软件工程课程设计(共42页).doc

上传人:飞****2 文档编号:14121726 上传时间:2022-05-02 格式:DOC 页数:42 大小:674.50KB
返回 下载 相关 举报
软件工程课程设计(共42页).doc_第1页
第1页 / 共42页
软件工程课程设计(共42页).doc_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《软件工程课程设计(共42页).doc》由会员分享,可在线阅读,更多相关《软件工程课程设计(共42页).doc(42页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选优质文档-倾情为你奉上长沙理工大学软件工程课程设计报告物流仓储管理系统的设计与实现学 院 城南学院 专 业 计算机科学与技术班 级 计算机1001班 学 号 学生姓名 指导教师 课程成绩 完成日期 2013年9月15日 课程设计成绩评定学 院 城南学院 专 业 计算机科学与技术 班 级 计算机1001 学 号 9 学生姓名 指导教师 课程成绩 完成日期 2013年9月12日 指导教师对学生在课程设计中的评价评分项目优良中及格不及格课程设计中的创造性成果学生掌握课程内容的程度课程设计完成情况课程设计动手能力文字表达学习态度规范要求课程设计论文的质量指导教师对课程设计的评定意见综合成绩 指导教

2、师签字 2013年09月日14课程设计任务书水利计通系 计算机科学与技术专业 课程名称软件工程时间20122013学年第1学期12 周学生姓名指导老师题 目物流仓储管理系统的设计与实现主要内容:本课程是计算机软件专业的必修专业课程,通过理论讲述和实际训练,使学生掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法和技术开发和维护软件。要求:本课程设计要求学生运用软件工程的思想,严格按照软件生命周期各阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。应当提交的文件:课程设计报告1份,程序一份。目录专心-专注-专业物流仓储管理系统的设计与实现学生姓名: 指导老师:

3、 摘 要 21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻。物流仓储管理系统是一个物流公司不可缺少的部分,它的内容对于公司的决策者和管理者来说都至关重要。本论文叙述到的物流仓储管理系统是用C#语言与SQL查询语言实现的。重点介绍了物流仓储管理系统的实现过程:包括系统分析,系统调查,功能设计,数据库设计,系统实现,系统测试和调试等。关键字 管理系统;数据库;查询;删除第一章 系统开发概述1.1 系统开发的背景 国内经济加速发展,市场竞争日趋激烈。伴随着产品的日趋同质,企业的竞争目标从单纯的产品

4、竞争转向供应链竞争,企业关心的问题也从单纯的销售扩大到进、销、存的各个环节。“以满足客户需求为目的,为提高原料、制品及相关信息从供应到消费的流动和储存效率而进行计划、执行和控制”。众多的中小型公司、中小型企业、中小型超市、中小批发商已经意识到这点,因此,进销存管理系统的开发和应用越来越需要。仓库库存管理系统是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以仓库库存管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统的方式管理仓库中的各种物资设备,这种管理方式存在着许多缺点,如:效率低,时间长将产生大量的文件和数据,这对于查找、更新和维护都带来

5、了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对物资信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。为了适应日趋激烈的市场竞争,企业需要对自身的经营情况有充分地了解,并通过有效的管理不断提高效率。因此,对仓库的管理也成为提高生产经营效率的一个重要途径。1.2系统开发的目的和意义随着我国经济的飞速发展,各

6、种类型规模的公司企业迅速崛起,许多从事生产和经营管理的企业都有自己企业生产和销售的产品,而这些产品都需要储存在仓库中,对于每个企业来说,随着企业规模的不断扩大,产品数量的急剧增加,所生产产品的种类也会不断的更新与发展,有关产品的各种信息也会成倍增长。面对庞大的产品信息量,如何有效的管理仓库产品,对这些企业来说是非常重要的,仓库管理的重点是销售信息能否及时反馈,从而确保企业运行效益。而仓库管理又涉及入库、出库的产品、经办人员及客户等方方面面的因素,如何管理这些信息数据,是一项复杂的系统工程,充分考验着仓库管理员的工作能力,工作量的繁重可想而知,所以这就需要由仓库管理系统来提高仓库管理工作的效率,

7、这对信息的规范管理、科学统计和快速查询,减少管理方面的工作量,同时对于调动广大员工的工作积极性,提高企业的生产效率,都具有十分重要的现实意义。第二章 系统规划2.1 系统规划的目的 信息系统规划,是对组织总的信息系统目标、战略、开发工作的战略性综合计划。它是一个长远的计划,是决策者、管理者和开发者共同制定和遵守的计划,是企业总体战略计划的一部分。系统规划是建立在管理信息系统的先行工程,是在整个系统开发工作前进行的。系统规划的主要目的是保证建立的系统科学、经济、先行、适用。2.2 系统的用户需求企业的仓库的管理一直是企业的一项重要但又十分繁琐的管理工作,仓库的进发货以及坏损等都每项都必须清晰记录

8、,管理起来更是要倍加细心,经初步调研和需求分析,企业仓库管理功能的需求如下:记录供应商信息的有关信息 记录仓库设置的有关信息 记录货品入库的有关信息记录库存的有关信息 管理货品退还的情况 管理货品出库的情况 系统的辅助功能,如登录,用户管理 强大的决策分析功能。例如,仓库可以分析提高采购货物的质量等。仓库管理人员使用这个系统可以管理货品的基本情况,货品进出情况。客户根据该系统可以了解企业货品以及价格情况,企业管理人员可以更好的管理仓库从而推动企业发展。2.3 系统的可行性分析系统规划方案的可行性应从经济方面、技术方面、系统运行方面进行分析和评价。 1.经济的可行性 它主要是指进行系统的投资/效

9、益分析。新系统的投资包括硬件、系统软件、辅助设备费、机房建设和环境设施、系统开发费、人员培训费、运行费(包括硬件、软件维护,计算机系统人员的工资,日常消耗物资的费用)等。系统的效益主要从改善决策、提高企业竞争力、加强计划和控制、快速处理信息、改善顾客服务、减少库存、提高生产效率等方面取得。将初步算出的新系统可能获得的年经济收益,与系统投资相比较,从而估算出投资效果系数和投资回收期。根据估算的直接经济效果和各种间接效益,评价新系统经济上的可行性。 2.技术的可行性 经过经济分析,在确定企业准备投资多少来达到系统的目标之后,再进行技术上的可行性分析。评价总体方案所提出的技术条件如计算机硬件、系统软

10、件的配置、网络系统性能和数据库系统等,能否满足新系统目标的要求,并对达到新系统目标的技术难点和解决方法的可行性进行分析。此外,还应分析开发和维护系统的技术力量,不仅考虑技术人员的数量,更应考虑他们的经验和水平。 3.系统运行的可行性 系统的建立要考虑社会的、人为的因素影响;要考虑改革不适合新系统运行的管理体制和方法的可行性,实施各种有利于新系统运行建议的可行性、人员的适应性以及法律上的可行性等。此外,对新系统运行后将对各方面产生的影响也应加以分析。 第三章 系统分析3.1需求分析系统开发的总任务是实现各种信息的系统化、规范化和自动化系统的需求分析是建立在系统开发的总任务的基础上完成的,本仓库管

11、理系统分析主要有: 仓库管理各种信息的输入,包括货物、经手人、仓库信息的输入等。 仓库管理各种信息的查询、统计、修改和维护,包括货物查询,货物出入、仓管员操作系统,各种信息的修改和维护等。 仓库管理系统的使用和帮助。3.2组织结构分析微型电容器合资公司总经理办公室生 产 科销 售 科财 务 科物 资 科 产 品 库材 料 库图3.1 库存管理组织结构分析3.3业务流程分析采购 员物料采购计划合同管理不合格通知单缺货通知单合同文件物料需求计划供应 商总工程 师出库单文件更新库存出库管理库存文件收 料 单加工小 组仓管 员 退 料管 理领料单入库单文件入库验收技术鉴定成品入库单修改库存退 料 单

12、成品出库单库存文件退货单物料收发存统计入库单文件客 户报 表科 长图3.2 物资科的业务流程图3.4 数据流程分析 数据流程分析就是把数据在原系统内部的流动、传递、处理、存储等情况抽象的独立出来,但从数据流动过程考察实际业务处理模式。其目的主要是发现和解决数据流通过程中的问题,如前后数据类型不匹配、数据流程不畅、数据分析不深入等。3.4.1 顶层数据流程图的绘制物料订退货单物料发货单客 户订退货单发 货 单采 购 员 0.0库存系统 图3.3 顶层数据流程图3.4.2 第一层数据流程图库存信息D1 2.0处理信息物料缺订货单物料发货单订货单发 货 单客户采 购 员 1.0库存管理退货单订货信息

13、D2 3.0退货管理图3.4 第一层数据流程图3.4.3 第二层数据流程图3.2退货入库单3.1处理退货单不合格退货单合格 1.9出库单审核合格不合格客 户仓管员订货单1.8出库单1.1处理订货单出入库台帐D1有误 2.1产生报表1.6更新库存1.2核对订货单D2库存信息准确无误 1.5入库单审核1.3订单处理1.7修改台账1.4入库单图3.5 第二层数据流程图3.5 数据字典在数据流程图的基础上,对其中出现的数据流、外部实体、文件和数据项进行定义的工具,成为数据字典。数据流程图是系统的大框架,给出了系统的组成及其相互关系,但却未说明数据元素的含义。而数据字典的任务是对数据流程图中出现的所有数

14、据元素进行准确描述,二者有密切的联系,必须结合使用。3.5.1 数据字典描述内容数据字典是一种表格,它通过数据元素和数据结构来描写数据、数据存储的属性。建立数据字典以后,在系统分析阶段、设计阶段、程序设计和系统测试阶段,要使用数据字典,他能按各种要求列表,提供标准的术语和词汇,指出系统内个数据、各个处理逻辑之间的关系,从多方面对数据流程图进行进一步描述和完善,相互参照、对比,便于超找一楼、冲突、重复等错误。3.5.2 数据字典的组成 数据字典中有6类条目:数据元素、数据结构、数据流、数据存储、处理、外部实体。数据元素:是具有独立逻辑含义的最小数据单位。数据结构:由若干数据项构成的数据集合称为数

15、据结构。 数据结构描述某些数据项之间的关系。 数据流:表示系统中数据的逻辑流向。 定义数据流时,不仅要说明数据流的名称、组成等,还应指明它的来源、去向和数据流量等。处理逻辑:仅对数据流程图中最底层的处理逻辑加以说明。数据存储:数据存储在数据字典中只描述数据的逻辑存储结构,而不涉及它的物理组织。 外部实体:指独立于所研究系统外但又和系统有联系的实体。 表3-1 数据项定义数据项定义数据项编号:001数据项名称材料编号别名:材料编码简述:某种材料的代码类型及宽度:字符型,4位取值范围:4-006-99表3-2 数据结构定义数据结构定义数据结构编号:002数据结构名称:库存单简述:库存情况及订货要求

16、等信息数据结构组成: 表3-3 数据流定义数据流定义数据流编号:003数据结构名称:领料单简述:车间开出的领料单数据流来源:车间数据流去向:发料处理模块数据流组成:材料编号十材料名称十领用数量十日期十领用单位 表3-4 处理逻辑定义处理逻辑定义处理逻辑编号:004处理逻辑名称:计算库存简述:计算库存供销存量输入的数据流:数据流库存量,来源于数据存储文件 表3-5 数据存储定义数据存储定义数据存储编号:005数据存储名称:库存账简述:存放配件的库存量和单价数据存储组成:配件编号十配件名称十单价十库存量十备往关键字:配件编号 表3-6 外部实体定义外部实体定义外部实体编号:006外部实体名称:仓管

17、员简述:处理本库存的仓管员输入的数据流:输出的数据流:第四章 系统设计4.1系统总体结构设计4.1.1 系统设计的目标系统设计的目标:使用C# .NET技术编写“库存信息系统”,由此做到库存信息的自动化管理。4.1.2 系统的开发环境 系统开发环境:Microsoft Visual studio 2008 开发环境 前台语言:C# 后台数据库语言:SQL语言 程序框架:.net framework 2.0 4.1.3 系统分析:此系统可以实现以下几种功能1库存总量的查询2入库、出库以及退货信息的登记3入库、出库以及退货信息对总库存信息的修改4.2代码设计4.2.1 代码设计的原则代码设计是处理

18、对象的代号或表示符号,其主要目的是方便计算机排序、检索、查找等处理。代码设计的关键是方便用户,并且满足业务要求。代码设计的原则有:(1)要考虑编码的标准化,按照有关国际标准、国家标准、部门或行业的标准进行设计。(2)要考虑易修改,当某个代码、某个变量或某个函数在特点、条件货到表的实体关系改变时,容易进行必要的修改。(3)要考虑结构简介,代码的长度涉及到存储空间的占用和信息处理的速度,而且影响代码输入的出错率,所以,在满足当前需要和扩充要求的前提下应尽量结构简单,长度要短。(4)要考虑代码的唯一性,为了避免二义性,必须惟一的标识每一个对象。4.2.2 系统所需代码设计 仓库管理系统代码设计是根据

19、仓库的出库和出库特点,结合工作经验,在取得客户认可的情况下设计出来的,设计代码结构如下:(1)仓库编号仓库编号,取值范围1-91表4.1 仓库代码仓库代码仓库名称11号仓库22号仓库33号仓库44号仓库55号仓库66号仓库(2)材料代码 材料代码由两部分组成:材料的类别和材料的编号,所以设计5位字符,格式如下:商品编号,取值范围1-999商品类别,取值范围1-9901 002表4.2 材料代码类别实例材料正箔(01001)、负箔(02001)、正导针(03001)、负导针(04001)(3)人员代码人员编码的编制根据部门、职位以及顺序号进行。如可设置物资部门为04,科长职位为02,顺序号则自行

20、编制。如物资部的一位科长编码为:顺序号职 位部 门 01 02 03(4)产品代码产品代码根据生产科、产品和顺序号进行编制。如可以从生产科01开始,产品类别从001开始。顺序号产品类别生产科01 002 03表4.3 产品代码代码对象产品代码代码类型部门码+顺序码位数7校验位 1代码数量200使用期限 无限适用范围本公司4.3数据库结构设计数据库的概念结构设计的任务是产生和反映企业组织信息需求的数据库概念结构,及概念模型,概念模型不依赖于计算机系统和具体的DBMS。采用E-R发奖现实世界中的信息结构统一用属性、尸体以及实体之间的联系来描述。用户的具体要求提下在各种信息的提供、保存、更新、查询等

21、方面。这就要求数据可结构能充分满足各种信息的输入和输出,收集基本数据。(1) 仓库基本信息,包括的数据项有:仓库编号、仓库名称、规格型号、类别、计量单位等;(2) 入库信息,包括的数据项有:仓库编号、仓库名称、规格型号、类别、计量单位、数量、单价、金额、入库时间、经办人、保管人、备注等;(3) 出库信息,包括的数据项有:仓库编号、仓库名称、规格型号、类别、计量单位、数量、单价、金额、领用时间、领用人、经办人、备注;(4) 仓库余额信息,包括的数据项有:仓库编号、仓库名称、规格型号、类别、计量单位、数量、单价、金额;(5) 供应商数据项有:供应商编号、供应商名称、地址、传真、电话、联系人。仓库基

22、本信息属性仓库基本信息类 别仓库编号计量单位规格型号仓库名称图4.1 仓库基本信息属性图仓库入库信息属性仓库入库信息保管人仓库编号经办人仓库名称 数量单价计量单位规模型号类 别图4.2 仓库入库信息属性图仓库出库信息属性仓库出库信息领用人仓库编号经办人仓库名称 数量单价领用时间规模型号类 别图4.3 仓库出库信息属性图库存信息属性库 存 信 息仓库编号保管人 金 额数 量类 别图4.4 仓库余额信息属性图物料库存管理E-R图MN采购单采购采购员检验MN经办人完工MN客 户检验M成品入库单NNM检验加工小组入库单N检验NMN更新库存出库单入库加工MMNNM发货MNM仓管员领料领料单图4.5 物料

23、库存管理E-R模型图4.4输入输出界面设计4.4.1 输入界面设计系统界面以简单为主,为用户提供一个简单、友好、方便的界面。管理员在登录时先输入用户名和密码,匹配成功后将登陆到主界面。图4.6.1 登录界面1匹配错误主界面的提示图4.6.2 登录界面24.4.2 总库存界面设计 图4.7 总库存界面4.4.3 入库信息界面设计 仓管员进入主界面后,可在界面左侧的菜单栏里选择不同的操作功能。图4.8 入库信息界面4.4.4 出库信息界面设计图4.9 出库信息界面4.4.5 退货信息界面设计图4.10 退货信息界面4.4.6 入库操作信息界面设计图4.11.1 入库操作信息界面1图4.11.2 入

24、库操作结果4.4.7 出库操作信息界面设计图4.12.1 出库操作信息界面1图4.12.2 出库操作结果4.4.8 退货操作信息界面设计图4.12.1 退货操作信息界图4.12.2 退货操作结果第五章 总结通过这次课程设计,实际进行操作,让我们对这门课有了更深刻的理解。学会了系统分析的方法、模型;能把事物的处理过程在计算机上实现掌握了用图表形式表示出系统流程;对系统分析有了一定的综合能力。在系统设计阶段,我们学会了使用E-R图建数据库物理模型,再转换为逻辑模型,使数据库符合三范式的要求:用数据库实现具体的系统时,我们掌握了SQL的界面设计和一般的程序代码的编写。在测试、维护阶段,掌握了系统的测

25、试方法。 但这次课程设计我们也暴露出许多不足。首先,不是很熟悉需求分析的主要方法和主要任务,使的我们在系统设计上做了很多弯路;其次,在系统实现的环节;还有对企业业务的流程不太熟悉。总之,在这次课程设计过程中,学到了很多东西,也发现了许多不足。以后要努力学习专业知识,来提升自己。参考文献1 高明波.物流管理信息系统.对外贸易大学出版社,2008.2 萨师煊.数据库系统概论.高等教育出版社,2005.3 Karli Watson等. C#入门经典(第5版).清华大学出版社,2010. 4 Ben Forta. MySQL必知必会.人民邮电出版社,2009.附录1.系统首页实现代码:using Sy

26、stem;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using MySql.Data;using MySql.Data.MySqlClient;namespace meterialSystem public partial class Form1 : Form public Form1() InitializeComponent(); private

27、 void NewForm() Application.Run(new main(); private void button1_Click(object sender, EventArgs e) string id = textBox1.Text.Trim(); string pwd = textBox2.Text.Trim(); System.Data.DataSet ds = new System.Data.DataSet(); string constr = server=localhost; database=test; user id=root; password=; string

28、 mySelectQuery = select * from user where userID= + id + and userPWD = + pwd + ; MySqlConnection myConnection = new MySqlConnection(constr); MySqlCommand myCommand = new MySqlCommand(mySelectQuery, myConnection); myConnection.Open(); MySqlDataReader myReader; myReader = myCommand.ExecuteReader(); if

29、 (id = | pwd = ) label3.Text = 请输入完整的用户名和密码!; else if (myReader.Read() label3.Text = 登陆成功; System.Threading.Thread thrT = new System.Threading.Thread(new System.Threading.ThreadStart(NewForm); thrT.Start(); while (thrT.ThreadState != System.Threading.ThreadState.Running) ; this.Close(); else label3.

30、Text = 请输入正确的用户名和密码!; myConnection.Close(); 2.系统主界面实现代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace meterialSystem public partial class main : Form public main() InitializeComp

31、onent(); private void NewForm1() Application.Run(new in(); private void NewForm2() Application.Run(new out(); private void NewForm3() Application.Run(new ret(); private void button1_Click(object sender, EventArgs e) System.Data.DataSet ds = new System.Data.DataSet(); string constr = server=localhost

32、;database=test;user id=root;password=; MySql.Data.MySqlClient.MySqlConnection con = new MySql.Data.MySqlClient.MySqlConnection(constr); string sql = select * from material_sum; MySql.Data.MySqlClient.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter(sql, con); con.Open(); da.Fill(ds)

33、; GridView1.DataSource = ds.Tables0.DefaultView; con.Close(); private void button2_Click(object sender, EventArgs e) System.Data.DataSet ds = new System.Data.DataSet(); string constr = server=localhost;database=test;user id=root;password=; MySql.Data.MySqlClient.MySqlConnection con = new MySql.Data.

34、MySqlClient.MySqlConnection(constr); string sql = select * from material_in; MySql.Data.MySqlClient.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter(sql, con); con.Open(); da.Fill(ds); GridView1.DataSource = ds.Tables0.DefaultView; con.Close(); private void button3_Click(object send

35、er, EventArgs e) System.Data.DataSet ds = new System.Data.DataSet(); string constr = server=localhost;database=test;user id=root;password=; MySql.Data.MySqlClient.MySqlConnection con = new MySql.Data.MySqlClient.MySqlConnection(constr); string sql = select * from material_out; MySql.Data.MySqlClient

36、.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter(sql, con); con.Open(); da.Fill(ds); GridView1.DataSource = ds.Tables0.DefaultView; con.Close(); private void button4_Click(object sender, EventArgs e) System.Data.DataSet ds = new System.Data.DataSet(); string constr = server=localhost;database=test;user id=root;password=; MySql.Data.MySqlClient.MySqlConnection con = new MySql.Data.MySqlClient.MySqlConnection(constr); string sql = select * from material_ret; MySql.Data.MySqlClient.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter(sql, con); con.Open();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com