IEEE Std 1016-1998《软件设计描述IEEE推荐实践》阅读摘要

rel="File-List" href="file:///C:%5CDOCUME%7E1%5Cliaohr%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"> rel="File-List" href="file:///C:%5CDOCUME%7E1%5Cliaohr%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml">

IEEE Std 1016-1998阅读摘要》

1.   引言

    本文是IEEE Std 1016-1998 (《软件设计描述IEEE推荐实践》)的阅读摘要,主要是对重要部分的原文翻译。希望能对不喜欢看英文原文的同志有点作用。

2.   摘要

2.1 SDD的概念、作用

    IEEE Std 1016-1998是说明软件架构和设计的IEEE-ANSI标准。

    完整的软件生命周期包括:概念阶段(Concept Phase)、需求阶段(Requirement Phase)、设计阶段(Design Phase)、实施阶段(Implementation Phase)、测试阶段(Test Phase)、安装与验证阶段(Installation and Checkout Phase)、运行与维护阶段(Operation and Maintenance Phase)、退役阶段(Retirement Phase)

SDD(Software Design Description,软件设计描述)是软件系统的表征,是交流软件设计信息的媒介。无论是对于新的软件系统还是维护中的现有系统,确认设计和实施满足推动系统的需求十分重要。SDD展示怎样架构软件以满足需求(IEEE Std 830-1998指定),它将需求转化为软件结构、软件模块、接口和数据的描述,这些描述对于实施是必要的。大体上,SDD成为实施活动的详细计划。在一个完整的SDD中,每一项需求应该在一项或多项设计实体中得到实现。

2.2 设计实体

SDD将软件系统分解成多个设计实体(Design Entity),并描述这些设计实体的重要属性及其间的关系。

一个设计实体是结构与功能与其它元素不同的独立命名与引用的设计元素(组件),设计实体可能以一个系统、子系统、数据存储区、模块、程序和进程的形式存在。设计实体来源于对软件需求的分解,目标是将系统分解为能最小影响其它实体进行考虑、实施、改变和测试的不同组件。

设计实体由以下属性组成:

(1)       标识 (Identification):实体的名字。

(2)       类型(Type):实体类型的描述。比如子程序、模块、流程、进程或数据存储区。

(3)       目的 (Purpose):实体为什么存在的描述。

(4)       功能 (Function):实体做什么的陈述。

(5)       从属实体(Subordinates):组成这一实体的所有实体标识。

(6)       依赖关系(Dependencies):这一实体与其它实体关系的描述。

(7)       接口(Interface):其它实体怎样与这一实体相互作用的描述。

(8)       资源(Resources):外在于设计的实体使用的元素。如物理设备(打印机、磁盘分区、内存条)、软件服务(数学库、操作系统服务)以及处理器资源(CPU周期、内存分配、缓存)等。

(9)       处理(Processing):实体实现其功能的规则的描述,如算法等。

(10)   数据(Data):内在于实体的数据元素的描述,包括表征方式、初始值、使用、语义、格式以及内在数据的可接受值等。

2.3 设计视图

