SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
開発ライフサイクルから見た 
#ng_jp
#ng_jp 
ng-self 
酒巻 瑞穂 
Enterprise Engineer 
html5jエンタープライズ部 
(スタッフ) 
html5jWebプラットフォーム部 
(スタッフ) 
FirefoxOSコードリーディング 
(ヒラ) 
AngularJS Japan User Group (スタッフ)
サーバサイドテンプレートとSPA 
#ng_jp 
VS?
開発プロセスから振り返る 
#ng_jp 
 Angularなおもひで 
要求設計 
基本設計 
機能設計 
詳細設計 
受入テスト 
結合テスト 
機能テスト 
単体テスト 
コーディング
Angularな開発ライフサイクル 
〔計画 : project planning〕 
AngularJSをメインキャストに! 
Web開発のメリットを殺すような開発サイクルはなるたけ避けたほうが良い 
昨今まではフロントはサーバーと同じサイクルで管理される事が多かったが、近代のフロ 
ントエンドは十分アーキテクチャとして完成している。 
プロジェクト管理体制の独立している、バックエンドの開発サイクルのついでに、jenkins 
からGruntを叩くだけというのは、開発速度の低下を招く為個人的にお勧めできない 
CIも粗結合! 
フロントエンドの生産性や柔軟性を損ねず従来と同じレベルのCIが実現できる。 
バックエンドCI、統合CIと連携する場合はフロントエンド等からの連携で 
#ng_jp
Angularな開発ライフサイクル 
〔設計 : application design〕 
相棒はどんな eco system? 
● AngularJSの開発はeco systemをどれだけ活用するかも重要でした。 
ossな子、ベンダー製の子、身内の子。 
● 様々なコンポーネントを組み合わせ、どのように結合するかというコンポーネントベー 
スの設計になりました。 
● それ以外にも、モック画面が動くので。プロトタイピングなどの動作を見せる開発がよ 
り容易になり見落としが減る、顧客からの要件調整がより効率的に。 
● UIの要件がコンポーネントとして定義できるすばらしさ(direcrive) 
● API設計 ▶︎ リソースモジュール設計 ▶︎ リソースモジュールを使用した開発 
リソースモジュール ▶︎ odbcのラッパ、DAOのように直接APIコールではなく、より 
開発者たちに使いやすい、再利用できるようAPIをラッピングできる。 
#ng_jp
Angularな開発ライフサイクル 
〔製造 : development〕 
分業と、共通認識と 
AngularJSという共通の認識土台で作業できることのすばらしさ 
AngularJSを知っているデザイナー最強説 
LT程度でこのすばらしさは伝えられないので、ぜひ皆さん実践して経験してください。 
#ng_jp
Angularな開発ライフサイクル 
〔試験 : software test〕 
おどろきのテスト書きやすさ 
AngularJSはテストを重視したフレームワーク 
Angularチームもテストに真摯に取り組んでいる。 
AngularJS用のテスト補助ライブラリangular-mock、Protractorを用いたテストでより、効 
率的なテストを! 
#ng_jp
Angularな開発ライフサイクル 
〔運用 : operations〕 
Webの進化の大恩恵 
運用メンバーは開発メンバーと違う事が多い 
引き継ぎや運用者のことも考えるとシンプルなほうがいい 
I. npmを使った環境構築 
II.ブラウザ開発ツール 
III.TraviceやGruntなどのCIの充実 
#ng_jp
開発はより早く、安く! 
#ng_jp 
開発者 
KAIHATUSHA
#ng_jp 
MEAN stack
シンプルなアーキテクチャ 
3段変形は男の子のロマンかもしれないけど、実用的じゃないよね。 
やはりデータはシンプルに! 
Popular 
System 
#ng_jp 
RDB(table) Server 
(Plain Object) 
Frontend 
(javascript object) 
MongoDB 
(javascript object) NodeJS 
(javascript object) 
AngularJS 
(javascript object) 
変換! 変換! 
object json
まずはJavaScriptを覚えよう 
#ng_jp 
エンジニアが居ないから選択肢を取れないと言うのはナンセンス 
フロントエンジニアを増やし 
手札としてAngularJSしいてはMEAN stackを選べるように! 
そのために自分たちで触って覚えよう!
9月28日ハッカソンやります! 
#ng_jp
ご清聴ありがとうございました。 
#ng_jp

Mais conteúdo relacionado

Mais procurados

