软件工程实验报告初识软件工程_软件工程的实验报告
软件工程实验报告初识软件工程由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件工程的实验报告”。
GDOU-B-11-112学生实验报告书(学生用表)实验名称 学院(系)学生姓名 学号 初识软件工程 专业 实验地点 课程名称 软件工程 班级 实验日期 课程号一,实验目的 软件工程涉及的知识内容多,软件工具多、标准多,本实验的目的是为了软件工程 初学者介绍网络学习环境,通过对有关知识的检索,使学习者对软件工程有一个初步的 了解,为后续学习打下基础。二,实验原理(1)软件工程的概念(2)软件工程的质量与控制(3)工程工具(4)网络学习(5)软件创业的成功范例 三,实验环境 硬件:联网计算机,校园网和因特网。软件:Windows 操作系统。Office 软件等。四,实验内容(1)软件的概念与特点。答:软件是用户与硬件之间的接口界面。用户主要是通过软件与计算机进行交流。软件 是计算机系统设计的重要依据。为了方便用户,为了使计算机系统具有较高的总体效用,在设 计计算机系统时,必须全局考虑软件与硬件的结合,以及用户的要求和软件的要求。1.运行时,能够提供所要求功能和性能的指令或计算机程序集合。2.程序能够满意地处理信息的数据结构。3.描述程序功能需求以及程序如何操作和使用所要求的文档。以开发语言作为描述语言,可以认为 : 软件=程序+数据+文档。(2)按照国家的标准,软件的生命周期划分为几个阶段?软件生命周期中各个阶段 的主要任务是什么? 答:依据不同的原则对软件生命周期的划分也不同,《软件工程国家标准——计算机软件开 发规范》(GB8566—88)中将软件生命周期划分为 8 个阶段:可行性研究与计划、需求分析、概要 设计、详细设计、实现(包括单元测试)、组装测试(集成测试)、确认测试、使用和维护。本书按照人 们所习惯的粗分方法把上面 8 个阶段划分为计划、开发和维护 3 个阶段,在概述其他两个阶段的基 础上重点介绍软件的开发过程。概括地说,软件生命周期由软件定义、软件开发和运行维护三个时期组成,每个时期又 可进一步划分成若干个阶段。软件定义时期的任务是确定软件开发工程必须完成的总目标;确定工程的可行性;导出实现工程 目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。这个时期的工作通常又称为系统分析,由系统分析员负责完成。软件定义时期通常进一步划分 成三个阶段,即问题定义、可行性研究和需求分析。开发时期具体设计和实现在前一个时期定义的软件,它通常由下述四个阶段组成:概要设计,详 细设计,编码和单元测试,综合测试。其中前两个阶段又
称为系统设计,后两个阶段又称为系统实现。运行维护时期的主要任务是使软件持久地满足用户的需要。具体地说,当软件在使用过程中发现 错误时应该加以改正; 当环境改变时应该修改软件以适应新的环境; 当用户有新要求时应该及时改进 软件以满足用户的新需要。通常对维护时期不再进一步划分阶段,但是每一次维护活动本质上都是一 次压缩和简化了的定义和开发过程。下面简要介绍上述各个阶段应该完成的基本任务。1.问题定义 问题定义阶段必须回答的关键问题是: “要解决的问题是什么”。如果不知道问题是什么就试图解决 这个问题,显然是盲目的,只会自白浪费时间和金钱,最终得出的结果很可能是毫无意义的。尽管确 切地定义问题的必要性是十分明显的,但是在实践中它却可能是最容易被忽视的一个步骤。通过调研,系统分析员应该提出关于问题性质、工程目标和工程规模的书面报告,并且需要得到 客户对这份报告的确认。2.可行性研究 这个阶段要回答的关键问题是:“上一个阶段所确定的问题是否有行得通的解决办法”。并非所有问 题都有切实可行的解决办法,事实上,许多问题不可能在预定的系统规模或时间期限之内解决。如果 问题没有可行的解,那么花费在这项工程上的任何时间、资源和经费都是无谓的浪费。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。必须记住,可 行性研究的目的不是解决问题,而是确定问题是否值得去解。怎样达到这个目的?当然不能靠主观猜 想而只能靠客观分析。系统分析员必须进一步概括地了解用户的需求,并在此基础上提出若干种可能 的系统实现方案,对每种方案都从技术、经济、社会因素(例如,法律)等方面分析可行性,从而最终 确定这项工程的可行性。3.需求分析 这个阶段的任务仍然不是具体地解决客户的问题,而是准确地回答“目标系统必须做什么”这个问 题。虽然在可行性研究阶段已经粗略了解了用户的需求,甚至还提出了一些可行的方案,但是,可行 性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法,因此许多细节被忽略 了。然而在最终的系统中却不能遗漏任何一个微小的细节,所以可行性研究并不能代替需求分析,它 实际上并没有准确地回答“系统必须做什么”这个问题。需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就 是对目标系统提出完整、准确、清晰、具体的要求。用户了解他们所面对的问题,知道必须做什么,但是通常不能完
完整准确地表达出他们的要求,更 不知道怎样利用计算机解决他们的问题;软件开发人员知道怎样用软件实现人们的要求,但是对特定 用户的具体要求并不完全清楚。因此,系统分析员在需求分析阶段必须和用户密切配合,充分交流信 息,以得出经过用户确认的系统需求。这个阶段的另外一项重要任务,是用正式文档准确地记录对目标系统的需求,这份文档通常称为 规格说明(specification)。4.概要设计 这个阶段的基本任务是,概括地回答“怎样实现目标系统?”这个问题。概要设计又称为初步设计、逻辑设计、高层设计或总体设计。首先,应该设计出实现目标系统的几种可能的方案。软件工程师应该用适当的表达工具描述每种 可能的方案,分析每种方案的优缺点,并在充分权衡各种方案的利弊的基础上,推荐一个最佳方案。此外,还应该制定出实现所推荐的方案的详细计划。如果客户接受所推荐的系统方案,则应该进一步完成本阶段的另一项主要任务。上述设计工作确定了解决问题的策略及目标系统中应包含的程序,但是,对于怎样设计这些程序,软件设计的一条基本原理指出,程序应该模块化,也就是说,一个程序应该由若干个规模适中的模块 按合理的层次结构组织而成。因此,概要设计的另一项主要任务就是设计程序的体系结构,也就是确 定程序由哪些模块组成以及模块间的关系。5.详细设计 概要设计阶段以比较抽象概括的方式提出了解决问题的办法。详细设计阶段的任务就是把解法具 体化,也就是回答“应该怎样具体地实现这个系统”这个关键问题。这个阶段的任务还不是编写程序,而是设计出程序的详细规格说明。这种规格说明的作用很类似 于其他工程领域中工程师经常使用的工程蓝图,它们应该包含必要的细节,程序员可以根据它们写出 实际的程序代码。详细设计也称为模块设计、物理设计或低层设计。在这个阶段将详细地设计每个模块,确定实现 模块功能所需要的算法和数据结构。6.编码和单元测试 这个阶段的关键任务是写出正确的容易理解、容易维护的程序模块。程序员应该根据目标系统的性质和实际环境,选取一种适当的高级程序设计语言(必要时用汇编语 言),把详细设计的结果翻译成用选定的语言书写的程序,并且仔细测试编写出的每一个模块。7.综合测试 这个阶段的关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求。8.软件维护 维护阶段的关键任务是,通过各种必要的维护活动使系统持久地满足用户的需要。通常有四类维护活动:改正性维护,也就是诊断和改
正在使用过程中发现的软件错误;适应性维 护,即修改软件以适应环境的变化;完善性维护,即根据用户的要求改进或扩充软件使它更完善;预 防性维护,即修改软件为将来的维护活动预先做准备。虽然没有把维护阶段进一步划分成更小的阶段,但是实际上每一项维护活动都应该经过提出维护 要求(或报告问题),分析维护要求,提出维护方案,审批维护方案,确定维护计划,修改软件设计,修改程序,测试程序,复查验收等一系列步骤,因此实质上是经历了一次压缩和简化了的软件定义和 开发的全过程。每一项维护活动都应该准确地记录下来,做为正式的文档资料加以保存。我国国家标准《计算机软件开发规范》(GB8566—88)也把软件生命周期划分成 8 个阶段,这些阶 段是:可行性研究与计划,需求分析,概要设计,详细设计,实现,组装测试,确认测试,使用和维 护。其中,实现阶段即是编码与单元测试阶段,组装测试即是集成测试,确认测试即是验收测试。可 见,国家标准中划分阶段的方法与前面讲的阶段划分方法基本相同,差别仅仅是:因为问题定义的工 作量很小而没有把它作为一个独立的阶段列出来; 由于综合测试的工作量过大而把它分解成了两个阶 段。在实际从事软件开发工作时,软件规模、种类、开发环境及开发时使用的技术方法等因素,都影 响阶段的划分。事实上,承担的软件项目不同,应该完成的任务也有差异,没有一个适用于所有软件 项目的任务集合。适用于大型复杂项目的任务集合,对于小型且较简单的项目而言往往就过于复杂了。因此,一个科学、有效的软件工程过程应该定义一组适合于所承担的项目特点的任务集合。一个任务 集合通常包括一组软件工程工作任务、里程碑和应该交付的产品(软件配置成分)。[Page] 生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。刚才讲过,实际从事软件开发工作时应该根据所承担的项目的特点来划分阶段,但是,下面讲述 软件过程模型时并不是针对某个特定项目讲的,因此,只能使用“通用的”阶段划分方法。由于瀑布模型与快速原型模型的主要区别是获取用户需求的方法不同,因此,下面在介绍生命周期模型时把“规 格说明”作为一个阶段独立出来。此外,问题定义和可行性研究的主要任务是概括地了解用户的需求,为了简洁地描述软件过程,把它们都归并到需求分析中去了。同样,为了简单起见,把概要设计和详 细设计合并在一起称为“设计”。(3)软件工程质量与控制。答:四上运行的算法拿到
了五上用,但它的处理器换了,导致了数据的“溢出”,所以发射三十七秒后坠毁。(4)软件工程的标准。答:按照国家的软件开发标准可以有以下的开发标准:(1)开发进度月报编写规范..(2)操作手册编写规范(3)数据库设计说明书编写规范(4)数据要求说明书编写规范(5)概要设计说明书编写规范(6)模块开发卷宗编写规范(7)测试分析报告编写规范(8)测试计划文档编写规范(9)用户手册编写规范(10)详细设计说明书编写规范(11)件质量保证计划编写规范(12)软件配置管理计划编写规范(13)软件需求说明书编写规范(14)项目开发总结报告编写规范(5)软件工程模型过程。(6)软件创业的典型。答:巨人汉卡是史玉柱的创业起点,989 年 10 月,深圳。史玉柱举起一台 IBM286,摔在地上,接着,又举起一台 IBM286,摔在地上。两名员工抱走剩下的几台电脑和打印机,从此没了踪迹„„ 1988 年,从深圳大学研究生毕业,史玉柱回到合肥原单位。没几天,他提交了辞职报告。向以 前帮过的朋友借了一台 IBMPC,史玉柱开始在家编写文字处理软件。“我是从我的原单位统计局看出 这个市场需求的。“当时每个单位都花 2 万元购置一台四通打字机,同时也在购置电脑。大多数情况 ” 下,电脑总是被放在一旁不用。我就想编一套软件,取代四通打字,直接用电脑打字。” 半年之后,M-6401 在史玉柱合肥的家中诞生。史玉柱送了一套给原单位。几张软盘一装,就能 打出比四通打字机 24 点阵更漂亮的 64 点阵字,而且,编辑屏幕比四通打字机大很多,单位的四通打 字机从此被放到一旁没人用了。一看有戏,史玉柱立即揣软盘,南下深圳。史玉柱在深圳大学有个老师,同时是天津大学深圳科 贸发展公司员工。老师很器重史玉柱,专门为史玉柱成立电脑部,交给史玉柱承包。史玉柱每月只要 交一两千元固定的管理费用,剩下都归自己所有。没钱买电脑,史玉柱将自己的软件演示给卖电脑的老板看,“我现在没钱,你让我先拿回去,等 我软件卖了钱,给你多加 1000 元利润。”卖电脑的老板居然同意了,让副经理将电脑抱给史玉柱。这 名副经理后来加入了史玉柱公司,现在是征途公司副董事长。没钱打广告,史玉柱跑到北京,闯进《计算机世界》报社广告部,演示软件给当时的广告主任贺 静华看。贺静华答应先给史玉柱打三期 1/4 版广告。1989 年 8 月 2 日,《计算机世界》第一次刊出了史玉柱写的 M6401 中文软件广告前天,广州一 家政府机关打电话过来说要买,史玉柱跳上中巴赶到广州去,留了三套软件给他们。回来后,史玉柱 立刻接到了宁波的要货电
话。8 月 16 日,史玉柱收到三张银行汇款,一共 1.5 万元。一张 8820 元,是广州批发的三套;另外 两张是零售汇款,每张 3500 元。8 月收入达到 4 万多元,9 月份 16 万,10 月份超过 100 万。M6401 开始是软加密,很快被破解,史玉柱立即开始使用加密卡。8 月底,9 月初,经朋友介绍,史玉柱招聘了三个员工。到 10 月份,其中一名员工说: “我们每 个人都应该有股份,大家应该将赚到钱的分掉。”史玉柱不同意,主张继续打广告。史玉柱对员工说: 股份的事情可以商量,但每人 25%不可能。” “软件是我开发的,启动资金是我出的。我至少应该控股。可以给两人 10%到 15%。”两位员工嫌太少,闹僵之后,史玉柱摔了电脑,管财务的员工不参与,另 外两名员工只好抱着剩下的几台电脑和打印机,走人了事。“我从此再不搞股份制了。“母公司一定我个人所有,下面的公司可以考虑我控股。“中国人合 ” ” 作精神本来就很差,一旦有了股份,就有了和你斗的资本。造成公司结构不稳定。“后来我就给我的 ” 高管高薪水和奖金,就是给比他应该得到的股份分红还要多的钱。我认为,这个模式是正确的,从此 以后,我的公司就再没发生过内斗。” 10 月,史玉柱将 100 万元广告砸向《计算机世界》,M6401 月销售额乘势攀升到了 500 万元。1990 年前三个月,史玉柱已经挣到了 3000 万元。此时,求伯君的 WPS 借助方正的品牌和渠道横空出世,史玉柱一看不妙,带领一名助手跑进深 圳大学学生公寓封闭开发 M6402。从 M6402 开始,史玉柱开始使用巨人汉卡名称。“当时 IBM 蓝色 巨人最火,我们就抄袭了巨人这个名称。” 等到 M6402 投入市场的时候,WPS 已经超越了 M6401,巨人 M6402 缩短了和 WPS 差距,但还 是无法超过 WPS。史玉柱再次组织了十几个人的研发队伍,跑到深圳大学封闭开发巨人 M6403。1991 年春节刚过,深圳。巨人连锁会议。经销商包机过来,现场订货,史玉柱当场拿下 3500 万 元现金支票。成绩注:请用 A4 纸书写,不够另附纸。指导教师日期第 页,共 页
《软件工程》实验报告专业班级微软IT一班学生姓名指导教师赵春刚实验一需求分析一、实验目的通过对软件项目的需求分析,掌握需求分析的主要方法和技术,了解需求分析过程。二、......
《软件工程》课程实验报告实验名称:教务管理系统之子系统——学院课程安排姓名:院 (系):软 件 学 院专业班级:学号:指导教师:地点:成绩:时间:2012 年 10月 日 至 2012 年 11月 8 日1.实......
实验三:面向对象的系统对象模型实验一、实验目的1: 熟悉面向对象分析的基本方法,加深理解对象模型、动态模型和功能模型的意义和 作2: 学习使用rose工具进行面向对象分析的方......
江 西 理 工 大 学软件工程 实验报告实验名称 实验2 编写软件可行性分析报告 实验日期 2014-04-03 专业班级 计算机111班 桌号实 验 人学号同组人一、实验目的和要求对一个......
软件工程实验报告学院: 班级: 姓名: 学号:软件规格说明书实验报告一.实验目的1.通过实验掌握软件工程中对于软件规格的设计。 2.了解软件规格说明书的设计要求。 二.实验内容1.......
