著者
浅野 雅樹 西浦 洋一 中西 恒夫 藤原 啓一
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2019-SE-202, no.3, pp.1-8, 2019-07-05

本稿は,アイシン精機株式会社における自動車ボディ系製品向けプロダクトラインを開発するためのドメインエンジニアリングプロセス改定の事例を示す.このプロセスでは,抽象化や関心事の分離に長けた限られた数の開発者がフィーチャ分析を実施し,仕様からアーキテクチャ設計を含む他の作業は製品に精通する一般の開発者が実施する.フィーチャ分析は,可変性との整合性を担保しつつ抽象化と関心事分離を実現し,以降の工程で作成する開発文書をその分離構造に従わせるために実施する.要求と仕様は,ユースケース,ユースケースシナリオ,階層化された表形式による仕様記述 (USDM) によって詳細化される.さらに,USDM における仕様記述は,ロバストネス図のコントロール間の結合度を表す設計構造マトリクス(DSM :Design Structure Matrix) を用いた,定量的かつ説明可能な手法によってシステム分割へと詳細化される.今回改善したドメインエンジニアリングプロセスにより,仕様やアーキテクチャ設計に係るソフトウェアレビューの問題指摘件数が削減され,アーキテクチャ設計の期間が短縮され,かつ変更しやすいアーキテクチャが維持できたことが確認できた.
著者
栗林 健太郎 山崎 進 力武 健次 丹 康雄
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2021-SE-207, no.32, pp.1-8, 2021-02-22

IoT デバイスは多様な用途において増え続け,2030 年にはその数が 1250 億に達すると見込む調査報告がある.増え続ける多様な需要を満たすためには,IoT デバイスの開発効率の向上が必要であり,そのための開発プラットフォームが多数現れている.IoT デバイス内アプリケーションの開発において,開発者によるコードの変更を適用することで生じる動作の変更が意図した通りであるかどうかを確認するためには,変更内容をターゲットとなるデバイスへ適用し実際に動作させる必要がある.既存方式では,更新内容の生成および適用に加えて,デバイスの再起動に時間を要するため,迅速な開発サイクルの実現が困難である.本研究では,先行研究に基づきコードの変更をデバイスへ適用する方式について(1)ファームウェアイメージの全体を適用する方式,(2)ファームウェアイメージの差分を適用する方式,(3)アプリケーションコードを動的に適用する方式の 3 つに分類した.その上で,開発効率の向上を目的として(3)を動的な性質を持つ言語によって実装し得る方式として位置づけ直して提案するとともに実装し,各方式について更新に要する時間を比較検討した.その結果,提案方式は既存方式に比べて更新に要する時間が 95% 短くなった.
著者
小泉 雄太 荒堀 喜貴 権藤 克彦
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2018-SE-198, no.27, pp.1-8, 2018-03-02

メモリリークは,不要なオブジェクトが将来増えることはない低脅威リークと,不要なオブジェクトが将来増え続ける高脅威リークに脅威度の観点から分類できる.この分類は一定の基準でまとめられたオブジェクト群 (グループ) にも適用可能である.従来の Staleness 解析のような全てのオブジェクトに対して特定の指標でリークの評価 / 報告をするリーク検出手法では,高脅威リークが低脅威リークの報告に埋没する可能性や,高脅威リークの即時判定ができないなどの問題がある.また,バイナリレベルでの解析においては,型情報のようなグループ化に適した情報の取得が困難な現状がある.本研究の提案手法である Pikelet は,バイナリコードを対象に高脅威のリークを高精度に検出することを目的とした動的メモリリーク検出手法である.高脅威リークの漸次的な特性から,グループサイズの成長過程を測定することで高脅威リークのグループを高精度で検出する.また,バイナリ解析で実現可能なグループ化の手段としてオブジェクト割り付け時の calling context を用いる.オブジェクトのグループ化と,グループの成長から脅威度を導出することで,Pikelet は新たに生成されたオブジェクトの危険度を即時判断し,プログラムに差し迫った脅威をより正確に報告する.実用プログラムを対象とする実験の結果,Pikelet は既存研究に比べて高脅威リークオブジェクト群の検知において精度の向上を示した (同一実行内での計測結果の平均で Recall は 22 ポイント,Precision は 80 ポイントの精度向上を達成した).また,実行オーバーヘッドは既存手法と同程度に収まることを確認した.
著者
鷲崎 弘宜 萩本 順三 濱井 和夫 関 満徳 井上 健 谷口 真也 小林 浩 平鍋 健児 羽生田 栄一
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2020-SE-204, no.17, pp.1-8, 2020-02-24

