项目1 软件工程概述及VISIO建模工具简介2023-1_第1页
项目1 软件工程概述及VISIO建模工具简介2023-1_第2页
项目1 软件工程概述及VISIO建模工具简介2023-1_第3页
项目1 软件工程概述及VISIO建模工具简介2023-1_第4页
项目1 软件工程概述及VISIO建模工具简介2023-1_第5页
已阅读5页,还剩31页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

学习内容1.1软件工程背景知识1.2软件与软件危机1.3软件质量评价1.4软件开发方法1.5项目管理概述1.6VISIO2016的安装及应用1.7网上购书系统初步建模软件工程概述及VISIO建模工具简介项目一软件工程概述及VISIO建模工具简介项目一本章要点了解软件工程背景知识;掌握软件危机的产生、表现及原因;掌握软件生命周期概念及方法;掌握软件质量评价方法;理解软件开发模型及方法;掌握VISIO建模工具。1.1软件工程背景知识项目一1.软件的定义软件是一类特殊的智力产品,它的研发有一个特殊的过程,这个被称为“软件生命周期”的过程,是整个软件工程知识体系所体现的过程。准确的说软件(Software)是一系列按照特定顺序组织的计算机数据和指令的集合。我们把各种不同功能的程序,包括用户为自己的特定的目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序的系统程序、管理和控制机器系统资源的程序及相关文档的完整集合,通常称为软件。软件由图1-1所示的三部分组成,一是计算机程序,二是数据,三是软件文档组成。图1-1软件基本组成1.软件不符合用户的实际需要2.软件开发生产率不高,不能满足客观需要3.软件产品质量差4.对软件开发成本和进度的估计不准确5.可维护性差6.软件的文档资料不完整和不合格7.软件成本逐年上升1.2软件与软件危机项目一1.2.1

软件危机主要表现1.实行分阶段的生命周期计划并严格管理,即将软件开发划分为多个阶段,对各个阶段实行严格的项目管理,并为每个阶段制定分阶段的计划及验收标准。2.坚持进行阶段评审,即在每个阶段都进行严格的评审,以便尽早发现软件开发中的错误,是一条必须遵循的重要原则。3.实行严格的产品控制,即进行合理的需求分析,并实行严格的版本控制。4.采用现代化程序设计技术,即采用最为现代化的开发技术,比如面向对象。5.结果应能清楚的审查,即为了提高软件开发过程的可见性,更好地进行管理,应该根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,从而使得所得到的结果能够清楚地审查,并用相关的文档体现。6.开发小组的人员应该少而精,即保证开发小组的人数少,但是素质高。7.不断改进软件工程实践,即软件从业人员应该不断的总结经验并学习新的软件技术。1.2软件与软件危机项目一1.2.2

软件工程七条基本管理原理

软件生命周期可以划分为6个阶段,制定计划、需求分析、设计、编码、测试、运行和维护,或按照“”的观点划分为7个阶段:问题定义、可行性研究、需求分析、软件设计、编码、软件测试和运行维护。目前,可将常见的软件开发模式大致分为4种类型。每种模式的代表模型有瀑布模型、快速原型模型、喷泉模型、基于构件的开发模型、敏捷开发模型等等,现对它们进行简要介绍如下:1.2软件与软件危机项目一1.2.3

软件生命周期

瀑布模型简称为“生命周期模型”或“线性顺序模型”。它的优点是:符合软件开发的思维过程,容易理解和运用;通过设置里程碑,明确每阶段的任务与目标;支持结构化软件开发,可为各阶段制定开发计划,进行成本预算;通过阶段评审,将开发过程纳入正确轨道;严格的计划性保证软件产品的按时交付。它的缺点主要是:缺乏灵活性,不能适应用户需求的变化;开始阶段的小错误被逐级放大,可能导致软件产品报废。它比较适合于功能和性能明确的小规模软件开发和生产。快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品所能完成功能的一个子集。和瀑布模型比较而言,快速原型模型的优点是:用户参与了软件系统开发的所有阶段,从而使用户的需求可以及时、准确地得到满足,系统的实用性较强;用户可以及早地接触和使用未来系统的原型,有利于后期的使用和维护;使用快速原型模型开发软件,其周期大为缩短,开发费用较少,而瀑布模型则正好相反。和瀑布模型比较,快速原型模型更适用于解决有不确定因素的问题或用户界面要求较高的中型系统。1.2软件与软件危机项目一

