InfoQ ホームページ Legacy Code に関するすべてのコンテンツ
-
マイクロサービス実装時の課題 - なぜプログラミングスタイルが問題なのか
Fred George氏がGOTO Amsterdam 2015で,“Challenges in Implementing MicroServices”および“The Secret Assumption of Agile”と題した講演を行った。InfoQは氏にインタビューして,マイクロサービスをできる限り小さくする方法,マイクロサービス実装時の問題と対処方法,プログラムスタイルが問題となる理由,開発者がコードスキルを向上させるためにできること,などについて聞いた。
-
モデル駆動ソフトウェアエンジニアリングでの新しい開発
VerumのCEOであるRob Howe氏にインタビューをし、モデル駆動ソフトウェア開発の現在の状況やこの開発手法の使われ方について話を聞いた。また、モデル駆動ソフトウェアエンジニアリングが成熟した技術になるかどうかについての氏の考えやこの開発手法が将来もたらしてくれるものについても話を聞いた。
-
レガシソフトウェアをメンテナンスするためのモデルベースのアプローチ
Phillips HealthcareのソフトウェアアーキテクトであるHans van Wezep氏がBits&Chips Software Engineering Conferenceで,モデルを使用したマイグレーションについて講演した。InfoQでは氏にインタビューして,レガシソフトウェアをメンテナンスする上での問題点,手作業によるリファクタリングでのエラーの問題,コードベースのリファクタおよびマイグレーションにおけるモデルの利用,レガシソフトウェアをメンテナンスする上でのモデル利用のメリットなどについて話を聞いた。
-
総保有コストを使った技術的負債の管理
総保有コスト(TCO)は、投資の意思決定やファイナンスの分析で使われる。これをソフトウエアに適用すると、初期の開発コストや、製品が提供停止になるまでのメンテナンスのコストをカバーできる。TCOは設計上の決定や技術的負債の管理をサポートする。
-
"アンヘッジド・コールオプション"はバッドコードに対するメタファとして適当か
バッドコードと技術的負債に関するブログ記事で,Steve Freeman氏は,Chris Matt氏がバッドコードを表す"ヘッジされない(unhedged)コールオプション"というメタファを思い付いた経緯について説明した。この記事が今,RedditとHacker Newsで激しく議論されている。InfoQでは,バッドコードとコードの臭い(code smells)に対するメタファの使用,低品質コードのトレードオフとコスト,コード品質に対する責任などについて,両氏にインタビューした。
-
ChromeのshowModalDialogサポート終了が企業向けウェブアプリで問題に
Google Chromeがwindow.showModalDialogをサポートしなくなったが、これによって、OWA、EAC、SAPなど企業向けアプリに影響が出ている。
-
PayPal社がバックエンドをJavaからJavaScriptへ移行
PayPal社はJSPとJavaで書かれたレガシーコードを捨て、ブラウザからWebアプリケーションのバックエンドサーバまで、幅広くJavaScriptを採用することに決めた。
-
Typemock Isolator V7.4 がSmartRunner, キーボードショートカット、GetTimesCalled APIをサポート
Typemockが最近リリースしたIsolator V7.4には、SmartRunner, キーボードショートカット、GetTimesCalled API、そして再実行、再デバッグ機能が含まれている。新リリースはまた、レガシィコードをテストする機能も提供する。
-
ビルドマシンと Windows 7,そしてクラシックな ADO
90年代後半から運用されている,旧式の ADO ライブラリを使用したアプリケーションのメンテナンス作業を行うと考えてみよう。再コンパイルされたコードは,Windows 7 SP1 マシン上では問題なく動作する。ところが不思議なことに,そのプログラムを10年近く使用している Windows XP マシンではクラッシュしてしまうのだ。 これが現在,多数のメンテナンス開発者が直面している問題である。
-
VB6オープンソースの噂に対するリアクション
TechEdの間、多くの人がVisual Basicがオープンソースになるというデマを信じ込んでいた。それが嘘だと判明したが、言語に関すること、それがレガシーであること、そしてオープンソースの実装に関する様々な議論を生み出した。
-
MED-V 2.0 and App-V 4.6 SP1: マイクロソフトのふたつの企業向け仮想化ソリューション
MED-V 2.0はディスクトップ仮想化を実現し、Windows 7でレガシーアプリケーションを実行できるようにするソリューションだ。App-V 4.6 SP1はApplication Virtualization向けのサービスパックだ。Application Virtualizationは企業へのアプリケーションの配置に使えるアプリケーションだ。
-
テスト駆動開発とレガシーコードのトラブル
Alan Baljeu 氏は大規模なレガシー(古い) C++ コードベースへの TDD 利用を試みていた。そこで「可能な限り簡単に (simplest thing that could possibly work)」という原則が原因になって,大きな手戻り作業の発生するトラブルを経験したのだ。
-
JOSH:エンタープライズ向けに提案されたソフトウェアスタック
ブロガーであるGrey Lens Man氏が、エンタープライズを悩ませているレガシー問題について興味深い記事を投稿し、実行可能なソリューションとして新たなソフトウェアスタック(JOSH、JSON OSGi Scala HTTP)を提案している。
-
「良いデザイン」とは?
ソフトウェアプロジェクトが成功する上で(および、実のところソフトウェア職に携わる上でも)、要となるのは良いデザインであるということは、今さら言うまでもない。「良いデザイン」が何を意味するのかを定義することは、一連の終わりのない討論、論文、話し合い、議論などで、長い間大々的に取り上げられてきた。これも新しいことではない。J.B.Rainsberger氏およびScott Bellware氏が真の定義がなされるまでフォローすると役立つアドバイスを提供している。
-
「技術的負債」に対する新しい見方
Technical Debt Workshopは最近、「技術的負債」に対する業界の理解と扱い方の向上に取り組みつづけており、その結果として興味深いアイデアが生まれている。