Comments
Description
Transcript
1 グループウェアの ソフトウェア開発への応用 グループウェアと
グループウェアの ソフトウェア開発への応用 グループウェアと ソフトウェア工学(SE)とのかかわり ◗ グループウェアをどう開発するか (SE for Groupware) → 特に、ユーザの多様性が問題になる 教科書の6.4節 ◗ グループウェアによるソフトウェア開発支援 (Groupware for SE) → ここで解説する Groupware for SE 分散開発の問題点 ◗ 開発作業という作業の特性に着目 ◗ インフォーマルコミュニケーションの不足 ◗ コンタクト先に関する知識の不足 ◗ コミュニケーションの開始が困難 z z z z 技術文書管理 顧客との折衝 プロジェクト管理 プロセス評価と品質保証 ◗ 特に扱う対象がソフトウェアであることに着目 z z マルチユーザのプログラムエディタ コードインスペクション支援 Design Rationale (設計理由、設計動機) z z z 誰がコンタクト可能か(awareness) 時差 反応が悪い ◗ コミュニケーション技術 z ツール、文化、言語 ◗ コミュニケーション意欲 Design Rationale と 議論支援システム z z z z 要求項目の優先度づけ 複数の対案の比較 設計の修正履歴 ... 設計 議論支援 システム システム稼動 ◗ 設計結果(Artifact: 仕様書、設計図、プログ ラム) を導くまでに行われた活動 保守 ◗ 保守の際重要な情報であるにもかかわらず、 これまでは捨てられていた。 Design Rationale 1 設計理由記録の利点 設計理由記録の利点 [垂水, 92] [垂水, 92] ◗ システム保守の際、変更可能な設計と不可 能な設計を識別できる。 ◗ 特に深い理由のない設計結果を過剰に重要 視して設計の見直し機会を逸することを防ぐ。 ◗ 過去の事例や他人の設計を再利用する際の 資料になる。 ◗ 議論の経緯を忘れることによって発生する議 論の蒸し返しを防止する。 ◗ 問題点の議論の積み残しを防止する。 ◗ 議論の記録を意識することで、議論そのもの が合理的・論理的になる。 問題点 議論記録モデル ◗ 現場では、「結果」のドキュメントすら残してい く余裕がない。まして「過程」の記録は? → ツールの使い勝手、議論との連携、... ◗ IBIS 系 z z z ◗ 「過程」をどのような構造で表現したらよいの か? → 議論モデル gIBIS システム Potts のモデル QOC モデル ◗ 知識処理指向 z z 推論との相性 SIBYL システム (DRLモデル) IBIS モデル (既出) IBIS モデルによる議論の例 (Issue Based Information System) GE NERALIZES or SPECIALIZES ISSUE REPLACES, Q UESTIONS, or IS-SUGGESTED-BY 問題1 (Issue) 応答 賛成 案1 意見1 (Position) (Argument) 反対 Q UESTIONS, or IS-SUGGESTED-BY Q UESTIONS, or IS-SUGGESTED-BY RESP O N DS-TO 質問 意見2 案2 問題2 賛成 特殊化 意見3 SUPP ORTS POSITION ARGUMENT O BJECTS-TO 案2‘ 特殊化 意見3‘ 2 IBIS の適用実験 議論支援システムの例 [Yakemovic, CSCW90] gIBIS (MCC) Jeff Conklin, et al.: gIBIS: A Hypertext Too Policy Discussion; Proc. CSCW’88, pp. 140-1 概要: IBIS モデルに基く議論をグラフィカルユーザ インタフェースで支援。 ◗ itIBIS (gIBIS のテキストI/F版) をソフト開発現場に 適用(18ヶ月,8000ノード) ◗ 利点 z z z z z Potts のモデル 議論の整理が容易 問題点の早期発見によるコスト削減 視点の異なるレビュー Agenda 作成が容易で会議が生産的に チーム内外とのコミュニケーションに有効 QOC モデル [MacLean, 91] M O DIFIES Artifact Step O: Permanent O: Appearing RAISES REVIE WS Q: How to make it appear? RESP O N DS-TO SUPP ORTS C: Low user effort C: Screen compactness C: Continuous feedback to user C O NTRIBUTES-TO Issue CITES Q: How to display? O: Natural cursor movement C:..... O: Scroll button C:..... Position Argument O BJECTS-TO SELECTED? QOC モデル Q: Question O: Option C: Criteria Positive Assessment Negative Assessment Question の派生 QOC と IBIS の比較 [MacLean, 91] ◗ QOC は ... Option1 z Option2 Criterion1 Argument1 z Argument2 z Argument3 Argument4 「設計判断」に用途を限定 Argument は個々の意見表明であるのに対し、 Criteria は判断基準を与える IBIS は議論したその場でモデルを構成するのに 向いているが、QOC は議論を整理しながら作成 する。 Supports Challenges 3 DRLモデルのオブジェクト(一部) 議論支援システムの例 SIBYL (MIT) Alternative Jintae Lee: SIBYL: A Tool for Managing Group Rationale; Proc. CSCW’90, pp. 79-92 (1990) DRL Object 概要: DRL モデルに基く議論支援システムを OVAL 上で構築。設計対案比較の自動化も 狙った。 Achieves(alternative, goal) Goal Decision Proble m Claim Is Related to Is a Good Alternative for (alternative, decision proble m) Supports(claim,claim) Denies(claim,claim) Presupposes(claim,claim) Is A Subgoal Of (goal,goal) Question Is a Subdecision of (decision proble m, decision proble m Group Viewpoint Answers(claim,question) Procedure Suggests(object,object) Raises(object,question) Status DRLモデルによるグラフの例 問題 副目標 Decision Problem is-a-subgoal-of 目標2 Goal 解決案 is-a-goodalternative-for 副目標 目標1 Goal is-a-subgoal-of 賛成 supports 目標達成 achieves 否定 denies 案1 Alternative 目標1‘ Goal ウィンドウ コマンド の与え方 主張3 Claim 影響 influences 質問 Question dim状態でも 見えているだけで 邪魔だ。 スクリーントップ のメニューバー にて denies カレントウィンドウに 適用できないコマンド が表示されて邪魔だ。 コマンドがいつ も決まった場所 で見つけられる。 achieves is-a-goodalternative-for ウィンドウ コマンド とは? 使いやすい 各ウィンドウ にて achieves is-a-goodalternative-for 解答 answers Mac のメモリ は増えている のでgoalに すべきでない。 answers ウィンドウの コンテンツ についての コマンド is-a-subgoal-of コマンドに アクセス しやすい スクリーンを 散らかさない 実装が 小規模 achieves スクリーントップ のメニューバー にて 主張4 Claim DRL モデルによる議論例 denies suggests denies 賛成 supports 目標達成 achieves 不要なコマンドは dim 状態に すれば良い。 Co m m ents(claim,object) DRLモデルによる議論の例 主張2 Claim 目標達成 achieves 案2 Alternative 主張1 Claim Decided achieves achieves DRLモデルの特徴 コマンドに アクセス しやすい denies supports ◗ 豊富な関係語彙・柔軟な構造で議論を忠実 に再現 ◗ claim に対する claim と、claim と claim との 関係に対する claim を区別できる。 ◗ 語彙の拡張が容易 ◗ 欠点 z z 関係の語彙が ad hoc に決められている 記録に熟練を要する 4 GIMMe (コロラド大) 演習問題(A) ◗ 開発者間の電子メールをそのまま蓄積 ◗ 自然言語処理による索引づけ ◗ Web インターフェースで検索 ◗ 教官・学生を含め研究室の多くの人が満足 するコンパの会場を選定したい。3つの会場 候補を挙げ、 IBIS, QOC, DRL のモデルを用 いて各会場候補を比較・議論せよ。 演習問題(B) スパイラルモデルとネゴシエーション (WinWin) ◗ 研究室での研究開発・業務などで最近行った 設計上あるいはその他の業務上の比較判断 について、IBIS モデルを用いて議論し直し、 QOC モデルを用いた表記で結果を整理せよ。 ◗ 過去の自分の判断過程と今回の判断過程を 比較して、反省点があれば述べよ。 オリジナルのスパイラルモデル WinWin のスパイラルモデル コードインスペクション支援 ◗ ICICLE z z z X Windows 上のツール、対面型 インスペクタ、司会、書記などの役割を支援 コメントの共有 ◗ hypercode z z Web 上のツール、分散型 ソースをハイパーテキスト化し、コメントをつける 5 ユーザ参画型設計 (Participatory Design) JAD (Joint Application Design) と PD (Participatory Design) JAD ◗ 発注の最初と納品時だけでなく、途中の設計 過程にもユーザが参画する。 ◗ POLITeam が良い例。 ◗ スカンジナビアンアプローチとも言う 評価基準 背景と理論 目標 はじまり テーマ PD 量 質 ソフトウェア工学 グループダイナミクス 労使関係 グループ学習 システムの改善 作業環境の改善 北米産業界 スカンジナビアの政府、組合、 大学 チームワーク、すばや い設計 民主的作業環境・企業経営、 人間性など ユーザの立場 有力なユーザの意見も エンドユーザの意見を必ず反 参考にする POLITeam における Participatory Design 1. システム導入の準備: ユーザインタビューによる要求分析、システムの調整 2. システムの導入: トレーニング、インストール、現場訪問 3. 現場実用による評価: 現場訪問、ユーザワークショップ、インタビュー 4. システム設計: 再設計と新機能の設計のためのデザインワークショッ プ 5. ステップ2に戻る 映 POLITeam の開発 ◗ ユーザの代弁者 ◗ ワークショップの繰り返し Copied from GMD 総合的支援環境 ◗ Flecse (Purdue) ◗ PACT (Stanford) z マルチエージ ェントの連邦 アーキテク チャの例と して有名 PACT ◗ コンカレントエンジニアリング ◗ 連邦アーキテクチャ z z ラッパー (ツールを包む) ファシリテータ (分野間通信と分野内通信のゲートウェィ) メッセージの階層化 メッセージ宛先の決定 メッセージの翻訳 初期化、監視 ◗ 31種類のエージェント、15のワークステーション 6 プロセス中心型 ソフトウェア開発環境 ◗ PSEE (Process-centered Software Engineering Environment) 7