jasmine シミュレーターの開発

Post on 05-Jan-2016

58 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

JASMINE シミュレーターの開発. JASMINE シミュレーター WG 山田良透(京大理). メンバー. 構築コアメンバー. 協力メンバー. その他アストロメトリ勉強会メンバー. Simulator の概要と目的. 装置・環境を含めた模擬観測からカタログ生成・利用までの統一的シミュレーション 目的 装置仕様 サイエンスとして何がどこまで 新観測モードの精度評価 部分(非全天)サーベイは世界初 解析手法(数億星)の検討. Simulator 開発のキーワード. オブジェクト指向 ⇒ UML ⇒ ツール CVS ⇒ テスティングフレームワーク - PowerPoint PPT Presentation

TRANSCRIPT

JASMINEシミュレーターの開発

JASMINEシミュレーターWG山田良透 (京大理 )

メンバー

山田良透 京都大学理 yamada@amesh.org

上田誠司 総研大 seiji.ueda@nao.ac.jp

桑原 新潟大理 takashi@astro.sc.niigata-u.ac.jp

矢野太平 国立天文台位置天文 yano@pluto.mtk.nao.ac.jp

辻本拓司 国立天文台位置天文 taku.tsujimoto@nao.ac.jp

官谷幸利 国立天文台電波 yukitoshi.kan-ya@nao.ac.jp

西亮一 新潟大理 nishi@astro.sc.niigata-u.ac.jp

郷田直輝 国立天文台位置天文 naoteru.gouda@nao.ac.jp

構築コアメンバー

協力メンバー

安田直樹 国立天文台データ解析セ naoki.yasuda@nao.ac.jp

真鍋盛二 国立天文台地球回転 manabe@miz.nao.ac.jp

田澤 国立天文台地球回転 tazawa@miz.nao.ac.jp

小林行泰 国立天文台機器開発セ yuki@merope.mtk.nao.ac.jp

越田進太郎 国立天文台機器開発セ koshida@merope.mtk.nao.ac.jp

中島紀 国立天文台光赤外 tadashi@dodgers.mtk.nao.ac.jp

松原英雄 宇宙化学研 maruma@ir.isas.ac.jp

上野宗孝 東京大 ueno@chianti.c.u-tokyo.ac.jp

その他アストロメトリ勉強会メンバー

Simulatorの概要と目的装置・環境を含めた模擬観測からカタログ生成・利用までの統一的シミュレーション

目的装置仕様サイエンスとして何がどこまで

新観測モードの精度評価部分 (非全天 )サーベイは世界初

解析手法 (数億星 )の検討

Simulator開発のキーワードオブジェクト指向⇒UML⇒ツール

CVS⇒テスティングフレームワーク XML/Webサービス

次へ

Object指向技術の歴史と現状歴史

Simula(1967) Smalltalk(1972-1980, Xerox PARC) C++(1984) Java(1995)

ソフトウエア開発手法の一つのパラダイム新たなパラダイムも考案されている

Object指向とは3つの要素

自然な発想によるプログラミング仕様に対する柔軟性再利用性の高いソフトウエア

Objectとは状態 (属性 )振る舞い (メソッド )識別性

Object指向言語の特徴抽象化

問題に必要な性質だけを抽出カプセル化

データと操作の組と、適切なアクセス制御継承

性質を受け継ぐ多相性

受け継がれた性質に対して操作を上書き

Object指向言語Fortran C Fortran90 C++/Java

抽象化 ×common

△structure

△type

○class

カプセル化

× × △アクセス制御

継承 × × × ○

多相性 × × × ○

戻る

Powerfull Standard libraries

UMLUnified Modeling Languageモデルを記述するための図式

設計に利用9種類の図

クラス図、オブジェクト図、ユースケース図、状態図、アクティビティー図、シーケンス図、コラボレーション図、コンポーネント図、配置図

CASEツール外注では必須

ユースケース図

利用の仕方を表す要素

アクター ユースケース

クラス図クラス (オブジェクトの型 )定義

クラス同士の関係

デザインパターンプログラム設計で共通の単語を提供プログラム要素をクラスより大きな単位で管理

再利用性・拡張性の高いプログラムを作るための経験則

GoFが 23のパターンに整理 Erich Gamma, Richard Helm,

