ImageVerifierCode 换一换
格式:DOCX , 页数:70 ,大小:128.10KB ,
资源ID:5784301      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5784301.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程.docx

1、软件工程软件工程第1部分 软件工程基础第1章软件及软件工程介绍1.1软件与软件危机1.1.1软件的作用计算机软件已经成为世界舞台上最为重要的科技领域,商业、科学和工程都离不开软件技术。现在的软件技术具有产品和产品生产载体的双重作用。1.1.2软件的概念及特性1.软件的概念一般可以将软件划分为系统软件、应用软件和介于这两者之间的中间件。计算机软件的传统定义为:软件是计算机系统中与硬件相依存的另一部分,软件包括程序、数据及其相关文档的完整集合。程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。2.软件的特性1)形态特性

2、。软件是无形的、不可见的逻辑实体。2)智能特性。3)开发特性。4)质量特性。A.软件的需求在软件开发之初常常是不确切的;B.软件测试技术存在不可或缺的局限性;C.已经长期使用或多次反复使用的软件没有发现问题,但这并不意味着今后的使用总不会出现问题。5)生产特性。6)管理特性。7)环境特性。8)维护特性。9)废弃特性。10)应用特性。1.1.3软件危机软件开发周期长、成本高、质量差、维护困难,导致60年代末软件危机的爆发,其突出的实例是IBM公司在1963年-1966年开发的IBM 360机的操作系统。软件危机发生的原因主要有以下方面:1)缺乏软件开发的经验和有关软件开发数据的积累,使得开发工作

3、的计划很难制订;2)软件人员与用户的交流存在障碍;3)软件开发过程不规范,缺少方法论和规范的指导;4)随着软件规模的增大,其复杂性往往会呈指数型增长;5)缺少有效的软件评测手段,提交用户的质量差。1.2软件工程及其基本原理1.2.1软件工程的概念软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。1.2.2软件工程的目标软件工程的目标是运用先进的软件开发技术和管理方法来提高软件的质量和生产率,也就是要以较短的周期、较低的

4、成本生产出高质量的软件产品,并最终实现软件的工业化生产。衡量软件质量的6个特性:功能性、可靠性、可使用性、效率、可维护性和可移植性。1.2.3软件工程的基本原理1983年美国TRW公司的B.W.Boehm概括出著名的软件工程7条基本原理:1.按软件生存周期分阶段制订计划并认真实施;2.坚持进行阶段评审;3.坚持严格的产品控制;4.使用现代程序设计技术;5.明确责任;6.用人少而精;7.不断改进开发过程。1.3软件生命周期软件有一个孕育、诞生、成长、成熟和衰亡的过程,称此过程为软件生命周期或软件生存期。软件生存期由软件定义、软件开发和运行维护3个时期组成。软件定义时期的主要任务是解决“做什么”的

5、问题,它通常又分为3个阶段:问题定义、可行性研究和需求分析。软件开发时期的主要任务是解决“如何做”的问题,通常由概要设计、详细设计、编码和测试4个阶段组成。软件运行维护时期的主要任务是使软件持久地满足用户的需要,通常有四类维护活动:改正性维护、适应性维护、完善性维护和预防性维护。里程碑对于软件开发的管理非常重要。开发过程中的典型文档包括:A.软件需求规格说明书;B.项目计划;C.软件测试计划;D.软件设计说明书;E.用户手册。各个阶段所要完成的基本任务有:1)问题定义和可行性研究本阶段要回答的关键问题是“到底要解决什么问题?在成本和时间的限制条件下能否解决问题?是否值得做?”2)需求分析本阶段

6、要回答的关键问题是“目标系统应当做什么?”3)软件设计设计是软件工程的核心技术。本阶段要回答的关键问题是“如何做出目标系统?”4)程序编码和单元测试本阶段要解决的问题是“正确地实现已做的设计”,即“如何编写正确的、可维护的程序代码?”5)集成和系统测试测试是控制软件质量的重要手段,本阶段的主要任务是做集成测试和系统测试。6)软件运行和维护已交互的软件投入正式使用,便进入运行阶段。通常有4种类型的维护:改正性维护、适应性维护、完整性维护和预防性维护。1.4软件工程方法学把在软件生命周期全过程中使用的一整套技术的集合称为方法学(methodology),也称为范型(paradigm)。软件工程方法

