DO-178C解读 - 软件配置索引(2)

B.3 软件生命周期环境配置索引Software Life Cycle Environment Configuration Index

软件生命周期环境配置索引(SECI)标识软件生命周期环境的配置。 编写该索引是为了帮助再现硬件和软件生命周期环境,以进行软件重新生成、重新验证或修改,以及The Software Life Cycle Environment Configuration Index (SECI) identifies the configuration of the software life cycle environment. This index is written to aid reproduction of the hardware and software life cycle environment for software regeneration, reverification, or modification, and

应确定以下内容:should identify the following:

• 软件生命周期环境硬件及其操作系统软件;the software life cycle environment hardware and its operating system software;

• 软件开发工具,例如编译器、链接编辑器和加载器以及数据完整性工具;the software development tools, such as compilers, linkage editors and loaders, and data integrity tools;

• 用于验证软件产品的测试环境; 和the test environment used to verify the software product; and

• 合格的工具及其相关的工具资格数据。qualified tools and their associated tool qualification data.

B.3.1 软件生命周期环境硬件及其操作系统Software Life Cycle Environment Hardware and its Operating System

由于GCS实现的开发是研究项目的一部分,因此软件的开发环境与实现的目标环境相同; 也就是说,GCS 实施不会包含在用于太空飞行的“真实”硬件系统中。 GCS 实施的大部分软件开发环境是 microVAX 3800 计算机系统(简称 AIR19)。 但是,Teamwork 软件位于运行 SunOS 4.1.3(称为“kontiki”)的 Sun 4/310C 计算机上。 每个项目成员都有一台可供他/她使用的个人计算机,可用于连接到其他计算机。Since the development of the GCS implementations is part of a research project, the development environment for the software is the same as the target environment of the implementations; that is, the GCS implementations will not be included in a "real" hardware system intended for space flight. The environment for most of the software development of the GCS implementations is a microVAX 3800 computer system (referred to as AIR19). However, the Teamwork software is located on a Sun 4/310C machine which runs SunOS 4.1.3 (referred to as “kontiki”). Each of the project members has a personal computer available to him/her that may be used to connect to the other machines.

表 B.5 列出了 GCS 项目使用的操作系统软件和其他支持和开发工具(以及相关的版本号)。Table B.5 lists the operating system software and other support and development tools (and the associated version number) used for the GCS project.

Table B.5: Support and Development Tools

Software/Tools

Version

ACT

V19921201 #08CTS

CMS

V3.4

Mathematica

2.2

Microsoft Word - IBM

3.0C

Microsoft Word -Macintosh

5.1A or 6.0

Prototype Source Code

VENUS19

Simulator

GCS_SIM_2-17

SunOS

4.1.3

TCP/Connect

V1.2

Teamwork

4.1

VAX FORTRAN(a)

V5.5-98

VAX-11 linker(b)

V05-13

VAX/VMS Operating System

V5.5-2

VAXnotes

V2.0

(a) the compiler (b) includes the loader

B.3.2 软件开发工具Software Development Tools

许多工具用于帮助软件产品的开发,特别是在设计描述和源代码方面。 以下部分描述了用于 GCS 项目软件开发的工具。A number of tools are used to aid in the development of the software product, especially with respect to the design description and source code. The following sections describe the tools which were used for the software development of the GCS project.

B.3.2.1 团队合作Teamwork

对于 GCS 项目,每个程序员都需要使用计算机辅助软件工程 (CASE) 工具 Teamwork(参考 B.2)来开发详细的设计描述。 Teamwork 是 Cadre Technologies, Inc. 的产品,是一套基于 Hatley 和 DeMarco 结构化方法的软件工程工具(参见 B.3)。 团队合作工具可用于创建和编辑由数据流程图、控制流程图和事件驱动结构、流程规范和数据字典组成的功能规范。 对于 GCS 项目,每个程序员都有机会使用以下任一团队合作组件来开发他们的设计:For the GCS project, each programmer is required to use the Computer Aided Software Engineering (CASE) tool, Teamwork (ref. B.2), to develop their detailed design description. Teamwork, which is a product of Cadre Technologies, Inc., is a set of software engineering tools based on the structured methods of Hatley and DeMarco (ref. B.3). The Teamwork tools can be used to create and edit functional specifications consisting of data flow diagrams, control flow diagrams and event-driven constructs, process specifications, and data dictionary. For the GCS project, each programmer had the opportunity to use either of the following Teamwork components to develop their design:

SA/RT——基线结构化分析工具,具有允许描述实时系统的扩展(参考 B.4),或SA/RT-- the baseline structured analysis tool with an extension that allows description of realtime systems (ref. B.4), or

SD——遵循 Ward 和 Mellor 设计方法的并行工具(参考 B.5)。SD -- a parallel tool that follows the Ward and Mellor approach to design (ref. B.5).