DX(Digital Transformation)時代に向けた新たなソフトウェア工学(Software Engineering for Business and Society: SE4BS)に向けた枠組みと価値駆動プロセスを提案する.具体的には,今日においてソフトウェア「工学」として受け入れられている手法やプラクティスにおいて,顧客価値やビジネス価値に基づいてソフトウェア開発・運用を進める視点の欠落や,産業界において広く受け入れられているアジャイル開発との分断が起きているという問題を提起する.その問題意識のもと,DX 時代に必要な新たなソフトウェア工学として,ビジネスアジリティを組み入れて新規ビジネスのアイデアから,それを具体化する製品やサービスおよびユーザー体験までを結び付けるソフトウェアシステムの開発・運用に有用なモデル,手法,プラクティスを分類整理し,それらを用いる進め方としてビジネス・社会視点の価値駆動プロセスの一例を提案する.さらに,心的要素である知・情・意による分類を通じて,これからのソフトウェア工学と周辺の捉え方の一つを示す.
著者
小島 嘉津江 森田 純恵 若本 雅晶 宗像 一樹 鷲崎 弘宜
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2017-SE-195, no.30, pp.1-8, 2017-03-05

ソフトウェア品質の向上に関しては,古くから様々な技術が提案・実用化されてきており,ソフトウェア開発方法の進歩に伴う新たな技術の開発も進んでいる.一方,ソフトウェア品質を客観的に評価するための尺度についても研究が進んでおり,ソフトウェア品質モデルおよび品質特性が国際規格として規定されている (ISO / IEC 25000 シリーズ).これら個々の品質技術と,ISO / IEC 25000 シリーズで規定された各品質特性の間には,たとえば,この技術はこの特性の向上に特に効果があるといった関係性が当然存在し,これはソフトウェア開発において重要な情報となり得る.しかし,これまで,このような関係性を網羅的に明確化する試みは行われておらず,品質要求に基づく効率的な品質技術の選択の難しさ,品質技術の研究開発が必要な方向 ・ 領域の不透明さなどの課題があった.本稿では,個々の品質技術が品質特性に与える効果を網羅的に見える化することを目的として,品質技術と品質特性のマッピングを試みた.マッピングに当たっては,品質技術の網羅 ・ 体系化が必要となるが,世界で初めてこれを実現した日本発のガイドである 「ソフトウェア品質知識体系ガイド (SQuBOK ガイド)」 を参照することとした.SQuBOK ガイドと ISO / IEC 25000 シリーズをベースにしたマッピングの結果,品質向上に寄与する技術を品質特性ごとに効率的に選択できるようになり,ツールとしても有効であることがわかった.また,マッピング結果の分析を通して,品質特性による品質技術の偏りからわかる拡充すべき技術領域,データ品質に関する技術の体系化不足,OSS 活用の技法など最新技術の追加 ・ 体系化の必要性など,今後の課題も明確になった.
著者
坂梨 元軌 河邉 翔平 酒井 正彦 西田 直樹 橋本 健二
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2017-SE-196, no.24, pp.1-6, 2017-07-12

難読プログラミング言語 Malbolge は,その解析困難性により知的財産権の保護などに役立つと考えられているが,命令が特殊であるためプログラムの作成は非常に困難である.そのため,Malbolge プログラムを生成するための中間言語として制御付き疑似命令列が提案されているが,C などの通常の言語と比較すると依然としてプログラミングが困難である.本稿では,整数型と真偽型を扱え,while 文などの基本的な制御構造と再帰関数を定義できる C 言語のサブセットのプログラムから Malbolge コードへのコンパイラの実現法を述べる.コンパイラの実現のために,まず,既存の制御付き疑似命令列に配列構文と関数構文を追加し,それにあわせて既存の制御付き疑似命令列から Malbolge への変換系を拡張する.さらに C 言語のサプセットから制御付き疑似命令列へ変換する方法を提案する.
著者
夛田 武広 戸田 航史
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2020-SE-204, no.11, pp.1-7, 2020-02-24