Directiveで実現できたこと
Directiveで実現できたことDirectiveで実現できたこと
Directiveで実現できたことKon Yuichi
 
イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0Okuno Kentaro
 
noteをAngularJSで構築した話
noteをAngularJSで構築した話noteをAngularJSで構築した話
noteをAngularJSで構築した話Kon Yuichi
 
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化Toshio Ehara
 
Angular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップAngular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップKazuyoshi Tsuchiya
 
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb ComponentsハンズオンエンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb ComponentsハンズオンMitsuru Ogawa
 
Angularモダンweb開発セミナー紹介 20170923
Angularモダンweb開発セミナー紹介 20170923Angularモダンweb開発セミナー紹介 20170923
Angularモダンweb開発セミナー紹介 20170923Staffnet_Inc
 
angular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1clubangular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1clubsilvers ofsilvers
 
AngularJSからReactに移ったケースの話
AngularJSからReactに移ったケースの話AngularJSからReactに移ったケースの話
AngularJSからReactに移ったケースの話kumatch kumatch
 
One-time Binding & $digest
One-time Binding & $digestOne-time Binding & $digest
One-time Binding & $digestHayashi Yuichi
 
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIGHayashi Yuichi
 
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみようHoriguchi Seito
 
Angular js はまりどころ
Angular js はまりどころAngular js はまりどころ
Angular js はまりどころAyumi Goto
 
クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性Yasunobu Ikeda
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門Shumpei Shiraishi
 
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)tomonari takahashi
 

Mais procurados (20)

Directiveで実現できたこと
Directiveで実現できたことDirectiveで実現できたこと
Directiveで実現できたこと
 
イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0イベント駆動AngularJS / 今から書くAngular 2.0
イベント駆動AngularJS / 今から書くAngular 2.0
 
Angular1&2
Angular1&2Angular1&2
Angular1&2
 
noteをAngularJSで構築した話
noteをAngularJSで構築した話noteをAngularJSで構築した話
noteをAngularJSで構築した話
 
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化
 
Angular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップAngular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップ
 
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb ComponentsハンズオンエンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb Componentsハンズオン
 
AngularJS 概説
AngularJS 概説AngularJS 概説
AngularJS 概説
 
Angularモダンweb開発セミナー紹介 20170923
Angularモダンweb開発セミナー紹介 20170923Angularモダンweb開発セミナー紹介 20170923
Angularモダンweb開発セミナー紹介 20170923
 
angular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1clubangular X designer - デザイナからみたAngularJS #ten1club
angular X designer - デザイナからみたAngularJS #ten1club
 
Angular2実践入門
Angular2実践入門Angular2実践入門
Angular2実践入門
 
Angular#Kanazawa
Angular#KanazawaAngular#Kanazawa
Angular#Kanazawa
 
AngularJSからReactに移ったケースの話
AngularJSからReactに移ったケースの話AngularJSからReactに移ったケースの話
AngularJSからReactに移ったケースの話
 
One-time Binding & $digest
One-time Binding & $digestOne-time Binding & $digest
One-time Binding & $digest
 
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG
受託開発でのAngularJS - 第1回AngularJS 勉強会 at LIG
 
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
 
Angular js はまりどころ
Angular js はまりどころAngular js はまりどころ
Angular js はまりどころ
 
クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性クリエイティブの視点から探るAngular 2の可能性
クリエイティブの視点から探るAngular 2の可能性
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
 
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
 

Semelhante a 開発ライフサイクルから見たAngularJS

Angularおじさんの1年
Angularおじさんの1年Angularおじさんの1年
Angularおじさんの1年Hayashi Yuichi
 
Swagger jjug ccc 2018 spring
Swagger jjug ccc 2018 springSwagger jjug ccc 2018 spring
Swagger jjug ccc 2018 springkounan13
 
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発Hiroyuki Kusu
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱Koichi ITO
 
次世代Web業務アプリケーション
次世代Web業務アプリケーション次世代Web業務アプリケーション
次世代Web業務アプリケーションFumio SAGAWA
 
Swaggerのさわりだけ
SwaggerのさわりだけSwaggerのさわりだけ
SwaggerのさわりだけMasakazu Muraoka
 
今なぜサーバーレスなのか
今なぜサーバーレスなのか今なぜサーバーレスなのか
今なぜサーバーレスなのか真吾 吉田
 
Web開発の 今までとこれから
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれからShinichi Takahashi
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組みKouji Matsui
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介ssuser39314d
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsEtsuji Nakai
 