两位程序员都选择了 SA/RT 工具来实现他们的设计。 设计和代码审查需要使用团队合作开发的设计描述。Both programmers chose the SA/RT tool to implement their design. The design description developed using Teamwork is required for the design and code reviews.

B.3.2.2 FORTRAN语言FORTRAN

尽管有多种编程语言可供使用,但该项目的要求不允许程序员出于该项目的目的使用除 FORTRAN 之外的任何语言。Although there are a variety of programming languages available for use, requirements for this project preclude a programmer from using any language except FORTRAN for the purposes of this project.

VAX FORTRAN(参考 B.6)是符合美国国家标准 FORTRAN 的完整语言 FORTRAN-77 的实现。 它包括对符合先前标准的程序的可选支持。 VAX FORTRAN 符合 ANSI 标准,满足联邦信息处理标准出版要求。VAX FORTRAN (ref. B.6) is an implementation of full language FORTRAN-77 conforming to American National Standard FORTRAN. It includes optional support for programs conforming to the previous standard. VAX FORTRAN meets the Federal Information Processing Standard Publication requirements by conforming to the ANSI Standard.

VAX/VMS FORTRAN 编译器创建目标代码,然后将其链接到可执行映像中。 可共享、可重入的编译器在 VAX/VMS 操作系统下运行。 它在利用浮点和字符串指令集以及VMS虚拟内存系统的同时,对源程序进行全局优化。The VAX/VMS FORTRAN compiler creates object code which can then be linked into an executable image. The shareable, reentrant compiler operates under the VAX/VMS Operating System. It globally optimizes source programs while taking advantage of the floating point and character string instruction set and the VMS virtual memory system.

VAX 系统上用于编辑源代码和测试用例的主要编辑器是 VAX/VMS 默认编辑器 VAX EDT(参考 B.7)。 用于 VAX 系统上文件的另一个编辑器是 VAX 文本处理实用程序 (VAXTPU)(参见 B.8)。The primary editor used on the VAX system to edit source code and test cases is the VAX/VMS default editor, VAX EDT (ref. B.7). The other editor used for files on the VAX system is the VAX Text processing Utility (VAXTPU) (ref. B.8).

B.3.3 测试环境Test Environment

以下各节描述了验证分析师用来帮助他们验证实现的工具。The following sections describe the tools which were used by the verification analysts to aid them in the verification of the implementations.

B.3.3.1 数学Mathematica

Mathematica(参考 B.9)是一种通用计算机软件系统和语言,用于数学建模和计算。 它支持数值、符号和图形计算。 它既可以用作交互式问题解决环境,也可以用作现代高级编程语言。 尽管 Mathematica 有多种用途,但对于 GCS 项目来说,它仅用作:Mathematica (ref. B.9) is a general computer software system and language intended for mathematical modeling and calculations. It supports numerical, symbolic, and graphical computation. It can be used both as an interactive problem solving environment and as a modern high-level programming language. Although Mathematica has numerous uses, for the GCS project it will be used only as:

• 数字和符号计算器,a numerical and symbolic calculator,

• 高级编程语言,以及a high-level programming language, and

• 建模和数据分析环境。a modeling and data analysis environment.

为了独立验证测试过程中产生的传感器、位置和控制计算的正确性,将使用 Mathematica 对每个功能单元的计算进行建模并计算预期结果。 对于根据 DO-178B 生成必须与独立计算值进行比较的输出的测试用例,验证分析师将开发一个程序,将测试输出与从 Mathematica 模型得出的预期值进行比较。 该分析程序将生成一个比较文件,然后可以评估该文件是否存在问题。To independently verify the correctness of sensor, position, and control calculations produced during testing, Mathematica will be used to model the computations of each functional unit and calculate the expected results. For test cases which generate output that, according to DO-178B, must be compared with independently calculated values, the verification analysts will develop a program that compares the test output with the expected values derived from Mathematica models. This analysis program will generate a comparison file which can then be evaluated for problems.

B.3.3.2 行为ACT

ACT 工具,即复杂性分析工具(参见 B.10),基于 McCabe 的圈复杂度度量方法(参见 B.11)。 ACT 检查源代码模块的结构,并根据该结构生成流程图,并识别代码中的所有可能路径。 该工具将用于帮助结构测试用例开发和结构覆盖分析。The tool ACT, Analysis of Complexity Tool (ref. B.10), is based on McCabe's Cyclomatic Complexity Metric Method (ref. B.11). ACT examines the structure of a source code module and produces a flow graph based on that structure and identifies all possible paths through the code. This tool will be used to aid in structural test case development and structural coverage analysis.

B.3.3.3 模拟器Simulator

