【事件の表示】
　特願２０１５−１７７６５３「ディスクアレイ装置、ディスクアレイシステム、制御方法、および、制御プログラム」拒絶査定不服審判事件〔平成２９年　３月１６日出願公開、特開２０１７−　５４３０３〕について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
第１　手続きの経緯
　本願は，平成２７年９月９日の出願であって，令和１年６月５日付けで拒絶理由が通知され，令和１年８月２日付けで意見書が提出されるとともに手続補正がなされ，令和１年１１月２９日付けで拒絶査定（以下，「原査定」という。）がなされ，これに対して令和２年３月６日付けで拒絶査定不服審判の請求がなされるとともに手続補正がなされたものである。
第２　本願発明
　本願の請求項に係る発明は，令和２年３月６日付けで補正された特許請求の範囲の請求項１ないし９に記載された事項により特定されるものと認められるところ，その請求項１に係る発明（以下「本願発明」という。）は，以下のとおりのものである。
　なお，符号Ａ〜Ｄは説明のため当審で付与したものであり，以下，構成Ａ〜構成Ｄと称する。
「【請求項１】
Ａ　データ書き込み用ストライプであるデータストライプを包含する複数のディスク装置と、
Ｂ　前記複数のデータストライプに対するパリティ書き込み用ストライプであるパリティストライプを包含するディスク装置と、
Ｃ１　前記複数のデータストライプの何れかへの書き込み命令を取得し、
Ｃ２　更新対象ストライプおよび前記パリティストライプにデータが書き込まれていなければ、
Ｃ３　前記更新対象ストライプに０データである所定データが書き込まれているとみなし、
Ｃ４　書き込み命令のデータである更新対象データを修正せずに修正後のデータとし、修正後のデータを前記更新対象ストライプに書き込み、かつ、
Ｃ５　０データである所定パリティデータ、前記所定データおよび前記更新対象データに基づいて前記パリティストライプに書き込むデータを生成し、
Ｃ６　生成した前記データをパリティとして前記パリティストライプに書き込む制御手段と、
Ｄ　を備えるディスクアレイ装置。」
　なお、審判請求時の補正は、請求項１，３，５の「更新対象データを修正後のデータとし」を「更新対象データを修正せずに修正後のデータとし」と補正するものであり，この補正は，「修正後のデータ」を明確にするものであるから，特許法１７条の２第５項４号の明りようでない記載の釈明を目的とするものに該当すると判断した。
第３　原査定における拒絶の理由
　原査定の拒絶の理由２は，この出願の請求項１−９に係る発明は，その出願前に日本国内又は外国において，頒布された又は電気通信回線を通じて公衆に利用可能となった下記の引用文献１に記載された発明に基づいて，その出願前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから，特許法２９条２項の規定により特許を受けることができない，というものである。
引用文献１：特開平６−７５７０８号公報
第４　引用文献
１　引用文献１
（１）原査定の拒絶の理由２で引用された，本願の出願前に，頒布又は電気通信回線を通じて公衆に利用可能となった特開平６−７５７０８号公報（平成６年３月１８日公開，以下，「引用文献１」という。）には，以下の事項が記載されている。
（当審注：下線は，参考のために当審で付与したものである。以下同様。）
「【０００６】
ＲＡＩＤレベル４
パリティディスクを固定で使用し、
データを
ブロック単位で記録
「【００１０】図２０は例えば上記特開平２−２３６７１４号公報に示された従来のアレイ型ディスク駆動装置を示す構成図であり、図において、１はホストコンピュータ、２はホストコンピュータとアレイコントローラ間のバッファとなるホストインターフェース（以下、ホストＩ／Ｆという）、３はアレイコントローラ全体を制御するマイクロプロセッサ、
４
メモリ
１３
アレイコントローラ
「【００１１】図２１はＲＡＩＤの冗長データの生成に関する説明をする図である。図２１に示すように５台のディスクの内１台のディスクのデータは他の４台のディスクのデータの冗長データ（パリティ）を記憶するようになっている。パリティは４台のディスクのデータのエクスクルーシブＯＲ（ＸＯＲ）の演算によって計算される。即ちパリティディスクＰのパリティデータはディスク０とディスク１とディスク２とディスク３のデータのＸＯＲをとったものである。このようなパリティを冗長データとして持つことにより例えばディスク０のデータが何らかの障害により読めない場合にはディスク１とディスク２とディスク３とパリティディスクＰのデータのエクスクルーシブＯＲ（ＸＯＲ）をとったデータがディスク０のデータとして復元することが可能になる。なお、
パリティの計算は
データを書き込もうとするディスクの古いデータと現在パリティディスクに記録されている現在のパリティデータをリードして新しいデータと古いデータと現在のパリティデータの３つのデータのＸＯＲを計算して新しいパリティデータと
「【００１３】次に図２０に示したシステムの動作について説明する。図２０において、ホストコンピュータ１とのデータの記憶再生はすべてホストＩ／Ｆ２を介して成され、
データの記憶時にはホストコンピュータ１からの命令及びデータは一旦データバス６を介してメモリ４に記憶される
「【００３８】【実施例】
実施例１
２０はデータブロックのサイズを記録しておくための領域テーブル
その他の１〜１３は従来例で説明したものと同一あるいは相当部分を示しており
「【００４０】また、図において
Ｄ１，Ｄ２，Ｄ３，Ｄ４はデータあるいは冗長データを記録するための４つのディスク
ブロック１から１２はデータブロックを示し
「【００４８】
実施例４
実施例１から３
ＲＡＩＤのレベル４の場合
ディスクＤ４が冗長ディスクとなり
「【００５７】
実施例７
アレイ型記録装置
「【００６６】次に、ディスクＤ３について説明する。ディスクＤ３はディスクＤ１とＤ２に記録されるデータのパリティを記録するための冗長ディスクである。ブートレコードＦＡＴディレクトリのパリティを計算して記録するとともにデータエリアのパリティを計算して記録することになる。ただしディスクＤ１とＤ２のデータ部分が存在しない部分に関してはパリティは記録されていない。このデータが存在していない部分にはパリティを計算して記録していないところがこの実施例の特徴である。
従来はディスクシステムを初期化する場合にはディスク
を
初期値０で初期化し、
初期化したデータオール０に基づいてパリティを計算して記録していた
ディスクシステムを初期化することをやめてしま
「【００７３】
実施例１０
実施例７に示したアレイ型ディスク装置のいくつかの動作例を図１２を用いて説明する
ディスクＤ１にデータＤ１１が登録された場合には、そのパリティとしてディスクＤ４にＤ１（当審注：「Ｄ１」は「Ｐ１」の誤記である。）というパリティが記録されることになるが、ディスクＤ２とディスクＤ３にはまだなにも記録されていない状態においてはデータＤ１１の冗長データとしてＰ１はＤ１１から生成されることにな
Ｄ１１が記録された状態でＤ２１が記録される場合
ディスクＤ４のＹの部分にはデータＤ２１のＶのデータと同じものがパリティＰ１Ｙとして記録されることにな
従来であればディスクＤ２のデータＤ２１の書き込まれるべき部分Ｗの旧データを読み込むと共に、ディスクＤ４のＳの部分を読み込み、冗長データを計算し、データＤ２１をディスクＤ３に書き込むと共に計算した冗長データをディスクＤ４に書き込むという作業をしなければならなかったのに対し、
ディスクＤ４のＸ部分を読み込み、その後ディスクＤ２にデータＤ２１を書き込むと共に冗長データＰ１ＸとＰ１ＹをＳの部分に書き込むという作業で終了することが可能になる
「
【図４】」
「
【図７】」
「
【図１２】」
（２）ここで，引用文献１の実施例１（【００３８】，【００４０】）は，データブロックのサイズを記録しておくための領域テーブル２０以外は，従来例（【０００６】，【００１０】，【００１１】，【００１３】）で説明したものと同一であり，実施例４（【００４８】，【図４】）は，実施例１から３のＲＡＩＤのレベル４の場合を説明したものであり，実施例１０（【００７３】，【図１２】）は，実施例７（【００５７】，【００６６】）のアレイ型記録装置の動作例を説明したものであり，また，図１２は，実施例７のＲＡＩＤのレベル４の場合を説明していると認められることからすると，引用文献１には，「従来例の構成を含み，ＲＡＩＤのレベル４で動作し，実施例１０に動作例が説明されている実施例７のアレイ型記録装置」である次の発明（以下，「引用発明」という。）が記載されていると認められる。
　なお，符号ａ−ｉは，説明のために当審にて付したものである。以下「構成ａ」−「構成ｉ」という。
「ａ　ＲＡＩＤレベル４であって，データをブロック単位で記録し，
　ｂ　メモリ４を有するアレイコントローラ１３を備え，
　ｃ　パリティの計算は，データを書き込もうとするディスクの古いデータと現在パリティディスクに記録されている現在のパリティデータをリードして新しいデータと古いデータと現在のパリティデータの３つのデータのＸＯＲを計算して新しいパリティデータとし，
　ｄ　データの記憶時にはホストコンピュータ１からの命令及びデータは一旦データバス６を介してメモリ４に記憶される，
　ｅ　アレイ型記録装置であって，
　ｆ　データあるいは冗長データを記録するための４つのディスクＤ１，Ｄ２，Ｄ３，Ｄ４はそれぞれデータブロックを示すブロック１から１２を有し，
　ｇ　ＲＡＩＤのレベル４の場合，ディスクＤ４が冗長ディスクであり，
　ｈ　従来はディスクシステムを初期化する場合にはディスクを初期値０で初期化し、初期化したデータオール０に基づいてパリティを計算して記録していたのに対して，ディスクシステムを初期化することをやめてしまい，
　ｉ　ディスクＤ１にデータＤ１１が登録された場合には、そのパリティとしてディスクＤ４にＰ１というパリティが記録されることになるが、ディスクＤ２とディスクＤ３にはまだなにも記録されていない状態においてはデータＤ１１の冗長データとしてＰ１はＤ１１から生成されることになり，Ｄ１１が記録された状態でＤ２１が記録される場合，ディスクＤ４のＹの部分にはデータＤ２１のＶのデータと同じものがパリティＰ１Ｙとして記録されることになり，従来であればディスクＤ２のデータＤ２１の書き込まれるべき部分Ｗの旧データを読み込むと共に、ディスクＤ４のＳの部分を読み込み、冗長データを計算し、データＤ２１をディスクＤ３に書き込むと共に計算した冗長データをディスクＤ４に書き込むという作業をしなければならなかったのに対し、ディスクＤ４のＸ部分を読み込み、その後ディスクＤ２にデータＤ２１を書き込むと共に冗長データＰ１ＸとＰ１ＹをＳの部分に書き込むという作業で終了することが可能になる，
　ｅ　アレイ型記録装置。」
第５　対比
１　本願発明と引用発明とを対比する。
（１）構成Ａについて
　構成ｆによれば，引用発明は，「Ｄ１」，「Ｄ２」，「Ｄ３」，「Ｄ４」の「データあるいは冗長データを記録するための４つのディスク」を備えている。
　構成ｇによれば，引用発明は，「ＲＡＩＤのレベル４の場合」，「ディスクＤ４」が「冗長ディスク」であるので，その他の「Ｄ１」，「Ｄ２」，「Ｄ３」の３つの「ディスク」は，「データ」「を記録するための」ものであるといえる。
　また，構成ｆによれば，引用発明の「ディスク」は，「ブロック」を有している。本願の明細書の段落【０００４】を参照すれば，「書き込む単位」を「ストライプ」と呼んでいるが，構成ａによれば，引用発明の「ブロック」は，「記録」する「単位」であるので，本願発明の「ストライプ」に相当する。
　したがって，引用発明の，「データ」「を記録するための」「ブロック」を有する「Ｄ１」，「Ｄ２」，「Ｄ３」の３つの「ディスク」は，本願発明の「データ書き込み用ストライプであるデータストライプを包含する複数のディスク装置」に相当する。
（２）構成Ｂについて
　引用発明の「冗長データ」は，本願発明の「パリティ」に相当する。
　また，構成ｆ，ｇによれば，引用発明の「ディスクＤ４」は，「冗長データを記録するための」「冗長ディスク」である。
　また，構成ｆによれば，引用発明の「ディスク」は，「ブロック」を有している。
　上記（１）の検討を参照すれば，引用文献の「ブロック」は，本願発明の「ストライプ」に相当する。
　したがって，引用発明の，「冗長データを記録するための」「ブロック」を有する「ディスクＤ４」は，本願発明の「複数のデータストライプに対するパリティ書き込み用ストライプであるパリティストライプを包含するディスク装置」に相当する。
（３）構成Ｃ１について
　構成ｄ，ｆ，ｇによれば，引用発明の，「Ｄ１」，「Ｄ２」，「Ｄ３」の３つの「ディスク」への「データの記憶時」の「命令及びデータ」は，本願発明の「複数のデータストライプの何れかへの書き込み命令」に相当する。
　構成ｄによれば，引用発明は，「ホストコンピュータ１からの命令及びデータ」を「メモリ４に記憶」しているところ，その前に，「ホストコンピュータ１からの命令及びデータ」を「取得」していることは明らかである。
（４）構成Ｃ２について
　構成ｉによれば，引用発明の，「Ｄ１１が記録された状態でＤ２１が記録される場合，」「データＤ２１のＶのデータ」が「記録」される「ディスクＤ２」の「ブロック」は，「データ」が「記録」される対象のものであるので，本願発明の「更新対象ストライプ」に相当する。
　構成ｉによれば，引用発明の，「Ｄ１１が記録された状態でＤ２１が記録される場合，」「パリティＰ１Ｙ」が「記録」される「ディスクＤ４」の「ブロック」は，本願発明の「パリティストライプ」に相当する。
　構成ｈによれば，引用発明は，「ディスクシステムを初期化するのをやめてしま」っているので，引用発明の「まだなにも記録されていない状態」は，本願発明の「データが書き込まれていな」いという状態に相当する。
　したがって，引用発明の，「Ｄ１１が記録された状態でＤ２１が記録される場合，」「データＤ２１のＶのデータ」が「記録」される「ディスクＤ２」の「ブロック」および「パリティＰ１Ｙ」が「記録」される「ディスクＤ４」の「ブロック」に「まだなにも記録されていない状態」は，本願発明の「更新対象ストライプおよび」「パリティストライプにデータが書き込まれていな」いという状態に相当する。
（５）構成Ｃ３について
　構成ｃ，ｈ，ｉによれば，「従来であれば」，「パリティＰ１Ｙ」は，「新しいデータ」である「データＤ２１のＶのデータ」と，「古いデータ」である「データＤ２１のＶのデータ」が「書き込まれるべき部分」のデータと，「現在のパリティデータ」である「パリティＰ１Ｙ」が「書き込まれるべき部分」のデータの３つのデータの「ＸＯＲ」の処理によって「生成」されていたところ，引用発明では，「データＤ２１のＶのデータ」のみから「パリティＰ１Ｙ」が「生成」されていることからみて，引用発明は，「データＤ２１のＶのデータ」が「書き込まれるべき部分」と，「パリティＰ１Ｙ」が「書き込まれるべき部分」に，「初期値０」が「書き込まれているとみなし」ており，これにより，本来であれば，「データＤ２１のＶのデータ」と，「データＤ２１のＶのデータ」が「書き込まれるべき部分」に「書き込まれているとみな」された「初期値０」と，「パリティＰ１Ｙ」が「書き込まれるべき部分」に「書き込まれているとみな」された「初期値０」の３つのデータの「ＸＯＲ」によって「生成」される「パリティＰ１Ｙ」として，結果的に同じ値になる「データＤ２１のＶのデータ」を用いているものと認められる。
　ここで，引用発明の，「データＤ２１のＶのデータ」が「書き込まれるべき部分」に「書き込まれているとみな」された「初期値０」は，本願発明の「更新対象ストライプ」の「０データである所定データ」に相当する。
　したがって，引用発明と本願発明とは，「更新対象ストライプに０データである所定データが書き込まれているとみなし」ている点で一致する。
（６）構成Ｃ４について
　構成ｄ，ｉによれば，引用発明の，「データの記憶時」の「ホストコンピュータ１からの」「データ」は，「データの記憶時」の「ホストコンピュータ１からの命令」と共に「メモリ４に記憶」され，その後，「ディスク」に「記録」される対象の「データ」であるので，本願発明の「書き込み命令のデータである更新対象データ」に相当する。
　構成ｉによれば，引用発明は「ディスクＤ２」に「データＤ２１のＶのデータ」を「記録」しているところ，引用発明は「ホストコンピュータ１からの」「データ」を「ディスクＤ２」に「データＤ２１のＶのデータ」として「記録」するまでに，「データ」を修正していないから，「ホストコンピュータ１からの」「データ」を「修正せずに」「ディスクＤ２」に「記録」される「データＤ２１のＶのデータ」「とし」ているといえる。
　したがって，引用発明の「データＤ２１のＶのデータ」は，本願発明の「更新対象データを修正せずに修正後のデータ」としたデータに相当し，引用発明の「ディスクＤ２」に「データＤ２１のＶのデータ」を「記録」することは，本願発明の「修正後のデータを」「更新対象ストライプに書き込」むことに相当する。
（７）構成Ｃ５について
　上記（５）の検討を参照すれば，引用発明の，「パリティＰ１Ｙ」が「書き込まれるべき部分」に「書き込まれているとみな」された「初期値０」および「データＤ２１のＶのデータ」が「書き込まれるべき部分」に「書き込まれているとみな」された「初期値０」は，それぞれ本願発明の「０データである所定パリティデータ」および「０データである」「所定データ」に相当する。
　引用発明の「データＤ２１のＶのデータ」および「パリティＰ１Ｙ」は，それぞれ本願発明の「更新対象データ」および「パリティストライプに書き込むデータ」に相当する。
　構成ｉによれば，引用発明は，「データＤ２１のＶのデータ」を「パリティＰ１Ｙ」としているので，「データＤ２１のＶのデータ」「に基づいて」「パリティＰ１Ｙ」を「生成」しているといえる。
　したがって，引用発明と本願発明とは，下記の点で相違するものの，“更新対象データに基づいて”“パリティストライプに書き込むデータを生成”する点で共通する。
（８）構成Ｃ６について
　構成ｉによれば，引用発明の，「生成」した「パリティＰ１Ｙ」を「ディスクＤ４」の「ブロック」に「記録」することは，本願発明の「生成した」「データをパリティとして」「パリティストライプに書き込」むことに相当する。
　構成ｂによれば，引用発明の「アレイコントローラ」は，本願発明の「制御手段」に対応する。
（９）構成Ｄについて
　構成ｅによれば，引用発明の「アレイ型記録装置」は，本願発明の「ディスクアレイ装置」に対応する。
２　上記（１）から（９）の検討内容を踏まえると，本願発明と引用発明との間には，次の一致点，相違点があるといえる。
（一致点）
「データ書き込み用ストライプであるデータストライプを包含する複数のディスク装置と、
　前記複数のデータストライプに対するパリティ書き込み用ストライプであるパリティストライプを包含するディスク装置と、
　前記複数のデータストライプの何れかへの書き込み命令を取得し、更新対象ストライプおよび前記パリティストライプにデータが書き込まれていなければ、前記更新対象ストライプに０データである所定データが書き込まれているとみなし、書き込み命令のデータである更新対象データを修正せずに修正後のデータとし、修正後のデータを前記更新対象ストライプに書き込み、かつ、前記更新対象データに基づいて前記パリティストライプに書き込むデータを生成し、生成した前記データをパリティとして前記パリティストライプに書き込む制御手段と、
　を備えるディスクアレイ装置。」
（相違点）
　「パリティストライプに書き込むデータを生成」する際に，本願発明は，「０データである所定パリティデータ」、「０データである」「所定データ」および「更新対象データ」に基づいて「生成」しているのに対して，引用発明は，「データＤ２１のＶのデータ」（「更新対象データ」）のみに基づいて「生成」している点。
第６　判断
１　相違点について
　ＸＯＲによってパリティを生成するに当たり，「所定データ」および「所定パリティデータ」が「０データ」の場合，本願発明の，「所定パリティデータ」，「所定データ」および「更新対象データ」に基づいて生成（つまり，ＸＯＲを実行して生成）する方法であっても，引用発明の，「データＤ２１のＶのデータ」（「更新対象データ」）のみに基づいて生成（つまり，ＸＯＲを実行しないで生成）する方法であっても，同じ値が得られることは明らかである。
　ここで，本願発明の方法では，「更新対象ストライプおよびパリティストライプにデータが書き込まれてい」るか否かによらず，パリティを生成する処理を同一（書き込まれている場合も，書き込まれていない場合も，ＸＯＲを実行して生成）にすることができるから，プログラムの可読性が高い一方，引用発明の方法では，「更新対象ストライプおよびパリティストライプにデータが書き込まれてい」るか否かによって，パリティを生成する処理を別々（書き込まれている場合はＸＯＲを実行して生成，書き込まれていない場合はＸＯＲを実行しないで生成）にしなければならないから，プログラムの可読性が低いといえる。
　他方で，本願発明の方法では，「更新対象ストライプおよびパリティストライプにデータが書き込まれていな」い場合でも，ＸＯＲを実行しないとパリティが生成できないので，処理に掛かる時間が長い一方，引用発明の方法では，「更新対象ストライプおよびパリティストライプにデータが書き込まれていな」い場合は，ＸＯＲを実行せずにパリティが生成できるので，処理に掛かる時間が短いともいえる。
　そして，プログラミングの技術分野においては，同じ値（「パリティストライプに書き込むデータ」）が得られる複数の方法がある場合に，条件（「更新対象ストライプおよびパリティストライプにデータが書き込まれてい」るか否か）によらず処理を同一にする方法を採用するか，条件によって処理を別々にする方法を採用するかは，プログラムの可読性と処理に掛かる時間の長さを考慮して，当業者が適宜選択し得る設計的事項である。
　そうすると，引用発明において，処理時間の短縮とプログラムの可読性のうちのプログラムの可読性を優先させることで，「０データである所定パリティデータ」，「０データである」「所定データ」および「データＤ２１のＶのデータ」（「更新対象データ」）に基づいて，「パリティストライプに書き込むデータを生成」するように構成することは，当業者が容易に想到し得たことである。
　そして，上記相違点を総合的に勘案しても，本願発明の奏する作用効果は，引用発明の奏する作用効果から予測される範囲内のものにすぎず，格別顕著なものということはできない。
第７　むすび
　以上のとおり，本願発明は，引用発明に基づいて，当業者が容易に発明をすることができたものであるから，特許法２９条２項の規定により特許を受けることができない。
　したがって，他の請求項に係る発明について検討するまでもなく，本願は拒絶されるべきものである。
よって，結論のとおり審決する。