API開発のためのプログラミング言語"Ballerina"の直感的な構文について解説します。認証や承認、OpenAPIツール、可観測性、SQL/NoSQLクライアントライブラリなど、重要な言語機能についても論じます。記事を読み終えれば、Ballerinaが次のバックエンドAPI開発の有力な候補である理由がよく理解できるでしょう。2022年4月InfoQ編集チームが2022年に進化するソフトウェアアーキテクチャと設計のトピックをどのように見ているかの概要です。アーキテクトが今、何を設計しているかに焦点を当てています。Pan氏が、分散データベースシステムにおけるシャーディングアーキテクチャのパターンについて論じます。ShardingSphereプロジェクトがデータシャーディングの課題にいかに対処しているかを説明した上で、DistSQLを使って分散データベースと暗号化テーブルを生成する方法の実例2つを論じています。カルチャー&手法カオステストで、見えない課題からアプリケーションのレジリエンスを改善するこの記事では、Netflixが提唱するカオステストの原則を列挙した。読者は、カオステストが提供するメリットとデメリットを理解できるはずだ。することで、カオステストを行うかどうかの判断材料となる。リスクに対するすべてのメリットを考慮して、カオステストを行うために経営陣を説得すべき理由も説明した。companies.原文(投稿日:2021/10/12)へのリンク私が若い頃、親友の叔父がパーティバスとの交通事故で亡くなりました。彼はその時、パーティバスに気付いて避けることができなかったのだろうか?ローコードソフトウエアによって企業のソフトウエア開発者が職を失っているという話を聞いた時、これと同じような疑問が私の心に浮かび上がったのです。point)、つまり、他に移動できない場所にいたためでした。今回の記事では、ソフトウェアエンジニアにとってのローコードのピンチポイントと、それを回避する方法を示します。関連スポンサーコンテンツパーティバスのアナロジを続けましょう。あなたは大手ないし準大手企業のエンタープライズソフトウェア開発者である、とします。あなたのチームは、企業が使用するさまざまなアプリケーションの開発、デプロイ、メンテナンスを日々行っています。自分たちでコーディングしたアプリケーションもあれば、"オフ・ザ・シェルフ"のアプリケーションをカスタマイズないしインテグレーションしたものもあります。ある日突然、多数のビジネスユーザがローコードというパーティバスに乗って、自分自身でアプリケーション開発を始めていることに気付きました。心配するべきでしょうか?そうは思いません。Printが、続いてUIPathが登場した2010年以降、オートメーションによってドラマティックな影響を受ける金融や人事分野の同僚たちを目の当たりにしたことがあるかも知れません。これは、これらの運用領域に多数のピンチポイントが存在するためです。従って彼らは、仕事をすべて失うこになります。ソフトウェアエンジニアリングと買掛金管理は違います。あなたの仕事の大半は、企業に有意義な差異をもたらすソフトウェアを提供することで得られているのです。あなた自身が現在抱えている仕事を考えてみてください。ほとんどのITチームがそうであるように、新しいアプリケーションや既存のアプリケーションへの機能追加に対する需要が満たされないまま、山積みになっているのではないでしょうか。自動化を導入すればこのニーズをすべて解決できると考えるのは、速い自動車に乗れば火星に行くことができると考えるような話です。ローコードソフトウェアが作業の一部を担うようになったとしても、あなたには別の、作業可能なプロジェクトがあるでしょう。この権利をうまく利用すれば、大変なプロジェクトをローコードバスのパーティ参加者に移し替える、というようなことも可能かも知れません。ソフトウェアエンジニアが行う仕事は、オートメーションの導入で縮小されるのではなく、かえって深いものになる可能性があります。ローコードのパーティバスがドライブするには不向きな地域なのです。ローコードツールが非開発者に対して、データを格納するテーブルの作成を容易にすることは可能ですが、そのテーブルを彼らが解決しようとするビジネス問題に対して最適な構造にするための支援はほとんどしてくれません。ローコードツールは、非開発者によるアプリの開発やデプロイは簡単にしてくれますが、リスクやコンプライアンスのガイドラインに準拠するために、適切なステークホルダがプロジェクトの適切な部分に関与することを保証してくれる訳ではありません。ローコードが企業に広まることで、エンタープライズソフトウェアエンジニアとしての職を失うよりも、コーディングに要する時間が少なくなることによって、仕事の他の部分にもっと時間を使えるようになる可能性の方が高いのです。ほとんどのソフトウェアエンジニアにとって、自分の会社にローコードソフトウェアが導入されることは、退屈な反復作業を行う必要がなくなり、会社により多くの価値を提供する機会を与えてくれることになるでしょう。Oberhauser、CEO、n8nパーティバスのアナロジはもういいよ!どんなプロジェクトの話をしているんだっけ?ローコードソフトウェアは、プロセスオートメーションから、ユーザの作業の短縮や一貫的の向上を支援するアプリまで、さまざまなタイプのプロジェクトに使用することができます。以降の記事を読むにあたっては、次のシナリオのどれかひとつを思い描いてください。Enterprise"をざっと読んでみるとよいでしょう)。この記事では便宜上、プロジェクトを4つのステージにカテゴライズしたいと思います。(デプロイ)維持(メンテナンス)ローコードが業務に与えるであろう影響を理解する一助として、これらのステージそれぞれにおける現在のローコードの能力を見てみましょう。計画と全体設計4つのステージの中で、これはローコードソフトウェアに代替される最後のステージになると思います。計画と設計のステージには、必要なステークホルダの関与から、アプリを構築し維持する上で十分な予算とリソースの確保、適切なアプリを開発しているという確証に至るまで、すべてが含まれています。あなたが不動産会社に勤めていて、契約書を渡すのに時間が掛かりすぎているという苦情を顧客から受けている、と想定しましょう。問題の解決方法はいくつかありますが、あなたの会社にとってどれが最善かを決めるには、遅れの原因や、遅れを最小化できるさまざまな方法を理解する必要があります。このような分析は、すぐにはローコードソフトウェアで処理できるようにならないでしょう。構築これが現在のローコードソフトウェアの中心的な機能です。全体的な設計ができれば、あなたのチームあるいはビジネスユーザは、ローコードソフトウェアを使うことで、従来よりも早くアプリケーションを量産することができます。プロジェクトのこのステージにおいて、ユーザがローコードソフトウェアを使うことのメリットは、ユーザが本当に必要なものを決める上で、ローコードソフトウェアの支援が得られる点にあります。ドラフトを作って詳細な要件や仕様について話し合わなくても、ユーザが自分のニーズに会ったものを得られるまで、ソリューションを繰り返すことができるのです。これによって専門家以外の人が、驚くほど複雑なアプリケーションを開発し、展開することが可能になります。それは、例えば"不動産契約から関連するデータをどうやって抽出するか"というように、取り組んでいるビジネスに固有のものであるため、選択したローコードソリューションでは処理が難しい問題に対処することです。Functionsのような新たなカテゴリのソフトウェア企業が現れて、このような特殊な要件を処理してくれるようになっています。west)とでもいうもので、各タイプのローコードプラットフォームがさまざまなアプローチを採用しています。RPA企業はモノリシックなコントロールセンタを構築して、アプリケーションのデプロイメントとメンテナンスを処理しています。この方法はデプロイメントとメンテナンスの問題を解決する一方で、チームにとっては、ローコードアプリのデプロイとメンテナンスのために、他のアプリのデプロイとメンテナンスとは別のツールを使用する必要が生じます。Microsoftではローコードアプリ用に、ビジネスユーザ用のグラフィカルなユーザインターフェースと、開発者の使用可能なコードベースのインターフェースという、2つのビューを開発しています。これによって開発者は、他で使用しているのと同じGitベースのワークフローを使用できるようになります。AWSとGoogleは、この問題への対処方法をまだ決めていません。何百という他のローコードアプリケーションは、さまざまに異なるアプローチを採用しているのが現状です。結論としてチームは、これをどのように処理するのか、誰が処理をすべきなのか、といった、いくつかのガイドラインを決める必要があります。この件に関しては、シリーズの以前の記事でも取り上げました。これに関する責任はビジネスではなく、IT部門が負うのは当然のことです。維持(メンテナンス)これは現在、対処の最も難しいステージです。メンテナンスには、故障/修理というアクティビティと、継続的拡張という2つが含まれます。ビジネスユニットの大半はこの作業を実施するように設定されていませんが、それでも関与は必要です。アプリケーションがジ自社開発の場合、ビジネスの観点からその挙動について知っているのは彼らだけだからです。将来的にはこのフェーズをもっとうまく扱えるようになるでしょうが、適切な管理を行うためには、ソフトウェアエンジニアとビジネスによる共同作業が常に必要になると思われます。避けるべきピンチポイントあなたが大手ないし準大手企業のソフトウェアエンジニアで、ビジネスユーザと十分なコミュニケーションが可能なのであれば、過度に心配する必要はありません。企業に価値を加える方法が、いつでも見つかることでしょう。ローコードがソフトウェアエンジニアたちに大きな影響を与えるであろう領域が2つあります。これらのいずれかに従事しているのであれば、現在よりも大きなトレンドに注意する必要があります。中小の企業では、カスタムアプリを開発するよりもローコードソフトウェアを使用する方がずっと理にかなっています。CEOはいくつかのカスタムアプリを開発するReact開発者を採用する(その上で離職したり、退職したり、死亡したりしないように願う)か、ローコードソフトウェアを使ってアプリを開発するか、という選択をしなければなりません。後者を選ぶのは簡単です。これらの企業で雇用されているソフトウェア技術者たちは職を失うか、自社用のローコードアプリの開発へと移行することになるでしょう。最大の失職が発生するのは、アプリ開発です。これらの企業の初級~中級レベルの開発者たちには、直接雇用されたエンタープライズソフトウェアエンジニアが可能なのと同じ方法で、自身のコミュニケーションスキルを活用する機会はほとんどありません。あなたがアプリの作成やETLパイプラインの構築を担当する初級ないし中級レベルの開発者で、オフィスを見回した時に同じ仕事をする同僚が何人もいるようであれば、自分自身のコミュニケーションスキルや対顧客スキルを強化する方法を考える時かも知れません。結論テクノロジの変化は、最初はゆっくりと、次には一度に、起こります。私たちは今、すべてが一度にローコードソフトウェアへと転換する、その分岐点にいるのではないでしょうか。今後数年間で、ソフトウェアエンジニアが行う仕事の内容は劇的に変わるでしょう。あなたがピンチポイントを離れているならば、この数年間は非常によい年になるはずなのです。Hudgeon氏がInfoQのために執筆したシリーズ記事です。これまでの記事はこちらとこちらで読むことができます。FunctionsのCEOでもあります。Fuunctionsは、企業のローコードおよびRPAチームのプロジェクトが直面する厄介な問題に対処するカスタムコンポーネントを提供することによって、プロジェクトデリバリの迅速化を支援するインテグレーション企業です。中でもユニークなのは、提供するコンポーネントがサーバレス関数として企業のクラウド(AWS、Azure、GCP)にデプロイ可能であるため、ソリューション全体をそれらのインフラストラクチャ上で運用することが可能な点です。Business"の著者のひとりです。氏の言動はTwitter上で見ることができます。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。Inc.プライバシーBT。