GCS 模拟器是一个开发环境,旨在让研究人员能够研究软件行为并深入了解软件错误的根源以及这些错误对软件可靠性的影响。 模拟器生成用于引导和控制软件的一种或多种实现的输入,并根据其输出进行操作,以对行星着陆器在着陆的最终下降阶段期间的行为进行建模。 它还提供对实现生成的重要数据的访问和分析,以便检测并记录潜在的软件故障,以供研究人员进一步调查。 模拟器由可执行文件、输入文件和输出文件组成。 组成模拟器的文件列在库下的附录 A 中The GCS simulator is an environment developed to allow researchers to study the behavior of software and to develop insight into the origin of software errors and the effects of these errors on software reliability. The simulator generates input for one or more implementations of the guidance and control software and acts upon their output to model the behavior of a planetary lander during the terminal descent phase of landing. It also provides access to and analysis of important data generated by the implementations so that potential software failures are detected and noted for the researcher to further investigate. The simulator is composed of executable, input, and output files. The files that compose the simulator are listed in Appendix A under the library [GCS.CMS.SIMULATOR.SOURCE_CODE].

B.3.3.4 原型源代码Prototype Source Code

GCS 的原型实现是结合 GCS 规范和模拟器开发的。 原型实现是用 FORTRAN-77 编写的,但并未按照任何特定的软件开发标准编写。A prototype implementation of the GCS was developed in conjunction with the GCS specification and simulator. The prototype implementation was written in FORTRAN-77, but was not written in compliance with any particular software development standards.

B.3.4 配置管理工具Configuration Management Tools

就GCS项目而言,DEC/CMS(代码管理系统)将用于所有软件产品数据的配置管理。 CMS(参考B.1)是一个软件库系统,有助于软件系统的开发和维护。 软件系统分为不同的功能组件,这些组件又被组织成一组或多个文件。 CMS 通过将文件存储在项目库中、跟踪更改并监控对库的访问,帮助在开发期间和维护期间管理文件。 CMS 还提供了一种操作库中不同文件组合的方法。 形式化这些组合的能力为系统设计提供了焦点,并提供了在库中组织文件的方法。 通过使用 CMS,程序员将能够在开发过程中的任何阶段重新创建其代码的任何版本; 还可以重新生成任何版本的支持文档。 附录 A 列出了每个 CMS 库及其以电子方式存储的所有项目数据的内容。For the purposes of the GCS project, DEC/CMS (Code Management System) will be used for the configuration management of all software product data. CMS (ref. B.1) is a software library system that facilitates the development and maintenance of software systems. Software systems are divided into different functional components that are, in turn, organized into sets of one or more files. CMS helps manage the files during development, and later during maintenance, by storing the files in a project library, tracking changes, and monitoring access to the library. CMS also supplies a means of manipulating different combinations of files within a library. The ability to formalize these combinations provides a focus for system design and a means of organizing the files within a library. Through the use of CMS, programmers will be able to recreate any version of their code at any stage during its development; any version of the support documentation can also be regenerated. Appendix A lists each CMS library and its contents for all project data that is stored electronically.

B.3.5 其他工具Other Tools

GCS 项目参与者将使用许多工具来交互、以电子方式分发信息以及记录整个项目的活动。 尽管 GCS 项目的大部分沟通都是通过口头沟通或电子邮件非正式地完成,但仍将使用一些工具来记录某些项目沟通,即配置管理服务请求以及问题和行动报告。A number of tools will be used by the GCS project participants to interact, distribute information electronically, and document activities throughout the project. Although most of the communication on the GCS project is done informally through verbal communication or electronic mail, a few tools will be used to document certain project communication, namely requests for configuration management services and problem and action reporting.

B.3.5.1 VAX 笔记VAX Notes

VAX Notes(参考 B.12)是一种计算机会议软件产品,旨在为用户提供创建和访问在线会议或会议的功能。 计算机会议是一种电子消息传递技术,它允许用户通过计算机与不同地理位置的人进行会议,以便参与者可以在自己选择的时间在自己的办公桌上加入讨论。VAX Notes (ref. B.12) is a computer conferencing software product designed to provide users with the capability of creating and accessing on-line conferences or meetings. Computer conferencing is an electronic messaging technology which lets users conduct meetings with people in different geographic locations via computer so that participants can join in a discussion from their own desk at a time of their own choice.

VAX Notes 将用于收集实验目的数据(而非认证)。 有关 GCS 规范的所有问题都应向系统分析师提出。 捕获程序员向系统分析师提出的有关规范的问题以及系统分析师的答复尤为重要。 向系统分析师提出的所有问题都应针对 GCS 规范,而不是针对具体实施问题。 此外,程序员和验证分析师在向配置管理器发出元素请求时应使用 VAX Notes。VAX Notes will be used in order to collect data for the purpose of the experiment (not for certification). All questions about the GCS specification should be addressed to the system analyst. It is especially important to capture the questions that the programmers ask the system analyst about the specification and the response from the system analyst. All questions to the system analyst should be specific to the GCS specification as opposed to questions about implementation specific issues. Additionally, the programmers and verification analysts should use VAX Notes when making requests for elements from the configuration manager.

