ビジネスやITの現場において、あるデータが何らかの理由で元に戻ってしまうことを先祖返りということがあります。
先祖返りが起こってしまうと、大幅な修正が必要になる手間の発生やトラブルにつながる可能性もあるので、できれば起きてほしくない現象です。
ビジネスやITにおける先祖返りとは、具体的にどのような現象が生じるのか、先祖返りが起こる原因と対策について考えてみましょう。
ビジネスやITにおける先祖返りとは
先祖返りとは、ビジネスやITにおいてソフトウェアの更新や不具合の修正をおこなった際に、何らかの原因により「前の状態に戻ってしまうこと」であり、リグレッションとも呼ばれています。
まるで昔に時間が戻ってしまったような現象であることから、「先祖返り」と名づけられています。
よく似た言葉にデグレードがありますが、先祖返りはデグレードの一種と捉えてよいでしょう。
デグレードは、アップグレードの逆で「前より悪い状態に戻ってしまうこと」をいいます。
デグレードの例としては、ソフトウェアをバージョンアップした際に性能が落ちてしまったり、新しい機能を追加したのに以前よりバグが起こりやすくなったりしてしまうことなどが挙げられます。
先祖返りとデグレードの違いとしては、先祖返りは「前の状態に戻ってしまうこと」、デグレードは「前より悪い状態になってしまうこと」と認識しておきましょう。
先祖返りの具体例
先祖返りとは、実際にどのような現象が生じるのかについて先祖返りの具体例を見ていきましょう。
修正済みの不具合が復活する
主にソフトウェア開発において、プログラムの不具合を修正したにも関わらず、何らかの原因で、その不具合が復活してしまうことが先祖返りの事例として挙げられます。
具体例を挙げると、ゲームで「スタート」をクリックしても、スタートしないといった不具合を修正して、正しく動作するかの確認もおこないました。
しかし、何らかの作用により、そのあと再び「スタート」をクリックしても、ゲームがスタートしないといった不具合が復活してしまうという現象です。
修正済みの不具合が復活してしまうことで、予定していた以上の工程とコストが増えるとともに、リリースまでのスケジュールが遅くなることもあります。
テキストや画像が前の状態に戻った
テキストや画像、デザインにおいて、新しく追加や修正をおこなったデータの変更が反映されずに、ある一定の時点まで戻ってしまう事例です。
先祖返りに気づかないまま、新たに編集したデータを上書きしてしまうことで、どの時点のデータが最新であったかを明確にすることがしづらくなります。
そのため、先祖返りを起こす直前の最新データを復活させるには、大幅な時間を要することもあります。
機能が正しく動作しなくなった
先祖返りでは、今まで使えていた機能が使えなくなってしまうことがあります。
例を挙げると、Aをクリックすると意図しないページへ飛んでしまうという不具合があり、現時点で、ほかの部分に不具合はありません。
Aが正しいページにリンクするように修正をおこない、正しく動作できることが確認できました。
しかし、今度は、何らかの影響により、今まで正しく動作していたはずのBのページへのリンクが機能しなくなるといった現象が、先祖返りの具体的な事例です。
このように、ある機能を修正したことにより、ほかの機能に不具合が生じることで、「今まで使えていたのに」となることも、先祖返りでよく見られるケースです。
廃止になったデザインを再び採用した
ITにおける先祖返りはネガティブなイメージがありますが、ビジネスにおいてはポジティブな意味で用いられることもあります。
例を挙げると、スマートフォンや車の分野において、以前のデザインやサイズに戻したり、あるいは、テクノロジーの分野において、過去の技術を採用したりしているものもあります。
これは、時代の変化に応じて、ユーザーニーズを満たすことで評価を得たり、コストを削減できたことで、利益率の向上へつなげたりすることが可能になることもあるようです。
先祖返りが生じる原因
先祖返りは、修正に時間がかかり、関係各所への影響も考えられるため、「本来起こしてはならないもの」とされています。
そこで、先祖返りが起こる原因について見ていきましょう。
最新データではなく過去のデータを用いて作業をおこなった
データの編集をおこなうときに、最新のデータではなく、間違えて以前のデータにアクセスして、編集作業をおこなってしまうことが原因となる場合があります。
ツールやサービスにもよりますが、変更履歴が残っている場合であれば、元に戻したい時点まで遡ってからデータの編集をおこなうこともできます。
できるだけ早く先祖返りに気づくことで、修正にかかる時間や手間を抑えるポイントとなるでしょう。
複数人で同時に作業をおこなった
クラウドサービスやネットワーク上のファイルサーバー、あるいは共有フォルダ内で扱っているファイルは、アクセス権限が付与されている人であれば上書き保存が可能です。
ただし、ひとつのデータを複数人で上書きし合ってしまうことが原因で、先祖返りを起こしてしまうことがあります。
複数人での同時編集による先祖返りの例を挙げると、あるデータをAさんとBさんが編集している事例を挙げます。
Aさんが編集したデータを反映しないまま、Bさんがあとから未編集のデータを上書き保存してしまうと、Aさんの編集したデータがなかったことになり、編集をおこなう以前の状態に戻ってしまいます。
複数人で同時編集をおこなうことで生じる先祖返りは、人数が増えるほど起こりやすく、複雑化しやすいという特徴があります。
ファイル名が管理されていない
ファイル名がしっかりと管理されていないことが原因で、先祖返りを起こしてしまうことがあります。
これは、複数人でファイルを扱う場合に、どのファイルが最新版であるか、あるいは、今は誰が編集作業をおこなっているかを、ファイル名で知ることができないために生じる現象です。
仮に、ファイルを扱うのは自分だけであったとしても、ファイル名に統一性がないことで、ファイルを探す手間や時間がかかってしまい、先祖返りにつながる可能性も捨てきれません。
バージョンの管理ミス
先祖返りは、バージョン管理がしっかりとおこなわれていないことが原因となる場合があります。バージョン管理とは、ファイルやデータの変更履歴を確認することです。
バージョン管理が適切におこなわれていない場合、いつ誰がどこを変更したのかという情報が煩雑になります。
特に、複数人でデータを扱う場合においては、バージョン管理がおこなわれていないことで、どのデータを編集していいかがわからず、ミスや混乱を招くため、先祖返りが起こりやすくなるのです。
回帰テストが不十分
各プログラムやシステムの機能は、それぞれが複雑に作用することで動作しており、開発者であっても、完璧に把握することは難しいものです。
あるシステムに変更を加えたことで、思わぬ箇所に不具合が生じ、これまで使えていた機能が動作しなくなるといった、先祖返りを引き起こすこともあります。
これらの先祖返りを起こさないために、システムやプログラムの更新をした際には、不具合が生じていないかを検証する回帰テストをおこなう必要があります。
したがって、先祖返りを引き起こす原因として、回帰テストが不十分であることが挙げられるのです。
先祖返りを起こさない対策とは
先祖返りは、修正が原因追及に時間や手間がかかることもあり、できれば起こしたくないものです。
先祖返りを起こさないためには、どのような対策が必要になるかを考えてみましょう。
ファイルの更新履歴を確認する
先祖返りは、ファイルの上書き保存が原因となることがあります。
そのため、ファイルを上書き保存する前、あるいは、ファイルを編集する前に、ファイルの更新履歴を確認するようにしましょう。
ファイルの更新履歴を確認することで、今開いているファイルが最新のものであるのか、誰かが現在編集をおこなっていないかを知ることができます。
ファイル名に規則を設ける
ファイル名に規則性を設けることで、先祖返りの回避につながります。
例えば、「Aチラシ修正版_.ai」「Aチラシ変更版_.ai」というファイル名が並んでいた場合、どちらが最新のファイルであるかが明確ではありません。
ファイル名で最新のファイルかが判断できない場合、ファイルを開いて内容を確認する手間が発生してしまいます。
また、複数人で作業をおこなっている場合には、ファイル名を見ただけで、誰もが最新のファイルであると判断できる規則が必要になります。
具体策としては、「Aチラシ修正版_20220401」「Aチラシ修正版ver2_20220401」のように、ファイル名に統一性をもたせたうえで、日付やバージョンを明記するとよいでしょう。
なお、ファイル名の規則については、ファイルにアクセスする可能性がある全員に対し、規則の順守を呼びかけましょう。
こまめに情報共有をおこなう
ファイル名や更新履歴を見ても、不明確な部分がある場合は、ファイルを共有している相手と情報共有をおこないましょう。
チームに分かれて作業をおこなう、あるいは社外の相手と共同で編集をおこなう場合などは、「このファイルが最終版で合っていますか?」のように、こまめな情報共有を意識しましょう。
ただし、情報共有をおこなう際は、情報共有ツール選びも重要です。メールは即時性がなく、メールの文章作成や返信までに時間を要するため、効率的ではありません。
しかし、更新履歴の確認は、相手に電話をかけるほど緊急性の高い要件ではありません。更新履歴の確認だけであれば、迅速に要件だけを伝えられるビジネスチャットを使うことが望ましいでしょう。
バージョン管理ツールを導入する
先祖返り対策には、バージョン管理ツールを導入することが効果的です。バージョン管理ツールとは、ファイルやデータの変更履歴を自動で管理してくれるツールです。
バージョン管理ツールを使うことで、データのバックアップはもちろん、ファイルの「追加」「削除」をおこなった履歴を確認することができるので、複数人で編集をおこなう際にも、誰がどのファイルを編集したのかを、効率よく管理することができます。
ツールによっては、先祖返りが起こりそうになったら、エラーを表示してくれるものもあります。
また、バージョン管理ツールでは、ファイルの保存時にコメントをつけることや、ファイルを変更した日付も管理できるため、先述にある「ファイル名に規則を設ける」という手間を省くことができます。
バージョン管理ツールは、先祖返りを未然に防ぐために利便性の高いツールなので、積極的に導入してみましょう。
回帰テストを実施する
開発分野における先祖返りへの対策として、回帰テストを実施しましょう。
回帰テストとは、プログラムの修正や変更をおこなった際に、ほかの箇所へ作用して不具合が生じていないかをテストすることです。
回帰テストは工数のかかる作業であるため、回帰テストツールを用いて自動化すると効率的です。
個人が先祖返りを意識する
先祖返りにはさまざまな対策がありますが、最も心がけておきたいことは、先祖返りに対する個人の意識です。
チームでこまめに情報共有をおこなったり、どんなに便利なツールを使ったりしても、一人一人が「先祖返りを起こしてはいけない」という意識をもたなければ、それぞれの対策は意味をなさないものになってしまいます。
先祖返りが生じる原因の多くが人為的ミスであることから見ても、先祖返りに対する一人一人の意識は大切になるでしょう。
先祖返り対策にはオンラインストレージ
ビジネスやITでの先祖返りは一大事ですので、対策としてオンラインストレージが効果的です。
オンラインストレージでは、オンライン上にあるファイルにアクセスして編集作業をおこなうため、変更や修正があれば、その都度ファイルが更新されていきます。
オンラインストレージのセキュアSAMBAでは、「いつ」「誰が」「何を編集した」という履歴を残すことが可能なため、万が一、意図しない上書きをおこなってしまった場合にも、データの復元が可能です。
チームにおけるデータ管理の効率化には、無料から使えるセキュアSAMBAをご検討ください。