Ralph Johnson, John Vlissides

パターンの例 --Composite部分全体階層を実現したい

オブジェクト構造クラス階層ではどうするか?

戻る

Concurrent Version Systemバージョン管理ツールRcsの拡張

サーバークライアント形式枝の管理

フリーソフトウエアでは常識的企業では独自のものを使っている場合が多い

戻る

Cvsサーバーについて

Ssh2の DSA公開鍵を山田宛送付非公開の内容がアクセスできるので、アクセス可能なユーザーは秘密厳守が義務

Webdav導入の検討

サーバー名 cvs.jasmine-galaxy.org

レポジトリ名 /Jasmine/cvsroot

アクセス方法 ext

認証 ssh

現在の cvsレポジトリー構造simulator Jasmine Simulator開発用

apply 科研費等の申請書類作成

optics Centroid実験用プログラム

paper Jasmine関連論文執筆用

report レポート、中間報告

viewgraph 発表用ビューグラフ

宇宙モデルの設計全体

宇宙全体 観測スナップショット 太陽・地球、月

部分 Single Star Multiple Star 太陽系天体 銀河系外天体

観測装置の設計全体

Jasmine

部分 光学系 検出器

光学系はさらに部分を持つ

解析アルゴリズム検討課題複数の方法を検討容易に入れ替え可能 Strategyパターン

アルゴリズムカプセル化の一般的手法

開発における留意点 1Coding style

Sun Java Coding Conventions Gnu Coding Standards(C++)

単位系 SI単位系

開発における留意点 2Buildには antを使用するディレクトリー構造

src ソースツリー lib 外部ライブラリを置く (現在未使用 )

XML関連ライブラリ、描画、物理用 build コンパイル作業用 (antが生成 ) report テストレポート作業用 (junitが生成 )

dist 配布ファイル保存用 (antが生成 )

開発における留意点 3名前空間

jslibパッケージは Jsで始まるクラス名 Jasmineの側は特に指定しない

テストの実装 (XP) 他のパッケージの仕様を仮定している場合 仕様を定めている場合

ドキュメントの整備 仕様書 Javadoc ChangeLog

開発における留意点 4 Javaバージョン

標準プラットフォーム Debian, Redhat, Windows, Solaris

java 1.4で動作可能なことパッケージ

org/jasemine_galaxy/jslib org/jasemine_galaxy/jasmine org/jasmine_galaxy/astro org/jasmine_galaxy/sample パッケージごとに責任者を割り当てる

必要な開発環境

開発者 早期利用 利用者

Java開発環境○ ○

(実行環境 )

Ant ○ ○

Junit ○

全体設計について中間報告時点でのモデル化

対象、装置、操作、環境、成果物、利用さらに抽象度の高いモデル化の提案

上のモデル同士のつながりは予め定まるか? モデルと入出力・接続の分離

モデル /コンテナ /コネクタ /データ シミュレーション

コンテナとコネクタでシミュレーションを実装 コマンド

モデルモデル

モデル化の最小単位コンテナ

モデルに対する入出力の抽象化コネクター

コンテナを接続する部品データ

コネクターを流れるデータの抽象化シミュレーション

シミュレーションを、コンテナ・コネクタから組みあげる

ライブラリ起動・主フレーム終了印刷実行モードの選択ファイル入出力シミュレーションの選択GUI部品

JsMainと関連クラス

数種類のフレーム

Commandパターンの適用

Model/container/connector

今後の進め方ライセンスモデルを決める

オープンソース保守は cygnus形式 Jasmineグループが保持 (有償提供 )

暫定的な公開方法 Jarファイルをメンバー限定Webページソースは cvsサーバー

議論はMLで

参考文献「 just Java2」、 Peter van der Linden

邦訳 ASCII、中田秀基 ISBN4-7561-3598-6、 5800円 オブジェクト指向における再利用のための「デザインパターン」、 Erich Gamma、 Richard Helm、 Ralph Johnson、 John Vlissides

邦訳 SoftBank、本位田真一 /吉田和樹監訳ISBN4-7973-1112-6、 4800円

「 eXtreme Programming テスト技法」 日本 XPユーザーグループ、長瀬嘉秀監修

ISBN4-7981-0128-1、 2400円

今後の課題機能の追加

top related