VOL. J104-D NO. 5
MAY 2021
本PDFの扱いは、電子情報通信学会著作権規定に従うこと。
なお、本PDFは研究教育目的（非営利）に限り、著者が第三者に直接配布することができる。著者以外からの配布は禁じられている。

必要となるため，理解速度は重要な能力の一つといえ性別に着目したソースコード理解速度の分析*

る．プログラムの理解には記憶力が必要とされる場合

高塚由利子† a)があり，男性と女性では記憶能力に違いがあると指摘角田村上優佳紗†

雅照†（正員）中村匡秀††（正員）されていることから [6]，性別がプログラム理解速度に影響する可能性がある．一方で，3.2 で述べるように

A Gender-Focused Analysis of Source Code Reading Speed *Yuriko TAKATSUKA† a) , Yukasa MURAKAMI† , Nonmembers,

記憶能力のプログラム理解への影響度は必ずしも明確

Masateru TSUNODA† , and Masahide NAKAMURA†† , Members

でない．そこで，理解速度が記憶能力に影響されやす† 近畿大学大学院総合理工学研究科，東大阪市

Graduate School of Science and Engineering, Kindai University, Higashi-Osaka-

いプログラムを読む場合，性別により理解速度に差があるかを確かめる．

shi, 577–8502 Japan†† 神戸大学大学院システム情報学研究科，神戸市

Graduate School of System Informatics, Kobe University, Kobe-shi, 657–8501

2. 関 連 研 究

Japan

本研究と同様に，女性をサポートする目的で性別a) E-mail: takayuri0906@gmail.com* 本論文は高塚 由利子他, “ソフトウェア開発における性別とプログラム読解速に着目して分析した研究は幾つか存在する．例えば度との関係,” ソフトウェア工学の基礎 XXVI, 日本ソフトウェア科学会, 2019

Terrell ら [7] は，性別に着目して GitHub におけるプルの拡張である．

リクエストの採択される割合を分析し，性別が不明な

DOI:10.14923/transinfj.2020JDL8013

場合は女性が採択される割合が高く，性別が明らかな場合は逆の結果となったことを示している．これは，あらまし 女性の人材を増やすためには，女性に関

性別に関する先入観を抑えることにより，女性 IT 人材する先入観の影響を抑え，女子学生の進路の選択肢をを活用できる可能性を示している．また，ソフトウェ

増やすことなどが挙げられる．そこで本研究では，そアのユーザインタフェースを女性が使いやすくするたのような先入観に対処するために，性別に着目してプめに，性別によりソフトウェアの操作が異なるかを分

ログラム理解速度を分析した．実験の結果，性別によ析した研究も存在する [8], [9]．更に，コンピュータサ

るプログラム理解速度の差は見られなかった．

イエンスを専攻する女子学生が減少している原因を明

キーワード

開発者の能力，コードリーディング，

らかにするために，男子学生と女子学生のコンピュー
タサイエンスに対する認識の違いを分析した研究 [10]メンタルシミュレーション

1. ま え が きも存在する．この研究は，学生の支援や大学カリキュ

近年，IT 人材の不足が指摘されている [1]．約 70%

ラムの改善に役立ち得る．

の企業では，女性の IT 人材が 20% 以下となっておただし我々の知る限り，性別に着目してソースコー

り [2]，現状は男性技術者の方が多い．すなわち，女性

ド理解速度を実験的に分析した研究は存在しない．一IT 人材を活用する余地があると考えられ，女性の IT方で，本研究とこれらの従来研究は，女性 IT 技術者と技術者を増やすことで人材不足の解決の一助となる．

その候補をサポートするというゴールは同じである．

更に，女性 IT 人材が増えることは，男性，女性双方に

なお本研究では，科学技術が男性に向いているなどのとってメリットがある．例えば Hoogendoorn ら [3] の先入観の影響を抑え，女子学生の進路の選択肢を増や研究では，性別に偏りがないビジスネチームでは，そすために，定量的な証拠を示すことを目的としており，