B.3.5.2 问题报告Problem Reporting

问题和行动报告用于记录与任何开发产品(设计、源代码或可执行目标代码)中发现的问题有关的所有信息,支持文档更改报告用于记录对所有支持文档的修改。 这些报告的副本显示在软件配置管理计划中。Problem and Action Reports are used to document all information pertaining to problems identified in any of the development product (design, source code, or executable object code) and Support Documentation Change Reports are used to document modifications to all support documents. Copies of these reports are shown in the Software Configuration Management Plan.

B.3.5.3 文件传输协议File Transfer Protocol

文件传输协议 (FTP) 在两个主机系统之间传输文件。 有两种方法可以使用 FTP 从远程主机检索 GCS 项目的文件。 第一个过程开始于用户通过输入命令“FTP 主机地址”启动与远程主机的连接,其中指定系统来代替“主机地址”。 这要求用户知道如何更改到所需的目录以及如何告诉主机系统所需的操作。 启动 FTP 的第二种方法是使用 Macintosh 上可用的 TCP/IP 连接。 此连接使用一系列下拉菜单和命令框。The File Transfer Protocol (FTP) transfers files between two host systems. There are two ways in which FTP is used to retrieve a file from a remote host for the GCS project. The first begins when the user initiates a connection to the remote host by entering the command “FTP host address”, where a systems is specified in place of “host address”. This requires the user to know how to change to the required directory and also how to tell the host system the required action. The second way to initiate FTP is by using the TCP/IP connection that is available on the Macintoshes; this connection uses a series of pull-down menus and command boxes.

B.3.6 鉴定工具Qualified Tools

由于 GCS 项目是一项资源有限的研究工作,因此未尝试对该项目所使用的工具进行资格鉴定。Since the GCS project is a research effort with limited resources, the qualification of the tools used on this project was not attempted.

B.4 CMS CMS Libraries

下面列出了截至 95 年 6 月 4 日的每个 CMS 库(及其内容)。 在一些图书馆中,有小组和子小组; 这些将在库列下注明,格式为 GROUP/SUBGROUP(/SUBGROUP) The following lists each CMS library (and its contents) as of 6/4/95. In some libraries, there are groups and subgroups; these will be noted under the library column with the format of GROUP/SUBGROUP(/SUBGROUP)

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

ACCOMP_SUM]

DISK$HOKIE:[GCS.CMS.

CERT_PLAN]

cert_plan.txt

DISK$HOKIE:[GCS.CMS.

CM_PLAN]

cm_plan.txt

DISK$HOKIE:[GCS.CMS.

CONFIG_INDEX]

DISK$HOKIE:[GCS.CMS.

DES_DESCRIP.MERCURY]

design.overview_intro

design.overview_labels

design.overview_preface

design.teamwork

gcs_design.ps

mercury_design.

DISK$HOKIE:[GCS.CMS.

DES_DESCRIP.PLUTO]

design.overview

design.teamwork

DISK$HOKIE:[GCS.CMS.

DEV_STAND]

dev_standards.txt

DISK$HOKIE:[GCS.CMS.

EXEC_OBJ_CODE.MERCURY]

build_mercury.com

mercury.exe

DISK$HOKIE:[GCS.CMS.

EXEC_OBJ_CODE.PLUTO]

pluto.exe

p_build.com

DISK$HOKIE:[GCS.CMS.

SIMULATOR.SOURCE_CODE]

accuracy.dat

accuracy.for_inc

accuracy_definitions.for_inc

alternate_accuracy.dat

alt_check_external.for

alt_check_guidance.for

alt_check_sensors.for

alt_compare_ae_cmd.for

alt_compare_real8.for

build_create_init_data.com

build_gcs_sim.com

build_gcs_sim_nocms.com

build_rendezvous.com

build_rendezvous_debug.com

calculate_values.for

check_cp.for

check_external.for

check_guidance.for

check_paramenters.for

check_sensors.for

check_stat.for

check_timing.for

cms_fetch.for

common_record.for_inc

common_switches.for_inc

compare_ae_cmd.for

compare_int2.for

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

SIMULATOR.SOURCE_CODE]

compare_int4.for

compare_log1.for

compare_mask.for_inc

compare_real8.for

complete_ast.for

crc.for

create_init_data.com

create_init_dat.for

create_init_data_a.com

create_init_data_b.com

doid_defs.for_inc

do_assigns.com

gcs_com.for_inc

gcs_int_cvt.for

gcs_list.dat

