リファクタリング (refactoring) とは、プログラムの動作・見た目を変えることなくソースコードの不要な処理の整理やセキュリティ脆弱性の問題を抱えている箇所を整理し、修正する「ソースコードの整理・改修」のことです。
手つかずになっていたソースコード、更新されずに古いままになってしまったドキュメントから、
解析・ソースコードの最適化をおこないます。
まず最初に、対象となるシステムの全体像を把握する為に、ソースコードとドキュメントの解析を実施します。解析工程でシステムの仕様に関するQAやヒアリングを行い、リファクタリングを行う際に必要となる開発環境の構築までの手順、正となる動作・振る舞いを確認します。
「ソースコード・ドキュメントの解析」「ヒアリング」「仕様の確認」「課題/問題の抽出」「テスト仕様の作成」 「改善案の検討・提案」 「リファクタリング(ソースコードの改修)」「テスト」「新環境の構築」までリファクタリングに必要なすべての工程をワンチームで行います。
「システムを維持していく中で、機能開発だけ行い、OSやミドルウエアが古いまま放置されてきた。」「ソフトウエアやサービスのEOS(サポート終了)の期限日を迎えてしまった。」「OSやミドルウエアのバージョンアップを行いたいが、技術的問題でバージョンアップをおこなうことができない。」
APPSWINGBYリファクタリングサービスでは、このようなバージョンアップに関するお悩みを解決しています。
「古い開発言語で開発を続けてきたが、パフォーマンスが悪く、ユーザービリティも低いのでモダンな開発言語に書き換え、パフォーマンスの向上とUIの向上を実現したい」
APPSWINGBYリファクタリングサービスでは、機能や振る舞いを変えることなく、モダンな開発言語への移行開発を行っています。
モダンな開発言語に書き換えることで、「開発言語やフレームワークのセキュリティの向上」「機能追加のしやすさ」「運用効率の向上」「サービスリリース期間の短縮化」「パフォーマンスの向上」などを実現しています。
開発ベンダーの変更、保守運用会社の変更によって、コードが複雑に絡み合い、どのソースコードやドキュメントが最新版なのか?正しい情報なのか?が保守運用を委託されている会社すらもわからない状態になっていました。
事業の拡大によってExcelで作業していたすべての処理をワークフローシステムとして開発したのですが、バグが多く、実際の業務で使用することができない状態になっていました。
Firebase利用料金が高額な為、ランニングコストを抑えたアプリにつくりかえたい。
APPSWINGBYではお客様より以下のご相談を頂いています。
皆さまの課題をともに解決いたします。お気軽にお問い合わせください
システムの現状がよくわからない状態です。
システムの現状調査からリファクタリングの依頼をすることはできますか?
はい、可能です。
過去に開発やシステム構築を行った際のソースコード、システム管理情報、ドキュメントの調査から現環境の調査を行い、リファクタリングポイント、計画を立案致します。
オンプレミスからAWSやGCP・Azureなどクラウドサービスへのマイグレーション(移行)をご希望の際には、クラウドサービスのコスト(従量課金)の試算を行い、コストの最適化などについても併せてご提案致します。
クラウドのシステム構成(アーキテクチャ)を見直すことはできますか?
はい、可能です。
まず、現環境の調査を行い、コストポイントとなっているシステムの構成を確認します。次に、サービス料金と利用状況を把握し、システムアーキテクチャの見直しを検討します。
セキュリティの脆弱性診断サービスを受けたところ、多数のセキュリティホール、問題個所の指摘を受けてしまいました。システムの現在の動作・UI・振る舞いを変えることなく、指摘されたすべての箇所の改修をしてほしいのですが、可能でしょうか?
はい、可能です。ソースコードを共有頂いた後に、お客様の本番環境と同程度の環境を構築します。その後、脆弱性診断サービスの診断結果をもとに再現試験を行い、問題と指摘されたソースコードのすべての不具合箇所の改修を行います。
その後、脆弱性試験を再度を受けて頂き、すべての箇所が合格するまで対応致します。
AWSからGCPへの移行を検討しています。AWSで利用しているサービスをGCPサービスに変更することは可能ですか?
はい、可能です。
クラウドサービス移行の際に、すべての差異を調査し、新しいクラウドサービス環境での移行・構築作業を進めていきます。
APPSWINGBYでは、クラウドサービスやベンダーロックインをできるだけ避けるシステム構成の提案を行っています。
お客様がリアーキテクチャを希望されるシステム、規模等についての詳細をお伺い致します。
リアーキテクチャの可否、方針、移行スケジュール等を決定する為、システムの現状について詳しく調査します。調査期間はシステムの規模により異なります。
現状調査結果に基づき、リアーキテクチャのご提案を行います。そこでは、リアーキテクチャの方針、基本設計、コストシミュレーションについてご説明致します。
リアーキテクチャを行うことが決定された場合、稼働しているプロダクション環境とは別に、リアーキテクチャ後の各システムを稼働させる環境を新規構築します。
現アプリケーションをリファクタリングの基本方針に沿って、モジュールやコンポーネントなどの単位で分割するなど、リファクタリング(ソースコードの改修)を実施します。
新機能の開発のご要望がある場合、ソースコードのリファクタリング、バージョンアップなどすべての作業が完了した(最適化された)ソースコードのバージョンで新機能開発を行います。
改修したアプリケーションをリアーキテクチャ環境(テスト環境/検証環境)にデプロイし、機能試験、 障害試験、パフォーマンス試験等を実施した後に、本番環境を構築、 お客様 (ユーザーテスト)にお引渡しします。
リファクタリング前の旧システムからリファクタリング(リアーキテクチャ)後の最適化された新しい環境へ、本番サービスの切り替えを実施します。本番系サービスの切り替え終了後は、保守または継続的開発体制へと移行します。
お問合せ専用フォームよりお問合せください。
担当者より、 オンラインによるお打合せの日程についてのご連絡を致します。
お打合せにてAPPAWINGBY のご紹介及びヒアリングをさせて頂きます。
ご提案内容の検討を致します。
ご提案とお見積もり書の提示をさせて頂きます。
お問合せ専用フォームよりお問合せください。
担当者より、 オンラインによるお打合せの日程についてのご連絡を致します。
お打合せにてAPPAWINGBY のご紹介及びヒアリングをさせて頂きます。
ご提案内容の検討を致します。
ご提案とお見積もり書の提示をさせて頂きます。
APPSWINGBYのミッションは、アプリでビジネスを加速し、お客様とともにビジネスの成功と未来を形作ること。私達は、ITテクノロジーを活用し、様々なサービスを提供することで、より良い社会創りに貢献していきます。