喷泉模型认为软件开发过程自下而上周期进行的各阶段是相互迭代和无间隙的。“无间隙”是指在各项活动之间没有明显的边界,如分析和设计活动之间没有明显的界限。正像水喷上去可以落下来时,既可以落在中间,也可以落在最底部,类似于一个喷泉。喷泉模型不像瀑布模型的各个阶段有明显的界限,所以开发人员可以同步进行开发。它的优点是可以提高软件项目的开发效率,节省开发时间,适应于面向对象的软件开发过程。但它的缺点是:由于喷泉模型在各个开发阶段是重叠的,在开发过程中需要大量的开发人员,因此不利于项目的管理。

基于构件的开发模型融合了快速原型的特殊种类螺旋模型的许多特征。它本质上是演化的支持软件开发的迭代方法。但是,构件组装模型是利用预先包装好的软件构件(有时称为“类”)来构造应用程序的,面向对象技术为软件工程的基于构件的过程模型提供了技术框架。它的优点是构件组装模型导致了软件的复用,提高了软件开发的效率。它允许多个项目同时开发,降低了费用,提高了可维护性,可实现分步提交软件产品。

敏捷开发模式是一种从1990年开始逐渐引起广泛关注的一些新型开发模式。

1.2软件与软件危机项目一(1)制定计划(2)需求分析(3)软件设计(4)程序编写(5)软件测试(6)运行/维护1.2软件与软件危机项目一1.2.3

软件生命周期6个阶段1.功能性:软件所实现的功能满足用户需求的程度。功能性反映了所开发的软件满足用户叙述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。2.可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠性对某些软件是重要的质量要求,它除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度。3.易使用性:对于一个软件,用户学习、操作、准备输入和理解输出时,所做努力的程度。易使用性反映了与用户的友善性,即用户在使用本软件时是否方便。4.效率:在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度。效率反映了在完成功能要求时,有没有浪费资源,此外“资源”这个术语有比较广泛的含义,它包括了内存、外存的使用,通道能力及处理时间。5.可维修性:在一个可运行软件中,为了满足用户需求、环境改变或软件错误发生时,进行相应修改所做的努力程度。可维修性反映了在用户需求改变或软件环境发生变更时,对软件系统进行相应修改的容易程度。一个易于维护的软件系统也是一个易理解、易测试和易修改的软件,以便纠正或增加新的功能,或允许在不同软件环境上进行操作。6.可移植性:从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。1.3软件质量评价项目一软件质量可分解成六个要素,面向数据结构的软件开发方法主要有Jackson方法和Warnier方法,是一种面向数据结构的软件开发方法,该方法以数据结构为基础,通过一组映射或转换过程来建立程序的结构。这两者差别主要有三点:一是它们使用的图形工具不同,分别使用Warnier图和Jackson图;另一个差别是使用的伪码不同;最主要的差别是在构造程序框架时,Warnier方法仅考虑输入数据结构,而Jackson方法不仅考虑输入数据结构,而且还考虑输出数据结构。1.4软件开发方法项目一一、面向数据结构的软件开发方法面向对象技术是软件技术的一次革命,在软件开发史上具有里程碑的意义。随着OOP(面向对象编程)向OOD(面向对象设计)和OOA(面向对象分析)的发展,最终形成面向对象的软件开发方法OMT(ObjectModellingTechnique)。这是一种自底向上和自顶向下相结合的方法,而且它以对象建模为基础,从而不仅考虑了输入、输出数据结构,实际上也包含了所有对象的数据结构。所以OMT彻底实现了PAM(问题分析法)没有完全实现的目标。不仅如此,OO技术在需求分析、可维护性和可靠性这三个软件开发的关键环节和质量指标上有了实质性的突破,彻底地解决了在这些方面存在的严重问题,从而宣告了软件危机末日的来临。由于不再在原来的程序模块中引入修改,所以彻底解决了软件的可修改性,从而也彻底解决了软件的可维护性,同时还提高了软件的可靠性和健壮性。1.4软件开发方法项目一二、面向对象的软件开发方法在传统的软件工程方法中,主要使用瀑布式顺序开发方法,包括需求分析和定义、系统设计、实现和单元测试、系统集成测试、运行维护等多个阶段,这一方法的优点是全面、严谨,但最大的缺陷,就是过程一旦启动就难以适应变化。这一方法是基于一个重要的假设前提——能够提出明确的需求。当面对快速变化、甚至是根本不明确的需求时,这种假设根本上就不成立,因此这种传统的开发方法的缺点就越来越突出,特别是应用软件的开发,由于它与市场的联系更加紧密,使用这种传统的开发方法,已经难以为继。我们需要寻找一种更加快速、成本合理的软件开发方法。原型法就是这样一种开发更加迅速、更加成本合理的开发方法。在软件开发过程中,最关键的步骤就是确切定义出需求,明确软件要实现的功能是什么,而这恰恰也是最困难的过程,因为现在许多用户在初期只有一个隐约的、大致的考虑,根本不可能提出具体明确的需求。这种情况下,使用快速原型进行反复交流、细化需求,就成为一种更加有效的方法。1.4软件开发方法项目一三、原型法

