🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Framework

Frameworkは、アプリケーションソフトを開発する際に、一般的な機能をより簡単に、より早く完了させる事を目的とした、ソフトウェアやライブラリのセットを指します。開発にフレームワークを使用する事で、追加で必要となる機能だけを開発するだけで済む為、開発効率の向上が見込めます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

解決済

3回答

989閲覧

Webアプリの顧客への継続サポートの方法や実状

tt02

総合スコア36

Framework

Frameworkは、アプリケーションソフトを開発する際に、一般的な機能をより簡単に、より早く完了させる事を目的とした、ソフトウェアやライブラリのセットを指します。開発にフレームワークを使用する事で、追加で必要となる機能だけを開発するだけで済む為、開発効率の向上が見込めます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

6グッド

1クリップ

投稿2021/01/08 03:03

ー内部開発では無く、顧客様と開発会社という外注関係の場合ー

・phpでフレームワークを使った場合のメンテナンスについて
※以下、フレームワークのFWと記載します。そしてFWで最初から準備されているファイルをすべてcoreファイルと記載しています。
※phpのFWを利用した場合に限定してお答えいただければと存じます。

概ね、シェアの高いphpのFWは短期間でバージョンアップします。
既に納品したWebアプリケーションも、またたくまに古いバージョンとなります。

数年後に、顧客様からセキュリティーについての不安や
セキュリティー故の改修の是非を問われ時にどのように対応されていますでしょうか。

また、追加実装の依頼があった場合、同じようにこの納品時のバージョンを動かすべきかどうかで悩んだ場合はどうされますでしょうか。

詰まるところ、この質問は、FWの古いバージョンを使っている顧客様への対応方法といいう事になります。

1:最新の比較的安定したバージョンで作り直しを提案。(作成時と同じくらいの値段を提案)
2:顧客に納品したバージョンを変えること無く、coreファイル、作成ファイルの両方のバグフィックスを行う。
3:実際にfatalエラーなどのログが出ていない限りは、問題無く使えていますよと安心させる。(2と併用するかもしれませんが)
4:そうした質問が無いよう、事前に複数年契約かそれに類する契約をし、一定頻度で、新しいバージョンのFWで作り直す契約を結んでいる。
5:Webアプリケーションのフレームワークのバージョンが古くなっていくことを顧客から質問されない限り、説明せず、納品したアプリのcoreファイル以外のサポートのみを期限を決めて説明する。作り直す必要がある場合は、1~3をセールストークする。
6:その他。

ケースバイケースでかつ、1-5の複数回答も多いかと思いますが、できればFW名を含めて
いろいろなケースや問題発生事例がわかると助かります。

ベストアンサーは教訓的だと考えさせられたご回答にさせていただきます。

どうぞ、よろしくお願いします。

ockeghem, H14A, kokardy, hoshi-takanori, mriv, settanaoto👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tanat

2021/01/08 03:18

以下の、「何か困っている理由があり、最適解を見つける為の知見を得たい場合は、その理由や何が知りたいのかを明確に記述してください。」が満たされていないと思われるため、低評価としました。 また、 > ー内部開発では無く、顧客様と開発会社という外注関係の場合ー という観点においてのこの質問だと技術的な側面は無く、契約や企業方針の問題だけを質問している様に感じるため「プログラミングに関係の無い質問」にも一部該当する様に思われます。 問題・課題が含まれていない質問 teratailは困っている人の質問を解決するサービスです。そのため、漠然とした興味から票を募るような質問や、意見の主張をすることを目的とした投稿は推奨していません。 何か困っている理由があり、最適解を見つける為の知見を得たい場合は、その理由や何が知りたいのかを明確に記述してください。 悪い例:「オススメの開発環境構築方法を教えてください」 良い例:「Dockerで開発環境を構築していて、ファイルの書き込みができません」
ockeghem

2021/01/08 05:04

確かに実装上の質問ではないですし、質問もあいまいですが、プログラムのライフサイクルに関わる非常に重要な問題なので、私は +1 いたします
guest

回答3

0

少し大きな会社向けであれば、(フレームワークに限らず、プラットフォーム/OS/ミドルウェア等のサポート切れ案件は)前年度の予算編成時期に 1 のリプレース案件をねじ込んでもらっておくのが一般的です。

で、その場合、最初の構築時のドキュメントにライフサイクルの提示を入れておくことが重要です。
プラットフォーム/OS/ミドルウェア/使用言語/フレームワーク等の選定条件の一つとしてサポート期限があるので、そのあたりの記述にリプレース時期を含めておきます。

投稿2021/01/08 03:14

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tt02

2021/01/08 04:39

ご回答、大変役に立ちました。 このあたりの内容を、なかなか耳にすることできなかったので、経験ある方々のご回答、ありがとうございました。 今回の質問が低評価が増していますので、質問ごと削除するかもしれませんが、まずは、感謝を申し上げます。
guest

0

顧客側が言語やフレームワークのアップグレードのスパンを握ってるのは稀で、
もし先に言われてしまうのであれば、保守ミスってると思います(あくまで個人的には)

確かに家具家電と違って壊れたり錆びるようなことはないですが(データ蓄積による不具合はないわけではないが)
永久に変更も何もないシステムってないので、きちんと時期を見極め、先だって提案します。
ほぼ0から作り上げるようなプライム案件である場合は最初の契約時にシステムアップデートのスパンも含めて決めます。そうすることで先だって不安面を解消し、業務に集中してもらえます。
保守体制も厳重に敷いて、基本的に誰が受けても対応可能である状態にしておくのは必須ですしね。

顧客の問題解決のために導入するのがシステムですし、
問題があればそのまま顧客の業務に影響がありますし、
セキュリティ面の問題であれば大損害になります。
社会的信頼も失いかねません。

全て先手を打てる体制を作るべきでしょう。

「納めて終わり」じゃないですし、
Win-Winの関係を構築していかなければ自社の利益にもなりません。

あとは顧客と相談して決めることかと思います。
顧客の意向無視に勝手にアップデートはできません(費用面、時期面、必要性面など)

投稿2021/01/08 03:23

m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tt02

2021/01/08 04:36

ご回答大変ありがとうございます。 非常に、非常に役立ちました。 私はプログラムを書く立場として、有用な情報だったのですが、 プログラムとは関係ない質問だと修正依頼が来ております。 プログラムと深く関係していると思ったのですが、質問する場所を誤っていたのかもしれません。そうした中でも、経験者からのご回答は大変役に立ちました。 質問が取り消すべきであれば、質問の取り消しを行いますが、まずは、感謝をお伝えしたくコメントさせていただきました。
m.ts10806

2021/01/08 04:39 編集

私も同低評価はしております。 プログラミング自体とは関係ないと判断できます。 自社の利益諸々に関わることでもあるので無責任な赤の他人に無料で聞くのは間違っていて、本来コンサルに入ってもらうべき内容です。 (それと回答するかどうかは別問題という認識) あと回答がついた質問は削除不可です。 https://teratail.com/help/delete-policy
tt02

2021/01/08 04:41

かしこまりました~
guest

0

自己解決

大変失礼いたしました。
プログラムの内容に関係の無い質問をしてしまいました。
回答が増えないうちに、終了とさせていただきました。

投稿2021/01/08 04:42

tt02

総合スコア36

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2021/01/08 04:49 編集

>ベストアンサーは教訓的だと考えさせられたご回答にさせていただきます。 と自身で書いているのに自ら背いてどうするのでしょう。 この回答は本件にどう教訓となったのでしょうか。
ockeghem

2021/01/08 05:03

プログラミングに関係ある質問だと思いますけど。もっと回答を見たいです
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問