软件工程课程设计报告书.doc_第1页
软件工程课程设计报告书.doc_第2页
软件工程课程设计报告书.doc_第3页
软件工程课程设计报告书.doc_第4页
软件工程课程设计报告书.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务要求:通过理论讲述和实际训练,掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法和技术开发和维护软件。要求学生运用软件工程的思想,严格按照软件生命周期各阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。内容摘要:在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多,对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,随着图书馆图书种类、数量的不断扩大,图书检索速度慢、统计工作量大,难以满足图书馆现代化管理的要求。因此,建立一套图书管理软件,科学的对图书馆数据进行管理,方便图书的检索和读者借阅工作。关键词:图书借阅;人员管理;图书维护教师评语:成绩 签名: 日期: 课程设计报告书图书管理系统班 级: 学 号: 姓 名: 指导教师: 某某大学四方学院2012年6月12日一、问题定义在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多,对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,随着图书馆图书种类、数量的不断扩大,图书检索速度慢、统计工作量大,难以满足图书馆现代化管理的要求。因此,建立一套图书管理软件,科学的对图书馆数据进行管理,方便图书的检索和读者借阅工作,该软件采用功能强大的数据库开发工具进行开发,具有很好的可移植性,可在应用范围较广的DOS,WINDOWS系列等操作系统上使用。二、可行性研究报告 1、引言 1.1编写目的 进一步分析和澄清问题定义,推导出系统的逻辑模型,对以后的行动方针提出建议。如果问题没有可行的解,那么花费在这项工程上的任何时间、资源、人力、经费、都是无谓的浪费。为了避免这些,我们要用最小的代价在尽可能短的时间内确定问题是否能够解决。对此项的报告即为可行性研究报告。1.2背景 a所建议开发的软件系统的名称:图书管理系统; b本项目的任务提出者:软件工程课程设计开发者:于子正 闫紫阳用户:四方学院图书馆1.3 定义本文件中用到的专门术语的定义及外文首字母词组的原词组:(1) 系统流程图:用图形符号以黑盒子形式描绘系统的每个部件(程序,文档,数据库,人工过程)。表达数据在系统各部件之间流动的情况。(2) 数据流图(DFD):没有任何具体的物理部件,描绘信息流和数据从输入移动到输出的过程中经受的变换。(3) 数据字典(DD):是对数据流图中包含的所有元素的定义的集合。其内容为数据流、数据元素、数据存储、处理。2、可行性研究的前提2.1要求a功能:能够准确快速的记录图书的状态,以便能轻易的查出图书是否被借、是否归还、是否借出超期等信息;借书者可对自己感兴趣的图书进行检索从而缩短借书流程;管理员除了进行借还书信息的操作,还要对超期者进行处罚。b性能:稳定快速,实时控制。c输入输出:条形码英文和汉字输入,条形码英文和汉字输出;d在安全和保密方面的要求:登录系统时,需要输入图书证的编号和个人密码;对断电、死机、系统崩溃等问题有有力措施以保障数据不受损失。同本系统相连接的其他系统;应用于我们学校的校园网,独立于其他系统。e完成期限:2012年6月12日22目标 为了方便图书馆管理人员对图书的借阅、归还等提供轻松快捷的管理方式,同时也方便学生可以随时随地的对图书进行借还、续借、查询、缴纳罚款等。主要体现在:减少人力与设备费用,提高系统的处理速度,更新原先的管理信息服务;提高人员利用率,减少人员的冗余量。将获取的效益用于购置更多的图书,服务广大师生。23条件、假定和限制运行环境:兼容当前主流操作系统 Windows 2003/XP/Vista 硬件环境:奔腾4以上计算机,打印机、扫描仪等。开发软件:SQL Server 、VB、ASP等该系统的预期寿命为年24进行可行性研究的方法 通过对已有图书管理系统的分析和研究比较以及调查问卷的方式对图书管理系统的进行全面的分析对现行的图书管理系统的满意度调查等。25评价尺度费用不能超过X万元,信息更新的维护为重点开发时间的长短不超过3周,使用起来容易上手。3. 对现有系统的分析针对我们学校当前实际使用的图书管理系统的现有功能,进行分析,开发新的图书管理系统。31处理流程和数据流程图书信息按分类号和作者号对书籍进行分类,编写好编号后入库;学生凭图书证最大限度可借8本,借书期为一个月,续借后,借书期可增加15天(寒暑假另订);教职工凭有效证件,最大限度可借书10本,借书期为1个月,续借后,借书期可增加30天。并要求在借书期期间还书;若超过借书期,则根据超期1天0.1元进行处罚,若款项未交,则将行使借书的权力;管理员登记图书借还及处罚情况。3.2 费用开支a. 基本建设投资12000元b. 其他一次性支出13000元c. 非一次性支出5000元综上合计30000元3.3 人员馆长1名采编部1通阅览部2名网络技术部1名3.4 设备服务器: Pentium4 以上或更高,内存:512M以上;硬盘:至少50G以上;CDROM:24倍速以上;网卡:100/1000自适应;工作站: Pentium4 以上微机;内存:512MB硬盘: 至少25G以上;CDROM:24倍速以上;网卡:100/1000自适应4 所建议的系统41对所建议系统的说明新系统在原有系统的基础上加入了新的数据库的支持,使用了先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。a. 小巧而不失使用的功能,方便师生。b. 库存图书馆功能,师生借阅信息管理。c. 财务信息的统计分析。d. 多种图表统计,可统计每年,每月,每日的图书借出和借入情况统计。e. 多种排行统计等。42处理流程和数据流程 a. 系统能对书籍信息进行管理。b. 系统不需要管理借阅者除姓名以外的信息。对每一名借阅者最多可借阅的书籍数目为2本。c. 借书时,系统记录借书者的姓名、借阅书籍名称和借阅日期。d. 时间时,系统记录还书者的姓名、归还书籍名称和还书日期。系统设定书籍的最长借阅时间为1个月。e. 操作人员可以根据书籍名称、作者、出版社三者之一或三者的任意组合查询书籍信息。f. 操作人员可以查询借阅某书籍的所有借阅者的姓名;也可以查询某借阅者借阅的所有书籍名称;还可以根据借阅者的姓名、书籍名称查询借阅者的借书时间、还书时间。g. 系统由图书馆工作人员操作分为:系统管理员,书籍管理员和借阅管理员。h. 所有操作人员凭帐号和密码登陆系统。43改进之处 数据库的加强,添加借书者推荐模块,在续借模块中添加一项确认,防止续借的不成功等等。44影响4.4.1.对设备的影响:没有什么特殊影响,信息量不大,一般PC机都能用。服务器: Pentium4 2.2Ghz以上或更高,内存:512M以上;硬盘:至少50G以上;CDROM:24倍速以上;网卡:100/1000自适应;打印机一台,至少一台服务器工作站: Pentium42.0Ghz以上微机;内存:1GB以上 硬盘:至少80G以上;CDROM:24倍速以上;网卡:100/1000。4.4.2.对地点和设施的影响对地点没有影响,但是对于设施稍微有所讲究,更注重安全性,保障所使用的设备处于一个稳定而又安全的环境。4.4.3.对经费开支的影响图书馆在学校或大型公众场存在,其经济成分比重相对比较适中,主要是支出的费用:其中包括基本建设费、软件开发费用、管理和维护费、人员工资和培训费等。在一个图书馆中实行统一操作,资源共享,前期的资金投入主要集中于购置图书上。建立图书信息库,收集各方面的图书信息,提高图书管理的计划性和预见性。开发完成运行后,为使用者带来便利,从经济角度考虑,此系统开发可行。4.4.4.对系统运行过程的影响 a用户的操作规程大同小异;b运行中心的操作规程不变; C运行中心与用户之间的关系不变;d源数据的处理:进行一定更新与维护; e数据进入系统的过程:更快速、精确、稳定;f对数据保存的要求,对数据存储、恢复的处理:更加方便快捷; g系统失效的后果及恢复的处理办法:系统日志即使保留失效那一瞬间的信息,从而减少其带来的不便;4.4.5.对开发的影响 由于该新系统是根据原有的老系统进行开发的,所以管理员无需对此产生压力,基本操作都会根据原有系统进行设置,同时从原有的数据库里调取所有有效的图书信息及借还书等历史信息。 4.4.6.对经费开支的影响 为了新系统的开发,设计和维持运行而需要的各项经费开支,在第一年时有所增加,但是“效益”也将在短期实现。45局限性 系统的使用寿命为年,无法保证年以后系统的使用状态。46技术条件方面的可行性 技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。所使用的语言是VB和SQL之间连接,是大家还比较熟悉的内容,可行性可行。5可选择的其他系统方案 a. 拟建系统的目标1)促进管理体制的改革和改进管理手段2)提高和改进管理信息服务质量3)减少人力和设备费用5)加快信息的查询速度和准确性b. 系统规划及初步方案:管理系统使用单机作业,由专人输入有关信息,可以选购书目,上报计划。进行统计分析等,向财务处进行结算。本系统拟采用奔腾处理器,1G内存,硬盘160G。打印机一台,电源,光驱,扫描仪各一个。c. 系统的实施方案:本系统客户端拟采用Windows XP操作系统,服务器采用Windows XP操作系统,前端开发语言使用C#、VB使用MS SQL server数据库管理系统6投资及效益分析 61支出611系统开发费用 a人员费用:本系统开发期为三周,试运行一周。开发期需要开发人 员人,试运行期需要开发人员2人。人员费用为万元。 b设备费:本系统所需的硬件设备费用为万元。 c不可预见费:按开发费用的15%计算。 612系统运行费用 a系统维护费:需要 人/年进行系统维护,维护费为万元 b设备维护费:设备更新费为万元。设备维护费为万元。 c消耗材料费:每年按元计算。 综上所述,新系统使用时间年,系统开发和运行总费用万元,平均万元 /年。 613其他一次性支出a研究(需求的研究和设计的研究)包括在开发费用中b数据库的建立c检查费用和技术管理性费用d培训费、旅差费以及开发安装人员所需要的一次性支出614非一次性支出列出在该系统生命期内按月或按季或按年支出的用于运行和维护的费用,包括: a设备的租金和维护费用; b软件的租金和维护费用;c数据通讯方面的租金和维护费用;d人员的工资、奖金;e房屋、空间的使用开支;f公用设施方面的开支;g保密安全方面的开支; h其他经常性的支出等。62收益 提高工作效率;减少工作人员;提升整个图书馆的管理能力;621一次性收益a学生每人一次办卡2元,教职工一次办卡5元,学校有X个学生和X个教职工,预计可获得收益X万元。b因新系统的投入使用可以减少原先的管理人员,减少冗余量,而减省下来的资金也便是一种收益。622非一次性收益 在使用中使用者可能把卡丢失或损坏费用办卡收费5元/次的收益。 623不可定量的收益 图书在借阅中超期或者损坏的赔偿。63收益投资比 收益X万元,投资(含非一次性投资)X万元, 则收益/投资比=X。64投资回收周期 此系统回报周期在X年 7社会因素方面的可行性 7.1.法律方面的可行性合同责任:符合国家标准的合同,经双方签字后生效专利权与版权为软件投资方。7.2.使用方面的可行性采用软件管理图书馆日常工作,毫无疑问会在使用过程中产生新的需求和问题,这样也会不断地促进信息技术和软件应用的革新。经过研究,此系统的用户无使用方面的问题。3、 需求分析1引言随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落。但如果校图书馆仍采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。为了满足图书馆管理人员对图书馆书籍,读者资料,借还书信息等进行高效的管理,在工作人员具备一定的计算机操作能力的前提下,特编此图书管理系统软件以提高图书馆的管理效率。1.1编写目的:本需求的编写是为了研究图书管理系统软件的开发途径和应用方法。同时它也是进行项目策划、概要设计和详细设计的基础,是维护人员进行内部维护,信息更新,验收和测试的依据。1.2背景及范围:项目名称:图书管理系统软件任务提出者:张华项目开发者:薄海光 陈堃 程少华 陈宇 魏颖用户:各同学本产品是针对电脑管理图书的需求设计的,可以完成读者登记、购入新书、读者借还书等主要功能。1.3定义:图书管理系统:该系统是帮助图书馆管理人员对图书信息进行管理的软件。 2.项目概述为方便对图书馆书籍,读者资料,借还书等进行高效的管理,特编写该程序以提高图书馆的管理效率。使用该程序之后,图书馆管理人员可以管理读者的登记、图书的购入、借出以及归还等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的流通情况。2.1目标:2.1.1开发意图:使图书管理系统更加完善;使图书管理更加方便;减轻管理员的负担。2.2应用目标:通过本系统软件,能帮助图书馆管理人员利用计算机,快速方便地对图书馆书籍,读者资料,借还书等进行高效的管理。2.3开发背景:人工管理图书的手续繁琐、效率低下,给管理人员带来了诸多不便,如果有一套完善的图书管理软件,就可以方便管理图书,因此开发了本软件。2.4产品功能:图书管理系统软件具有输入、输出、查找功能。2.5用户特点:本软件的使用对象是图书馆的管理人员。会汉语、懂计算机的基本操作就可以利用该软件进行所需操作。E-R模型及数据流图数据字典及层次方框图3.具体需求3.1功能需求之一:1. 规格说明:读者登记,即输入读者的具体信息。2. 引言:为了把读者的具体信息写入读者目录文件中。3. 输入:读者具体信息。4. 处理:通过图书管理系统写入读者目录文件中。5. 输出:读者具体信息。3.2功能需求之二:1. 规格说明:输入新书的全部信息。2. 引言:为了输入新书的全部信息。3. 输入:新书的全部信息。4. 处理:通过图书管理系统写入图书目录文件中。5. 输出:新书信息的全部内容。3.3功能需求之三:1. 规格说明:查询读者的相关信息。2. 引言:根据读者编号查询读者的相关信息。3. 输入:读者信息的关键字(读者编号或读者姓名)。4. 处理:利用关键字在读者目录文件中找到此编号或姓名读者的相关信息。5. 输出:读者的相关信息。3.4功能需求之四:1. 规格说明:查询图书的信息。2. 引言:为了查找图书的相关信息。3. 输入: 图书信息的关键字(图书编号或书名)。4. 处理:利用关键字在图书目录文件中找到此图书分类号或书名图书的相关信息。5. 输出:图书的相关信息。3.5功能需求之五:1. 规格说明:输入读者借书信息。2. 引言:为了把读者借书的相关信息写入借书文件中。3. 输入:读者借书信息4. 处理: 通过图书管理系统写入借书文件中。5. 输入:读者借书信息的全部内容。3.6功能需求之六:1. 规格说明:查询读者借书的相关信息。2. 引言:为了查询读者借书的相关信息。3. 输入:借阅信息的关键字(借阅编号、读者编号或图书编号)。4. 处理:利用关键字在借书文件中查找此编号图书的相关信息。4性能需求1. 精度需求:在精度需求上,根据使用需要,在各项数据的输入、输出及传输过程中,可以满足各种精度的需求。2. 时间需求:在软件方面,响应时间,更新处理时间都比较快且迅速,基本满足用户需要。3. 灵活性:当用户需求发生变化时,设计的软件可作适当调整,灵活性大。4. 故障处理:1) 内部故障处理:在开发阶段可以随即修改数据库里的相关内容;2) 外部故障处理:执行非合理性操作时,可立即报错,通过与用户互动来纠错。5设计约束条件1. 技术约束:本项目的设计是在SQL Server 2000与Visual Basic 6.0两款软件的环境下进行的。2. 系统需求:当今市面上濒临淘汰的计算机配置完全可以流畅运行此软件。6接口需求:WINDOWS 9X/2000/NT/2003/XP.7需求注释:对于本软件,它的功能需求、性能需求、接口需求,从稳定性和可行性上都是可以的。四 结构化分析、设计部分一 总体设计说明书1引言1.1编写的目的总体设计的主要任务是设计程序的体系结构,也就是确定程序有哪些模块组成以及模块计的关系。总体设计过程首先寻找实现目标系统的各种不同的方案,需求分析阶段得到的数据流图是设想各种可能方案的基础。然后分析员从这些供选择的方案中选取若干个合理的方案,为每个合理的方案都准备一份系统流程图,列出组成系统的所有物理元素,进行成本/效益分析,并且制定实现这个方案的进度计划。分析员应该综合分析比较这些合理的方案,从中选出一个最佳方案向用户和使用部门负责人推荐。如果用户和使用部门的负责人接受了推荐的方案,分析员应该进一步为这个最佳方案设计软结构,通常,进行必要的数据库设计,确定测试要求并且是定测试计划。1.2定义总体设计又叫概要设计,主要是确定系统的具体实施方案和确定软件结构。2.总体设计(1) 基本设计概念和处理流程读者借还书书处理流程:更新图书资料处理流程:(2)结构3.接口设计(1)用户接口向用户提供命令软件回答信息检索书目匹配检索关键字的书目信息修改用户资料修改后新的用户资料借阅图书借阅成功的图书信息归还图书归还成功的图书信息(2) 外部接口接口传递信息硬件接口与打印机接口图书信息,用户信息,借阅信息与度条码机接口图书ISBN,借阅号软件接口与数据库接口图书信息,用户信息,借阅信息(3) 内部接口接口传递信息维护图书资料添加图书图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护图书资料修改图书信息图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护图书资料删除图书信息图书信息(书名,ISBN,定价,出版社,数量,是否可借)维护用户资料添加新用户用户信息(ID,姓名,年龄,性别,开户时间,余额,是否VIP,累计金额)维护用户资料修改用户资料用户信息(ID,姓名,年龄,性别,开户时间,余额,是否VIP,累计金额)维护用户资料删除用户资料用户信息(ID,姓名,年龄,性别,开户时间,余额,是否VIP,累计金额)用户主模块更新用户资料用户信息(ID,姓名,年龄,性别,开户时间,余额,是否VIP,累计金额)用户主模块用户充值金额用户主模块借阅图书借阅信息(ID,ISBN,数量,借出日期,押金)用户主模块归还图书借阅信息(ID,ISBN,数量,借出日期,押金)4.运行设计 (1) 运行模块组合创建模块查找模块修改模块删除模块管理员添加图书信息管理员修改书目信息管理员删除书目信息管理员添加新用户管理员修改用户信息管理员注销用户用户更新个人资料用户充值用户检索图书用户借阅图书用户归还图书(2) 运行控制运行控制控制方法管理员添加图书信息管理员填写书目信息并提交,系统在书目信息表中创建一个新数据项管理员修改书目信息管理员通过检索找到要修改的书目信息并修改,系统在书目信息表中修改后信息管理员删除书目信息管理员通过检索找到要删除的数目信息并删除,系统在书目信息表中写入修改信息管理员添加新用户管理员填写新用户资料提交,系统在用户资料表中创建一个新数据项管理员修改用户信息管理员通过检索找到要修改的用户信息并修改,系统在用户资料表中写入修改后的信息管理员注销用户管理员通过检索找到要销户的用户并注销,系统在用户资料表中删除该用户的信息用户更新个人资料用户重新填写可修改的用户资料部分并修改,系统在用户资料表中写入修改后的新数据项用户充值用户告知管理员充值金额,并付现金,管理员检索到该用户,填写充值金额,系统在用户资料表中该用户的数据项中更新余额一项用户检索图书用户填写要检索图书的关键字,系统检索图书信息表,输出匹配条目用户借阅图书用户通过检索找到要借阅的图书并借阅,系统修改图书信息表中该书目剩余数量一项,并在图书借阅表中添加借阅信息用户归还图书用户归还图书,系统删除图书借阅表中该用户对该书的借阅信息条目,并修改图书信息表中该书的剩余数据一项(3) 运行时间系统的运行时间基本可以达到用户所提出的要求5.系统数据结构设计(1) 数据库的逻辑设计在需求分析阶段已完成该系统所有的数据分析。根据给阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。(2)数据结构与程序的关系系统的数据结构由标准数据库语言SQL生成6.系统出错处理设计 出错信息A. 、输入用户名不存在:说明数据库没无此用户名,需开户。B. 、密码错误:说明用户名和密码不匹配。弹出警告信息后需重新输入密码。C. 、由于管理员没有及时保存数据造成的数据丢失:可通过数据还原,还原成最近的数据备份补救措施A、 后背技术说明准备采用的后备技术,当原始数据万一丢失时启用的副本的建立和启动的技术,例如周期性地把磁盘信息记录到磁带上去就是对于磁盘媒体的一种后备技术B、 降效技术说明准备采用的后备技术,使用另一个效率稍低的系统或方法来求得所需结果的某些部分,例如一个自动系统的降效技术可以是手工操作和数据的人工记录;C、 恢复及再启动技术说明将使用的恢复再启动技术,使软件从故障点恢复执行或使软件从头开始重新运行的方法。二、详细设计1引言 1.1编写目的详细设计阶段的任务就是把解法具体化,解决具体应怎样实现这个系统。也称为模块设计,详细地设计每个模块,确定实现模块所需的功能需要的算法和数据结构。1.2 定义在软件具体设计阶段的专用术语有:程序流程图、盒图(NS图)、判定表、判定树、PAD图五、面向对象分析、设计部分1引言 面向对象分析首要的工作,是建立问题域的对象模型,这个模型描述了现实世界中的“类于对象”以及它们之间的关系,表示了目标系统的静态数据结构。其中对象是对问题域中有意义的事务的抽象,他们既可能是物理实体, 也可能是抽象概念。要确定类和对象,我们先要找出候选的类于对象,然后在从中筛选出正确的类于对象。2 对象模型3动态模型4功能模型六、课程设计总结1.结构化分析、设计与面向对象分析、设计的不同结构化设计历来备受责备的就是需求和设计之间的鸿沟,开始不是很理解这个鸿沟的原因。现在再看,在结构化设计中模块和模块之间的关系,被紧紧局限于信息流,这限制了对模块之间众多关系的表达,也无法体现模块和模块之间其他的众多关系,包含各种各样的结构、行为、依赖、包含(在结构化设计中这种关系隐含在分层中)、继承、关联关系等等。它仅仅解决了模块在封装和信息隐藏方面的问题。再看面向对象设计方法,充分挖掘了“关系”的表达方式,可以尽可能的将事物之间复杂的关系予以体现,而这些关系是实现设计的关键。可以这样比喻目前为什么面向对象方法如此流行,记得小时候经常在各种杂志上看到许多这样的图画“一个钢球,从高处落下,击中某个翘起的装置,装置受到钢球的冲击,另一端抬起后,原来被截断的水流开始流通,并引发另一个设备开始工作,最终在另一端的某个蜡烛被点燃”。这就是在工业时代,众多人被机械设计的灵巧和创意所深深吸引的其中一份图画。姑且不论这样的装置是否有实用价值,但它肯定带给构思者无限的快乐和想象力,以至于当时经常可以看到各种各样这样的图画。而面向对象的方法正是因使用对象的概念让设计更接近于上面的各种设备,而让机械设计时代的疯狂和无尽的创造力进入了软件工程师的视野。由于能够充分表达事物之间各种各样的关系(更接近于结构和行为方面),面对对象设计方法在今天创造了一个奇迹,各式各样巧妙的设计实现、设计模式的流行,几乎在永无止境的激发着爱好设计的人们的想象力和创造力。再看最流行的类比:建筑和软件。建筑最主要的特征是什么结构。这也是为什么建筑能够和软件设计(最终设计都要体现在模块上)进行类比的潜在原因。相比之下,我更倾向于拿机械设计来和软件设计进行类比。回到结构设计化方法上来,虽然很多人都说结构化设计和面向对象设计没有本质上的区别,那是因为某些关系依然可以通过转换映射到信息流上,但这毕竟绕了一个大弯,而且由于缺乏足够的表达各种关系的能力,极大的限制了软件设计者的想象力和创造力。结构化设计方法使用自顶向下的手段,通过Process的逐层分解来理解和构建系统,然后把Process分配给模块,这里的“分配”这几乎让每一个初次接触结构化设计方法的人大惑不解,似乎模块是Process分解的结果,甚至在如果已知了某些模块时又直接将模块映射成一个黑盒的Process,Process和模块究竟是什么关系?沿着这个思路,很容易陷进“鸡生蛋,蛋生鸡”的困境。而事实是,模块和Process的诞生,两者之间根本没有任何关联,都是独自根据经验所产生的。为什么会产生这样的问题?究其原因,结构化设计方法和我们自出生以来认识事物的方式有着很大的不同。因为打我们一出生,眼里落入的就是各式各样的实体,而我们区分它们主要依靠就是事物各式各样的特征,包括事物不同的结构和特定的行为,而结构化设计方法试图通过信息流及其转换来认识系统,这天生造成了某种障碍。相比之下,面向对象方法则和我们所熟悉的认识世界的方式相吻合,更加的自然。那么结构化设计的优点到底是什么呢?考虑警察破案时,需要根据证人不断的描述犯罪嫌疑人特征对犯罪嫌疑人进行画像的场景,就可以理解结构化设计方法优

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论