7、学包含3个要素:方法、工具和过程。1.4.1结构化方法学结构化方法学也称为传统方法或生命周期方法。它采用结构化技术来完成软件开发的各项任务。这种方法学将软件生命周期的全过程分为若干个阶段,然后顺序地逐步完成每个阶段的任务。1.4.2面向对象方法面向对象方法把数据和行为看成同等重要,是将数据和对数据的操作紧密地结合起来的方法。1.5软件工程知识体系及知识域介绍软件工程教育分为3个历史时期:A.1978年以前:软件工程的教育以计算机专业的一门孤立的课程形式存在;B.1978-1988年期间:早期的研究生教育;C.1988年以后:快速发展的研究生学科教育。“SWEBOK指南”项目:A.软件工程知识体

8、系指南的目标:a)促使软件工程本体知识成为世界范围的共识;b)澄清软件工程与其它学科的关系,并且确定软件工程学科的范围;c)反映软件工程学科内容的特征;d)确定软件工程本体知识的各个专题;e)为相应的课程和职业资格认证材料的编写奠定基础。B.软件工程知识体系指南的内容:10个知识域(KA),分为两类过程,一类是开发和维护过程,包括:软件需求、软件设计、软件构造、软件测试和软件维护;另一类是支持和组织过程,包括:软件配置管理、软件工程管理、软件工程过程、软件工程工具与方法和软件质量。1.6软件产业的形成与发展1.6.1我国软件产业的形成主要经历了四个阶段:第一阶段:萌芽期(20世纪70年代至80

9、年代初)第二阶段:起步期(20世纪80年代初至80年代末)第三阶段:进入期(20世纪90年代初至2000年初)第四阶段:发展期(网络软件时期,2000年至今)1.6.2全球软件产业的发展已经经历了比较完整的5代:第一代:早期专业的服务公司(1949年-1959年)第二代:早期软件产品公司(1959年-1969年)第三代:强大的企业解决方案提供商的出现(1969年-1981年)第四代:客户大众市场软件(1981年-1994年)第五代:互联网增值服务(1994年至今)1.6.3软件产业的发展模式1.美国模式技术与服务领导型2.印度模式国际加工服务型3.爱尔兰模式生产本地化型4.日本和欧洲模式嵌入式

10、系统开发型5.德国模式企业级应用及自主研发型1.6.4软件工程在软件产业中的应用一方面,软件产业离不开软件工程理论及其标准的指导;另一方面,软件产业的发展需要大量的软件工程人才。第2章软件需求获取与确认2.1软件需求获取的任务软件需求是为了解决用户的问题和实现用户的目标,用户所需的软件必须满足的能力和条件。业务需求、用户需求、系统需求、功能需求和非功能需求。2.2软件需求的获取与确认过程a)获取b)协商c)说明与定义d)确认2.3快速原型化方法原型法是这样一种软件开发技术,通过开发软件的初期版本让用户进行反馈来确认软件的可行性,研究开发技术或开发过程支持的其它问题。快速原型法的重点是在开发过程

11、的早期就开发出原型,使用反馈和分析提前,以支持开发过程。使用原型可达到3个主要目的:明确并完善需求,研究技术选择方案,把原型发展为最终产品。2.4基于用况的方法基于用况的方法通过建立用况模型来获取与确定需求。2.4.1系统边界系统边界是系统的所有内部成分与系统以外各种事物的分界线。现实世界中的事物与系统的关系包括以下几种情况:a)某些事物位于系统边界以内,作为系统成分;b)某些事物将是与系统进行交互的参与者,系统中没有相应的成分作为它们的抽象表示,它们位于系统边界以外;c)有的事物可能既在系统内部有一个对象作为其抽象描述,而事物本身又在系统边界以外与系统进行交互;d)某些事物属于问题域,但与系

12、统责任没有关系。2.4.2参与者a)概念与表示法一个参与者(actor)定义了一组在功能上密切相关的角色,当一个事物与系统交互时,该事物可以扮演这样的角色。参与者的标准图符是一个“人型符号”,参与者的名字放在图符的下方。b)识别参与者参与者是在系统之外的与系统进行交互的任何事物。从3个方面识别参与者:人员:直接使用系统的人员是参与者;外部系统:所有与本系统交互的外部系统都是参与者;设备:识别所有与系统交互的设备。识别与组织参与者的指导策略:i.首先将精力集中于启动系统的参与者;ii.考虑如何使用系统;iii.对识别出来的参与者,记录其责任;iv.若参与者存在着继承关系,则要予以建立。2.4.3

