[ノンプロ研]GAS中級講座5期卒業LT ノンプログラマーによるGAS開発モデルとは

GAS

どうも。つじけ(tsujikenzo)です。このシリーズでは、2021年5月から始まりました「ノンプロ研GAS中級講座5期」について、全8回でお届けします。今日は8回目で最終回です。最終回は、なんと3回でお送りいたします。

前回のおさらい

前回は、「HTTP通信・API」をお届けしました。

[ノンプロ研]GAS中級講座5期 Day6HTTP通信・API
どうも。つじけ(tsujikenzo)です。このシリーズでは、2021年5月から始まりました「ノンプロ研GAS中級講座5期」について、全8回でお届けします。今日は7回目のDay6です。前回のおさらい前回は、「Script Servi...

今回は、卒業LT大会で発表しました 「ノンプログラマーによるGAS開発モデル」 をお届けします。

卒業LTのアジェンダ

1章. 『ノンプログラマーによるGAS開発モデルとは』
2章. 『プロの開発を知ろう』
3章. 『ノンプログラマーによる開発』

さっそく、第1回目(1章)です。

モデルとは

ものごとの本質・共通項目を抜き出したさまを「抽象的」といいます。 抽象的の反対は具体的です。

「請求書を発行する」という業務は具体的ですが、抽象化すると「書類を発行する」になります。

このように、業務の流れや構造を抽象化したものを 「モデル」 といいます。

モデルは、業務を可視化したり分析したり(モデリング)、実際にシステムを開発するときにモデルが用いられます。

GAS開発モデルとは

Google Workspaceは、オフィス業務に必要なソフトウェアを一揃えにしたサービスです。

このLTでは、「GAS開発」を、「業務アプリケーション開発」 と定義しておきたいと思います。

業務の流れや構造をモデル化し、モデルを用いて業務アプリケーションを開発することを目標とします。

GAS開発モデルの背景

業務アプリケーションが存在する理由は、解決したい課題を持っている人(以降、発注者)と、その課題を解決する業務アプリケーションを作る人(以降、開発者)がいる からです。

わたしたちのようなノンプログラマーは、発注者=開発者 であることが多いのではないでしょうか。

ある日、ルーティンワークを効率化したいなと思ったら、自分でGASを書いてしまうと思います。

しかしながら、発注者=開発者 であることの限界は、かんたんにおとずれます。

次節では、限界がおとずれる理由を、「GAS開発モデルがもたらすもの」 という視点で考察してみます。

GAS開発モデルがもたらすもの

GAS開発モデルがもたらすものとして、以下の3点を挙げてみました。
– 備忘録、および開発の資産化
– 属人化の排除
– 成果物の評価

備忘録、および開発の資産化

プログラミング学習を続けていると、「3日後/3週間後/3ヵ月後の自分は他人」 という格言を耳にすると思います。

「コードを書いたのは自分のはずなのに、なにを書いているのかわからない」という現象に陥ることです。

講座では「インデントを揃える」、「ドキュメンテーションコメントを付ける」、「分かりやすい変数名を付ける」などの、いわゆる「リーダブルコード」のスキルを習得します。

GAS開発モデルでは、コードを書くだけでなく、要件定義書やフロー図などを作成し、「なぜこのコードが書かれたのか」 という理由や成り立ちもドキュメントに残します。

もちろん、「開発の時間短縮」という効果もあるでしょう。

属人化の排除

GAS開発モデルは、誰でも利用できる、GAS開発の手順です。

業務に詳しい人が、社内で限られることは仕方ありませんが、業務アプリケーション開発の担当者=発注者と近い人でなくてもいいはずです。

属人化の排除は、最終的に生産性を大幅に向上させます。

そして、もしあなたが経営者なら、属人化の排除を徹底して評価しましょう。

成果物の評価

いくら便利な業務アプリケーションをつくっても、会社に評価されなければ継続的なモチベーションや、開発につながりません。

しかしながら、評価する側からしても、ぐにゃぐにゃ自動で動く業務アプリケーションをいきなり見せられても、逆に不安かもしれません。

GAS開発モデルは、「どんな課題を解決したのか」に加えて、「正しく解決できているか」 という評価も可視化します。

まとめ

以上で、「ノンプログラマーによるGAS開発モデルとは」 をお送りしました。

わたしたちノンプログラマーが置かれている開発状況を見渡し、「開発をモデル化するといいのではないか」という仮説を立てました。

この仮説の検証をするために、まずプロの開発手法を学んでみましょう。課題解決の糸口が見つかるかもしれません。

次回は、「プロの開発を知ろう」 をお届けします。

このシリーズの目次

  1. [ノンプロ研]GAS中級講座5期 事前課題
  2. [ノンプロ研]GAS中級講座5期Day1 スコープと関数
  3. [ノンプロ研]GAS中級講座5期Day2 クラス・ライブラリ
  4. [ノンプロ研]GAS中級講座5期Day3 組み込みオブジェクト
  5. [ノンプロ研]GAS中級講座5期Day4 ScriptServices1
  6. [ノンプロ研]GAS中級講座5期Day5 ScriptServices2
  7. [ノンプロ研]GAS中級講座5期Day6 HTTP通信・API
  8. [ノンプロ研]GAS中級講座5期卒業LT ノンプログラマーによるGAS開発モデルとは
  9. [ノンプロ研]GAS中級講座5期卒業LT プロの開発を知ろう
  10. [ノンプロ研]GAS中級講座5期卒業LT ノンプログラマーによる開発
タイトルとURLをコピーしました