您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 《软件工程》实验指导书(信计)
授课专业:信息与计算科学授课教师:江志华实验学时:16学时数学与信息科学学院2012年2月《软件工程》实验指导书---数信本(信息与计算科学)2实验1软件工程概念与相关工具1.1软件工程的计算环境(实验估计时间:90分钟)1.1.1背景知识软件工程学主要研究如何以较少的代价获得高质量的软件,而要达到这个目的,就必须研究软件开发方法和软件开发工具。软件开发方法就是开发软件的规范化方法。软件工具是指能支持软件生存周期中某一阶段(如系统定义、需求分析、设计、编码、测试或维护等)的需要而使用的软件系统;软件开发环境则是面向软件整个生存周期,为支持各个阶段的需要,在基本硬件和宿主软件的基础上使用的一组软件系统。软件工具和软件开发环境都是软件工程的重要支柱,对于提高软件生产率,改进软件质量,以及适应计算机技术的迅速发展有着越来越大的作用。从20世纪70年代末开始,专家们就致力于软件开发自动化工具的研究,并逐步形成了应用于软件过程的集成的项目支撑环境(IntegratedProjectSupportEnvironment)和计算机辅助软件工程(CASE,Computer-AidedSoftwareEngineering)工具。在此基础上建立集成式软件开发环境,全面支持软件开发过程,以期实现软件设计过程的自动化或半自动化。1.1.2实验目的1)理解软件工程的基本概念,熟悉软件、软件生存周期、软件生存周期过程和软件生存周期各阶段的定义和内容。2)通过Internet搜索与浏览,了解网络环境中主流的软件工程技术网站,掌握通过专业网站不断丰富软件工程最新知识的学习方法,尝试通过专业网站的辅助与支持来开展软件工程应用实践。1.1.3工具/准备工作在开始本实验之前,请预习教科书第一章的相关内容。需要准备一台带有浏览器、能够访问因特网的计算机。1.1.4实验内容与步骤1)请查阅有关资料,给“软件”下一个权威性的定义:《软件工程》实验指导书---数信本(信息与计算科学)3这个定义的来源是:2)“软件生存周期”是软件工程技术的重要基础,是对软件的长远发展的看法,这种看法把软件开始开发之前和软件交付使用之后的一切活动都包括在软件生存周期之内。请查阅有关资料,给出“软件生存周期”的定义:这个定义的来源是:3)“软件生存周期过程”概念进一步完善了关于软件生存周期的定义,其主要内容是:这个定义内容的来源是:4)由于工作对象和范围的不同以及经验的不同,对软件生存周期过程中各阶段的划分也不尽相同。但是,这些不同划分中有许多相同之处。相关的软件工程国家标准把软件生存周期划分为8个阶段,这8个阶段是:①②③④⑤⑥⑦⑧你认为把软件生存周期划分为不同阶段的意义何在:《软件工程》实验指导书---数信本(信息与计算科学)45)上网搜索和浏览,了解软件工程技术的应用情况,看看哪些网站在做着软件工程的技术支持工作?并将搜索结果记录下来。提示:一些软件工程专业网站的例子包括www.51CMM.COM(软件工程专家网)www.SA-SE.COM(系统分析&软件工程网)www.SERCenter.COM(软件工程研究中心)www.UML.NET.CN(火龙果软件工程-UML软件工程组织)你习惯使用的网络搜索引擎是:你在本次搜索中使用的关键词主要是:表1-1软件工程专业网站实验记录网站名称网址内容描述在本实验中将你感觉比较重要的2个软件工程专业网站记录下来:①网站名称:②网站名称:综合分析,你认为各软件工程专业网站当前的技术(如培训内容)热点是:①名称:主要内容:②名称:主要内容:《软件工程》实验指导书---数信本(信息与计算科学)5③名称:主要内容:1.2工具、环境与CASE(实验估计时间:90分钟)1.2.1背景知识软件工程的主要目标是提高软件生产率,改善软件质量和降低软件成本,而这些目标的实现必须依靠软件工具、软件开发环境和计算机辅助软件工程(CASE)的广泛应用。1.软件工具软件工具是“可用来帮助和支持软件需求分析、软件开发、测试、维护、模拟、移植或管理等目的而编制的计算机程序或软件。”它一般是为专门应用而开发,其主要目的是为了提高软件生产率和改善软件的质量。如今,软件工具重视用户界面的设计,不断地采取新理论和新技术,正由单个工具向多个工具集成的方向发展,且注重工具间的平滑过渡和互操作性。软件工具的商品化推动着软件产业的发展,而软件产业的发展,又增加了对软件工具的需求,促进了软件工具的商品化进程。软件工具的范围很广,它既包括比较成熟的传统工具,如操作系统、编译程序、解释程序和汇编程序等,又包括支持软件生存周期各阶段,如需求分析、设计、编码、测试、维护等的开发和管理工具。例如,一项分类标准把软件工具分为13类,它们是系统模拟和模型工具、需求追踪工具、需求分析工具、设计工具、编码和单元测试工具、测试和集成工具、文档工具、项目管理工具、配置管理工具、质量保证工具、度量工具、软件再用工具、其他工具。2.软件开发环境软件开发环境是指在计算机基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统。1985年第八届国际软件工程会议提出的关于“软件开发环境”的定义是:“软件开发环境是相关的一组软件工具集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成。”一般说来,软件开发环境都具有层次式的结构,例如可区分为四层:1)宿主层:它包括基本宿主硬件和基本宿主软件。《软件工程》实验指导书---数信本(信息与计算科学)62)核心层:包括工具组、环境数据库、通信设施和运行时刻支持设施。3)基本层:包括一组工具,如编译程序、编辑程序、调试程序、连接程序和装配程序等。这些工具都是由核心层来支持的。4)应用层:以特定的基本层为基础,包括一些补充工具,借以更好地支持各种应用软件的研制。按内容分,软件开发环境一般由环境数据库、接口软件和工具组等构成。1)环境数据库。这是软件开发环境的核心,其中存放的信息有被研制软件在其生存周期中所必需的信息和软件研制工具的有关信息等。例如,它把经过各种软件工具加工后的软件产品和半成品(如各种文件、源代码及测试数据)存入库内,以便根据需要进行查询、修改或输出等。在环境数据库中,可以分别标识的信息组称为对象;作为一组相关的版本而存在的一组对象称为版本组。把一个项目中各个不同的“对象组”组合起来,就可以构成各种不同的软件配置。2)接口软件。包括系统与用户的接口、子系统和子系统之间的接口。开发环境要求所有的接口都具有统一性。例如,为了实现用户和各种系统的通信,要求有统一调用方式。3)工具组。软件开发环境中的工具彼此有交互作用。工具组中的各个工具被设计成由一些基本功能成分组成。这些成分可以组合,供用户选用,并且可通过环境数据库进行通信。语言工具。它一般提供编译(或解释)程序、连接装配程序、调试程序、静态及动态分析程序等一系列语言支撑工具。也有的系统支持非过程语言的运行。质量保证工具。目前大量使用的仍是静态、动态测试技术以及各种形式的评审技术。与形式方法相联系的程序证明和验证技术已为许多专家所重视。需求分析及设计工具。主要由文本编辑工具、图形工具及一致性检验工具等支持。配置管理工具。对于不同用户或不同的硬件配置,一个系统往往需不同的软件配置;即使同一软件也有不同的版本;加上软件产品的修改需要进行严格的管理等原因,软件的配置管理已成为软件生产管理的重要课题。软件开发环境的发展方向是集成化的软件工程环境,即软件生存周期中各个阶段的开发环境(工具与支持系统)集成为一致的用户接口,包括制定各种标准接口。以下一些名称具有相同或类似的含义:软件开发环境(SDE)、软件工程环境(SEE)、软件支持环境(SSE)、项目支持环境(PSE)、自动开发环境(ADE)、集成化程序设计环境(IPE)、工具盒(Toolbox)、工具箱(Toolkit)。《软件工程》实验指导书---数信本(信息与计算科学)73.计算机辅助软件工程(CASE)CASE是一组工具和方法的集合,用来辅助软件开发生命周期各阶段进行软件开发,它是软件开发管理、软件开发方法、软件开发环境和软件工具等方面研究和发展的产物,CASE把软件开发技术、软件工具和软件开发方法集成到一个统一的框架中,并且吸取了计算机辅助设计(CAD)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。因而,从产业角度讲,CASE是种类繁多的软件开发和系统集成的产品及软件工具的集合。CASE可以简单到单个工具,它支持某个特定的软件工程活动,或者复杂到一个完整的环境,包含了工具、数据库、人员、硬件、网络、操作系统、标准以及许多其他部件。CASE的构造积木块如图1-1所示。每个构造积木块是形成其上一层的基础,而CASE工具位于构造积木块的顶部。环境体系结构由硬件平台和操作系统(包括网络和数据库管理软件)构成,铺设了CASE的基石。但是,CASE环境本身要求其他的构造积木块。一组可移植服务提供了CASE工具及其集成框架与环境体系结构间的连接桥梁。集成框架是一组专用程序,它们使得单个的CASE工具可以和其他工具相互通信,能够创建项目数据库,以及使终端用户(软件工程师)看到同样的软件界面。可移植服务允许CASE工具及其集成框架能够跨越不同的硬件平台和操作系统使用,而不需要大量的相应修改。某些CASE工具保持“点解决方案”,即工具被用于辅助某个特定的软件工程活动(如分析建模),但并不直接和其他工具通信,不关联到一个项目数据库,也不是某个集成CASE环境的一部分。这种方案虽然不很理想,但CASE工具仍可以被有效地使用。对CASE工具的分类,可以根据功能、它们被作为管理工具还是技术工具、它们在软件工程过程各个步骤中的使用、支撑它们的环境体系结构(硬件和软件)、或者它们的《软件工程》实验指导书---数信本(信息与计算科学)8起源或价格来划分。按使用的功能来进行分类,主要有:信息工程工具。过程建模和管理工具。项目计划工具。风险分析工具。项目管理工具。需求跟踪工具。度量和管理工具。文档工具。系统软件工具。质量保证工具。数据库管理工具。软件配置管理工具。分析和设计工具。原型和仿真工具。界面设计和开发工具。原型工具。编程工具。集成和测试工具。静态分析工具。动态分析工具。测试管理工具。客户/服务器测试工具。再工程工具。4.GB/T15853—1995软件支持环境GB/T15853—1995《软件支持环境》规定了软件支持环境(softwaresupportenvironment)的基本要求,软件开发支持环境的内容及实现方法,以及对软件生存期支持部门软件支持能力的具体要求,适用于软件支持环境的设计、建立、管理和评价。GB/T15853—1995定义的软件支持环境由一个宿主机系统,加上其他有关的设备和规《软件工程》实验指导书---数信本(信息与计算科学)9程而构成。它能对目标机系统(或对功能和物理上相关的一组目标机系统)的软件提供全面的支持,包括性能评价、系统与软件生成、开发与修改测试、模拟与仿真、培训、软件集成、配置管理、软件的运行分配。软件支持环境又分为软件开发支持环境和软件生存期支持环境两种类型。前者是由软件开发单位确定、并经任务委托单位认可的资源,用于支持合同项目中的软件需求;而后者是由软件生存期支持部门使用的(属于任务委托单位的)资源,用于为指定的目标机系统提供整个生存期内的软件支持。1.2.2实验目的1)熟悉软件工具、软件开发环境以及CASE工具的基本概念及其分类。2)了解主流的软件工具和软件开发环境产品。3)通过Internet搜索与浏览,了解软件工具、软件开发环境和CASE工具的发展与应用状况,进一步掌握通过专业网站丰富软件工程最新知识的学习方法,尝试通过专业网站的辅助与支持来开展软件工程应用实践。4)了解GB/T15853-1995《软件支持环境》的相关内容。1.2.3工具/准备工作在开始本实验之前,请预习教科书第一章的相关内容。请联系指导老师或者熟识软件工程技术的人士,如软件企业的职员和具有丰富开
本文标题:《软件工程》实验指导书(信计)
链接地址:https://www.777doc.com/doc-166323 .html