SlideShare a Scribd company logo
One Message
河原電子ビジネス専門学校 ITエンジニア科4年
和田直海
チーム紹介
● チーム名 OneMessage
● メンバー 和田直海
○ ソロチーム 全て担当
どのようなものか?
1つのメッセージを送るだけで、
同時に様々なSNSにメッセージを送ることができるWebサービス
なぜ作ったのか?
課題解決
スキルアップ
課題解決
● ユーザー 営業やお知らせをメッセージ送信する人たち
● 課題 お知らせを手動で、LINEとTwitter両方に送っていた
● 解決方法 LINEもTwitter両方まとめて送る
スキルアップ
● 目標 内定した会社の技術を取得する
● 取得方法 卒業制作で、会社の技術を採用
デモンストレーション
SNSアカウントの連携
SNSアカウントの連携
メッセージ送信設定
送信メッセージを入力
Twitterの送信先を設定
LINEの送信先を設定
LINEの送信先を設定
メッセージの送信が完了
実際に確認
Twitter LINE
メッセージ送信の仕組み
メッセージ送信の仕組み
フロントエンド側が、以下のJSONをバックエンドに送信する
メッセージ送信の仕組み
JSONの構造 ● message
送信するメッセージ内容
● sendingAddresses
プラットフォームごとの送信先情報一覧配列
● platformType
プラットフォームの種類 (Enum)
● addresses
送信先ID一覧配列
● id
送信先ID
メッセージ送信の仕組み
Controllerクラス プラットフォーム対応した
Serviceクラス
メッセージ内容
送信先ID一覧
メッセージ送信
類似サービス
● TwiPla(ツイプラ)
● LINE@
類似サービスとの比較
サービス名 One Message LINE@ TwiPla
対象プラットフォー
ム
LINE,Twitter LINE Twitter
できることの違い
複数のSNSの
メッセージ送信に特
化
ビジネス用途
様々な
Twitterユーザーに
出欠確認や
日程調整ができる
利用技術
開発環境
● 開発OS WSL2(Ubuntu)
● エディタ Visual Studio Code
● APIテストツール Postman
フロントエンド
● 言語 TypeScript
● フレームワーク Angular
● ソーシャルアカウント認証ライブラリ
Firebase Authentication
● テストフレームワーク Jasmine
● UIライブラリ Angular Material
バックエンド
● 言語 Java
● フレームワーク SpringBoot
● テストフレームワーク JUnit
● ORM SpringJPA
インフラ
● デプロイ先サーバー Amazon Lightsail
● データーベース Amazon Lightsail MySQL
● フロントエンド用Webサーバー
Nginx (Docker-Compose環境)
● デプロイ作業効率化 Shell Script(sh)
その他
● CI GitHub Actions
● API設計ツール OpenAPI
● 外部API
○ TwitterAPI
○ LINE Messaging API
インフラ構成図
工夫点やできたこと
技術面
● スキーマ駆動開発 ▶ フロントとバックの連携効率化
● CI構築 ▶ コードの品質担保
● シェルスクリプトで、デプロイの効率化
● 複数のプラットフォームに対応
デザイン面
● SPA
● Ajax処理時に、ロードエフェクト、
処理後に結果を表示
● マテリアルデザイン
できなかったこと
できなかったこと
● SSL化 ▶ ACMのSSL証明書の審査不通過
● もっと多くのプラットフォームの対応 ▶ 2つだけ
● 自動デプロイ ▶ Amazon LightsailとGitHubActionsの相性
● 送信先履歴機能 ▶ 工数不足
● ファイル送信機能 ▶ 工数不足
反省点
反省点
● 休日作業前提のスケジュール ▶ でも休日にやらなかった
● スケジュールの後ろ回し ▶ 工数不足に
○ 当初の計画よりも、小さいものになった
○ テストコードの実装をやめた
● 命名で、複数形と単数形の使い分け
感想
感想
● 個人開発の物理的な負担と精神的な気楽さ
● AngularとVue.jsとの関係性
● Java11の機能
● 今回の経験から
○ 内定先で、テックリード目指す
○ 個人開発でQiitaやZennでバズらせる
ご清聴ありがとうございました!!