gcs_params.for_inc

gcs_rendezvous.mms

gcs_setup.for

gcs_setup.obj

gcs_sim.mms

gcs_sim_rendezvous.for

gcs_sim_rendezvous.obj

gcs_sim_switches.dat

gcs_sim_switches.for_inc

gcs_who_am_i.for

gcs_who_am_i.obj

generate_initial_random_seed.for

get_accuracy_data.for

get_data.for

get_init_data.for

get_switches.for

global_setup.for

initialize.for

initial_attitude.for

initial_contants.dat

initial_contants_1.dat

initial_contants_2.dat

initial_contants_3.dat

initial_contants_4.dat

initial_contants_5.dat

initial_contants_6.dat

initial_contants_7.dat

initial_contants_8.dat

initial_seed.dat

init_base_vals.for

init_timing.for

integrate.for

limits.dat

limits.for_inc

limit_check.for

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

SIMULATOR.SOURCE_CODE]

log_traj_status.for

log_values.for

loop_values.for

matrix_multiply.for

mms_rules.mms

mod_data.exe

mod_data.for

packet_definitions.for_inc

page_align.opt

passed_record.for_inc

pg_align_sim.opt

put_data.for

put_init_data.for

ramdom.for

random_value.for

release.for

report_in.for

response_model.for

rti_traj_sim.exe

runsimi.com

start_gcs_models.for

stop_jobs.for

table_lookup.for

tabular_data.dat

thrusters.for

traj_sim.exe

traj_sim.for

traj_sim_debug.exe

twos_comp.for

ufo_create.for

update.for

usage_distributions.dat

who_is_waiting.for

DISK$HOKIE:[GCS.CMS.

SIMULATOR.USER_GUIDE]

DISK$HOKIE:[GCS.CMS.

SOURCE_CODE.MERCURY]

aeclp.for

arsp.for

asp.for

common.inc

cp.for

crcp.for

excond.inc

gp.for

gsp.for

mercury.for

mercury_compile.txt

param.inc

reclp.for

tdlrsp.for

tdsp.for

tsp.for

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

SOURCE_CODE.PLUTO]

aeclp.for

arsp.for

asp.for

clpsf.for

constants.for

cp.for

crcp.for

external.for

gp.for

gpsf.for

gsp.for

guidance_state.for

list_of_routines.txt

pluto.for

reclp.for

run_parameters.for

sensor_output.for

spsf.for

tdlrsp.for

tdsp.for

tsp.for

utility.for

DISK$HOKIE:[GCS.

CMS.SPEC]

spec_2_1.txt

spec_2_2.txt

spec_2_3.txt

DISK$HOKIE:[GCS.CMS.

SPEC_MODS]

mod_2_2-1 --> 29.txt

fm_2_3-1 --> 7.txt

DISK$HOKIE:[GCS.CMS.

SQA_PLAN]

sqa_plan.doc

sqa_plan.ps

DISK$HOKIE:[GCS.CMS.

TRACE_DATA]

reqtrdat.doc

DISK$HOKIE:[GCS.CMS.

VER_CASES]FRAME

frame_001 --> 009.ex

frame_001 --> 009.tc

FUNCTIONAL/DRIVERS

compare.for

compare_external.for

compare_guidance.for

compare_packet.for

compare_partial_external.for

compare_runparam.for

compare_sensor.for

ex_cp.for

m_clp_driver.com

m_gpsf_driver.com

m_lnkaeclp.com

m_lnkarsp.com

m_lnkasp.com

m_lnkclp.com

m_lnkcp.com

m_lnkcrcp.com

m_lnkframe.com

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

VER_CASES] FUNCTIONAL/DRIVERS

m_lnkgp.com

m_lnkgpsf.com

m_lnkgsp.com

m_lnkreclp.com

m_lnksp.com

m_lnktdlrsp.com

m_lnktdsp.com

m_lnktsp.com

m_reclp_st.1 --> .3

m_run_reclp_st.01 --> .03

m_sp_driver.com

m_st_driver.com

m_tc_driver.com

m_test_aeclp.for

m_test_arsp.for

m_test_asp.for

m_test_clp.for

m_test_cp.for

m_test_crcp.for

m_test_frame.for

m_test_gp.for

m_test_gpsf.for

m_test_gsp.for

m_test_reclp.for

m_test_sp.for

m_test_tdlrsp.for

m_test_tdsp.for

m_test_tsp.for

p_buildall.com

p_clp_driver.com

p_compare_external.for

p_compare_guidance.for

p_compare_runpram.for

p_compare_sensor.for

p_ex_cp.for

p_fordrivers.com

p_frame_driver.com

p_gpsf_driver.com

p_lnkaeclp.com

p_lnkarsp.com

p_lnkasp.com

p_lnkclp.com

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

VER_CASES]

