第4章-前半 ハッカー”児玉孝一”
孝一と綾は、神奈川県下有数の公立進学校にして、理系専門の中高一貫校に在学している。
今年6月の最終金曜日。
自分は実習時間が終わり晴れやかな気分で帰ろうとしていた。その時、コンピューター実習の担当である塚田先生に、準備室へ綾と共に連行されたのだ。
「2人に来てもらったのは、システム開発のテストと、10月末のシステム開発の発表会についてだ」
打ち合わせ用の丸テーブル傍のワークチェアに塚田は座ると、2人にも座るよう促した。
塚田泰明は40代で、コンピューター実習の専任教諭の1人であり、主に実技面を担当している。
「あー・・・大丈夫です。WBS通りに進捗してますよ。遅延ないです。全然心配ないです」
準備室に連れ込まれた孝一は、塚田の意図が分からないので、適度にいい加減な回答をした。2人の話の間に入りつつ、孝一のフォローのため、綾は補足・・というより、まともな回答をする。
「課題内容も、すべて設計に反映してありますし、実装予定の進捗率は88%まできています。テストはWBS通りに実施できる予定です。それに、テスト結果で見つかった不具合による仕様変更や、バグフィックスに対応する期間もWBSに設けてあります」
WBS・・・Work Breakdown Structureとは、システム完成に必要な作業へと分解し、作業を人に割り当てる。作業には開始終了期間と作業内容、優先順位、作業順序などが定義される。直訳は作業分解構成図だが、作業工程表と呼ぶと方が日本語での馴染みが深い。
簡単なシステムや、少人数短期間のプログラム開発ならWBSだけあれば、進捗管理には充分だ。というより、高校生がシステム開発するのに、WBSを管理するまでが限界だろう。ましてやプロジェクトマネジメントなど不可能である。
「いいかっ。腹を割って話そうか、児玉、藤田」
腹を割って、いったい何を話せと?
全く以て意味不明で、本気で意図がわからない。
「最初は優等生の藤田と、怠惰な児玉の2人だけのチームで大丈夫かと不安だった」
この学校で高校2年次の金曜日は、終日実習となっている。
実習内容は2~5人までのチームで、前期に課題のシステムを1本開発する。そのシステムの仕様/外部設計/内部設計とシステム自体を提出する。
後期にも、もう1本システムを開発し、前期に開発したシステムと連携させる。提出物は前期と同様である。
提出されたシステムが要求仕様を満たしているかをチェックするのは、先生ではない。
テスト専用AIアプリケーションを搭載したコンピューターがテストを実施する。予め要求仕様と非機能要件をインプットしておけばよい。もちろんユーザビリティーも評価対象となる。
毎年開発するシステムの課題内容が異なる。その為、先輩に教しえて貰って役に立つ内容は、授業で教わっている内容と同じになる。
「先生、怠惰という表現はあんまりですよ」
可愛い気のある生徒の態で、自分は抗議できただろうか。
「児玉君が可哀想です。せめて、怠け者にしてあげてください」
悪意のある微笑を浮かべなら、綾がオレを援護してくれた。だが、それはフレンドリーファイアだった。そう、援護射撃が誤射により、味方である自分に命中したのだ。
とりあえず、綾には反論しておくべきだ。
「自分は樹上生活なんてしてない」
怠け者を動物の”ナマケモノ”と解釈しての異議申し立てだったが、揃って2人に無視された。
「まあ、聞け。藤児チームのWBSは、文句の付け所がなかった」
藤児チームとは、孝一と綾のチーム名だ。そしてチーム名は、チームメンバーが決める。当初、2人は”児藤チーム”と名付けようとしていた。
しかし提出の際、茶々が入った。
実習を指導する教師が《優秀な方の名前を前にするのが普通だろう》と宣ったのだ。
「大抵のチームは、タスクの見落としや、タスクの見積もりが甘く、後半にデスマーチが鳴り響く。具体的には、夏休み期間が4分の1になるチーム3割。半分になるチーム5割。優秀な残り2割のチームでも、金曜日は残らないと、納期に間に合わない」
「藤田が優秀で、自分は怠惰でない事が証明されたました。QCD」
「児玉、一応ツッコミんでやるが、そこはQ.E.D.だな。そして、勝手に話を終わらせるんじゃない」
そう、QCDは”Quality”品質、”Cost”コスト、”Delivery”納期。プロジェクト開始時にQCDの目標を設定し、完了時に目標到達度を確認する。プロジェクトが成功したか、失敗したかを判断する重要な要素である。
Q.E.D.は”Quod Erat Demonstrandum”の略でラテン語である。意味は”かく示された”で、数学などに使われていた。今は使用されていないが、豆知識だと塚田先生が以前に授業で紹介していた。
冗談で様子を探った感じでは、いつも通りノリの良い先生で、叱られる訳ではなさそうだが・・・。
「WBSに文句がなくて、進捗遅延がないのに、どこが問題なんでしょうか?」
綾の質問に、塚田は間接的な表現で答えた。
「藤児チーム用仮想サーバーのテンポラリー領域を確認した」
どこまでバレた?
一瞬だけ綾と視線を交わし、自分が塚田先生に対応する意志を示す。
「システム開発が完了してるな。しかも実装だけでなく、提出ドキュメント作成まで終えている。いつも金曜日の実習の終了後、WBSに従って完了タスクの成果物を提出するという偽装工作までして」
とりあえず軽口を叩き、内心の動揺を隠そうとする。
「酷いじゃん、先生。生徒個人のプライバシーを勝手に暴くなんてぇええええ」
だが、どこまでバレてる?
いや、大丈夫・・・なはず。
「前期だけでなく、後期の分の開発も完了してるなっ!」
「あーあーっと、あれですね。とりあえずプログラミングが乗ってきたんで、品質を担保せず適当に実装しちゃいましたぁー」
まだ、まだだ。
最後の砦は、攻略困難なはず。
大丈夫だ。
自分を信じるんだ。
「なあ、児玉。腹を割って話そうな。単体テストどころか、総合テストまで完了してる。そうだよなっ!」
「気の所為ですって、先生。自分たちは”小姑たん”を使ってもないですよ」
”小姑たん”とはテスト専用AIアプリケーションの渾名で、因みに”姑”は先生を指す。
もちろん先生に対して、姑という言葉は使用しない。
何年か前。
姑と口を滑らせた生徒は、微に入り細を穿つように、課題をチェックされたと聞いている。そして生徒を指導するその先生の姿は、まさに意地の悪い姑のようだったと・・・。
「そうだな。確かに使用ログはなかった」
大丈夫じゃないかも・・・。
もしかして全部バレてる?
「藤児チームのサーバーのテンポラリー領域に、自作テストツールがあるようだけどな」
「あの・・・先生。私たち別に不正行為とかしていないです」
優等生らしく先生に敬意を払いながら、綾は不正行為をしていないと情に訴えた。
「システム開発に関しては、そうだな」
「用意されていたOSSを組み合わせただけの簡単なテストツールですよ。テストツールの自作は、別に禁止されてなかったじゃん。だから、セェーーーフって気がするんですけど・・・」
コンピューター実習室には、再配布自由であるOSS”Open Source Software”が多数用意されている。
「確かにOSSを活用しているようだった。しかし、どこを、どうぅーー考えても・・・いや、どう見積もっても、2~3ヶ月で開発できるようなツールじゃなかったんだよなぁあああ!!」
自作テストツールは、使い勝手が悪い上、テンポラリーには使用方法のメモすら置いていない。だから、OSSのテストツールと誤解してもらえるかもと一縷の望みに賭けて、のらりくらりと躱していた。どうやら無駄な足掻きだったらしい。
「あぁあぁああー。酷いじゃん、先生。勝手に自分のツールに悪戯するなんて」
顔を両手をで覆い泣き真似をしてみたら、塚田先生には珍しく厳しい口調で返される。
「すべてを暴いてやろうか? 良いんだな? 児玉孝一」
「すみませんでしたぁー」
孝一は即座に頭を下げた。
「それにな、用意していたOSSより最新のバージョンのソフトウェアが多数あった。いいか、児玉。用意したのは、学校で検証済みのOSSだけだ。そうでないと、OSSの動作が保証できないし、生徒からの質問に回答できない」
塚田先生に、全てバレてると確信した。
「さあ、これが最後通牒だ。ここからは、お互い腹を割って話そうか」
これ以上惚けたりしたら、それこそ停学になりかねない。
学内ネットワークとコンピューター実習室は、ファイアウォールで論理的に分断されている。そのファイアウォールをハッキングして、コンピューター実習室のサーバーに自作テストツールを保管したからだ。
「降参です、塚田先生」
児玉は両手をあげた。
綾は話を先に進める。
「私たちを準備室に呼んだのは、どうしてでしょうか?」
「1つは小姑たんで、テストを実施することだ。テストツールの結果をみると、3回総合テストを実施しているな」
「そうです。改修したので・・・」
システム開発に絶対評価はない。
システム開発の目的とQCDの観点から評価する。それは、プロジェクト開始の時の目標をクリアしているかどうかで成功、失敗と判断するだけだ。
機能は充分に満たしていて、非機能要件がギリギリで、使いづらいユーザーインターフェース。これでも成功プロジェクトと判断される可能性がある。そのようなシステムでは、ユーザーから強烈なクレームと早急な改善改修の要求があがる。
「最後の開発成果物だけでなく、後2つの開発成果物でも、小姑たんでテストをするように!」
小姑たんは、テストを実行するだけなく、全チームの開発成果物のテスト結果を集める。そして指標を作成し、数値化する。どのシステムが優秀かを可視化できるのだ。その為、多くのシステムをテストした方が良い。
また指標を作成し数値化するのには、結構時間がかかる。その上、課題内容は毎年変更されるのだ。そこでコンピューター実習の担当教諭たちも、システム開発をして、生徒より早く小姑たんでテストしている。
例年だと、夏休み前半に開発が完了すると聞いている。つまり塚田先生は、手を抜きたいのだろう。これはギブアンドテイクだと考えて良いのかも・・・。
「もう1つは第一次サイバー世界大戦について研究し、その結果をシステム開発発表会で発表することだ」
テストはすぐに終わるが、第一次サイバー世界大戦の研究は面倒だなぁ。
「テスト結果が悪かったのを最終開発成果物としているようだな。どうしてだ?」
腹を割って話すと決心したのと、第一次サイバー世界大戦研究の段取りを検討していた。そのため、正直に返答した結果がどうなるかを推察することなく、オレは反射的に答える。
「前期でWBS通りに開発が完了し、小姑たんの評価が高くなると、後期に注目されるんで。そうなると、後期は実習中に他の作業ができなくなるかと・・・」
塚田の表情が厳しくなってきていたが、それでも自制しながら孝一に質問する。
「改善ではなく、改悪したと・・・つまりは?」
「偽装工作ですよ」
マジ叱られた・・・。
「ああぁああ、失敗したぁあああーー」
突然、孝一が叫び声をあげた。
「どうしたの?」
尋ねた綾に顔を向けようともせず、孝一は呆然としている。
すでに学校は夏休みに入っていた。しかし2人の通う学校は、希望者のみという名目の、強制参加の夏期講習会が午前中にある。完全な夏休みは、8月の中程に2週間あるだけだった。
夏期講習の後、孝一と綾は事務所兼ラボのマンションで順番にシャワーを浴び、制服から部屋着に着替えていた。2人は買ってきた弁当で昼食すませ、ディスプレイの前で作業を開始しようとしている時だった。
ディスプレイの縦は約1メートルあり、長さ約7メートルある。横幅でないのは、上から俯瞰するとディスプレイが半円の形状をしているからだ。
この形状の曲面ディスプレイは、複数人が同一プロジェクトを効率的に作業する為、開発されたものである。その特殊ディスプレイを孝一たちは、贅沢にも2人で使用している。
孝一は半円形の曲面ディスプレイの右側を、綾は左側を使用するようイスに座っている。そして互いが参照したり議論するための情報は、ディスプレイ中央から左寄りに表示させていた。
「何があったの?」
綾はキャスター付きのイスを滑らせて、孝一の隣に行き、肩を揺らし尋ねた。
茫然自失から立ち直った孝一は、綾に顔を向け気付いてしまった事実を話す。
「後期のシステム開発が完了してるって、ツカッダーにバレてたじゃん」
生徒たちは塚田先生を、ツカッダーと親しみを込め呼んでいるのだ。
「うん、そうだね」
「後期の・・・後期の実習時間が・・・」
気付いてしまった事実の重大さに、孝一は慄き呟いた。
次いで、少し高いトーンの声が3LDKのマンション内に響く。
「ああぁあああーー、自分の為だけの・・・超、超、超貴重な時間がぁあぁあああ」
「だから私、言ったよね。ちゃんとシステム開発しようって。WBSの予定通りに進めれば良いでしょって! どうせ朝の1時間ぐらいで終わるんだから、その後に仕事すれば良いんじゃないのって!!」
「効率悪いんだよ、それだとさぁ。あんぐらいのシステムなんかさ、気分が乗った時に、だーっと作れば、すぐに終るじゃん」
「そうだけどっ。そうだったけど。そうじゃないでしょ」
「だいだい綾は、頭固いんだよ。満遍なく勉強して学年3位なんて、相変わらず優等生すぎんじゃんないのか。もう少しメリハリつけた方がいい」
字面だけでは、綾の何処が悪いのか分からない。しかし孝一の口調には、揶揄の成分しか入っていなかった。
「怠惰な天才様は、言うことが違いますねっ。碌に勉強もしないのに、学年50位以内から転落したことないでしょ。しかも得意科目は、いっつも1位だよね。一回くらい転落すれば良いのに・・・。いっそ、急降下すればいいんじゃない!」
知能の高い2人が、それに見合わない低レベルの言い争いを始めたのだ。
「時間がないんだって! 綾、知ってんじゃん。別にサボってないし・・・」
「今年の1月は学校サボってたよね」
「公式発表ではインフルエンザA型、ノロウイルス、インフルエンザB型と連続で罹患したから、3週間学校を休んだだけだしぃーーー」
孝一は口を尖らせ、子供のように言い訳した。
「公式発表って、自分発表だよねっ。それに、フラフラだったけど病気じゃなかったし、単に寝不足で元気だったよねっ。しかも、ここで私にまで休みなしで協力させたじゃん」
「いやぁー、あん時はマジ助かったよ。ありがとうございましたっ!」
頭を下げ殊勝な態度で感謝の言葉を述べた孝一だったが、すぐに自己正当化を謀る。
「だけどさ、仕方ないじゃん。年度末近いと忙しいし、1ヶ月の間に納期が7社も重なってたから・・・。それにさ、綾のバイト代は奮発したし、お礼にプレゼントも買ったし・・・休みなしって言っても、夜10時までには家へと送ったじゃん」
しかも、結構良い値段のネックレスだった。
このマンションは物理的セキュリティが厳しく、断熱と防音が国内最高クラスという触れ込みだった。事実、ここを事務所兼ラボとして借りて良かったと考えている。
そのマンションの1ヶ月分の家賃に相当する額のネックレスなのに・・・。
何故、マンションの家賃が分かるのかというと、孝一の会社で借りているからだ。
孝一は、中学卒業と同時に起業した。
父親の影響で小学生の内からコンピューターに親しみ、いつの間にか生活の一部となった。中学生になると、コンピューターの知識とプログラミングスキルを活かして金銭を得るようになっていた。
多くの企業で、自社ウェブサイトのセキュリティホールを発見するために、定期的に報奨金をかけている。ただ、本物のウェブサイトに、アタックさせる訳にはいかない。
本物のウェブサイトと同じ構成にする。つまり同じハードウェア/ソフトウェア等で構築するのだ。その後、ダミーデータをインポートし、TheWOCとインターネットへの回線を残して、物理的に切断する。
もちろん企業が外部のデータセンターを利用していたとしても、同様の処理の実行を依頼する。ただしアタックされる為、その企業は通常料金ではなく、割増料金を支払うのだが・・・。
孝一は報奨金だけで、毎年の確定申告が大変なことになっていた。その上、中学3年の春には名指しで、企業からサイバーセキュリティのチェックを請け負うようになっていた。
中学生が企業相手に渡り合える訳もなく、父親が間に入って交渉したのだ。
幸か不幸か、取引先と売上、利益が順調に伸び、父親に家を追い出された。
それは孝一が・・・という訳でなく、会社が追い出されたのだ。
中学3年の冬に、孝一の部屋はコンピューターで一杯となり、立ち入るスペースがなくなった。作業は家のリビングで部屋のコンピューターにリモート接続して行い、寝るときはシュラフに包まってリビングにころがっていた。
高校に入学する前に今のマンションを借り、事務所兼ラボにしたのだ。こうして仕事はマンション、生活は自分の家となった。
「彼氏として家に送ったんじゃなく、従業員の福利厚生として、ここにタクシー呼んだだけじゃん。今度は指輪を買ってよね」
ネックレスの次は、指輪が欲しいと?
しかし孝一は、綾の笑顔にアッサリと陥落した。
「・・・了解だよ」
「ふふっ、ありがとうね」
抱きついてきた綾を、孝一はイスに座ったままの態勢で、しっかりと受け止めた。
綾は細身だが、とても柔らかい。
そして、良い香りがする。
今日、急いで仕事しなくても、きっと間に合う・・・はず。
もう、今日はイイっか。
孝一は陥落寸前だった。しかし、危ういところで今年最大の失態を思い出した。
昨年末から綾と付き合い始め、色惚けで時々仕事中にボケっとし、WBS通りに作業が進捗しなかった。その所為で3週間も学校休んでしまったのだ。納期が重なったのは言い訳にすぎなかった。
このこと綾に伝えると、きっと喜ばれるだろう。だが、《私の魅力の所為でゴメンね》と言われ、精神的優位を奪われるに違いない。
孝一は表情を引締めてから、綾の肩に手を優しく置き引き離す。
「それじゃあさ。さっさと、第一次サイバー世界大戦の調査を完了させよう」
「ねぇ、孝一。研究は終わったんだし、調査いらないよね。発表資料を作成すれば完了でしょ。だからね?」
綾は艶やかな表情と甘い声音で、デートしたいと言外に匂わせていた。
分かるけどぉー。だって、自分もだからぁー。
「発表資料の作成は綾に任せた。自分は調査しないと・・・。サイバーセキュリティの世界は技術進化が速いんだよ」
しかし孝一は、己の欲望と綾の誘惑に負けなかった。
ただ、その所為なのか、言い訳じみた口振りだった。
「孝一。それじゃ意味わかんないよ」
「世界史の試験でも、自分1位を取り続けてんじゃん」
「そうね。自慢?」
少し醒めた眼つきに冷静な口調で、綾は言い放った。
「違う。・・・経験じゃなく、歴史に学ばないといけないんだよ」
綾が不思議そうな表情を浮かべている。
「えーっと、だ・・・。一人の経験は限られていて、考えが至らないことの方が多い。だけど、先人達の膨大な経験に基づく多くの考え方や知恵は、非常に参考となる。技術革新なんていっても、所詮は今までの技術の延長線上であり、技術の組み合わせなんだよ。人間の能力や思考なんて時を経ても、それほど変わらない。技術の設計思想を理解し、仕様を把握する。そうすれば、最適な技術を組み合わせて、求めるシステムを開発できる」
「設計思想・・・なんで?」
「設計思想は・・・」
偉そうに語っていたが、そもそも父親に教えられた知識であり、まだ完全に消化し切れていない。人に教えられる程、理解を深めていない。
「もの凄く大事なんだよ。思想・・・そう、要は考え方だ。たとえば表計算用のソフトウェアをデータベースとしては使用するのはムリがある。似たような事が出来たりするけど、目的が違う製品だから色々とムリがあるじゃん。えーっと、表計算とデータベースは設計思想が違うからなんだよ」
自分の理解を全力で綾に伝えたが・・・。
「・・・うん、分かんない。孝一が第一次サイバー世界大戦の調査するのって・・・結局は興味本位でしょ! とにかく発表資料の作成担当なのは理解したから、夏休み中に指輪買ってよね」
全く伝わらなかった。
逆に綾の願望は、もの凄く伝ってきたが・・・。
「分かったって・・・今度のデートの時で良いよな?」
「仕方ないね」
そう言うと綾は、自分のイスに座り、ディスプレイの前に戻った。
しかし自分は、話の流れに何とも言えない違和感を覚えた。
実習の開発だって殆ど自分がやったし、第一次サイバー世界大戦研究は半々ぐらいで分担したし・・・。
ロジカルに考えると、指輪を買わなきゃいけない理由ってないじゃん。
それを口にして論破するのは簡単なんだけど・・・。
論破したら綾が拗ねるのと分かっているので、孝一は黙って調査を開始したのだった。
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます