はじめに
既存システムを仕様などはほぼ同じで別言語・別フレームワークでリニューアルすることになりました。
開発のコツや、うまく行った事例、手法があれば教えていただきたいです。
よろしくお願いいたします。
概要
画面のデザインは一新する予定で(CRUDなどはほぼ一緒です)、仕様などは既存システムに合わせる方針です。
仕様書などは無く、既存システムの動作を見て真似をする形で開発しています。
モデルなどはフレームワークが吸収してくれているので問題ないのですが、ビジネスロジックの部分の関数やクラスが大量に存在し、これの移植の難易度が高い状況です。
以下の 1, 2 の方法が案として出ています。
- 既存システムのコードを流用し、PHP -> Ruby のコードの変換作業を行い、動くようにする
- 既存システムのコードと動作を見て、既存コードを無視し新規にRubyでコードを書いて動くようにする
既存システムのコードをそのまま動くように移植する 1 では PHP -> Ruby への変換作業が必要になりますが、この変換作業はあまり捗っていません。というのも変換作業に時間がかかり、効率的な作業が出来ていません。また、PHPで用意されている関数やクラスもRuby側で用意しなければならず、この作業も効率的とは今のところ思えません。もちろん Ruby にも類似の関数などはあるので、それで代用は可能ですが、まったく同じではないので吸収する必要があります。
既存システムの動作を見て、既存システムのコードを無視してRubyで新規にコードを書くという 2 の作業も、既存システムの仕様が不明なところが多いため、開発の難易度が高い状況です。よって、既存システムの仕様をなぞれる前述の 1 の方法に開発方針が傾いていますが、前述の通り 1 の方法もあまり効率的ではありません。
1, 2 の方法であればどちらが有望そうでしょうか?また、それ以外の 3 の方法があればご教授頂きたい所存です。
現在は 1, 2 をミックスして進行していますが、どちらも難易度が高いように思えます。
新旧システムの概観
以下がプロジェクトの概観です。
既存システム
- 言語: PHP
- バックエンド: CakePHP
- フロントエンド: jQuery
新システム
- 言語: Ruby
- バックエンド: Rails
- フロントエンド: React
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/12/26 13:59