FUNCTIONAL/DRIVERS

p_lnkcp.com

p_lnkcrcp.com

p_lnkframe.com

p_lnkgp.com

p_lnkgpsf.com

p_lnkgsp.com

p_lnkreclp.com

p_lnksp.com

p_lnktdlrsp.com

p_lnktdsp.com

p_lnktsp.com

p_read_ex.for

p_read_tc.for

p_run_aeclp.com

p_run_arsp.com

p_run_asp.com

p_run_cp.com

p_run_crcp.com

p_run_gp.com

p_run_gsp.com

p_run_reclp.com

p_run_tdlrsp.com

p_run_tdsp.com

p_run_tsp.com

p_sp_driver.com

p_tc_driver.com

p_test_aeclp.for

p_test_arsp.for

p_test_asp.for

p_test_clp.for

p_test_cp.for

p_test_crcp.for

p_test_frame.for

p_test_gp.for

p_test_gpsf.for

p_test_gsp.for

p_test_reclp.for

p_test_sp.for

p_test_tdlrsp.for

p_test_tdsp.for

p_test_tsp.for

read_ex.for

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

VER_CASES]

FUNCTIONAL/DRIVERS

read_ex_integration.for

read_tc.for

run_aeclp.com

run_aeclp_pst.com

run_arsp.com

FUNCTIONAL/MODELS

run_tsp.com

run_asp.com

run_asp_pst.com

run_clp.com

run_cp.com

run_crcp.com

run_gp.com

run_gpsf.com

run_gp_pst.com

run_gsp.com

run_reclp.com

exname_list.inc

frame.m

gp.m

gp_pst7_code.m

gp_tc.1 --> .117

gsp.m

input.

m_aeclp_st.1 --> .3

m_asp_st_001 --> 003.m

m_gp_st.1 --> .9

m_run_aeclp_st.01 --> .03

m_run_gp_st.01 --> .11

m_run_struct_reclp.01

m_struct_reclp.tc

m_tdlrsp_st_001 --> 011.m

m_tsp_st_001.m

namelist1.

namelist_ex.

name_list.inc

reclp.m

reclp_tc.1 --> .68

reclp_tc.out

run_aeclp.01 --> .57, .010, .1-10, .11-20, .21-30, .31-40, .41-47, .48-53, .48-57

run_crcp.01 --> .10, .1-10

run_gp., .01 --> .116, .1-10, .11-20, .21-30, .31-40,.41-50, .51-60, .61-70, .71-80, .81-90, .91-100, .101-

110, .111-114, .111-116

run_reclp.01 --> .68, .1-10, .11-20, .21-30, .31-40,.41-50, .51-60, .61-68

run_gpsf.01 --> .08

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

VER_CASES]

FUNCTIONAL/MODELS

sp.m

tdlrsp.m

tdsp.m

tsp.m

write_exnml.m

write_exnml_st7.m

write_nml.m

write_nml_st7.m

FUNCTIONAL/NORMAL

aeclp_nr_001 --> 012, 054, 055.ex

aeclp_nr_001 --> 012, 054, 055.tc

arsp_nr_011 --> 017, 022, 023.ex

arsp_nr_011 --> 017, 022, 023.tc

asp_nr_001 --> 007, 016.ex

asp_nr_001 --> 007, 016.tc

cp_nr_001 --> 005.ex

cp_nr_001 --> 005.tc

crcp_nr_001 --> 006.ex

crcp_nr_001 --> 006.tc

gp_nr_001 --> 008, 053, 102 --> 106.ex

gp_nr_001 --> 008, 053, 102 --> 106.tc

gsp_nr_001.ex

gsp_nr_001.tc

reclp_nr_001 --> 059, 064 --> 068.ex

reclp_nr_001 --> 059, 064 --> 068.tc

tdlrsp_nr_001, 003, 005 --> 021.ex

tdlrsp_nr_001, 003, 005 --> 021.tc

tdsp_nr_001 --> 003.ex

tdsp_nr_001 --> 003.tc

tsp_nr_001 --> 003, 006, 007.ex

tsp_nr_001 --> 003, 006, 007.tc

FUNCTIONAL/ROBUSTNESS

aeclp_ro_013 --> 053, 056, 057.ex

aeclp_ro_013 --> 053, 056, 057.tc

arsp_ro_001 --> 010, 018 --> 021.ex

arsp_ro_001 --> 010, 018 --> 021.tc

asp_ro_008 --> 015, 017 --> 044.ex

asp_ro_008 --> 015, 017 --> 044.tc

crcp_ro_007 --> 010.ex

crcp_ro_007 --> 010.tc

gp_ro_009 --> 052, 054 --> 101, 107 --> 117.ex

gp_ro_009 --> 052, 054 --> 101, 107 --> 117.tc