1978年,E.Yourdon和L.L.Constantine提出了结构化方法,即SASD方法,也可称为面向功能的软件开发方法或面向数据流的软件开发方法。1979年TomDeMarco对此方法作了进一步的完善。Yourdon方法是80年代使用最广泛的软件开发方法。它首先用结构化分析(SA)对软件进行需求分析,然后用结构化设计(SD)方法进行总体设计,最后是结构化编程(SP)。这一方法不仅开发步骤明确,SA、SD、SP相辅相成,一气呵成,而且给出了两类典型的软件结构(变换型和事务型),便于参照,使软件开发的成功率大大提高,从而深受软件开发人员的青睐。。1.4软件开发方法项目一四、SASD方法问题分析法PAM(ProblemAnalysisMethod,PAM),是80年代末由日立公司提出的一种软件开发方法。PAM方法希望能兼顾Yourdon方法、Jackson方法和自底向上的软件开发方法的优点,而避免它们的缺陷。它的基本思想是:考虑到输入、输出数据结构,指导系统的分解,在系统分析指导下逐步综合。这一方法的具体步骤是:从输入、输出数据结构导出基本处理框;分析这些处理框之间的先后关系;按先后关系逐步综合处理框,直到画出整个系统的PAD图。从上述步骤中可以看出,这一方法本质上是综合的自底向上的方法,但在逐步综合之前已进行了有目的的分解,这个目的就是充分考虑系统的输入、输出数据结构。PAM方法的另一个优点是使用PAD图。这是一种二维树形结构图,是到目前为止最好的详细设计表示方法之一,远远优于N-S图和PDL语言。这一方法在日本较为流行,软件开发的成功率也很高。由于在输入、输出数据结构与整个系统之间同样存在着鸿沟,这一方法仍只适用于中小型问题。1.4软件开发方法项目一五、问题分析法

可视化开发是90年代软件界最大的两个热点之一。随着图形用户界面的兴起,用户界面在软件系统中所占的比例也越来越大,有的甚至高达60~70%。可视化开发就是在可视开发工具提供的图形用户界面上,通过操作界面元素,诸如菜单、按钮、对话框、编辑框、单选框、复选框、列表框和滚动条等,由可视开发工具自动生成应用软件。这类应用软件的工作方式是事件驱动。对每一事件,由系统产生相应的消息,再传递给相应的消息响应函数。这些消息响应函数是由可视开发工具在生成软件时自动装入的。七、极限编程(ExtremeProgramming,XP)XP方法是一种经历过很多实践考验的一种软件开发的方法,它诞生于大约2003年。XP方法是敏捷开发模式的主流技术,其优点是开发者拥抱需求变化,XP使我们能够接受需求的变化。1.4软件开发方法项目一六、可视化开发方法软件产品与其他任何产业的产品不同,它是无形的,完全没有物理属性。对于这样看不见,摸不着的产品,难以理解,难于架驭。但它确实是把思想、概念、算法、流程、组织、效率、优化等融合在一起了。因此,要开发这样的产品,在许多情况下,用户一开始给不出明确的想法,提不出确切的要求。他说不清究竟他需要的是什么。在开发的过程中,程序与其相关的文档常常需要修改。在修改的过程中又可能产生新的问题,并且这些问题很可能在过了相当长的时间以后才会发现。文档编制的工作量在整个项目研制过程中占有很大的比重。但从实践中看出,人们对它不感兴趣、认为是不得不做的苦差事,不愿认真地去做。1.5项目管理概述项目一1.5.1项目的概念及特点

