주요 콘텐츠

System Composer Report API를 사용하여 소프트웨어 아키텍처에 대한 시스템 아키텍처 리포트 생성하기

R2022b 이후

이 예제에서는 System Composer™ 소프트웨어 아키텍처 모델과 그 아티팩트에 대한 Report API 기반 아키텍처 리포트를 생성하는 방법을 보여줍니다.

이 예제에 포함된 generateSoftwareArchitectureReport 함수는 다음 섹션을 포함하는 리포트를 생성합니다.

  • [Title Page]

  • [Table of Contents]

  • 모델 요소가 포함된 [Architecture Elements] 챕터

  • 인터페이스와 요소가 포함된 [Service Interfaces] 챕터

  • 모델과 연결된 사용자 지정 뷰 및 다이어그램이 포함된 [Views and Diagrams] 챕터

generateSoftwareArchitectureReport.m 파일을 수정하여 사용자 지정 시스템 아키텍처 설계 리포트를 만들 수 있습니다.

generateSoftwareArchitectureReport 함수는 다음 Report API 클래스의 객체를 사용하여 아키텍처 설계 요소를 찾고 설계에 대해 보고합니다.

완전한 generateSoftwareArchitectureReport 함수는 이 예제의 마지막에 나열되어 있습니다.

ACCSoftwareComposition 소프트웨어 아키텍처에 대한 PDF 시스템 아키텍처 리포트 생성하기

ACCSoftwareComposition 아키텍처 모델을 엽니다.

modelName = "ACCSoftwareComposition";
systemcomposer.loadModel(modelName);

ACCSoftwareComposition 아키텍처 모델에 대한 시스템 아키텍처 리포트를 생성합니다. PDF 문서임을 지정합니다.

generateSoftwareArchitectureReport(modelName, "pdf");

이 함수는 프로젝트 루트 폴더에 ACCSoftwareComposition Architecture Report.pdf라는 새 파일을 만듭니다.

generateSoftwareArchitectureReport 함수

systemcomposer.rptgen 네임스페이스의 리포터 클래스, 파인더 클래스, 결과 클래스를 사용하여 시스템 아키텍처 리포트의 내용을 사용자 지정할 수 있습니다. 이러한 객체의 속성을 사용하여, 보고되는 정보를 필터링하고 형식을 지정할 수 있습니다.

이 예제에 포함된 generateSoftwareArchitectureReport 함수는 다음과 같습니다.

type generateSoftwareArchitectureReport.m
function generateArchitectureReport(mdl, doctype)
%GENERATEARCHITECTUREREPORT Generates a system architecture report from the
%architecture model.
% 
% generateArchitectureReport() generates a PDF system architecture report
% for the ACCSoftwareComposition software architecture model.
%
% generateArchitectureReport(mdl) generates a PDF system architecture
% report for the specified model.
%
% generateArchitectureReport(mdl, doctype) generates a system
% architecture report from the specified model and document type: 'html',
% 'docx', or 'pdf'.
%
% The generated document is a description of an architecture's
% design generated from its System Composer software architecture model. The
% description contains the following sections:
% 
% * Title Page
% * Table of Contents
% * Architecture Elements Chapter -- Contains each component in the
%   architecture model along with their connectors.

import mlreportgen.report.*
import slreportgen.report.*
import slreportgen.finder.*
import mlreportgen.dom.*
import mlreportgen.utils.*
import systemcomposer.query.*
import systemcomposer.rptgen.finder.*

if nargin < 1
    mdl = "ACCSoftwareComposition";
    doctype = "pdf";
end

if nargin < 2
    doctype = "pdf";
end

mdlHandle = systemcomposer.loadModel(mdl);

rptFileName = mdl + " Architecture Report";

rpt = slreportgen.report.Report(OutputPath=rptFileName, ...
    Type=doctype, CompileModelBeforeReporting=false);
open(rpt);

makeTitlePage(rpt, mdlHandle);
append(rpt, TableOfContents);
makeIntroduction(rpt);
makeArchitectureElements(rpt, mdlHandle);

close(rpt);
close_system(mdl);
rptview(rpt);

end

AUTOSAR 소프트웨어 아키텍처에 대한 리포트 생성하기

이 예제의 스크립트를 사용하여 AUTOSAR 아키텍처 모델과 그 아티팩트에 대한 리포트를 생성할 수 있습니다. AUTOSAR 모델을 불러오려면 autosar.arch.loadModel (AUTOSAR Blockset)을 사용합니다. 사용자의 AUTOSAR 모델에 맞게 모델, 프로파일, 요구 사항, 딕셔너리 파일 이름이 업데이트되었는지 확인합니다. AUTOSAR 아키텍처에 대한 자세한 내용은 Software Architecture Modeling (AUTOSAR Blockset) 항목을 참조하십시오.

참고 항목

클래스

도움말 항목