gsp_ro_002 --> 009.ex

gsp_ro_002 --> 009.tc

reclp_ro_060 --> 063.ex

reclp_ro_060 --> 063.tc

tdlrsp_ro_002, 004, 006, 022 --> 028.ex

tdlrsp_ro_002, 004, 006, 022 --> 028.tc

tdsp_ro_004 --> 007.ex

tdsp_ro_004 --> 007.tc

tsp_ro_004, 005, 008 --> 011.ex

tsp_ro_004, 005, 008 --> 011.tc

CMS Library

Elements

DISK$HOKIE:[GCS.CMS.

VER_CASES]

FUNCTIONAL/

STRUCTURAL/MERCURY

m_aeclp_st_001 --> 003.ex

m_aeclp_st_001 --> 003.tc

m_arsp_st_001, 002.ex

m_arsp_st_001, 002.tc

m_asp_st_001 --> 006.ex

m_asp_st_001 --> 006.tc

m_cp_st_001.ex

m_cp_st_001.tc

m_gp_st_001 --> 011.ex

m_gp_st_001 --> 011.tc

m_reclp_st_001 --> 003.ex

m_reclp_st_001 --> 003.tc

m_tdlrsp_st_001 --> 009.ex

m_tdlrsp_st_001 --> 009.tc

m_tsp_st_001.ex

m_tsp_st_001.tc

FUNCTIONAL/

STRUCTURAL/PLUTO

aeclp_pst_001, 002.ex

aeclp_pst_001, 002.tc

asp_pst_001 --> 004.ex

asp_pst_001 --> 004.tc

gp_pst_001 --> 021.ex

gp_pst_001 --> 021.tc

reclp_pst_001 --> 011.ex

reclp_pst_001 --> 011.tc

SUBFRAME

clp_001 --> 014.ex

clp_001 --> 014.tc

gpsf.com

gpsf_001 --> 008.ex

gpsf_001 --> 008.tc

sp_001.ex

sp_001.tc

TRAJECTORY

m_run_traj.com

m_traj.com

pluto.com

run_mc.com

run_traj.com

traj.com

traj_atm_001 --> 012.seed

traj_atm_ic_001 --> 012.tc

traj_atm_ud_001 --> 012.tc

traj_td_013 --> 034.seed

traj_td_ic_013 --> 034.tc

traj_td_ud_013 --> 034.tc

DISK$HOKIE:[GCS.CMS.

VER_PLAN]

verplan.doc

DISK$HOKIE:[GCS.CMS.

VER_PROC]

procedures.

DISK$HOKIE:[GCS.CMS.

VER_RESULTS.MERCURY]

DISK$HOKIE:[GCS.CMS.

VER_RESULTS.PLUTO]

The following is a list of binders and their contents the configuration manager is keeping; the “Change Reports” binder is divided into sections.

Binder Name

Items

Problem Reports for Mercury

PR #1 - 31

Problem Reports for Pluto

PR #1 - 27

Change Reports:

Configuration Management Plan

SDCR # 1 - 6

Development Standards

SDCR # 1 - 9

Spec

SDCR # 2.2-27 --> 29, 2.3-1 --> 7

Verification Cases

SDCR #1 - 38

Verification Plan

SDCR #1 - 8

Verification Procedures

SDCR #1

B.5 构建文件Build Files

Mercury 构建文件Mercury Build File

Mercury 构建文件位于 disk$hokie:[gcs.cms.source_code.mercury]mercury_compile.txt 中,如下所示:

编译 Mercury 源代码:

The Mercury build file is located in disk$hokie:[gcs.cms.source_code.mercury]mercury_compile.txt and is as follows:

To compile the Mercury source code:

(生成1个目标文件和1个列表文件)

(generates one object file and one list file)

fortran/list mercury+tsp+arsp+asp+gsp+tdlrsp+tdsp+gp+aeclp+reclp+crcp+cp

(生成单独的目标文件和单独的列表文件)

(generates individual object files and individual list files)

fortran/list mercury,tsp,arsp,asp,gsp,tdlrsp,tdsp,gp,aeclp,reclp,crcp,cp

Mercury 有十一(12)个模块,每个模块包含一个或多个子例程。

There are eleven(12) modules for Mercury with each module containing one or more subroutines.

DRIVER

mercury.for (include files: common.inc, excond.inc, param.inc)

SP

tsp.for (include files: common.inc, excond.inc, param.inc)

arsp.for (include files: common.inc, excond.inc, param.inc)

asp.for (include files: common.inc, excond.inc, param.inc)

gsp.for (include files: common.inc, excond.inc, param.inc)

tdlrsp.for (include files: common.inc, excond.inc, param.inc)

tdsp.for (include files: common.inc, param.inc)

GP

gp.for (include files: common.inc, excond.inc, param.inc)

