WSUS構築 私的な勘所
おはこんばんにちは、ビショップです。
久々の更新。ただのサボり。
最近Windows7の延長サポート期限が終わったことが話題ですが、Windows Server 2008も地味に一緒に期限切れしてますので入れ替え対応を結構してました。で、久々にWSUSの設定をいくつかしたんですが、忘れがちなのとMicrosoftのサイトが分かりにくいのと、やっぱり安定稼働しづらいのでメモ代わりに記事にしようと思います。
ハード的なところ
- CPU:どうでもいい
- メモリ:8GB以上
- WSUSコンテンツの保存先ディスク容量:800GB以上
体感的に安定して稼働する構成はこんなところ。保存先は好みで、私の場合はDドライブを作って直下にwsusというフォルダを作ってWSUSコンテンツの保存先に指定しています。このDドライブの容量は800GBくらいあるとなんとなく安定するイメージです。500GBだとクリーンアップウィザードが失敗しがち。この手の情報は調べても意外と見つかりません。正解はないんだと思います。ですので、環境によっては必ずしも充分ではない可能性があります。余裕を持ったスペックが必要だと思います。
必要な機能・ソフトウェア
- Windows Server Update Services(当たり前だな)
- Webサーバ(IIS)
- Windows Internal Database
- Microsoft Report Viewer 2008 SP1 再頒布可能パッケージ
- SQL Server Management Studio
Windows Internal Databaseはデフォルトだと使います。SQL Serverとか使ってもいいんですが、面倒なのでそのまま。Report Viewerはレポート表示に必要。SSMSはWSUSのメンテに必要。ということで5つの役割・機能とソフトを使用します。インストール方法とかは割愛。
設定的なところ
WSUS
WSUSの主要な設定は割愛します。環境次第なので!見落としやすいところで、ポート番号の変更が必要になる場合があります。Windows Server 2012以降のWSUSではWSUSサーバとクライアント間で利用されるポートのデフォルトが80から8530に変更されました。なので、会社などの環境、クライアントの参照先設定によってはクライアントがWSUSサーバを正常に参照できずコンピュータがいつまでたってもWSUSに表示されない場合があります。そういった場合は、WSUSサーバ側のポート番号を80に変更してあげる必要があります。
WSUSサーバのコマンドプロンプトで下記コマンドを実行します。
"C:\Program Files\Update Services\Tools\wsusutil.exe" UseCustomWebSite false
少し時間がかかることがありますが、”ポート番号の仕様: 80”と表示されれば変更されます。WSUSで使用されるポート番号の確認は、WSUSの管理ツールを開いて、左ペインのサーバ名をクリックしたときに表示される概要から確認できます。
定期メンテナンス
WSUSは定期的にメンテナンスが必要です。Microsoftは少なくとも月に1回のメンテナンスを推奨しています。いちいち手動でやるのは面倒なので、定期的に実行されるようにタスクを仕込んでおきます。手動でやる場合は別途調べてください。
インデックスの再構築
SQLコマンドが必要です。下記のSQLをコピーしてSQLファイルを作成してください。Microsoftのサイトからもダウンロードできたと思ったのですが、ちょっとサイトが見つからないので、興味のある方は探してください。一応注意になりますが、WIDを使用していること前提なので、SQLServerを使用している人は別途調べてください。
/****************************************************************************** This sample T-SQL script performs basic maintenance tasks on SUSDB 1. Identifies indexes that are fragmented and defragments them. For certain tables, a fill-factor is set in order to improve insert performance. Based on MSDN sample at http://msdn2.microsoft.com/en-us/library/ms188917.aspx and tailored for SUSDB requirements 2. Updates potentially out-of-date table statistics. ******************************************************************************/ USE SUSDB; GO SET NOCOUNT ON; -- Rebuild or reorganize indexes based on their fragmentation levels DECLARE @work_to_do TABLE ( objectid int , indexid int , pagedensity float , fragmentation float , numrows int ) DECLARE @objectid int; DECLARE @indexid int; DECLARE @schemaname nvarchar(130); DECLARE @objectname nvarchar(130); DECLARE @indexname nvarchar(130); DECLARE @numrows int DECLARE @density float; DECLARE @fragmentation float; DECLARE @command nvarchar(4000); DECLARE @fillfactorset bit DECLARE @numpages int -- Select indexes that need to be defragmented based on the following -- * Page density is low -- * External fragmentation is high in relation to index size PRINT 'Estimating fragmentation: Begin. ' + convert(nvarchar, getdate(), 121) INSERT @work_to_do SELECT f.object_id , index_id , avg_page_space_used_in_percent , avg_fragmentation_in_percent , record_count FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL , NULL, 'SAMPLED') AS f WHERE (f.avg_page_space_used_in_percent < 85.0 and f.avg_page_space_used_in_percent/100.0 * page_count < page_count - 1) or (f.page_count > 50 and f.avg_fragmentation_in_percent > 15.0) or (f.page_count > 10 and f.avg_fragmentation_in_percent > 80.0) PRINT 'Number of indexes to rebuild: ' + cast(@@ROWCOUNT as nvarchar(20)) PRINT 'Estimating fragmentation: End. ' + convert(nvarchar, getdate(), 121) SELECT @numpages = sum(ps.used_page_count) FROM @work_to_do AS fi INNER JOIN sys.indexes AS i ON fi.objectid = i.object_id and fi.indexid = i.index_id INNER JOIN sys.dm_db_partition_stats AS ps on i.object_id = ps.object_id and i.index_id = ps.index_id -- Declare the cursor for the list of indexes to be processed. DECLARE curIndexes CURSOR FOR SELECT * FROM @work_to_do -- Open the cursor. OPEN curIndexes -- Loop through the indexes WHILE (1=1) BEGIN FETCH NEXT FROM curIndexes INTO @objectid, @indexid, @density, @fragmentation, @numrows; IF @@FETCH_STATUS < 0 BREAK; SELECT @objectname = QUOTENAME(o.name) , @schemaname = QUOTENAME(s.name) FROM sys.objects AS o INNER JOIN sys.schemas as s ON s.schema_id = o.schema_id WHERE o.object_id = @objectid; SELECT @indexname = QUOTENAME(name) , @fillfactorset = CASE fill_factor WHEN 0 THEN 0 ELSE 1 END FROM sys.indexes WHERE object_id = @objectid AND index_id = @indexid; IF ((@density BETWEEN 75.0 AND 85.0) AND @fillfactorset = 1) OR (@fragmentation < 30.0) SET @command = N'ALTER INDEX ' + @indexname + N' ON ' + @schemaname + N'.' + @objectname + N' REORGANIZE'; ELSE IF @numrows >= 5000 AND @fillfactorset = 0 SET @command = N'ALTER INDEX ' + @indexname + N' ON ' + @schemaname + N'.' + @objectname + N' REBUILD WITH (FILLFACTOR = 90)'; ELSE SET @command = N'ALTER INDEX ' + @indexname + N' ON ' + @schemaname + N'.' + @objectname + N' REBUILD'; PRINT convert(nvarchar, getdate(), 121) + N' Executing: ' + @command; EXEC (@command); PRINT convert(nvarchar, getdate(), 121) + N' Done.'; END -- Close and deallocate the cursor. CLOSE curIndexes; DEALLOCATE curIndexes; IF EXISTS (SELECT * FROM @work_to_do) BEGIN PRINT 'Estimated number of pages in fragmented indexes: ' + cast(@numpages as nvarchar(20)) SELECT @numpages = @numpages - sum(ps.used_page_count) FROM @work_to_do AS fi INNER JOIN sys.indexes AS i ON fi.objectid = i.object_id and fi.indexid = i.index_id INNER JOIN sys.dm_db_partition_stats AS ps on i.object_id = ps.object_id and i.index_id = ps.index_id PRINT 'Estimated number of pages freed: ' + cast(@numpages as nvarchar(20)) END GO --Update all statistics PRINT 'Updating all statistics.' + convert(nvarchar, getdate(), 121) EXEC sp_updatestats PRINT 'Done updating statistics.' + convert(nvarchar, getdate(), 121) GO
上記のSQLをsqlwid_reindex.sqlという名前で保存したとします。それをWSUSサーバのDドライブ直下に保存したとします。タスクスケジューラに下記コマンドを登録します。
"C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SQLCMD.exe" -S \\.\pipe\Microsoft##WID\tsql\query -i D:\sqlwid_reindex.sql -I -o D:\wsus\reindexout.txt
起動タイミングなどは好きに設定してください。同期の時間とは被らないようにしましょう。このコマンドはDドライブのwsusフォルダにログが出力されるようになっています。
クリーンアップウィザードをPowerShellで実行
不要な更新ファイルや古いコンピュータなどは溜まっていく一方なので邪魔になります。クリーンアップウィザードで定期的に削除してあげる必要がありますが、通常はWSUSの管理ツールから実行してあげないといけません。ですがPowerShellからコマンドで起動する方法があります。これを利用してタスクスケジューラにPowerShellコマンドを仕込んであげます。
Powershell -Command "Invoke-WsusServerCleanup -CompressUpdates -CleanupObsoleteUpdates -CleanupObsoleteComputers -CleanupUnneededContentFiles -DeclineExpiredUpdates -DeclineSupersededUpdates" > D:\wsus\wsusClean.txt
こちらも起動タイミングなどは好きなように設定してください。かなりの時間がかかります。同期の時間とは被らないようにしましょう。このコマンドもDドライブのwsusフォルダにログが出力されるようになっています。
トラブル対応
ディスク容量が小さいと、WSUSコンテンツの容量に追いつかず、WSUS管理ツールが頻繁にタイムアウトしたり、クリーンアップウィザードが失敗したりします。そういった場合は最初からWSUSを再セットアップしちゃいましょう。IISから何からすべてなかったことにしてから再セットアップすることでなんとかなる場合があります。勇気をもって機能の削除とファイルの削除を行いましょう。
まとめ
- ハードウェアスペックは余裕のある構成で。特にディスク容量
- 旧環境からのバージョンアップなどによってはWSUSポートの変更が必要
- 手動メンテナンスは面倒なのでタスク化しよう
- トラブル時は思い切って最初から設定しなおそう
【対策編】Google Chrome 78 がクラッシュする件 2019年10月
おはこんばんにちは、ビショップです。
10月23日のGoogle Chrome 78へのアップデート後に、Chrome自体がクラッシュする事態が頻発しておりまして、今もちょいちょい問い合わせを受けている状況です。そんな中、いよいよ対応策を決めたので、せっかくなので記事にしておこうと思います。過去記事がだいぶ長くなってるので、記事分けて書こうと思います。現象と環境、いろいろ調査した内容については過去記事をご覧ください。
主な原因
Google Chromeのコミュニティでまとめられていますが、アンチウィルスソフト特にSymantec Endpoint Protectionの古いバージョンがインストールされている環境で発生していることが多いようです。コミュニティの方では、具体的にバージョン14.2以上へのアップデートを推奨しています。
参考:https://support.google.com/chrome/thread/17555930
とはいえ、私の対応している環境では、SEPのクライアントが最新版になっているものでも発生しています。もしかしたら旧バージョンからサイレントアップデートしているとダメなのかも?一度クリーンインストールも試してみる必要ありかしら。
具体的な対応策
クリアしたい課題
ショートカットを作って起動オプションを設定する、という対応策がネットでも暫定的な対策として非常に多く見られますが、過去記事でも言及しているように、会社の環境で多発している場合はそんな個別に対応してられないぜ!となります。なので、なにがしかの方法でショートカットを配布するか、もしくは根本的な対策が必須となります。ショートカットの配布については、恥ずかしながら弊社、ITリテラシが低いので「こっちのショートカットに変更してね!」って言ってもなかなか対応できない人が多くいますし、Webページごとにショートカットをデスクトップに配置してらっしゃる方も多数いらっしゃします。ということで、単純にショートカットを、ということにもいきません。やはり根本的にGoogle Chromeの起動をなんとかするしかなさそうですね。
結局
今回私がとった対策は、レジストリをいじるやーつです。必要な作業は、
1.テキストエディタを開く
2.下記をコピペする
REG ADD “HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome” /V RendererCodeIntegrityEnabled /T REG_DWORD /D 0 /F
3.batファイルとして保存する
4.なにがしかの方法で各端末へ配布・実行する
正しく実行させるには管理者として実行する必要があります。ログオンスクリプトとかでは適用が難しいので私の場合はIT資産管理ツールと呼ばれるツールで配布→管理者として実行する形をとっています。IT資産管理ツールっていうのは、LanScopeとかSKYSEAとかそういうの。
なんにせよ、こういう対応は気持ち悪いので、GoogleでもSymantecでもいいので、ちょっと手を加えてすんなり動くように修正版をリリースしてほしいものです。
Google Chrome 78 がクラッシュする件 2019年10月
おはこんばんにちは、ビショップです。
久々の更新ですが、トラブルが起きたので。
10月23日からGoogleChromeがバージョンアップされて、78になったのかな?最近Chromeを使ってなかったので、あんまり意識してなかったんですが、社内のPCでChromeが使えなくなった!という問い合わせがちらほら上がってきまして。起動しても下の画像のように表示されるだけで、設定を開いても同じ画面になってしまうと。
困りましたねぇ。どうやら起きてる環境もまちまちのようで、しかも、私の使ってる環境では起きてないので、より分からない。調べたところ、原因はある程度絞り込めていて、いくつか対応方法もあるようなので、試してみました。その感想を簡単にまとめておきます。
起動オプションをつける①
Chromeのショートカットを作って、起動オプションを付ける対応方法その1です。ここで使用するのは「--no-sandbox」を付ける方式。Chromeはサンドボックス化することでレンダリングやJavaScriptにおける任意のコードを実行できるといった脆弱性を低減させていますが、その機能をオフにして起動するということですね。
これは会社のセキュリティ的にはアウトでしょう。個人では自己責任で良いですが、社内の端末に適用するのはオススメできません。っていうか、各端末に設定が必要なので、10台やそこらじゃいいけど、百台単位じゃ無理ってもんですよ。
起動オプションをつける②
Chromeのショートカットを作って、起動オプションを付ける対応方法その1です。こちらは「--disable-features=RendererCodeIntegrity」というオプションを使用します。れんだらーこーどいんてぐりてぃ?という機能をオフにして起動するってことですかね。こちらがなんとなく影響も少なそうなので、よさげなのですが、①の方法と同じで、手間がすごいのが問題。いったん見送り。
Symantec Endpoint Protectionのバージョンアップ
原因として挙がっているんですが、SEPのバージョンが14.2より古いと、RendererCodeIntegrityの機能と相性が悪いようで発生するみたいです。なので、最新版にアップグレードしましょう、ということですね。が、私の会社のSEPは私が管理してますが、ちゃんと14.2 RU1になってるんですよねー。問題の起きてる端末も14.2 RU1であることが確認できてます。なので、今詰んでます。
SEPのスキャン対象からchrome.exeを除外する
会社のPCでこんなことするわけにはいかないので、試してないです。この方法でも解消する場合としない場合があるようなので、個人環境で試す分にはいいんじゃないでしょうか。
他のブラウザに逃げる
最強。話によるとEdgeでも似たような現状が発生したっていうのも何かで見たんですが今のところ発生した端末ではFirefoxに逃げてもらっています。Chromeを社内標準にしてしまっているので、社内システムはぶっちゃけGoogleChromeでしか動作確認してません。できる限り早めに解決してChromeに戻したいところですね。
Webアプリケーションの増えてきた昨今、弊社もさることながら、標準として使用してることの多いであろうGoogleChromeでこんな風になってしまうとは。早いところ解決してほしいですねぇ。さすがにGoogleChromeコミュニティの方にもたくさん投稿があるので、しばらくすれば修正版のリリースもあるんじゃないでしょうか。ひとまずそれ待ちですかねぇ。
グループポリシーとか使ってスクリプト投げれば起動オプション付きショートカットの配布もできますが、修正版出た後にまた差し替えるのも面倒だし、なんだかなぁ。
発生してる環境(一例)
・ Windows 10 Pro バージョン1607
・ Google Chrome 78.0.3904.70
・ Symantec Endpoint Protection 14.2.4814.1101
追記
対策編の記事を書きました。そちらも参考になれば。
bishop.hatenadiary.com
【タスク管理】ClickUp2.0ベータを使えるようになったので自称日本最速レビューする
おはこんばんにちは、ビショップです。
8月1日、私のお気に入りタスク管理ツールClickUpのZebさんからメールが届いていました。
当然英語なので、一瞬なんのことか分からなかったのですが、件名にClickyUp 2.0とyour inviteという激アツワードを発見しました。5月くらいからバージョン2.0のベータを徐々に展開していたのは知っていましたが、今回8月1日は約14,000チームを対象にベータの招待がされたようです。その中に私のチーム (個人で使ってたテスト用の奴も)が含まれたようです。やったね!早速2.0に変更して使ってみてます。
デザイン変更
やはり目に付くのは、デザインの大きな変更ですね。PortfoliosやGoals、Reportingや、アカウントのメニューが今まで画面最上部にあったのが、画面左にシンプルに置かれるようになりました。そのおかげか、表示エリアが少し大きくなったので、BOARD表示でも表示できるタスクが増えたので、私としてはポイント高いですね。全体的にアイコンが増えて、多少文字が減り、アイコンで判別する/できることが多くなった印象があります。初めての人は今までより少し慣れるのに時間がかかるようになったかな?という感じは否めないと思います。ビューの切り替えも最初どこにあるのか分からず、いろいろボタンを触りまくって見つけたって感じです。
ただ、ビューのデフォルトセッティングなどができるようになっているようなので、活用したいところです。
タスク管理階層の変更
階層の考え方が一部変更となったようです。今までの階層は下記のような階層になっていました。
- チーム
- スペース
- プロジェクト
- リスト
- タスク
- サブタスク
- チェックリスト
それが、Ver2.0からはプロジェクトという概念を捨てたようで、スペース直下にいきなりリストを作る形となりました。その変わり、スペース直下に「フォルダ」を作成し、リストをフォルダの中に入れることができるようになりました。ただし、やはり位置づけとしてはプロジェクトの概念ではないようで、一応プロジェクトをフォルダとして2.0に移行できるようですが、一度Ver2.0に変更してからVer1.0に戻すとプロジェクトが消えてしまいます。注意が必要ですね。新しいタスクの管理階層は下記のようなイメージになります。ちょっとシンプルになりましたね。
- チーム
- スペース
- リスト(フォルダ分け可)
- タスク
- サブタスク
- チェックリスト
リスト単位でタスクを表示することはもちろんですが、今までと同様にプロジェクト単位、つまり新しいフォルダ単位でタスクをまとめて表示することもできるので、そこはちょっと安心。
速度改善
アプリケーションの動作速度最適化を行ったようです。今のところ大きな変化を感じることはできてませんが、より高速化してくといいですね。ちょっとモッサリ感があるのは否めない。
そのほか
カスタムビューの作り方などもろもろ少し変更があったようですが、今のところ使ってないので分かりません。Conversationsというチャット機能や、Wikiに使えそうなDocという機能を追加できるようになっています。試しに機能追加してみましたが、ほかにツールがある場合は不要でしょう。こういった機能が正式版になったときに無料プランのまま使用できるのかは調べてないので今のところ不明ですが、多少制限付きでもいいので無料プランでも使えるといいですね。
公開されてるフィーチャーにはマインドマップなども追加されてますが、今回の2.0ベータではまだ使えないようです。ミーティングにも活用できそうな機能がこれからも増えてきそうなので、より活用の幅が広がりますね。
神ツールは神ツールのまま
今回の招待がベータ版の最終回のようです。2.0の公式公開は8月になる、というのが当初の予定だったので微妙に遅れてる感じがしますね。フィードバックを見ると2.0でもちょいちょいバグが出ているようなので、ベータ版を使わせてもらいながら、公式公開を楽しみにしたいと思います。
ClikcUp2.0へのアップデートは、機能拡充とUIのシンプル化を図っていますが、使用感をなるべく変えないように配慮されたものだと思います。これでタスクボードの背景を好きな画像とかにできればTrelloを食えるんじゃないですかね。改悪と感じる部分は今のところ全くないので、私の中での神ツール認定は変わりませんね!皆さんもClickUp使いましょう!
Please Japanese version!
【Galaxy S10】iPhoneSEから乗り換えた結果
長年iPhoneユーザで、iPhoneSEを頑なに使っています。サイズ感がちょうどよく、新しいiPhoneが出ても買い替える気にはなりませんでした。正直今でも新型iPhoneSEの発表を期待しているぐらいなのですが、その時は来てしまったのです。
私のiPhoneSEは死にました。
で、いまいち新しいiPhoneに買い替える気も起きなかったのと最近のiPhoneがやたら高価なだけで他のAndroidに比べて優位性もないことから、せっかくなのでAndroidにしてみました。というわけで、今回購入したのは
Samsungの最新機種Galaxy S10ですぅ。
今回はこのGalaxy S10の良いところ、悪いところを雑多に述べたいと思う。
良いところ
動きはサックサク
昨今のスマホならみんなそうなんだろうとは思う。けど3年以上前のiPhoneSEを使ってた身としてはだいぶ違うなぁという印象を受けます。ちなみにiPhoneSEでも特段困ったことはない。メモリも8GB積んでるし、なんなら会社の下手なPCより高スペックですわ。あまり重いゲームとかしない私からすればオーバースペックもいいところ。
超美麗ディスプレイ
有機ELでQuadHD+ということでとってもきれいですね。やたらと高解像度の動画で有名なYoutuberの動画が初めて超高解像度だな!って実感できる程度には違う。写真を見るのにはとてもいいですね。画面の明るさや色味もそんなに気になるほどではないですが、若干暗い。白が白すぎなくて目に優しいという考え方はあります。
生体認証の幅が広い
指紋認証と顔認証の2つが使える。しかも指紋認証はディスプレイ上なので余計なものがなくてスマート。超音波使った読み取りでより高精度らしいのですが、まぁまぁ読み取れないことがあります。しかし、ボディ背面に謎のぽっちがないっていうのがアドバンテージですね。すばらしい。顔認証の精度もまぁまぁいいんじゃないでしょうか。気が付いたら開錠できる状態になってることがままあります。
記憶領域128GB
デフォルトで128GBなので十分ですね。外部メモリを差す必要性なんて全くないですね。一般市民で128GBで足りない人はちゃんと管理するようにした方がいい。動画保存しておくとかアホちゃう。大事な写真はクラウドにアップしておきなさい。
悪いところ
でかい。
重い。
以上だ。
これだけで購入を躊躇うには十分な理由になります。このサイズがしっくり来る人間なんてチェホンマンくらいでしょう。画面の左上に親指が届かない。ぶっちゃけ一番上すら届かない。なのに通知や消音・Wifiの切り替えショートカットを開くには画面の一番上からスワイプしないといけないUIだなんて信じられない。いちいち両手で持たないといけないなんてスマートさの欠片もないと私は思いますね。ズボンのポケットに入れると違和感が半端ない。四角い大きなものが入ってる感が半端ない。小さい鞄のときは鞄に入れるようになった。着信に気が付かないってことがザラ。携帯電話として本懐をなさなくなった感は否めません。
全体的に
今まで使っていたiPhoneSEに比べれば、防水/防塵だったりFelica対応だったり、Qi対応だったり性能アップは目覚ましいですね。最新のスマホであれば大体そうなんですけどね。スマホで写真を撮ることがそんなにないので特に言及してませんが、カメラ性能もGalaxyS10は非常に高性能でiPhoneXsよりいいんじゃないかって話もあるくらいです。インカメラのパンチホールは意外と気にならないことがわかりました。今のところ、全面ディスプレイにおいては、誤操作があったりしてまだ使いづらさがあります。それにはやはり本体の大きさも原因の一つかな、という気もします。両手で持ってると思ってもみないところを触ってたりしますね。不器用なのかしら?サイズによる取り回しの良さはiPhoneSEに勝るものはないと言っても過言ではないでしょう。やっぱりiPhoneSEがNo.1。
え?エッジディスプレイ?別にいらねぇな。誤操作の原因だろ。
【タスク管理ツール】Clickupをスクラムで使う草案
以前最強の無料タスク管理ツールとしてClickupを紹介させてもらった。そのClickupを触って半年くらい経って、人に説明できるようになったので、試用する人数を増やしてチームでのタスクマネジメントをしていけるように、いろいろ準備をしてます。今日はClickupを活用する案を、実践前ですが紹介します。こんな感じでやってみようとしてる案。参考になるかどうかは不明。
スクラム型アジャイル開発のスプリント管理に使ってみる
Clickup公式サイトの、How to set up an Agileという記事でアジャイル開発に使うサンプル的なものが紹介されています。ろくに読んでないので分からないけど、かぶる部分もあるだろうし、独自になる部分もあるとは思いますが、私がやろうとしていることを紹介します。私の会社はどうしても開発チームを一か所に集めるのが難しく、タスクマネジメントもデジタル上でバーチャルに共有するしかないというジレンマがあったり。環境的には、こういったタスク管理ツールを使ってなんとかするしかないっていうのが現状。それをなんとかするためにどうするか、運用ルールを簡単に作りました。
PROJECTSにプロジェクト
SPACESは使う必要性は今のところないと思う。PROJECTSにプロジェクトの情報を入れておくほうが分かりやすいのでそうする。「〇〇システム開発案件」といった塩梅。
LISTにスプリント
基本的に1つのLISTは1つのスプリントとしてタスクを入れ込んでいく。必要ならスプリント0を入れるし、リリーススプリントも入れる。タスクもそうだが、リスト自体にも開始日Start Dateと終了日Due Dateを設定できるので、参考までに各スプリントの開始日と終了日を入れておきたい。LIST DETAILSのDescriptionにスプリントゴールやスプリントの概要を入力しておきたい。対象のプロダクトバックログアイテムやストーリーポイントとかを入力しておくとGood。
Statusはシンプルに
タスクのStatusは、最初なので、できる限りスモールでシンプルなものに設定する。
「OPEN(デフォルト)」、「TO DO」、「DOING」、「CLOSED」の4つ。タスクとして確定しているものはTODOに基本的に入れておく。仕掛しているタスクは自分で自分をアサインしてDOINGに移す。終わればCLOSEDへ移す。テンプレートにScrum用のものが用意されているが、ちょっとステータスが多いので、使いづらいかなぁということで今回の使用は見送り。今後、様子を見てレビュー中のものを入れる用に「REVIEW」やペンディングのものを入れる「PENDING」は追加しようかと思う。
タスクの作り方
当然スプリントバックログ記載のタスクをすべて登録する。見積工数は時間単位を基本。依存するタスクがあればDependenciesを設定し、優先度なども活用したい。
サブタスクはなるべく使わない
サブタスクはなるべく使わないようにしたい。基本的には1日以内で終わる細かいタスクに分けられていることが前提のスクラムなので、サブタスクが必要となる場面は少ないはず。
進捗の確認や透明性の確保は別
Clickup上でもタスクの移動具合でなんとなく進捗を見ることはできるが、やはり透明性の確保はバーンダウンチャートなどで視覚的に行う必要がある。基本的に最初はExcelでスプリントバックログを作成するので、そちらをベースにチャートを作成・更新していく予定。Clickupのレポート機能のうち、無料で使用できる範囲でも、「昨日終わったタスクの一覧」は参照・エクスポートすることができるので、そこまでメンテナンスに時間がかかる想定ではない。正しくタスクの開始と終了を運用できれば、実績工数がとれるようになるので、見積の精度を上げる材料になることを期待している。
マイルストーンはLISTで作る
スプリントの間に見えるようにマイルストーンは設定しておく。やり方はClickup公式のHow to create Milestonesで紹介されているやり方。基本的にLISTには「Sprint#」が並ぶが、マイルストーン用LISTは別の文言で登録してもいいことにする。この時、LIST COLORを設定してマイルストーンであることがわかるようにする。通常のLISTにはLIST COLORは設定しないようにする。
基本はカンバン
タスクマネジメントに使用するので、基本的にはカンバン表示である「BOARD」表示で使うことになると思う。「TIME」表示でカレンダーにしてもいいが、月表示が最大で、ガントチャートは無料版では使えないので意外と全体を見るのは難しいので、おとなしくBOARD表示にしておく。
妨害リストをPROJECTSに作る
妨害リストは誰でも追加できるようにしておきたい。どんな些細なことでもいいので、困ったことは妨害リストに「OPEN」状態で登録してもらう。スクラムマスターは「OPEN」のタスク=妨害リストとして、解決をしていく。これは、どこかのサイトに載っていたのを参考にしているが、ちょっと失念したのと見つけられないので、ごめんなさい。”リスト”と名の付くものがPROJECTSに登録されるのは少し違和感があるけど、管理のしやすさを選びます。
最初の導入としてはこんなルール付けだけしておけばいいかな~と思ってる。スクラムでは自己組織化されているチームであることが重要なので、好きにカスタマイズして使ってくれて構わない、というスタンスでいたい。透明性の確保や検査がどれだけ保たれるかは、やってみないと分からないのもあるので、気長に実行していきたい。本当は、BacklogのようにClickup上でバーンダウンチャートを作れると非常に助かるけど、無料で使用できるレベルじゃないよねぇ。
最終的にどうなったか、問題があったかどうかは、また変化があったときに記事にしたいと思う。
ハワイの食事で太ることを躊躇うな!Part.2
おはこんばんにちは、ビショップです。
冒頭のあいさつについては、これから一生安定しないと思います。
今日は、ハワイ旅行食事編パート2です。前回ディナーで行ったところを途中まで紹介しましたので、残りのディナー情報とランチの情報をお伝えしたいと、思いマース。
パート1はこちら。
bishop.hatenadiary.com
ディナー 続き
3日目
2日目と同じシェラトンワイキキホテルの中にある、ラムファイヤーでH.I.Sのプラン内BBQ(っぽいビュッフェ)を頂きました。こちらのプランでは、テラス席で夕焼けのダイヤモンドヘッドを眺めながら、フラのショーやプロジェクションマッピングを楽しみつつビュッフェの料理を頂くという贅沢な構成となっております(宣伝)。なお、私共は遅い時間に行ったため、ほぼ真っ暗でろくな写真が撮れておりません。お詫びと言ってはなんですが、フムフムヌクヌクアプアアをお納めください。ビュッフェでは、アヒポキとロコモコ(小)が延々と出てくるステーションがあったり、ステーキや海鮮、チャーハン的なサムシングなど、デザートも含め豊富に用意されています。念願のアヒポキを頂けたので満足です。お店の雰囲気もとてもいいので、機会があれば是非寄ってみてはいかがでしょうか。
4日目
4日目はハワイ滞在中の最後の晩餐でした。最後にふさわしく、「高級レストランで!」ということで、モアナサーフライダー内のビーチハウス アット ザ モアナでコースを頂きました。場所はザ・ベランダと同じ場所で、朝食やアフタヌーンティーの時間帯はザ・ベランダ、ディナータイムはビーチハウスとなるようですねぇ。この時もテラス席で、夜ではありましたが、波の音を聞きながら優雅にディナーとなりました。さすが、4つ星ホテルのレストランですね。牛フィレだったと思いますが、ステーキがクッソ美味かったのを覚えています。柔らかくてナイフの通りも良く、脂身が少ないためあっさりと、でもジューシーな味わいで、まさに極上。4つ星の名に恥じぬ金額で、1人当たり100$近くになったりしますので、旅行会社のミールクーポンを活用するといいと思います。ハワイに来たら一度はこのレベルの高級レストランでリッチなディナーを頂きたいですね。
注意点ですが、高級レストランにはドレスコードがある場合があります。モアナサーフライダーのビーチハウス アット ザ モアナでは、それほど厳しくなかったようですが、一応リゾートカジュアルと呼ばれる装いがいいと思います。モアナは水着とかじゃなければ普通の格好で問題ないです。
ランチ
ランチは3日目以降を。初日はお腹空いてなかったので抜いちゃったのです…。2日目は甘いものばっかり食べてお腹を満たしてしまったのです。
2日目に食べて印象的だった、アラモアナショッピングセンター3階のアイランド ブリュー コーヒーハウスのワッフルは紹介しておきますね。妻のワッフル目当てで休憩も兼ねて入ったところ、私は食べるつもりがなかったんですが、とても一人で食べれる量じゃなかったので、私も1個半くらい食べました。注文するときに果物を聞かれるので、イチゴをお願いしました。アイランド ブリュー コーヒーハウスのコーヒーは100%ハワイ産のコーヒーで、甘いワッフルに良くマッチしていました。こちらのお店、店員さんが英語しか分からないので、注意してください。私はワッフルの発音が分からず、うまく伝わらなかったので3回くらい問答しました。お店の雰囲気がおしゃれなので、アラモアナショッピングセンターでのショッピング休憩におススメです。場所はEwa Wingの3階、bloomingdale'sの前です。
3日目
3日目はカイルア方面に観光に行きました。カイルアといえば、ブーツ&キモズのマカデミアナッツソースのパンケーキを食べたかったんですが、カイルアに行ったその日は定休でした…!しょうがない、今回はもう一つの候補、シナモンズへ行きました!カイルアの中心からは少し遠いお店ですが、十分行く価値あります。
goo.gl
シナモンズと言えばこのパンケーキですね。およそ人が食べてはいけなさそうな警告色のパンケーキ、その名も「グァバ シフォン パンケーキ」です。酸味と甘みがちょうどいい2種類のグァバソースに生クリームとしっかり甘みのあるフワッフワのパンケーキが絶妙な味わい。ベストオブパンケーキじゃないですかね。ショートスタックで2枚のパンケーキはほとんど妻が食べました。フルスタックだと4枚なのかしら?絶対食べきれないのでショートにしてよかったと思います。おそらく妻は気が付いていない。私が勝手にショートで頼んだことを。私はロコモコ食べました。グレービーソースっていうんですかね、ソースが良い味してましてた。量が多かったので食べるの大変でしたが、ポテトサラダついててよかった。
実は日本にもお店があり、グァバシフォンパンケーキもロコモコも日本で食べれます。でもせっかくなので本場で食べましょう。っていうか本場で食べたほうがうまいでしょ、絶対。日本でも食べたことないけど。
ツアーなんかで来ると、バスの集合場所からは結構遠く、15分~20分くらい歩くところです。ローカルっぽい雰囲気のお店で、スタッフも日本語はほとんど分からない感じでした。道中にホールフーズマーケットもありますので、もしブーキモが休みならシナモンズ、おススメです。
4日目
いよいよ食事編最後です。4日目のランチには、アラモアナショッピングセンターに追加のお土産を買いに行ったついでにアイランド・ファイン・バーガーズに行きました。ここまでハワイに来たのにハンバーガーを食べていなかったんですね…!やっぱ食っておかなきゃならんかな!と思いまして。アイランド・ファイン・バーガーズは4階のレストランが集まってるところにあります。なんとかテラスってところ。それっぽい写真なかったので、公式サイト貼っておきますね。
www.islandsrestaurants.com
本店はカリフォルニアらしいのですが、メニューはハワイアンっぽい名前のものが多く、入店して席に案内されるまでに見た感じで非常にボリューミーなのが手に取るように分かりました。途中で見かけた日本人カップルはいろいろ頼んでしまったみたいで、死んだ魚のような眼をしながら一生懸命食べていましたね。
私が頼んだのは、看板メニューっぽいビッグウェーブ ウィズ チーズ。THE肉と言えるジューシーなパティにチーズを乗せて、溢れんばかりの野菜を一緒に挟んだビッグサイズなハンバーガーに、アホみたいな量のフライドポテトが添えられています。バンズもふわふわで、味もトマトケチャップベースのオーソドックスなハンバーガーなので当たり障りがないと言えますが、ボリューム含め満足いくハンバーガーでした。
妻は、アメリカのボリューミーが過ぎるサイズにビビっていたので、私のおススメしたビーチサイド スライダーを注文しました。「スライダー」はミニサイズのハンバーガーのことで、このビーチサイド スライダーは4つのミニバーガーになっている。食べれる量だけ食べてあとは私に食べさせるという算段だ。実際私に1個回ってきた。こちらもオーソドックスなチーズバーガーで、小ぶりなかわいいバーガーなのに、パティの味がしっかりしており、女性なら3個も食べれば十分満足できる。フライドオニオンとピクルスが添えられており、味に飽きてもすぐにピクルスで口の中をさっぱりさせることができるため、意外と食が進むようです。「ハンバーガー味わいたいけど、ちょっと量が…」っていう女性にはおススメ。
こちらの店、私が訪れた時には日本語の分かるスタッフはいなかったんですが、店員が非常に気さくなので、楽しくオーダーできると思います。ソフトドリンクが飲み放題で、コーラを一度頼むと、飲み切りそうな量になる度に、「おかわりする?」と聞いてくる。良く分からずにイエス!とか言ってると永遠に出てくるので気を付けよう。
まとめ
とっても長くなりましたが、ハワイ旅行食事編も終わりにしようと思います。ハワイに来たら行きたい食事処や食べたいものってたくさんありますよね。今回、初めて訪れたハワイで私たちも食べたいものを事前に調査して、行ける限りで試してみました。なんでもアメリカンサイズだし、観光地らしく安くないので、吟味が必要になると思いますが、せっかく訪れたハワイです。カロリーとクレジットの利用枠のことは忘れて、心ゆくまで楽しめるといいですね。