GitHub はバージョン管理システム Git のホスティングサービスとして広く使われている.ただし,GitHub はソースコードのバージョン管理以外にも,コードレビューや Issue 管理,Wiki 等のシステムも提供している.近年の GitHub のリポジトリ数,ユーザ数の増加に伴い,Git の利用を主目的としない,もしくは readme.md の更新以外には Git を利用しないプロジェクトが現れ始めている.これらのプロジェクトは GitHub を Issue 管理システムの利用やドキュメントの管理として利用することを主目的としている.本研究ではこのようなプロジェクト(Hub プロジェクト)に着目し,分析を行った.分析では Hub プロジェクトを 3 つのパターン (Issue Tracker Type,Document Type,Link Collection Type)に分類し,リポジトリ数の増加の推移や最古リポジトリ等について調査した.分析には GitHub に存在する約 1.2 億のオープンリポジトリのデータである GHTorrent を用いた.分析では,あらかじめ手動で収集した 10 の Hub プロジェクトから導出した共通点を利用し,不要なリポジトリをを除去した.分析の結果,タイプ別のリポジトリ増加推移や最古リポジトリ,そして増加のきっかけとなったリポジトリを発見できた.
著者
佐々木 方規 森崎 修司
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2021-SE-207, no.38, pp.1-6, 2021-02-22

受け入れテストやシステムテストは,開発担当者のチームから独立した組織で実施されることが多い.テスト担当者は開発担当者とは異なる背景,技術的視点,マインドセットを持つため,開発担当者とは異なる種類の欠陥を検出できる.一方で,ソフトウェアの内部構造や振る舞いに関して知見が無い状態でテストベースの理解を深めなければならないことも多い.テストのエキスパートは,仕様書に記述された内容以外のソフトウェアの利用シーンや環境などからテストベースの理解を進めるが,その理解戦略は明らかになっていない.そこで,豊富なテスト知識を有する 3 名のエキスパートが与えられたテストベースをどのような戦略で理解しているかを分析する.
著者
鷲崎 弘宜 萩本 順三 羽生田 栄一 関 満徳 小林 浩 丸山 久 井上 健 谷口 真也
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2021-SE-207, no.42, pp.1-7, 2021-02-22

従来のソフトウェア工学は主として開発の効率化や品質の向上に重点を置いて様々な手法やプラクティスを積み重ねてきている.しかしビジネスや社会上の価値創造が求められる Digital Transformation (DX) 時代においては,様々な人々に寄り添う考え方や,新たな社会を構想する捉え方をソフトウェアの企画や開発,運用の中心へと組み入れることの重要性を増すと考えられる.筆者らはこの問題意識のもと,従来からの工学的な知識体系やプラクティスに加えて,人々の意識や価値観,感情をソフトウェアの開発運用において扱うことの重要性を認識し,DX 時代のビジネスや持続可能な社会へ貢献するソフトウェア工学体系を考察する活動 Software Engineering for Business and Society (SE4BS) を 2019 年から進めてきている.そこでは特に,人の根源的な心的要素として捉えられる知・情・意に基づいたソフトウェア開発運用および周辺の考え方やプラクティスの整理体系化と,価値を軸として開発を進める価値駆動プロセスの例示を進めている.本稿では,価値を軸として DX 時代に必要な考え方を概観したうえで,それに応えようとする SE4B の成果の概要を説明する.さらに成果に対する評価や反応として,アンケート回答やワークショップ実施時の意見および大学教育の成果を紹介する.そのうえで,評価や反応を踏まえ,関連研究との関係も含めて将来の展望を説明する.
著者
上野 優 新居 雅行
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2021-SE-207, no.37, pp.1-8, 2021-02-22

計算機科学の実験環境として Jupyter Notebook が広く使われているが,その計算機クラスタの管理は一般的に容易ではない.一方,クラスタ管理不要で需要に応じた計算資源の利用を可能にするクラウドサービスの一つとして FaaS がある.しかし Jupyter Notebook で書かれた手続き型プログラムを FaaS で実行しようとすると,FaaS のリソース割り当てが他のサービスに比べて小さいため,多くの場合実行できない.本稿ではこの問題に対して,一連の手続き型プログラムを細かく分割することにより,リソース割り当て制限内に収める手法を提案する.さらに提案手法に基づいて既存のノートブックの分割を行い,その機能性と効率性を評価した.
著者
佐々木 裕介 関口 敦二
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2021-SE-207, no.31, pp.1-8, 2021-02-22

ラピッドリリースを前提として Microservice Architecture (MSA) で構築したシステムを複数の組織で運用する場合,複数の組織が様々な設定変更を MSA システム上で同時に実施する.しかし,複数の同時変更に起因するテストの失敗,すなわち障害を解決することは困難である.本論文では,サービスメッシュの構成変更時,特に性能にかかわる障害に関して,障害原因の切り分け作業を網羅的かつ効率的に行う手法を提示する.本手法は,複数の設定変更を組み合わせた場合にのみ再現する障害について,効率的に原因箇所を特定できる.
著者
馬場 建 槇原 絵里奈 米田 浩崇
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2019-SE-203, no.9, pp.1-8, 2019-12-05