1)制定计划:规定待完成的任务、要求、资源、人力和进度等。

2)建立组织:为实施计划,保证任务的完成,需要建立分工明确的责任制机构。

3)配备人员:任用各种层次的技术人员和管理人员。

4)指导:鼓励和动员软件人员完成所分配的工作。

5)检验:对照计划或标准,监督和检查实施的情况。1.5项目管理概述项目一1.5.2项目管理内容与职能由于电子商务的迅猛发展,网上书店系统发展也已经达到一个较高的水准,现在的网上书店系统实现的功能也非常的多,最重要的当属图书的销售,也就是管理库房中的图书,以及管理用户的购物车,从而实现结账等一系列功能。另外网上书店系统还提供给用户查找数据库中图书相关记录的功能。在确认用户身份方面也已经比较完善,并且具有管理员的功能,管理员对整个数据库可以进行操作。现在拥有一些知名的网上书店系统如:当当,卓越等。就网上书店系统而言,由于网络已经覆盖全球,信息量大而独具优势。售书的理念也很简单,就是读者可以自己寻找自己喜爱的书及为替读者找寻他们想要的书。对于读者来说,网上书店近在咫尺,并且永不下班关门,读者可以随时随地自由地查询和订购图书,读者无需亲临书店,一档一档地找,一本一本地翻,只要坐在电脑前,开机上网即可买到所需书籍,而且读者的挑选余地也大多了,检索也很方便,同时还减少了书店销售过程中的支出,另外应当看到图书选购必得翻阅详看,耗时费力,特别是热衷书店者,几乎都是奋力开拓事业者和苦心求学深造者,时间对他们而言无比宝贵,网上书店节省了大量时间,这对于那些没有时间经常逛传统书店或其住所离传统书店较远的读者来说,具有实际意义。因此网上售书必将有长足的发展,开办网上购书系统也可以为在校大学生提供方便、廉价、高效的书店方式,促进文化传播,帮助国家和学校培养优秀的人才,具有长远的社会效益和经济效益。1.5项目管理概述项目一1.5.3网上购书系统项目调研分析电子商务——网上购书系统前台系统后台系统会员登录注册模块订单查询功能模块推荐图书模块图书分类列表模块图书搜索模块管理员管理模块订单销售管理模块购物车功能模块会员信息管理模块图1-1电子商务购书系统1.6.1Visio2016的下载与安装:首先在专业网站(如/soft/1227821.htm)下载Visio2016简体中文版软件包,下载完成后解开压缩包,然后再解压安装包中的SW_DVD5_Visio_Pro_2016_64Bit_ChnSimp_MLF_X20-42759.ISO文件(光盘镜像文件)。2.光盘镜像ISO文件解压缩后,在解压安装包文件中,查找安装程序(一般安装程序源文件以.exe结尾),并双击其中的setup.exe进入安装方式选择界面,如图1-8所示。项目一1.6VISIO2016的安装及应用图1-8安装方式选择界面1.6VISIO2016的安装及应用1.6.2Visio2016界面简介图1-11Visio2016的启动界面1.6VISIO2016的安装及应用1.6VISIO2016的安装及应用1.6.3利用Visio2016绘制用例图在Visio2016下单击“文件”菜单的“新建”选项。然后单击图中的“类别”选项卡,选择“软件和数据库”大类:1.6VISIO2016的安装及应用图1-25选择用例图1.6VISIO2016的安装及应用1.6VISIO2016的安装及应用图1-27绘制和编辑用例图图件长期以来,该书店业务一直采用手工管理。图书采购、库存、销售和核算的手工信息管理存在工作量大、服务质量差、工作效率低、耗费人员多,图书的市场、库存、销售、读者反馈等信息不能及时提供等问题。为了彻底改善书店图书信息管理的落后局面,一方面方便书店工作人员的管理,另一方面用户网上浏览图书、购买图书和反馈信息,特提出开发本系统。“网上书店系统”的建设,对提高书店服务质量、提高工作效率、加快信息反馈、增强竞争实力有着重大意义。该系统主要要求对书店的图书信息和用户(书店工作人员,网站注册用户即潜在购书者)信息的进行有效的管理;对图书的进存销等环节进行信息化管理;实现读者网上浏览图书,网上购书的可能;通过论坛同读者进行有效的沟通;通过聊天室实现作者和读者的实时交流;处理读者网上的投诉和建议。在性能上能对数据库录入;图书检索;用户信息查询;图书信息查询;论坛和bbs互动;网上购书。在安全与保密要求对书店中所有的图书能够供用户随时查阅;用户的个人信息可以由用户自己修改、添加;书店图书的信息只能由书店管理人员添加、修改;所有注册用户信息只能由书店管理人员查询。本系统希望通过构建一个ASP架构的电子商务网站,利用日益繁荣的互联网,为传统的书店打造一个新的销售平台。本系统希望通过电子信息化的手段对书店的进存销等环节进行管理,以达到人力与设备费用的减少,服务能力的提高,管理信息服务的改进,工作人员利用率的提高等目标。1.7网上购书系统初步建模项目一1.7.1项目开发背景