CLP

aeclp.for (include files: common.inc, excond.inc, param.inc)

reclp.for (include files: common.inc, excond.inc, param.inc)

crcp.for (include files: common.inc, param.inc)

CP

cp.for (include file: common.inc)

Pluto 构建文件Pluto Build File

Pluto 构建文件位于 disk$hokie:[gcs.cms.source_code.pluto]list_of_routines.txt

如下:

The Pluto build file is located in disk$hokie:[gcs.cms.source_code.pluto]list_of_routines.txt

and is as follows:

Module

Brief description

AECLP.FOR

Implementation of functional unit AECLP

ARSP.FOR

Implementation of functional unit ARSP

ASP.FOR

Implementation of functional unit ASP

CLPSF.FOR

Contains the control for subframe 3

CONSTANTS.FOR

Data declarations for constants

CP.FOR

Implementation of functional unit CP

CRCP.FOR

Implementation of functional unit CRCP

EXTERNAL.FOR

Data definitions and Common block EXTERNAL

GP.FOR

Implementation of functional unit GP

GPSF.FOR

Contains the control for subframe 2

GSP.FOR

Implementation of functional unit GSP

GUIDANCE_STATE.FOR

Data definitions and Common block GUIDANCE_STATE

PLUTO.FOR

The Main program entry

RECLP.FOR

Implementation of functional unit RECLP

RUN_PARAMETERS.FOR

Data definitions and Common block RUN_PARAMETERS

SENSOR_OUTPUT.FOR

Data definitions and Common block SENSOR_OUTPUT

SPSF.FOR

Contains the control for subframe 1

TDLRSP.FOR

Implementation of functional unit TDLRSP

TDSP.FOR

Implementation of functional unit TDSP

TSP.FOR

Implementation of functional unit TSP

UTILITY.FOR

A collection of utility routines (range checking)

To Build

Required Modules

AECLP

AECLP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

ARSP

ARSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

ASP

ASP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

CP

CP.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR

CRCP

CRCP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR

GP

GP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

GSP

GSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

RECLP

RECLP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

TDLRSP

TDLRSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR

TDSP

TDSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

TSP

TSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

Subframe 1

ARSP.FOR, ASP.FOR, CP.FOR, GSP.FOR, SPSF.FOR, TDSP.FOR, TSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

Subframe 2

CP.FOR, GP.FOR, GPSF.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

Subframe 3

AECLP.FOR, CLPSF.FOR, CP.FOR, CRCP.FOR, RECLP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

Pluto

AECLP.FOR, ARSP.FOR, ASP.FOR, CLPSF.FOR, CP.FOR, CRCP.FOR, GP.FOR, GPSF.FOR, GSP.FOR, PLUTO.FOR, RECLP.FOR, SPSF.FOR, TDLRSP.FOR, TDSP.FOR, TSP.FOR, CONSTANTS.FOR, EXTERNAL.FOR, GUIDANCE_STATE.FOR, RUN_PARAMETERS.FOR, SENSOR_OUTPUT.FOR, UTILITY.FOR

B.6 References

B.1 Guide to VAX DEC/Code Management System. Digital Equipment Corporation, Maynard,

Massachusetts, April 1987.

B.2 Teamwork Environment Reference Manual. Cadre Technologies, Inc., Providence, Rhode Island,

Release 4.0, 1991.

B.3 Hatley, Derek J.; and Pirbhai, Imtiaz A.: Strategies for Real-Time System Specification. Dorset

House Publishing Company, New York, New York, 1987.

B.4 Teamwork/SA Teamwork/RT User's Guide. Cadre Technologies, Inc., Providence, Rhode Island,

Release 4.0, 1991.

B.5 Teamwork/SD User's Guide. Cadre Technologies, Inc., Providence, Rhode Island, Release 4.0, 1991.

B.6 Programming in VAX FORTRAN. Digital Equipment Corporation, Maynard, Massachusetts,

September 1984.

B.7 Text Processing: EDT Reference Manual. Digital Equipment Corporation, Maynard, Massachusetts,

September 1984.

B.8 Text Processing: VAXTPU Reference Utility Manual. Digital Equipment Corporation, Maynard,

Massachusetts, April 1986.

B.9 Wolfram, Stephen,. Mathematica, A System for Doing Mathematics by Computer, Second Edition.

Addison-Wesley Publishing Company, Inc., 1991

B.10 Analysis of Complexity Tool User's Instructions, McCabe Associates Inc., Redwood City, Ca., 1992

B.11 McCabe, Thomas j., Structural Testing: A Software Testing Methodology Using the Cyclomatic

Complexity Metric, McCabe & Associates, Inc., 1982.

B.12 Guide to VAX Notes. Digital Equipment Corporation, Maynard, Massachusetts, March 1986

  • 28
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值