うでないチームと比較してより高い利益をあげられる

その点においては異なる．

3. プログラム理解

ことが示されている．
女性の IT 人材を増やすためには，科学技術が男性

3. 1 ボトムアップ理解に向いているなどの先入観の影響を抑え，女子学生のプログラム理解には，トップダウン理解とボトム

進路の選択肢を増やすこと [4] などが重要な要素としアップ理解がある [11]．前者では意味的な手がかりて挙げられる．このような問題に対処する一つの方法(semantic cues) に基づいてプログラムを理解する．例

は，定量的な証拠を示すことである．

えば bubble sort という識別子がプログラム内に使われそこで本研究では，上述のような先入観に対処するている場合，開発者はバブルソートを行っていると推ために，プログラム理解速度と性別との関係につい測して理解を試みる．これに対しボトムアップ理解でて分析する．ソフトウェアライフサイクルコストのは，意味的な手がかりが乏しい場合に適用され，各プ

40-67% は保守であり [5]，保守時にプログラム理解がログラム行を解釈し，そこからプログラム全体を理解

電子情報通信学会論文誌 D Vol. J104–D

No. 5 pp. 521–525 © 一般社団法人電子情報通信学会 2021

521

電子情報通信学会論文誌 2021/5 Vol. J104–D No. 5

するアプローチを取る．

れることを想定している．メンタルシミュレーション

これまで，トップダウン理解を扱っている研究 [11]とは，プログラムの動作をコンピュータや筆記具を用もあるが，ボトムアップ理解に基づくプログラム理

いずに思考しながら理解することであり，比較的規模解を取り扱っている研究も多く見られる．例えば文の小さなコード片に対して用いられる．

献 [12] ではプログラム理解時の脳血流を分析するため

メンタルシミュレーションを行う場合，変数の値をに，被験者にプログラム内の各変数の値を答えさせて記憶しておく必要があるが，多数の値を同時に記憶いる．文献 [13], [14] でも，プログラム理解時の脳波をしておくことは容易ではない．それを考慮した尺度

分析するために，被験者にプログラムの出力を答えさとして，文献 [17] では BT_CONST，ASSIGN，RCL，せている．プログラム保守においても意味的な手がか

BT_VAR が定義され，文献 [16] では BT_VAR を改善

りが乏しい場合，ボトムアップ理解を行う必要がある

した SUM_UPD，SUM_VAR が定義されている．そこため，本研究ではこれらの研究と同様に，ボトムアッで本研究では BT_VAR を除いた五つの尺度を用いた．

プ理解を前提とする．すなわち，本研究でのプログラ

BT_CONST，SUM_UPD，SUM_VAR では，変数の値

ム理解速度とはボトムアップ理解時における理解速度

が開発者の一時記憶に存在しない場合に，その値を得を指す．実験は，被験者がボトムアップ理解する必要

るための再計算コストに基づいて定義されている．尺のあるプログラムを用いて実施した．

度の値が大きい（SUM_VAR については小さい）プロ

3. 2 記憶能力の影響

グラムでは，再計算コストが高いことを示す．記憶能プログラムの理解には記憶能力が必要とされる場合力が低く，一時記憶に保持できる変数が少ない開発者があるが，プログラムをボトムアップ理解するためにがそのようなプログラムを読むと，再計算の頻度が高は，単に変数の値を記憶しておくだけでは不十分であまり，かつ再計算コストが大きいため，理解速度が低る．理解のためには条件分岐についても考慮する必要

下しやすい．

があり，条件式に応じて分岐先を選び，時には記憶しまた，文献 [17] で定義されている尺度 ASSIGN，RCLている変数の値も更新する必要がある．すなわち，プは開発者の一時記憶への読み書き回数に基づいていログラム理解は記憶能力以外も求められる複雑なタスる．一時記憶の読み書きに時間が掛かる，すなわち記クであり，記憶能力の違いがプログラム理解にどこま