此流程可参考1.6节完成,用图表即流程图的形式表示,并加以叙述。市场计划部的采购员首先要对图书市场进行分析,对供书商和购书计划进行管理,然后进行图书订购。图书到店后填写入库单,将图书入库。书库的库管员首先核对入库单是否正确,如果不正确要求采购员修改入库单,如果正确则登记库存帐,根据库存情况将图书出库。图书出库后由销售部的售书员上架。顾客进入书店后浏览书架上的各类图书,一旦找到想要购买的图书,就通知售书员开具售书单,顾客持售书单到收款台交款,由收款员开具购书存根和发票,顾客再将售书单和存根交回售书员处,售书员将存根保留一联后在图书上盖章,顾客即可取书离店了。售书员每隔一段时间还要根据存根的情况进行盘架,将缺货信息反馈给书库,如果书库中库存有缺货图书则出库上架,如果没有,则将信息反馈给市场计划部的采购员从而形成新的购书计划。收款员每天也要根据所收书款的情况进行资金结算。1.7网上购书系统初步建模项目一1.7.2系统数据流程图建模

随着计算机、网络通讯和信息技术。电子商务在国际上得到广泛的应用,取得了巨大的成功。我国也不例外,特别是各大电子商务网站从无到有,得到很大的发展,并取得成功。为了适应新环境下的新的销售模式和顾客销售方式的改变,我们小组开发这个网上书店电子商务网站。它是基于Internet/Intranet及Web技术,建立以Browser/Server为结构模式、以数据库为后台核心应用、以服务,销售为目的信息平台。该系统将实现实体书店的网络化,使顾客足不出户就能购买到满意的图书,并可以通过网上书店的信心平台对所购买的图书进行信息反馈,这些反馈来的信息不但为图书采购员提供了很好的购书依据,也为后来的顾客提供了有价值的参考意见。网上书店以数据库为后台,将用户的管理、供书商管理、图书管理和销售管理全部实现数字化,减少了手工盘点的工作量,提高了工作效率。1.7网上购书系统初步建模项目一1.7.3项目开发说明图1-2B/S系统结构实现流程图用VISIO练习绘制图1-2:一、目的与任务目的:学会使用Visio2016,绘制各种软件工程图,侧重于结构化分析、设计、实现方面的建模。任务:掌握MicrosoftOfficeVisio2016的

温馨提示

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

评论

0/150

提交评论