社内勤怠アプリの開発に必要な技術とは

このQ&Aのポイント
  • 社内勤怠アプリの開発には、ブラウザで動作する技術が必要です。
  • データベースとしては、お金の負担の少ないMariaDBが適しています。
  • 機能拡張のためには、サーバーサイドの技術とクライアントサイドの技術を学ぶ必要があります。
回答を見る
  • ベストアンサー

社内で勤怠アプリを作りたいのですがどんな技術が必要

勤怠アプリケーションを作りたいと思っていますが、どんな技術を採用すればいいのかわかりません。 勤怠アプリといっても複雑なものはではなく、条件はシンプルです。 ・ブラウザで動作 ・社員IDを入力してOKボタンを押すとDBに登録 ・小さい会社内で運用 ・お金が無いのでサーバーOSはLinux ・お金が無いのでデータベースはMariaDB ゆくゆくは機能を拡張していきたいのですが、少しずつ勉強しながら機能を拡張したいと思っています。 私のレベルはVBAが多少わかる程度です。 サーバー、クライアント周りの技術を調べましたが、沢山ありすぎてどれを採用していいのかわかりません。 PHP、Ruby、Node.jsなどなど。多すぎてわかりません・・・機能を拡張していく事を含め、こんな技術をしらないと駄目だよというのがありましたらアドバイスお願いします!

質問者が選んだベストアンサー

  • ベストアンサー
  • webuser
  • ベストアンサー率33% (372/1120)
回答No.5

>私のレベルはVBAが多少わかる程度です。 じゃあVBで作ったらどうですか? Visual studioをダウンロードしてVisual Basicのフォームアプリケーションとかで作ってもいいです。 DBはPostgreSqlとかもいいです。 打刻をどうするかです。 マウスで画面をクリックするとかならブラウザでもいいですけど、 機械の制御を嚙ますのならブラウザよりも楽です。 ICカードとか使うならフェリカとかあればいけますし そこまでって思うのならバーコードリーダーとかでやると人のヤツを勝手に押されたりする事もありません。 社員番号とカードをかざした時刻だけを保存していく 別途集計してする機能をつくる ちなみにWEBアプリでの打刻は個人的にはお勧めしません。 URLわかれば外から打刻できるからです。

その他の回答 (4)

  • agehage
  • ベストアンサー率22% (2547/11330)
回答No.4

HTMLとPHPとSQLを覚えれば作れます Javascriptも覚えると入力ミスが防げるかと (準備編) ・LINUXをインストールする ・HTTPサーバーを入れる ・PHPを動くようにする ・MariaDBを動くようにする これらは以下のサイトの2,3,4,8,14-1、24-1をやるとできます https://centossrv.com/ (実装編) ・出社時間、退勤時間を入力しDBへ格納 ・集計機能  残業代割り増し   残業 深夜残業 休日割り増し 休日深夜  有給計算

回答No.3

他回答者様の回答にもありますが、Linux上で運用可能な無料のグループウエアを使用されるのが一番早道です。 一例:Groupsession https://groupsession.jp/index.html 上記であれば運用はweb上になります。オンラインデモ等で実際の動作が確認可能なので、確認をされてみることをおすすめします。 https://groupsession.jp/dl/demo.html 「お金がない」とおっしゃられていますが、このようなツールを社内でゼロから立ち上げるのにかかる時間にも金がかかります。 ゆくゆくは質問者様が立ち上げたシステムを外販する予定があるのであればまだ費用回収も可能ですが、あくまでも社内運用だけ、というのであれば上記のシステムをLinux PC上に構築し、運用する方がよほど効率的です。(実際に運用をされてみるとわかりますが、上記のような既存のシステムの運用/維持/メンテナンスだけでも多大な労力がかかります) 以上、ご参考まで。

回答No.2

一から作るよりオープンソースのシステムを活用してはいかがでしょう? 例えば、以下 https://mosp.jp/

  • t_ohta
  • ベストアンサー率38% (5072/13251)
回答No.1

初めてであればLAMP環境でしょう。 Linux, Apache, MySQL(MariaDB), PHPを使ってWebアプリを作るモノで、書籍や解説サイトが多数あるので情報を得やすいです。