13、用况1.概念与表示法用况(use case)是描述系统的一项功能的一组动作序列,这样的动作序列表示参与者与系统间的交互,系统执行该动作序列要为参与者产生结果。上述定义具有如下含义:1)使用用况来可视化、详述、构造和文档化所希望的系统行为;2)用况描述中的一个动作应该描述参与者或系统要完成的交互中的一个步骤;3)在用况中只描述参与者与系统彼此为对方直接做了些什么事,不描述怎么做,也不描述间接地做了些什么;4)系统所产生的结果,是指系统对参与者的动作要做出响应;5)用况描述的是参与者所使用的一项系统功能,该项功能应该相对完整,也即应该保证用况是某一项功能的完整的规格说明,而不能只是其中的一个片段;

14、6)在用况描述中,由参与者首先发起交互的可能性较大,但有些交互也可能是由系统首先发起的。在图形上,把用况表示成一个包含用况名字的椭圆。对用况的描述,可使用自然语言、活动图和伪码,也可使用用户自己定义的语言。2.用况与参与者之间的关系在用况图中,一个参与者可以同多个用况交互,一个用况也可以同多个参与者交互。把参与者与用况间的交互关系称为关联,用一条实线连起来。3.用况之间的关系3种关系:包含、扩展和继承。(1)包含在两个或多个用况中经常存在着重复行为,为了避免重复,把重复行为放在一个用况中,原有的用况(基用况)再引入该用况(供应者用况),这样就在用况间建立了包含关系。用一个带箭头的虚线表示用况之

15、间的包含关系。(2)扩展在一个或几个用况描述中,有时存在着可选的描述系统行为的片段。若存在这种情况,可以从用况中把可选的行为描述部分抽选出来,放在另一个用况(扩展用况)中,原来的用况(基用况)再用它扩展自己,以此来解决候选路径的复杂性。这样在描述基本动作序列的基用况和描述可选动作序列的扩展用况之间就建立了扩展关系。用虚箭线表示用况之间的扩展关系。(3)继承用况之间的继承关系的含义和同类之间或参与者之间的继承关系一样。用指向一般用况的带有封闭的空心箭头的实线来表示用况之间的继承关系。4.获取用况可以从以下几个方面来获取用况:(1)从参与者的角度获取用况;(2)从系统功能的角度获取用况;(3)利用

16、场景获取用况。2.4.4用况图用况图是一幅由参与者、用况以及这些元素之间的关系组成的图。这些关系是参与者和用况之间的关联、参与者之间的继承,以及用况之间的包含、扩展和继承。2.5需求管理需求管理要标识、控制和跟踪需求。(1)需求标识和分类最简单的方式是为每个需求赋予一个唯一的序列号。也可以按需求的抽象层次来进行数字编号。若需求量较大,则应进行分类组织,以便编写文档和使用。(2)变更管理(3)需求跟踪进行需求跟踪的一个常见做法是建立需求矩阵。可根据需要定义需求矩阵中的需求关系,如依赖关系、从属关系、精化关系、实现关系等。第二部分 结构化软件开发方法第3章结构化分析建模深入描述软件的功能和性能,确

17、定软件设计的约束和软件同其它系统元素的接口细节,定义软件的其它有效性分析。3.1 软件需求分析阶段的任务分为四个步骤:获取需求、分析需求、定义需求和验证需求:N、R1、R2和R3。i.获取需求通过启发、引导从客户(或用户)那里得到原始需求是他们的业务要求(needs),简称为N。ii.需求分析需求分析人员考虑以下几个方面:(1)完整性;(2)正确性;(3)合理性;(4)可行性:a)技术可行性;b)经济可行性;c)社会可行性。(5)充分性。iii.需求定义作为软件开发的依据,必须将已经分析的需求清晰、全面、系统准确地描述为正式的文档。iv.需求验证为了确保已经定义的需求R2(需求规格说明)准确无

18、误,并能为客户(或用户)理解或接受,需要对其进行严格的评审。这一评审一定要有客户(或用户)参加,并充分听取他们的意见。3.2 结构化分析方法简介传统的分析建模方法称为结构化分析(SA)方法。它是一种建模技术,在模型的核心是数据字典,它描述了所有的在目标系统中使用的和生成的数据对象。围绕这个核心有3种图:数据流图(DFD),实体-关系图(ER图)和状态-迁移图(STD)。3.3 功能建模其思想就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。功能模型用数据流图来描述。3.3.1 数据流图的基本图形符号数据源或数据汇点表示图中要处