組込みシステム開発はソフトウェア開発と異なり,ハードウェアが密接に関わる.組込みシステムでは考慮すべき要素が増えるため,初学者はシステムが動かない原因の箇所を推定し,修正することは難しく,初学者のデバッグ効率の向上が課題となる.デバッグ効率を向上させる方法の一つに,熟練者のデバッグのコツを初学者に教示する方法が考えらえる.組込みシステム開発のデバッグ作業の視線において,熟練度の差がどのように現れるかを被験者 7 名の被験者実験により調査した.調査の結果,実験時間全体をまとめて分析した場合,時間分布や注目物体の遷移確率は熟練者と初学者の間で有意な差がなかった.注目物体の時間的推移について調査した結果,熟練度によって時間ごとの注目物体の傾向に違いがあった.傾向の違いを明らかにするために,時系列データを時間分割して注目物体の遷移確率を調べたところ,熟練者は終盤でソースコードと回路の双方に誤りが存在する可能性を考慮しながらデバッグするといった傾向が見られた.このように注目物体の時間的な傾向を基に,初学者に対してシステムの修正方針を教示できると考える.
著者
鷲崎 弘宜 夏 天 鎌田 夏実 大久保 隆夫 小形 真平 海谷 治彦 加藤 岳久 鹿糠 秀行 田中 昂文 櫨山 淳雄 山本 暖 吉岡 信和 吉野 雅之
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2018-SE-198, no.25, pp.1-7, 2018-03-02

セキュリティパターンとは,セキュアなソフトウェアシステムの開発運用における特定の文脈上で繰り返されるセキュリティに関する問題と解決を一定の抽象度でまとめたものである.1990 年代後半からこれまでに 500 近くのセキュリティパターンの特定と蓄積,共有がなされている.それに伴い,それらの適用や抽出といった技術研究も進められているが,その傾向や全体像,技術的課題および展望は明らかではない.そこで我々は最初に,セキュリティパターン研究を分類整理する際の基本的な用語間の関係を整理した概念モデルを提案する.さらに我々は同モデルに基づいた研究の分類体系 (タクソノミ) を提案し,同分類体系に基づき 200 を超える文献の内容を分類した結果を報告する.
著者
中才 恵太朗 尾上 紗野 畑 秀明 松本 健一
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2016-SE-194, no.5, pp.1-6, 2016-11-10

オープンソースソフトウェア (OSS) への一般的な貢献方法として開発活動 (パッチ投稿,バグ報告など) があるが,運営団体への寄付も重要な貢献方法である.OSS の開発プロジェクトによっては,寄付を促進させるため特典を用意するなど,運営資金の収集に積極的である.本研究は,効果的な寄付の収集方法を明らかにするため,著名な OSS プロジェクトである Eclipse を対象として調査を行った.寄付者のリストとリリース状況を分析した結果,(1) 特典が寄付への動機づけとなっていること,(2) 全体的な寄付者のうち開発者の割合は少ないが,開発者の寄付額は開発者でないものより大きかったこと (3) リリース日には寄付が増えるが,バグ数が多いと寄付が落ち込むようにみえた.
著者
高増 広大 田原 康之 清 雄一 大須賀 昭彦
雑誌
研究報告ソフトウェア工学(SE) (ISSN:21888825)
巻号頁・発行日
vol.2016-SE-191, no.2, pp.1-8, 2016-03-07

近年,スマートフォンの普及率が世界的に増加しているのに付随してスマートフォンアプリケーションの需要が高まっており,開発が進められてきている.そのため同じ課題を解決できるアプリケーション,すなわち類似したアプリケーションが多数出現している.そこでユーザはアプリケーションを利用して目的を満たす事は最低限の条件として,アプリケーションのコンテンツや使い易さ等,自分がこだわる観点でのアプリケーションの選定を行いたくなると考えられるが,多数の中からの選定は困難である.本研究では,ユーザが目的を達成する為にアプリケーションを導入するという前提で,ユーザのこだわりを考慮した推薦システムを提案する.そのために,通常アプリケーションの入手先となるアプリストアに投稿された他のユーザのレビューコメントに自然言語処理手法を適用する.具体的には,コメントから類似アプリケーションの特徴を表すと考えられる単語を抽出し,ユーザはそこから興味を持った単語を選ぶ.アプリケーションのレビューコメントにおいて単語の評価がネガティブかポジティブかを判定することにより,アプリケーションのその単語に関する評価値を算出し,ランク付けして推薦する.算出した評価値を,実際にアプリを使用した被験者による評価と比較し,またレビュー内に出現する単語に対するネガティブ・ポジティブの判定を,人手で作成した正解データと照らし合わせる事でシステムの評価を行った.