[その他] ことばの意味など
hogehoge …って、具体的に何のこと( ◠‿◠ )?????って思うこと多いし
わかった気になっているのがよくない
何だろ?と思ったやつをちゃんと調べてここにまとめていきたい!
よくみる
モダンアプリケーション・モダナイゼーション
言葉的な意味
モダン
〘名〙 (形動) (modern) 現代的であること。現代風であること。また、そのさま。
AWS曰く
モダンアプリケーションは、最新のテクノロジー、アーキテクチャ、ソフトウェア配信プラクティス、運用プロセスを組み合わせたアプリケーションです。チーム全体の価値実現の速度、頻度、整合性、安全性を高めることができます。
Microsoft曰く
モダン化とは、組織のプロセス、システム、ツールを最も新しいバージョンまたはベスト プラクティスに更新することです。クラウド コンピューティングのコンテキストにおいては、モダン化とは組織のアプリケーション、プロセス、およびデータ管理をクラウドファーストのアプローチに移行するプロセスです。
ここでもう 1 つ指摘しておきたいのは、アプリのモダン化のアプローチをいくつかのステージに分けることが多くの場合は可能であり、そのほうが現実的であることです。
アプリケーションのモダン化には、アプリ自体と、そのアプリをモダン化する組織の両方にとってさまざまな利点があります。主な利点としては、効率の向上、クラウド テクノロジとの互換性、セキュリティの向上、可用性の向上、市場投入までの時間の短縮があります。
なぜモダンなの?
顧客ニーズの変化が激しくなっている近年は、『いかに迅速かつ安全にニーズに応えられるか』がビジネスを強化するための要件となっています。このためには、ビジネス価値があるアプリケーションを迅速に開発して安全にデリバリーし、ニーズの変化に合わせて高頻度で更新する必要があります。つまり、モダンアプリケーションとは“ニーズにいち早く応え続ける”という目的を達成するために、最新のテクノロジーやアーキテクチャ、ソフトウェア配信方式、運用プロセスを組み合わせたアプリケーションだと言えます
つまり?
開発で言うモダンとは、「新しい技術」(そのまま)
この考えは、「モダンなアプリを作る!」という目的ではなく、「モダンなアプリを作った結果、○○を達成できた!!」みたいな、何かを達成するための手段であるということ
近年では、この目的やニーズの変化が激しい。アプリは、それについていくだけのスピードや安全性をもつモダンな技術が必要になってくる
モダン化は一気にやるものではなく、段階を踏むことができる。
例えば「これまでオンプレで動いてた〇年前のシステムを最近流行りの言語で書いてクラウドにするまで全部やる!!!ウォーターフォールや!!!!」というよりも、
「まずは、これまでオンプレだったものをクラウドにのせかえてみよう」「次に○○をしてみよう」…などというようなスモールステップを踏みながら更新することができる、というかんじ
ほかにも読んだ
RPAとは
Robotic Process Automation
簡単に言えば、業務のデジタル化をするツールのこと
いますでにある業務アプリケーションの操作を自動化する
RPAが自動化できるのは、単純作業やルーチンワークだけ
ノーコードとは
コードを書かなくてもWebサイトやアプリを開発できるサービス
きんとーんとか、せーるすふぉーすとか、わーどぷれすとか
RPAとの違いは、新しい業務アプリケーションをプログラミングなしで開発すること
ローコード
ちょっとだけコードを書くだけで開発できること
データウェアハウス
略して DWH
企業内の複数システムから大量のデータを時系列で蓄積するシステム
いわばデータの倉庫
DevOps
さいきんわだい?のDevOpsってな~に
「開発(Development)」と「運用(Operations)」を組み合わせた造語
⇒開発担当と運用担当が緊密に連携して、柔軟かつスピーディーにシステム開発を行う手法
CI/CD
DevOps のための「ツール」
ソフトウェアの変更を常にテストし、自動で本番環境に適用できるような状態にしておくこと
なんらかの技術そのものということではなく、開発手法
- CI:継続的インテグレーション(Continuous Integration)
- 自動化のプロセスのこと
- CD:継続的デリバリー(Continuous Delivery)
- ユーザーに継続的にアプリケーションを提供すること
PMO
Project Management Office
- プロジェクトの全体像を把握して進捗管理を行う
- 効率化、業務環境の最適化
- 社内外チームの調整、支援
- PMの補佐
などを通してプロジェクトを成功に導くひと
ERP
Enterprise Resources Planning
- 企業経営の基本となる資源要素(ヒト・モノ・カネ・情報)をあつかう
- 一元管理すれば効率よくデータを分析できるよねーーということ
認知負荷
もともとは心理学の用語のひとつ
脳のワーキングメモリが常に処理している「情報量」を指し、脳への情報のインプットが私たちの認知能力にどのような負担をかけるか
⇒この「脳のメモリ」を使いすぎて負荷がかかり生産性が悪くなったりする!
SEの仕事でいうならば、
「どのクラウド?」「コンテナ使う?」「セキュリティは?」…などなど、
アプリ1個つくってリリースするということに対して、様々な分野に対して調査や学習をする必要がある
⇒単純な「アプリ開発」だけに脳メモリの割合を割けない、認知負荷がかかる
⇒生産性が低下する
Platform Engineering
開発者の認知負荷軽減と生産性向上を第一の目的とし、負荷の根源となっている諸々を解決する基盤=プラットフォームを構築・運用する。また、それを行う専任チームを作っていくという考え方
⇒共通のプラットフォームを作っておくことで、開発に注力できるようにする!
例えば「クラウドはコレ!」「手順書はコレ!」「テンプレはコレ!」…のように、具体的に筋道を立てること
CDN
Content Delivery Network
- コンテンツ配信のために利用するネットワークを提供するサービス
- 例えば大量アクセスがあったとき、サーバーに直でアクセスしようとするとサーバーがしぬ
- そこでCDNを介してアクセスするようにして、サーバーへの負荷を減らすことができる
CDNはサーバーに対してコンテンツを要求します。サーバーがその要求に応答してコンテンツを提供すると、CDNは提供されたコンテンツをキャッシュ(コピー)して保持します。CDNを利用している時、私たちがコンテンツの閲覧を要求すると、サーバーではなくCDNが応答して、キャッシュしている情報を提供してくれます。このようにCDNは、サーバーに成り代わることで、応答過多な状況における処理の負荷を肩代わりしてくれるのです。
CDNのサービス例としては「CloudFlare」「Amazon CloudFront」など
今後は下記にまとめるのでクローズ