19、理数据的输入来源或处理结果要送往何处。数据流表示数据沿箭头方向的流动。加工是对数据对象的处理或变换。数据存储在数据流图中起保存数据的作用,可以是数据库文件或任何形式的数据组织。3.3.2 环境图环境图(context diagram)也称为顶层数据流图(或0层数据流图),它仅包括一个数据处理过程,也就是要开发的目标文件。3.3.3 数据流图的分层按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。画数据流图的基本步骤概括地说,就是自外向内,自顶向下,逐层细化,完善求精。3.3.4 功能建模的方法和过程(1)识别外部实体及输入输出数据流(2)画出环

20、境图(顶层数据流图)(3)画出一层数据流图(4)画出二层数据流图3.4 数据建模在结构化分析方法中,使用实体-关系建模技术来建立数据模型,也称为ER图。图中仅包含3种相互关联的元素:数据对象(实体)、描述数据对象的属性及数据对象彼此间相互连接的关系。3.4.1 数据对象数据对象是目标系统所需要的复合信息的表示,所谓复合信息是具有若干不同属性的信息。3.4.2 属性属性定义数据对象的特征,在ER图中用椭圆或圆角矩形表示属性。3.4.3 关系不同数据对象的实例3之间是有关联关系的,在ER图上用无向边表示,在无向边上可以标明关系的名字,也可以不标名字。可以将实例的关联分为三种:一对一关联、一对多关联

21、、多对多关联。3.5 行为建模在需求分析过程中,应该建立起软件的行为模型。状态转换图(简称转换图)通过描绘系统的状态及引起系统状态转换的事件来表示系统的行为。3.5.1 状态状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式,状态规定了系统对事件的响应方式。在状态图中定义的状态可能有:初态、终态和中间态。初态用实心圆表示,终态用牛眼圆形表示,中间态用圆角矩形表示。中间态可能包括三个部分:第一部分为状态的名称,第二部分为状态变量的名字和值,第三部分为活动表。第二、三部分可选。活动部分的语法如下:事件名(参数表)/动作表达式3.5.2 状态转换状态图中两个状态之间带箭头的连线称为

22、状态转换。3.5.3 事件事件是在某个特定时刻发生的事情,它是对引起系统做动作或从一个状态转换到另一个状态的外部事件的抽象。事件表达式的语法如下:事件说明(守卫条件)/动作表达式事件说明的语法如下:事件名(参数表)守卫条件是一个布尔表达式,动作表达式是一个过程表达式。3.6 数据字典数据字典以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象和控制信息的特征,给出它们的准确定义,包括数据流、加工、数据文件、数据元素,以及数据点、数据汇点等。3.6.1 词条描述对于在数据流图中每一个被命名的图形元素均加以定义,其内容包括图形元素的名字,图形元素的别名或编号,图形元素的类别(如加工、数据流

23、、数据文件、数据元素、数据源点或数据汇点等)、描述、定义、位置等。具体如下:(1)数据流词条;(2)数据元素词条;(3)数据存储文件词条;(4)加工词条;(5)数据源点及数据汇点词条。3.6.2 数据结构描述有定义式、Warnier图等。(1)定义式(2)Warnier图3.7 加工规格说明在对数据流图的分解中,位于层次树最低层的加工也称为基本加工或原子加工,对于每一个基本加工都需要进一步说明,这称为加工规格说明。它应满足如下要求:(1)对数据流图的每一个基本加工,必须有一个加工规格说明。(2)加工规格说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规格。(3)加工规格说明必须描述实

24、现加工的策略而不是实现加工的细节。(4)加工规格说明中包含的信息应是充足的,完备的,有用的,没有重复的多余信息。加工规格说明的内容可以包含叙述性正文、数学方程、图表等,也可以使用决策表和决策树。3.7.1 决策表在某些数据处理问题中,某个加工的执行需要依赖于多个逻辑条件的取值,此时可以用决策表(decision table)来描述。它由4个部分构成:左上部分是条件(condition stub)、左下部分是动作(action stub)、右上部分是条件项(condition entry)、右下部分是动作项(action entry)。通常,将每一列条件项和动作项称作一条处理规则,它包含了一个条

25、件取值组合和相应要执行的一组动作。建立决策表的步骤如下:(1)列出与一个具体过程(或模块)有关的所有操作。(2)列出过程执行期间的所有条件(或所有判断)。(3)将特定条件取值组合与特定的处理相匹配,消去不可能发生的条件取值组合。(4)将右部每一纵列规定为一个处理规则,即对于某一条件取值组合将有什么动作。3.7.2 决策树它也是用来表达加工逻辑的一种工具。在构造决策树时,首先应从文档叙述中分清哪些是判定条件,哪些是判定结果。然后,从文档叙述中的一些连接词中,找出判定条件的从属关系、并列关系、选择关系等。3.8 需求规格说明按照国家标准GB/T8567-2006计算机软件文档编制规范。3.8.1