设计视图:不同设计描述用户可能对软件设计的核心部分有不同观点,别的信息对于这一用户来说是不相关的。推荐使用以下设计视图:

  • 分解描述(Decomposition description)

   范围:记录软件系统怎样分解为设计实体;

   使用:由设计和维护者分辨系统主要的设计实体,以判定那一实体对实现特定功能

         或追踪设计实体的需求负责;

  • 依赖性描述(Dependency description

   范围:说明实体之间的关系:依赖实体、它们之间的耦合以及需求资源。

   使用:依赖性描述提供系统怎样工作的总体图像,可用来评估需求和设计改变的影

         响。它可以帮助维护者确定造成系统失败或者资源瓶颈的实体,也可以通过

         确定哪些实体是其它实体所需要的,必须先开发来帮助产生系统集成方案。

         这一描述也可以用来集成测试时生成集成测试用例。

  • 接口描述(Interface description)

    范围:提供设计者、程序员、测试者需要知道的正确使用一个实体功能的描述。

          接口描述包括在软件需求规范中未提供的详细的外部和内部接口。这一视

          图由每一实体的一套接口规范组成。

    使用:接口描述在设计者、程序员、用户、测试员之间充当一个有约束力的契约。

          它提供了实体详细设计之前需要的的协议。另外,接口描述可以被技术作

           者用来产生用户文档,直接给用户使用。实体接口的清晰描述对于多人开

           发的系统顺利集成和便利维护起到至关重要的作用。

     表征:接口描述应提供屏幕格式、有效输入、输出等信息。

  • 详细设计描述(Detailed design description

范围:包括每一设计实体的详细内部信息;

使用:详细描述包括程序员在实现之前需要的详细信息,这一视图也可以用来生

      成单元测试用例;

2.4 SDD模块

1.       引言(Introduction)

   1.1目的(Purpose)

   1.2 范围(Scope)

   1.3 定义与缩写词(Definitions and acronyms)

2.       参考文献(References

3.       分解描述(Decomposition description)

3.1    模块分解(Module decomposition)

3.1.1          模块1描述(Module 1 description)

3.1.2          模块2描述(Module 2 description)

3.2    同步进程分解(Concurrent process decomposition)

3.2.1          进程1描述(Process 1 description

3.2.2          进程2描述(Process 2 description

3.3    数据分解(Data decomposition)

3.3.1          数据实体1描述(Data entity 1 description)

3.3.2          数据实体2描述(Data entity 2 description)

4.       依赖关系描述(Dependency description)

4.1    模块间依赖(Intermodule dependencies)

4.2    进程间依赖(Interprocess dependencies)

4.3    数据依赖(Data dependencies)

5.       接口描述(Interface description)

5.1    模块接口

  5.1.1 模块1描述(Module 1 description)

  5.1.2 模块2描述(Module 2 description)

5.2    进程接口

5.2.1          进程1描述(Process 1 description

5.2.2          进程2描述(Process 2 description

6.       详细设计(Detailed design)

6.1    模块详细设计(Module detailed design)

6.1.1          模块1详细(Module 1 detail)

6.1.2          模块2详细(Module 2 detail)

6.2    数据详细设计(Data detailed design)

   6.2.1 数据实体1详细(Data entity 1 detail)

   6.2.2 数据实体2详细(Data entity 2 detail)

3.   阅读感悟

   软件设计文档为需求文档和实现之间架起了一座桥梁。对于单人开发和维护的系统,这种设计文档似乎是可有可无的,但是一旦设计多人开发以及后期的维护,软件设计文档就显得异常重要了。软件设计的工作实际上是一个分解模块、分解任务的工作。没有这种分解,一个大的系统可能永远无法完成。一个真正的软件设计文档未必就是根据上面的模板的章节方式来编写,但是这一标准提供了编写软件设计文档的基础。

4.   参考文献

1 IEEE Std 1016-1998 IEEE Recommended Practice for Software Design Descriptions

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
IEEE Standard for System and Software Verification and Validation IEEE Std 1012-2012 Front Cover -14 Title Page -12 Notice to users -9 Laws and regulations -9 Copyrights -9 Updating of IEEE documents -9 Errata -9 Patents -8 Participants -7 Introduction -5 Contents -3 Important notice 1 1. Overview 1 1.1 Scope 1 1.2 Purpose 2 1.3 Field of application 3 1.4 V&V objectives 4 1.5 Organization of the standard 4 1.6 Audience 6 1.7 Conformance 7 1.8 Disclaimer 7 2. Normative references 7 3. Definitions, abbreviations, and acronyms 7 3.1 Definitions 7 3.2 Abbreviations and acronyms 11 4. Relationships between V&V and life cycle processes 12 5. Integrity levels 15 6. V&V processes overview 17 6.1 General 17 6.2 V&V testing 18 7. Common V&V activities 19 7.1 Activity: V&V Management 19 7.2 Activity: Acquisition Support V&V 20 7.3 Activity: Supply Planning V&V 21 7.4 Activity: Project Planning V&V 21 7.5 Activity: Configuration Management V&V 21 8. System V&V activities 33 8.1 Activity: Stakeholder Requirements Definition V&V 33 The purpose of the Stakeholder Requirements Definition Process is to define the requirements for a system that can provide the services needed by users and other stakeholders in a defined environment. It identifies stakeholders, or stakeholder classes... 33 The V&V effort shall perform, as specified in Table 2b for the selected integrity level, the following Stakeholder Requirements Definition V&V tasks described in Table 1b: 33 8.2 Activity: Requirements Analysis V&V 33 8.3 Activity: Architectural Design V&V 34 8.4 Activity: Implementation V&V 35 8.5 Activity: Integration V&V 35 8.6 Activity: Transition V&V 36 8.7 Activity: Operation V&V 36 8.8 Activity: Maintenance V&V 37 8.9 Activity: Disposal V&V 38 9. Software V&V activities 68 9.1 Activity: Software Concept V&V 68 9.2 Activity: Software Requirements V&V 68 9.3 Activity: Software Design V&V 69 9.4 Activity: Software Construction V&V 69 9.5 Activity: Software Integration Test V&V 70 9.6 Activity: Software Qualification Test V&V 70 9.7 Activity: Software Acceptance Test V&V 71 9.8 Activity: Software Installation and Checkout V&V 71 9.9 Activity: Software Operation V&V 72 9.10 Activity: Software Maintenance V&V 72 9.11 Activity: Software Disposal V&V 73 10. Hardware V&V activities 110 10.1 Activity: Hardware Concept V&V 110 10.2 Activity: Hardware Requirements V&V 110 10.3 Activity: Hardware Design V&V 111 10.4 Activity: Hardware Fabrication V&V 111 10.5 Activity: Hardware Integration Test V&V 112 10.6 Activity: Hardware Qualification Test V&V 112 10.7 Activity: Hardware Acceptance Test V&V 113 10.8 Activity: Hardware Transition V&V 113 10.9 Activity: Hardware Operation V&V 114 10.10 Activity: Hardware Maintenance V&V 114 10.11 Activity: Hardware Disposal V&V 115 11. V&V reporting, administrative, and documentation requirements 147 11.1 V&V reporting requirements 147 11.2 V&V administrative requirements 150 11.3 V&V documentation requirements 150 12. V&V plan outline 151 12.1 Overview 151 12.2 VVP Section 1: Purpose 152 12.3 VVP Section 2: Referenced documents 152 12.4 VVP Section 3: Definitions 152 12.5 VVP Section 4: V&V overview 152 12.5.1 VVP Section 4.1: Organization 152 12.5.2 VVP Section 4.2: Master schedule 153 12.5.3 VVP Section 4.3: Integrity level scheme 153 12.5.4 VVP Section 4.4: Resources summary 153 12.5.5 VVP Section 4.5: Responsibilities 153 12.5.6 VVP Section 4.6: Tools, techniques, and methods 153 12.6 VVP Section 5: V&V processes 154 12.6.1 VVP Section 5.1: Common V&V Processes, Activities, and Tasks 154 12.6.2 VVP Section 5.2: System V&V Processes, Activities, and Tasks 154 12.6.3 VVP Section 5.3: Software V&V Processes, Activities, and Tasks 154 12.6.4 VVP Section 5.4: Hardware V&V Processes, Activities, and Tasks 154 12.7 VVP Section 6: V&V reporting requirements 154 12.8 VVP Section 7: V&V administrative requirements 154 12.8.1 General 154 12.8.2 VVP Section 7.1: Anomaly resolution and reporting 154 12.8.3 VVP Section 7.2: Task iteration policy 154 12.8.4 VVP Section 7.3: Deviation policy 155 12.8.5 VVP Section 7.4: Control procedures 155 12.8.6 VVP Section 7.5: Standards, practices, and conventions 155 12.9 VVP Section 8: V&V test documentation requirements 155 Annex A (informative) Mapping of IEEE 1012 V&V activities and tasks 156 A.1 Mapping of ISO/IEC 15288 V&V requirements to IEEE 1012 V&V activities and tasks 156 A.2 Mapping of IEEE 1012 V&V activities to ISO/IEC 15288 system life cycle processes and activities 158 A.3 Mapping of ISO/IEC 12207 V&V requirements to IEEE 1012 V&V activities and tasks 159 A.4 Mapping of IEEE 1012 V&V activities to IEEE 12207 software life cycle processes and activities 161 Annex B (informative) A risk-based, integrity-level scheme 163 Annex C (informative) Definition of independent V&V (IV&V) 165 C.1 Technical independence 165 C.2 Managerial independence 165 C.3 Financial independence 165 C.4 Forms of independence 165 C.4.1 Classical IV&V 166 C.4.2 Modified IV&V 166 C.4.3 Integrated IV&V 166 C.4.4 Internal IV&V 166 C.4.5 Embedded V&V 167 Annex D (informative) V&V of reuse software 168 D.1 Purpose 168 D.2 V&V of software developed in a reuse process 169 D.2.1 V&V of assets in development 169 D.2.2 V&V of reused assets 169 D.3 V&V of software developed and reused outside of a reuse process 169 Annex E (informative) V&V measures 175 E.1 Introduction 175 E.2 Measures for evaluating anomaly density 175 E.3 Measures for evaluating V&V effectiveness 176 E.4 Measures for evaluating V&V efficiency 176 Annex F (informative) Example of V&V relationships to other project responsibilities 178 Annex G (informative) Optional V&V tasks 179 Annex H (informative) Environmental factors considerations 185 H.1 Introduction 185 H.2 In the agreement processes 185 H.3 In the organizational project-enabling processes 185 H.4 In the project processes 186 H.5 In the technical processes 186 Annex I (informative) V&V of system, software, and hardware integration 188 I.1 Introduction 188 I.2 Examples of system failures caused by integration issues 188 I.2.1 Year 2000 System Integration Issue 189 I.2.2 System architecture integration issues 189 I.3 System, software, and hardware interaction issues 190 Annex J (informative) Hazard, security, and risk analyses 193 J.1 Hazard analysis 193 Annex K (informative) Example of assigning and changing the system integrity level of “supporting system functions” 198 Annex L (informative) Mapping of ISO/IEC/IEEE 15288 and IEEE 12207 process outcomes to V&V tasks 200 Annex M (informative) Bibliography 209
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值