Comments
Description
Transcript
OSLCチュートリアル - TERAS Web Site
OSLCチュートリアル Tool Environment for Reliable and Accountable Software 株式会社OTSL 目次 OSLCとは? OSLCのDomainとWorkgroup OSLCとLinked Data OSLCとREST OSLCドメイン:要件管理 OSLCドメイン:要件リソースの関係プロパティ OSLCの認証 他のトピック 2 Copyright © 2012 TERAS All Rights Reserved. OSLCとは? Open Services for Lifecycle Collaboration(OSLC) 2008年IBMにより提案された OSLCを推進している団体(Community) OSLC仕様の策定 OSLCの参考実装とテスト・スイートの開発 OSLC仕様 ソフトウェアおよび製品の企画、開発から使用、破棄までを管 理することを支援するツールを統合するための仕様 何故OSLCが生まれたの? いろいろなツールの統合が試みられてきたが、多くはうまく いっていない。 3 原因:独自のAPI、一つに統合されたリポジトリ 異なったALM(またPLM)ツール間での連携の要求が強い Webの発展(異なったサービス間の連携) Copyright © 2012 TERAS All Rights Reserved. OSLCとは?(特徴) オープン 以下の条件に従う場合に限り、自由に使うことができる Creative Commons Attribution 3.0 United States license http://creativecommons.org/licenses/by/3.0/us/deed.ja 以下の条項のどちらかに合意できれば、誰でもが参加できる the Patent Non-assertion Covenant the Patent License 詳細は、http://open-services.net/terms/ インターネット(REST)とLinked Data シナリオ駆動 4 メンバーが合意できる部分からシナリオを決めていく Copyright © 2012 TERAS All Rights Reserved. OSLCとは?(そのメンバは) メンバは? Accenture, Alcatel-Lucent, APG, BigLever, Black Duck, Boeing, BSD Group, CESAR, Citigroup, EADS, Emphasys, Empulsys, Galorath, General Motors, IBM, Institut TELECOM, Integrate Systems, Integrate Systems Engineering, Kovair, KTH, Northrup Grumman, Oracle, Price Systems, QSM, Rally Software, Ravenflow, Shell, Siemens, Sogeti, SourceGear, SPRINT, State Street, Stoneworks Software, Tasktop, Thales, Tieto, TOPIC Embedded Systems, UrbanCode, WebLayers OSLCのWebサイト 5 http://open-services.net/ Copyright © 2012 TERAS All Rights Reserved. OSLCのDomainとWorkgroup OSLCのDomainとは? ALMやPLMで特定の関心 領域 Workgroup 透明性 (OSLC wiki, メーリングリ スト, workgroup会議) シナリオ駆動 最小かつ単純に 短期間で繰り返しに (4~6カ月) 仕様策定と初期実装と同 時に 6 分類 Workgroup コラボレーティブ・ライフ 変更管理 サイクル管理 品質管理 (Collaborative 要件管理 Lifecycle Management) 製品管理(Asset Management) アーキテクチャ管理 ソフトウェア構成管理 Automation ソフトウェア・プロジェク ト管理 PLM 推定と測定 統合サービス管理 性能監視 基本と共通 コア PLMとALM 報告(Reporting) 仕様外 Copyright © 2012 TERAS All Rights Reserved. コミュニケーション OSLCとLinked Data Linked Dataとは、データ版のWorld Wide Web Linked Dataの4原則 1. 2. 3. 4. ものの名前としてURIを使いなさい。 名前の検索のためにHTTP URIを使いなさい。 検索時、標準技術(RDF, SPARQL)を使って、有益な情報を 提供しなさい。 より多くのものを発見できるように、データの中に他のURIへ のリンクを含めなさい。 OSLCリソースとは、OSLCのサービスで追加・更新・削除 されるもの 7 例えば、要件、変更管理における変更など OSLCリソースはRDF表現を持つ(必須)。 Copyright © 2012 TERAS All Rights Reserved. OSLCとREST RESTとは? Representational State Transfer(REST) 原則 ステートレス 「よく定義された操作」 リソースを識別する仕組み リソース間の関係性の記述 クライアント Consumer RESTを使った組込み事例 ZigBee Smart Energy Profile 2.0 OSLCでの統合 ソフトウェア 構成管理の Consumer 8 ソフトウェア構成管理の OSLC Service Provider 兼 OSLC Consumer Copyright © 2012 TERAS All Rights Reserved. REST サーバ OSLC Service Provider 要件管理 OSLC Service Provider 変更管理 OSLC Service Provider 品質管理 OSLC Service Provider OSLCドメイン:要件管理 要件管理リソース Requirement, RequirementCollection Requirementリソースのプロパティ 共通プロパティ dcterms:title, dcterms:description, dcterms:identifier, oslc:shortTitle, dcterms:subject, dcterms:creator, dcterms:contributor, dcterms:created, dcterms:modified, rdf:type, oslc:serviceProvider, oslc:instanceShape 関係プロパティ oslc_rm:elaboratedBy, oslc_rm:elaborates, oslc_rm:specifiedBy, oslc_rm:specifies, oslc_rm:affectedBy, oslc_rm:trackedBy, oslc_rm:implementedBy, oslc_rm:validatedBy, dcterms rdf oslc oslc_rm 9 http://purl.org/dc/terms/ http://www.w3.org/1999/02/22-rdf-syntax-ns# http://open-services.net/ns/core# http://open-services.net/ns/rm# Copyright © 2012 TERAS All Rights Reserved. OSLCドメイン:要件リソースの関係プロパティ oslc_rm:elaboratedBy oslc_rm:elaborates oslc_rm:specifiedBy oslc_rm:specifies 要件 oslc_rm:affectedBy oslc_rm:trackedBy oslc_rm:implementedBy oslc_rm:validatedBy 10 Copyright © 2012 TERAS All Rights Reserved. モデル要素 要件 モデル要素 要件 障害 変更要求 変更要求 テストケース OSLCの認証 OSLCで使用する認証プロトコル HTTP Basic認証 OAuth 一言解説:信頼関係を構築したサービス間でユーザの合意のもと ユーザのアクセス権をセキュアに委譲するプロトコル仕様 ユーザの登録、アクセス権の設定とその粒度について は実装依存 11 Copyright © 2012 TERAS All Rights Reserved. 他のトピック 今日のチュートリアルでは言及しなかったOSLC の特徴 12 Delegated User Interface Dialog ServiceProviderCatalog OSLC Resource Shape Resource Paging OSLC検索機構 Creation Factory Copyright © 2012 TERAS All Rights Reserved. 補足1:仕様作成状況 分類 版 Scope Draft Converge Finalize 変更管理 v2 Scope Draft Converge Finalize 品質管理 v2 Scope Draft Converge Finalize 要件管理 v2 Scope Draft Converge Finalize 製品管理 v2 Scope Draft Converge (Asset Management) アーキテクチャ管理 v2 Scope Draft Converge Finalize ソフトウェア構成管理 v1 Scope Draft Converge Finalize Automation v1 Scope Draft Converge Finalize ソフトウェア・プロ ジェクト管理 PLM 推定と測定 v2 Scope Draft Converge Finalize PLMとALM v1 Scope Draft Converge Finalize 統合サービス管理 性能監視 v1 Scope Draft Converge Finalize 基本と共通 コア v2 Scope Draft Converge Finalize 報告(Reporting) v1 Scope Draft Converge Finalize コラボレーティブ・ラ イフサイクル管理 (Collaborative Lifecycle Management) 13 Workgroup Copyright © 2012 TERAS All Rights Reserved. Finalize 補足2:URIの説明 Uniform Resource Identifier(URI) 1998年8月RFC 2396として制定。2005年1月RFC 3986 として改定。 URIとは、リソースを示すもの 事例: http://www.teras.or.jp/?page_id=439 urn:iso:std:iso:26262:-8:ed-1:en:table:4 ISO 26262 Part8の表4, 「Qualification of software tools classified TCL3」 urn:iso:std:iso:26262:-8:ed-1:en:clause:11.4.6.1 14 TERAS Webの成果報告会のページ ISO 26262 Part8の11.4.6.1節(表4を含む節) Copyright © 2012 TERAS All Rights Reserved. 補足3:OSLC用語 OSLCリソース OSLCサービスにより管理されるリソース。OSLCリソースはプ ロパティや他のリソースへのリンクを持つことができる。 OSLCサービス 15 WebクライアントがOSLCに関してリソースを作成、検索、更新、 削除できるようにする機能集合 Copyright © 2012 TERAS All Rights Reserved. 補足4:RDFの説明 Resource Description Framework(RDF) リソースを記述するための枠組みとしてW3Cが規格化 3つの要素(三つ組)でリソースを表現 Subject(主語) Predicate(述語) ISBN 978-4-7981-1563-4 dc:title Object(目的語) 改訂版 組込みソフトウェア向 け開発プロセスガイド RDF/XML形式のサンプル <rdf:RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:Description rdf:about=“urn:isbn:978-4-7981-1563-4"> <dc:title>改訂版 組込みソフトウェア向け開発プロセスガイド</dc:title> </rdf:Description> </rdf:RDF> 16 Copyright © 2012 TERAS All Rights Reserved. 補足4: RDF/XML形式のサンプルの実体 17 Copyright © 2012 TERAS All Rights Reserved. 補足4:RDFのOSLC リソース・サンプル <rdf:RDF アーキテクチャ管理リソース例 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/terms/" xmlns:oslc_am="http://open-services.net/xmlns/am/1.0/" xmlns:acme="http://acme.com/links/"> <oslc_am:Resource rdf:about="https://acme.com/resources/res1"> <dc:title>ServiceInterface</dc:title> <dc:description>This interface is used to do service things. </dc:description> <dc:type rdf:resource="http://www.eclipse.org/uml2/3.0.0/UML/Interface" /> <dc:format>application/x-uml+xml</dc:format> <acme:elaborates rdf:resource="https://reqserver.acme.com/requirements/req10"/> </oslc_am:resource> </rdf:RDF> 18 Copyright © 2012 TERAS All Rights Reserved.