26、软件需求规格说明SRS描述了计算机软件配置项的需求以及为确保需求得到满足所使用的方法。3.8.2 数据需求说明DRD描述了在整个开发过程中所需处理的数据,以及采集数据的要求等。第4章总体设计在软件生存期中,软件设计处于需求分析阶段及软件构造阶段(或编码阶段)的中间位置。4.1软件设计的概念和目标4.1.1软件设计的概念软件设计包括一套原理、概念和实践,可以指导高质量的系统或产品开发。设计原理建立了最重要的原则,用以指导设计人员工作。4.1.2软件设计的目标软件设计的目标涉及性能、可靠性、成本、维护等多个方面的目标。一些可能的准则如下:(1)性能准则(2)可靠性准则(3)成本准则(4)维护准则(

27、5)最终用户准则4.2软件设计的任务软件设计的主要任务是要解决如何做的问题,要在需求分析的基础之上,建立各种设计模型,并通过对设计模型的分析和评估,来确定这些模型是否能够满足需求。4.2.1软件设计的阶段与任务从工程管理的角度,分为两个阶段:概要设计阶段和详细设计阶段。传统的结构化方法将软件设计划分为体系结构设计、数据设计、接口设计和过程设计4部分;而面向对象方法将软件划分设计划分为体系结构设计、类设计/数据设计、接口设计和构件级设计4部分。4.2.2结构化设计与结构化分析的关系软件设计必须依据对软件的需求来进行,结构化分析的结果为结构化设计提供了最基本的输入信息。4.3模块结构与数据结构软件

28、的结构包括两个部分,一部分为软件的模块结构,另一部分为软件的数据结构。4.3.1模块结果及表示1)模块一个软件系统通常由很多模块组成,模块用矩形框表示,并用模块的名字标记它。可以按照在软件系统中的功能将模块划分为四种类型:A传入模块B传出模块C变换模块D协调模块2)模块结构A.树状结构B.网状结构3)结构图结构图(SC)是精确表达模块结构的图形表示工具。A.模块的调用关系和接口;B.模块间的信息传递;C.两个辅助符号;D.结构图的形态特性。4.3.2数据结构及表示典型的数据结构:标量项,链表,顺序向量,树状结构,网状结构,n维空间。4.4创建良好设计的原则4.4.1分而治之和模块化4.4.2模

29、块独立性1)松散耦合:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合。2)高度内聚:巧合内聚,逻辑内聚,时间内聚,过程内聚,通信内聚,信息内聚,功能内聚。4.4.3提高抽象层次:在最高的抽象层次上,可以使用问题所处环境的语言概括地描述问题的解决方案;在较低的抽象层次上,采用更过程化的方法,将面向问题的术语和面向实现的术语结合起来描述问题的解法;在最低的抽象层次上,则用某种程序设计语言来描述问题的解法。过程抽象和数据抽象是两种常用的抽象手段。4.4.4复用性抽象复用是指同一实体不做修改或稍加修改就可以多次重复使用,将复用的思想用于软件开发,称为软件复用。将软件的重用部分称

30、为软构件。4.4.5灵活性设计保证软件灵活性设计的关键是抽象。在设计中引入灵活性的方法如下:1)降低耦合并提高内聚(易于提高替换能力);2)建立抽象(创建有多态操作的接口和父类);3)不要将代码写死(消除代码中的常数);4)抛出异常(由操作的调用者处理异常);5)使用并创建可复用的代码。4.4.6预防过期4.4.7可移植性设计4.4.8可测试性设计4.4.9防御性设计4.5面向数据流的设计面向数据流的设计方法也称为过程驱动的设计方法。4.5.1设计过程(1)复查并精化数据流图;(2)确定数据流图中数据流的类型,典型的数据流类型有变换型数据流和事务型数据流;(3)导出初始的软件结构图;(4)逐级分解;(5)精化软件结构;(6)导出接口描述和全局数据结构。4.5.2典型的数据流类型和系统结构1)变换型数据流与变换型系统结构图工作过程大致分为3步:获取数据、变换数据和给出数据。2)事务型数据流与事务型系统结构图4.5.3变换型映射方法是一系列设计步骤的总称。变换分析方法由4步组成:重画数据流图;区分有效(逻辑)输入,有效(逻辑)输出和中心变换部分;进行一级分解,设计上层模块;进行二级分解,设计输入、输出和中心变换部分的中、下层模块。4.5.4事务型映射方法在很多软

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1