憶能力が低い場合，これらの尺度の値が大きいと，理で影響するのかが必ずしも明らかでないといえる．

解速度が遅くなる．よって，これらの尺度の値が大き

なお，本研究では，プログラム理解速度に影響する記憶能力は単純な短期記憶ではなく，ワーキングメモ

い（SUM_VAR は小さい）場合，理解速度が記憶能力に影響されやすいといえる．

リの能力であると想定する．短期記憶は受動的な一時

4. 実記憶であるのに対し，ワーキングメモリは記憶と処理

実験の目的は，理解速度が開発者の記憶能力に影響

験の両方に関連する能動的な一時的記憶であり，情報をされやすいプログラムを読む場合，性別により速度が更新したり調整したりする側面をもつ [15]．そのため，異なるかどうかを確かめることである．そのために，

ボトムアップ理解の場合，ワーキングメモリの能力差

記憶能力の理解速度への影響度が異なる，複数のプロがプログラム理解速度に影響すると考えられる．ただグラムを用意し，男女の被験者がコードを理解するた

し，ワーキングメモリには個人差があり，また容量にめに掛かった時間を計測した．開発者の能力には様々も制約があるため，効率的な運用には注意による制御な側面が存在するが，本実験では総合的な能力の評価が欠かせないと指摘されている [15]．そこで本研究でを目的とせず，特に記憶能力のみに着目している．

は主にワーキングメモリ容量の運用能力を，記憶能力として想定する．

実験では文献 [16] で示されているプログラム四つ（a0，a1，b0，b1）を利用した．それぞれ 20 行から 30

3. 3 理解容易性尺度

行の規模である．ある変数の値が，プログラム実行後あるプログラムの理解速度が，記憶能力，すなわちにどうなるかを正しく答えられる時間を回答時間，すワーキングメモリ容量の運用能力に影響されやすいか

なわち理解速度とした．より詳細には，回答の開始はを定量的に計測するため，文献 [16], [17] で提案されてプログラムを被験者に提示した時点とし，終了は正答いる理解容易性尺度を用いた．この尺度では，プログを答えた時点とした．表 2 に各プロクラムの理解容易

ラムの理解時にメンタルシミュレーション [18] が行わ性尺度（3. 参照）を示す．これらより，b0，b1 の理解

522

レ

タ

ー
表 1 被験者に関する基本統計量
Table 1 Basic statistics of subjects.

Table 2

表 3 各グループのプログラム別回答時間（秒）Table 3 Correlation coeﬃcients to reading time.

表 2 各プログラムの理解容易性尺度 [16]Program understandability metrics on each program.

5. 結

果

5. 1 RQ1，RQ2 に関する分析
表 3 に男性，女性各グループのプログラム別の回
答時間の平均値，中央値，標準偏差を示す．時間が短いグループのセルをグレーで表している．プログラム

a0，b0 では，平均値，中央値とも男性グループの方が速度は記憶能力に影響されやすいといえる．なお，文小さかったが，プログラム a1 では女性グループの中央

献 [16] の表では BT_VAR が含まれていたが，3.3 で値が小さく，b1 では平均値が女性グループの方が小さ述べたように BT_VAR は用いないため，表から除外

かった．すなわち，プログラムによって結果が異なり，した．

必ずしも一方のグループの時間が短いとはいえない．

被験者を男性，女性グループに分け，それぞれのグ

それぞれのグループの回答時間の分布を，箱ひげ図

ループの回答時間の平均値や中央値などを算出し比較を用いて図 1 に示す．a0 では箱の位置は両グループでした．被験者は，同一大学・学科の情報科学を専攻す差がないが，男性グループの中央値の方が低い．a1 でる学部生 16 名（男性 8 名，女性 8 名）である．被験は箱の位置，中央値ともほとんど差がない．b0 では男者の経験年数などの基本統計量を表 1 に示す．男性グ

性グループの箱の位置，中央値とも低かった．b1 では

ループの経験年数の平均が 1 年長いが，これは経験中央値は若干男性の方が低かったが，箱の大きさは男