DevOps and Compliance and Security
DevOps and Compliance and SecurityDevOps and Compliance and Security
DevOps and Compliance and SecurityKazushi Kamegawa
 
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきことメンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきことMitsuru Ogawa
 
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発GoAzure
 
Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発kan-notice
 

Semelhante a 開発ライフサイクルから見たAngularJS (20)

Angularおじさんの1年
Angularおじさんの1年Angularおじさんの1年
Angularおじさんの1年
 
Walking front end
Walking front endWalking front end
Walking front end
 
Swagger jjug ccc 2018 spring
Swagger jjug ccc 2018 springSwagger jjug ccc 2018 spring
Swagger jjug ccc 2018 spring
 
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
LIGでのDocker活用
LIGでのDocker活用LIGでのDocker活用
LIGでのDocker活用
 
次世代Web業務アプリケーション
次世代Web業務アプリケーション次世代Web業務アプリケーション
次世代Web業務アプリケーション
 
Swaggerのさわりだけ
SwaggerのさわりだけSwaggerのさわりだけ
Swaggerのさわりだけ
 
今なぜサーバーレスなのか
今なぜサーバーレスなのか今なぜサーバーレスなのか
今なぜサーバーレスなのか
 
Web開発の 今までとこれから
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれから
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み
 
Angularを利用したシステム開発事例
Angularを利用したシステム開発事例Angularを利用したシステム開発事例
Angularを利用したシステム開発事例
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介
 
Googleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOpsGoogleのインフラ技術から考える理想のDevOps
Googleのインフラ技術から考える理想のDevOps
 
DevOps and Compliance and Security
DevOps and Compliance and SecurityDevOps and Compliance and Security
DevOps and Compliance and Security
 
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきことメンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
 
Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編
 
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
A 1-1 tfs on azure で始めるイマドキのソフトウェア開発
 
Go azure tfs_service
Go azure tfs_serviceGo azure tfs_service
Go azure tfs_service
 
Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発
 

Mais de Mizuho Sakamaki

きつねさんでもわかる Firefox OS コードリーディング入門
きつねさんでもわかる Firefox OS コードリーディング入門きつねさんでもわかる Firefox OS コードリーディング入門
きつねさんでもわかる Firefox OS コードリーディング入門Mizuho Sakamaki
 
Firefox osで変わるアプリケーションの開発ライフサイクル
Firefox osで変わるアプリケーションの開発ライフサイクルFirefox osで変わるアプリケーションの開発ライフサイクル
Firefox osで変わるアプリケーションの開発ライフサイクルMizuho Sakamaki
 
PhoneGapなんか要らない? FirefoxOS
PhoneGapなんか要らない? FirefoxOSPhoneGapなんか要らない? FirefoxOS
PhoneGapなんか要らない? FirefoxOSMizuho Sakamaki
 
NashornとServerSideJavaScript
NashornとServerSideJavaScriptNashornとServerSideJavaScript
NashornとServerSideJavaScriptMizuho Sakamaki
 
SPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWorkSPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWorkMizuho Sakamaki
 

Mais de Mizuho Sakamaki (8)

Electron Vs Enterprise
Electron Vs EnterpriseElectron Vs Enterprise
Electron Vs Enterprise
 
きつねさんでもわかる Firefox OS コードリーディング入門
きつねさんでもわかる Firefox OS コードリーディング入門きつねさんでもわかる Firefox OS コードリーディング入門
きつねさんでもわかる Firefox OS コードリーディング入門
 
Firefox osで変わるアプリケーションの開発ライフサイクル
Firefox osで変わるアプリケーションの開発ライフサイクルFirefox osで変わるアプリケーションの開発ライフサイクル
Firefox osで変わるアプリケーションの開発ライフサイクル
 
OSCKyotoWebPlatform
OSCKyotoWebPlatformOSCKyotoWebPlatform
OSCKyotoWebPlatform
 
PhoneGapなんか要らない? FirefoxOS
PhoneGapなんか要らない? FirefoxOSPhoneGapなんか要らない? FirefoxOS
PhoneGapなんか要らない? FirefoxOS
 
NashornとServerSideJavaScript
NashornとServerSideJavaScriptNashornとServerSideJavaScript
NashornとServerSideJavaScript
 
Dev sum2014
Dev sum2014Dev sum2014
Dev sum2014
 
SPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWorkSPAに必要なJavaScriptFrameWork
SPAに必要なJavaScriptFrameWork
 

開発ライフサイクルから見たAngularJS