More Related Content

Similar to 卒業制作OneMessage資料

Global microsoft 365 developer bootcamp 2019 japan lt 3
Global microsoft 365 developer bootcamp 2019 japan lt 3Global microsoft 365 developer bootcamp 2019 japan lt 3
Global microsoft 365 developer bootcamp 2019 japan lt 3
mokudai masayuki
 
ネット広告のシステム関連の話
ネット広告のシステム関連の話ネット広告のシステム関連の話
ネット広告のシステム関連の話
株式会社ジオロジック
 
女性のためのブランディングに効くfacebook活用術
女性のためのブランディングに効くfacebook活用術女性のためのブランディングに効くfacebook活用術
女性のためのブランディングに効くfacebook活用術
Hitomi Yokota
 
Tech on meetup online#01
Tech on meetup online#01Tech on meetup online#01
Tech on meetup online#01
Kazuya Suda
 
Portfolio
PortfolioPortfolio
Portfolio
ZepJPN
 
2018 programing
2018 programing2018 programing
2018 programing
m_miyamoto
 
メールシステムの基本のき
メールシステムの基本のきメールシステムの基本のき
メールシステムの基本のき
IIJ
 
Decentralized identity
Decentralized identityDecentralized identity
Decentralized identity
Takao Tetsuro
 
ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門
Trainocate Japan, Ltd.
 
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
Yahoo!デベロッパーネットワーク
 
初級トレーニング パート2
初級トレーニング パート2初級トレーニング パート2
初級トレーニング パート2
Taiki Motomura
 
VOCの活用方法 CSが軸となるサービス改善
VOCの活用方法 CSが軸となるサービス改善VOCの活用方法 CSが軸となるサービス改善
VOCの活用方法 CSが軸となるサービス改善
reotoooshiro
 
#7はじめてのIT勉強会LT
#7はじめてのIT勉強会LT#7はじめてのIT勉強会LT
#7はじめてのIT勉強会LT
Chinatsu Ozawa
 
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
Takaaki Yano
 

Similar to 卒業制作OneMessage資料 (14)

Global microsoft 365 developer bootcamp 2019 japan lt 3
Global microsoft 365 developer bootcamp 2019 japan lt 3Global microsoft 365 developer bootcamp 2019 japan lt 3
Global microsoft 365 developer bootcamp 2019 japan lt 3
 
ネット広告のシステム関連の話
ネット広告のシステム関連の話ネット広告のシステム関連の話
ネット広告のシステム関連の話
 
女性のためのブランディングに効くfacebook活用術
女性のためのブランディングに効くfacebook活用術女性のためのブランディングに効くfacebook活用術
女性のためのブランディングに効くfacebook活用術
 
Tech on meetup online#01
Tech on meetup online#01Tech on meetup online#01
Tech on meetup online#01
 
Portfolio
PortfolioPortfolio
Portfolio
 
2018 programing
2018 programing2018 programing
2018 programing
 
メールシステムの基本のき
メールシステムの基本のきメールシステムの基本のき
メールシステムの基本のき
 
Decentralized identity
Decentralized identityDecentralized identity
Decentralized identity
 
ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門
 
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
STAC2015 講演3 広告システム刷新よもやま話〜テストが当たり前となるまでにやったこと #stac2015
 
初級トレーニング パート2
初級トレーニング パート2初級トレーニング パート2
初級トレーニング パート2
 
VOCの活用方法 CSが軸となるサービス改善
VOCの活用方法 CSが軸となるサービス改善VOCの活用方法 CSが軸となるサービス改善
VOCの活用方法 CSが軸となるサービス改善
 
#7はじめてのIT勉強会LT
#7はじめてのIT勉強会LT#7はじめてのIT勉強会LT
#7はじめてのIT勉強会LT
 
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
ソーシャルメディアに順応したチームを作るために~業務で利用する社内ソーシャルメディアの可能性~
 

Recently uploaded

無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
Yuki Miyazaki
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
osamut
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
azuma satoshi
 
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
sugiuralab
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 

Recently uploaded (9)

無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
 
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 

卒業制作OneMessage資料