年数が 7 年以上の被験者が 2 人含まれるためであり，性の方が大きかった．図からもどちらかのグループがそれ以外の被験者の経験年数は，男女とも 2〜4 年で常に時間が短いとはいえない．

あった．

この結果より，RQ1 に対する答えは「プログラムにプログラムを読む順番が実験結果に影響することをよって傾向が異なり，必ずしも一方が速いとはいえな避けるために，四つのプログラムを読む順番を被験者い」，RQ2 に対する答えは「プログラムによって傾向ごとに変更した．例えばある被験者ではプログラムをが異なり，どちらかのグループの方が速いとはいえな

a0，a1，b0，b1 の順に読むとし，別の被験者では b1，

い」となる．

a0，b0，a1 の順に読むなどとした．

5. 2 RQ3 に関する分析

分析の目的を明確にするために，三つのリサーチク

RQ3 に答えるために，理解速度に対する記憶能力

エスチョンを設定した．RQ1，RQ2 はグループ間の速の影響が小さいプログラム a0 と比べ，何倍の回答時度差に着目しているのに対し，RQ3 はグループ内にお間が掛かっているかを調べた．具体的には，プログラ

ける，プログラムの違いによる速度差に着目している．

ム a0 以外の回答時間/プログラム a0 の回答時間を求RQ1: 女性グループと男性グループでは，どちめた．この値が小さければ，記憶能力に影響されやす•らがプログラムを理解する速度が速いのか?

•

RQ2: プログラムの理解速度が開発者の記憶能

い場合とそうでない場合の理解速度の差が小さいといえる．なお a0 の回答時間を基準とすることにより個力に影響されやすい場合，どちらのグループの理解速

人間の能力差を標準化している，言い換えると a0 を度が速いのか?

各個人の基準値とし，基準値との差を分析していると•

RQ3: プログラムの理解速度が開発者の記憶能力に影響されやすい場合とそうでない場合の理解速度の差が小さいのは，どちらのグループか?

もいえる．
結果を表 4 に示す．プログラム a1，b1 では，女性グループの方が比の平均値，中央値とも小さかったが，
523

電子情報通信学会論文誌 2021/5 Vol. J104–D No. 5

Fig. 1

図 1 プログラム別回答時間（秒）Answering time of each program (seconds).

表 4 プログラム a0 との回答時間の比
Table 4 Ratio of answering time to program a0.

いえる．また，プログラミング経験年数の違いは大きくなく，更に個人ごとに回答時間を正規化した分析も行った．このことから，性別以外の要因については適
切にコントロールできていると考える．
本研究では，性別以外の要因として，表 1 に示すよ
うに年齢と経験年数を確かめており，従来研究と比較
して要因の考慮は不足していない．文献 [14] では学生

Table 5表 5 誤回答数の基本統計量
Basic statistics of the number of incorrect answers.

の被験者は比較的均一であるとみなし，そもそも経験年数などの要因が確かめられていない．文献 [19] ではプログラミング言語ごとの経験年数のみ確かめており，文献 [9] は年齢，経験年数と 4 段階の技術レベルを確かめている．学生の自己評価による技術レベルは，
我々のこれまでの実験において，実際の技術レベルと関連が弱い傾向が見られたため収集しなかった．
実験では規模の小さなプログラムを用いた．もし，プログラム b0 では男性グループの方が小さかった．
すなわち，回答時間の相対的な変化量に着目した場合でも，プログラムによって結果が異なり，どちらかのグループの時間が短いとはいえなかった．

5. 3 誤回答数に関する分析
誤回答数の基本統計量を表 5 に示す．プログラム b0については男性グループの誤回答数が多く，b1 では女性グループの誤回答数が多かったが，これらはそれぞれのグループで回答時間が長いプログラムであり，難易度がそのまま反映されていると考えられる．女性グ
ループでは，a0 を除き中央値が 1 を超えていた．このことから，誤回答の傾向は両グループで特に大きな差はないが，少なくとも女性グループの誤回答数が少ない傾向とはいえない．