関連するQ&A

  • webサーバを自分で作る場合

    こんにちは 2つ質問があります。 どちらか一つでもありがたいので回答お願いいたします。 【一つ目の質問】 今、Node.jsを使い、拡張子.jsで保存したエディタに var server = require("httpe").createServer(ivent) など書いてサーバにすることは知ったのですが、Node.jsのコマンドプロンプトに書かなくて、 なぜ別途で作ったファイルをサーバにすることができるのでしょうか。 Node.jsの役目はいったい何なのでしょうか。ただインストールするだけのボードって感じがするのですが・・・ 【2つめの質問】 一つのwebページをつくるのに、どのような拡張子の、どのような役割のファイルがいくつ必要ですか? 私としては、「サーバ用の.jsファイル。」「index.htmlのファイル」この2つがあれば見栄えは悪いですが、Socket.ioを使った通信など一通りのことができると思うのですが。 これは当たっているのでしょうか。。。

  • 10台ほどの社内ネットワークについて

    今度社内のPCをつないでデータベースを作ろうとしています。ただPCが10台ほどなのと、使用方法が、各課との工程の管理.連絡と、過去の技術のデータベース化と各課連絡用程度な為、運用の難しいサーバーは使わずにやろうと思うのですが、可能でしょうか。それともサーバーは必要でしょうか。又どのように構築していけばよいか指導よろしくお願いします。

  • DBアクセスの情報保持したファイルの秘匿化

    お世話になっております。 標題についてご教授お願いします。 node.js+mysqlを使いデータのINSERTやSELECTを行うのですが、 DBアクセスのパスワードを格納したファイルを秘匿化するにはどうしたらいいでしょうか。 [やりたい事] Aサーバ Bサーバ MySQL MySQL node.js node.js パスワードファイル パスワードファイル それぞれのサーバでここにDBを持つ事になるのですが、 A、B共に秘匿化したパスワードファイルを置いて 接続させたいと思ってます。 秘匿化元ファイルは別サーバで管理 ようはA、B共にroot権限を持っていても ユーザIDやパスワードが見れないようにしたいと思ってるのですが、 可能でしょうか。 お手数ですが、宜しくお願い致します。

  • MySQLからDB2のデータベース参照についてです。

    MySQLからDB2のデータベース参照についてです。 linuxサーバー上のMySQLを利用して、Windows サーバー上のDB2のデータベースを参照したいと思っています。実際できるかどうかも分からず、できるとすればどのような方法があるのでしょうか?

  • サーバ技術を学ぶには、エミュレータ利用のLinuxでも良いか。

    将来、 WebでDBプログラムを利用したサイトを公開したいと思っています。 その際には、セキュリティ上、ホスティング会社のサーバを利用する予定ですが、ホスティング会社との技術的打ち合わせや、実際にプログラムをアップロードするにあたり、Linuxの知識が必要になると思っています。 本番を支障なく成功させるために、試験的にプログラムをアップロードする練習や、試験的にサーバ運用する目的なら(有人監視で短時間だけ利用する)、例えば、Windows機に「エミュレータVMware等+FedoraCoreまたはVine」をインストールして、Linuxを学ぶことで、取りあえず足りるでしょうか。やはりLinux専用機を準備しなければ無理でしょうか。 その他、学ぶべきポイント等がありましたら教えて頂ければ有難いです。

  • SQLServer の DB を、VB2005 で作成したアプリから作りたい

    こんにちは。 APサーバにVB2005 DBサーバに SQLServer 2005 という環境で動作する自作アプリケーションがあります。 このアプリを新規の環境にセットアップする際には、 1. DBサーバにSQLServer をインストール 2. SQLServer Management Studio で、データベース作成 3. 同じくテーブル作成。 4. APサーバにアプリケーションをインストール 5. 動作確認 という流れになりますが、セットアップの為に 技術者が必要になってしまいます。 そこでエンドユーザが簡単にセットアップできるように 2.と3. を、セットアップ用プログラムから 自動で走らせたく思っています。 APサーバ上で動くプログラムで、 DBサーバ上のSQLServer内に「hogehoge」というデータベースを 作成するにはどのように記述すれば良いのでしょうか。 宜しくお願い致します。

  • よい技術者になるために

    今年からプログラマ・SEとして入社する20歳です。 専門学校にはまだ在籍しています。 入社するにあたり、会社で活躍したいという想いがあるのは勿論ですが、自らが成長するために日々勉強に励んでいます。 稚拙な分で申し訳ないですが、いい技術者になるためにはどういった勉強をして行ったらいいのでしょうか? 今内定者課題ということでPHPをやっています。学校の卒業作品ではVBを使ったアプリケーションを作成しています。 個人的にはlinuxを始め、ruby,perlや、JS、Cなど様々な言語に興味があり、ネットワーク、データベースなど多方向に優れた技術者になりたいです。 サイトはドットインストール様をよく見ているのですが、あの動画の方も憧れです。今週は、ローカル開発環境の動画を見ながら「こういった動画を見ずに作れるようになれたらいいな。」と動画を見ながらでしかできない自分に対して落ち込んでいました。 毎日暇な時は課題や、参考書など常に手にしています。 まだ20歳だから、と仰る方もいますが、同じ20歳でも私より優れた人などごまんといます。そういった方々に負けないために、皆様の力添えを頂きたいです。 ・この先こういった言語やっておくといいかもよ! ・こういう勉強は役立つかも! ・こういうものが作れると力が身につくよ! ・この書籍は参考になるかも! 様々な方面からのアドバイスで構いません。 もしよろしければ、回答者様のやっている職種だったり、主に使う言語や、どういったものを作ってきたか、どういった勉強をしてきたか、20歳の頃どういった勉強していたかなど差し支えない範囲で構いません、上を見て成長するために皆様のアドバイスお待ちしております。 何か私の方からの情報が欲しい場合はなんなりと仰ってください。 ちなみに、基本情報は持っています。

  • Vine用のRuby 1.8のRPMは、TURBOでも使用できますか?

    お世話になります。 TURBO Linux Server 8を使っています RUBYで書かれたCGIを運用するためRUBYを1.8系に更新したいと考えております。TURBOのサイトでは、1.6系しかみつけることができません。 検索するとVine用の1.8系のRPMがあるようなので、それを使えたらいいなぁと考えています。 ソースからコンパイルすればいいのかもしれませんが、できればRPMで管理したいと思います。

  • プログラミング技術を身につけるのにかかる時間

    エンジニアの働き方に詳しい方に伺いたいです。 下の経験は、どれくらいの期間で積むことができますか?? 質問主はIT未経験です。 ※背景:すでに就職が決まっているIT企業があるのですが、将来的には下記の経験があるエンジニアを募集している別の企業に転職したいと考えています。 「大体◯年〜◯年」というふうにざっくりで構わないので教えてほしいです。 ・Gitを用いたチーム開発 ・ソースコードレビューの経験 ・製品やサービスをリリースした実績 ・Go言語を使用したWeb APIの開発経験 ・MySQLなどリレーショナルデータベースのテーブル設計や使用経験 ・AWSやGoogle Cloudでクラウド環境を構築、運用した経験 ・CI/CDサービス(GitHub Actionsなど)の使用経験 ・Linuxサーバー、Dockerなどのコンテナ技術の使用経験 ・サーバーやアプリケーションのパフォーマンス監視ツールを導入、運用した経験 ・データベースのマイグレーションやチューニングに関する知見 ・サーバーサイド以外の技術に関する知識

  • 業務アプリからインフラ系へ

    こんばんは。 今年から業務アプリPG/SEからインフラ技術者に職種を 変えてみました。 理由はDB2やOracleなどデータベースの物理設計や 運用設計をメインに仕事がしたかったからです。 PGだと良くてDB論理設計しか入れなかったもので・・。 で変えた結果としてはメモリパラメータ設計など ある程度は携われることができました。 ただ大きな問題があり、自分にはハード面やSANなど 関連技術の設計経験がないことです。 ハード面とは例えばデュアルコアCPUやディスク製品知識 、ファイバチャネルなどですかね。。 やはりDBというソフトだけではなく、ハード製品と 組み合わせて最適な「ソリューション」を行うのが インフラ業務の真髄でしょうか?。 業務アプリ系とどちらが自分に向いているのか 確認できればと考えています。 以上、間違った解釈があればすみません、、 ご意見お願いします。

専門家に質問してみよう