6. 考

察

6. 1 妥当性への脅威
実験での被験者は同一大学・学科に所属しているた
め，受けてきたプログラミング教育はおおむね同じと524より規模の大きなプログラムを用いた場合，理解に必要となる知識など，その他の要因の影響が大きくなり，
記憶力を必要とするプログラムとそうでないものを読んだ場合の差異の要因が不明確となり得る．実験での規模が小さいことは留意すべきだが，文献 [20] など，
被験者実験時にコードスニペットとも呼ばれる規模の小さなプログラムを用いた研究は幾つか存在する．
実験での被験者はソフトウェア開発の実務者ではない．ただし，文献 [19] では，学生と実務者の違いはあまり大きくなく，学生を実務者の代替できることが示されている．実験で用いたプログラムの内容も考慮す
ると，実務者を被験者とした場合でも分析結果は大きく変わらないと考えられる．ただし，先入観の影響を抑え，女子学生の進路の選択肢を増やすことが本研究の目的であることから，男女の学生間だけではなく，男女の実務者間でも差がないことを定量的に示すことも重要であると考える．そのため，実務者を被験者とすることは今後の課題となり得る．

レ

タ

ー

被験者数は多くはないが，被験者実験は実施に時間

source: pull request acceptance of women versus men,” Peer J
Computer Science, 3:e111, 2017.

が掛かり，人数を増やすことは容易ではない．例えば，
文献 [14] では被験者数が 14 人である．被験者数を増[8]

L. Beckwith, M. Burnett, S. Wiedenbeck, C. Cook, S. Sorte, and
M. Hastings, “Eﬀectiveness of end-user debugging software fea-

やして信頼性を高めることは今後の課題の一つである．

tures: are there gender issues?” Proc. SIGCHI Conf. on Human

6. 2 結果の解釈と活用

Factors in Computing Systems (CHI), pp.869–878, 2005.

同一大学・学科の被験者による実験では，性別と理[9]

Farooq, V. Grigoreanu, and M. Czerwinski, “Gender diﬀerences

解速度には関連が見られなかった．このことから，プ

and programming environments: across programming popula-

ログラミングの経験と教育水準，例えば教育を受けて

tions,” Proc. Int. Symp. Empirical Software Engineering and Mea-

いる大学が同等であるならば，対象プログラムの記憶力の必要性にかかわらず，性別によるコード理解速度

surement (ESEM), article 28, 10 pages, 2010.
[10]

technical symposium on Computer science education (SIGCSE),

分析結果の活用法の一つは，1. で述べたように先入

pp.49–53, 2003.
[11]

neural eﬃciency of program comprehension,” Proc. Joint Meeting

接的な利益を得られる可能性がある．文献 [21] では，on Foundations of Software Engineering (ESEC/FSE), pp.140–

性別に基づく先入観の悪影響を「ステレオタイプ脅威」

150, 2017.
[12]

T. Nakagawa, Y. Kamei, H. Uwano, A. Monden, K. Matsumoto,and D. German, “Quantifying programmers’ mental workload dur-

テスト成績が向上することが示されている．分析結果

ing program comprehension based on cerebral blood flow mea-を活用してプログラミングに対するステレオタイプ脅

surement: a controlled experiment,” Companion Proc. Int. Conf.

威を取り除くと，女性がプログラミング能力を更に発Softw. Eng. (ICSE Companion), pp.448–451, 2014.
[13]

揮できる可能性がある．

J. Siegmund, N. Peitek, C. Parnin, S. Apel, J. Hofmeister, C.
Kästner, A. Begel, A. Bethmann, and A. Brechmann, “Measuringとである．更に，先入観の影響を抑えた場合，より直と呼んでおり，この脅威を取り除くと，女性の数学のS. Beyer, K. Rynes, J. Perrault, K. Hay, and S. Haller, “Gender diﬀerences in computer science students,” Proc. 34th SIGCSEのアドバンテージはほとんどないと考えられる．
観の影響を抑えて女子学生の進路の選択肢を増やすこ

M. Burnett, S. Fleming, S. Iqbal, G. Venolia, V. Rajaram, U.

I. Crk, T. Kluthe, and A. Stefik, “Understanding programming expertise: An empirical study of phasic brain wave changes,” ACM

7. む す びTrans. Computer-Human Interaction, vol.23, no.1, article 2, 2016.

本研究では，性別による先入観を抑え，女性 IT 人

[14]

J. Siegmund, C. Kästner, S. Apel, C. Parnin, A. Bethmann, T.

材の増加をゴールとして，性別に着目してソースコー

Leich, G. Saake, and A. Brechmann, “Understanding understand-

ド理解速度を分析した．分析の結果，メンタルシミュ

ing source code with functional magnetic resonance imaging,”

レーションによりソースコードを理解する場合，性別

Proc. Int. Conf. Softw. Eng. (ICSE), pp.378–389, 2014.
[15]と理解速度と関連は見られなかった．今後の予定は，被験者を増やし結果の信頼性を高めることである．
文[16]

総務省，平成 29 年版 情報通信白書，総務省，2017.

[2]

情報処理推進機構，IT 人材白書 2018, IPA, 2018.

[3]

S. Hoogendoorn, H. Oosterbeek, and M. Praag, “The impact

レーションコスト評価，” 信学技報，SS2004-32, 2004.
[17]

process in program comprehension,” Proc. International Software
Metrics Symposium, pp.351–360, 2003.
[18]

no.7, pp.1514–1528, 2013.
[4]

no.2-3, pp.121–129, 2000.
[19]

Conf. Softw. Eng.: Software Engineering Education and Training
M. Carr and C. Wagner, “A study of reasoning processes in soft-

Conf. Softw. Eng. (ICSE), pp.666–676, 2015.
[20]

ware maintenance Management,” Information Technology and
P. Loprinzi and E. Frith, “The role of sex in memory function:
Considerations and recommendations in the context of exercise,”
J. Clinical Medicine, vol.7, no.6, article 132, 2018.
[7]

J. Terrell, A. Kofink, J. Middleton, C. Rainear, E. Murphy-Hill,
C. Parnin, and J. Stallings, “Gender diﬀerences and bias in open

B. Floyd, T. Santander, and W. Weimer, “Decoding the representation of code in the brain: an fMRI study of code review andManagement, vol.3, pp.181–203, 2002.
[6]

I. Salman, A. Misirli, and N. Juristo, “Are students representativesof professionals in software engineering experiments?” Proc. Int.

(ICSE-SEET), pp.146–152, 2018.
[5]

A. Dunsmore, M. Roper, and M. Wood, “The role of comprehension in software inspection,” J. Systems and Software, vol.52,

V. Borsotti, “Barriers to gender diversity in software development
education: actionable insights from a danish case study,” Proc. Int.

M. Nakamura, A. Monden, H. Satoh, T. Itoh, K. Matsumoto, and
Y. Kanzaki, “Queue-based cost evaluation of mental simulationof gender diversity on the performance of business teams: Evidence from a field experiment,” Management Science, vol.59,

石黒誉久，井垣 宏，中村匡秀，門田暁人，松本健一，“変数更新の回数と分散に基づくプログラムのメンタルシミュ

献[1]苧阪直行，“前頭前野とワーキングメモリ，” 高次脳機能研
究，vol.32, no.1, pp.7–14, 2012.

expertise,” Proc. Int. Conf. Softw. Eng. (ICSE), pp.175–186, 2017.
[21]

S. Spencer, C. Steele, and D. Quinn, “Stereotype threat andwomen’s math performance,” J. Experimental Social Psychology,
vol.35, no.1, pp.4–28, 1999.

（2020 年 7 月 23 日受付，11 月 9 日再受付，2021 年 2 月 3 日早期公開）

525