恒例の朝礼スピーチ

会社の恒例の朝礼のスピーチの順番が回ってきて何を話そうかなって
悩んでたんだけど、そもそも朝礼って何のためにやるの?
みたいな素朴な疑問から朝礼の目的について考えてみることにした。


ネットの記事も参考にしつつ、個人的にまとめてみました


朝礼の主な目的として5項目を挙げました
1.けじめと規律づくりの場
  仕事の始めと終わりを明確にして仕事の基本姿勢を正す
2.コミュニケーションの場
  お互いの対話と連絡の徹底でコミュニケーション、チームワークを高めて一体感をつくる
3.モチベーション
  メンバーの一日の目標を明確にすることでやる気を引き出す
4.情報の共有
  各担当の予定を共有する
5.人づくり・教育の場
  各メンバーの自主性と積極性を育てる


日々の朝礼を惰性ではなく有意義に仕事に活かせていきましょう。

会社の恒例の朝礼のスピーチの順番が回ってきて何を話そうかなって
悩んでたんだけど、そもそも朝礼って何のためにやるの?

みたいな素朴な疑問から朝礼の目的について考えてみることにした。
ネットの記事も参考にしつつ、個人的にまとめてみました

朝礼の主な目的として5項目を挙げました
1.けじめと規律づくりの場
  仕事の始めと終わりを明確にして仕事の基本姿勢を正す
2.コミュニケーションの場
  お互いの対話と連絡の徹底でコミュニケーション、チームワークを高めて一体感をつくる
3.モチベーション
  メンバーの一日の目標を明確にすることでやる気を引き出す
4.情報の共有
  各担当の予定を共有する
5.人づくり・教育の場
  各メンバーの自主性と積極性を育てる
日々の朝礼を惰性ではなく有意義に仕事に活かせていきましょう。

セキュリティ用語解説

マルウェア

コンピュータウィルススパイウェア、ボットなどの不正プログラムを総称である。

ウィルス

IPA 独立行政法人 情報処理推進機構 コンピュータウィルス対策基準の用語定義

三者のプログラムやデータベースにたいして意図的に何らかの被害を及ぼすように作られたプログラムであり、次の機能を一つ以上有するもの。

  • 自己伝染機能
  • 潜伏機能
  • 発病機能

パッチ管理サーバー乗っ取り【韓国同時多発サイバーテロ攻撃】

韓国同時多発サイバーテロについてセキュリティベンダーのブログなどを元に情報を整理します。


3月20日午後、韓国の3つの放送局と3つの金融機関で社内ネットワークがダウンし、PCが起動し
なくなる障害が発生しました。
放送局では幸い放送停止などの重度の事案までには発展しなかったそうですが、6社あわせて
4万8700台のPCが被害にあったそうです。
(韓国政府の調査結果によると北朝鮮の偵察総局が主導して犯行が行われたとの事です。)


この原因は、マルウェアによる攻撃が原因である事が分かりました。
このマルウェアに感染した場合、ハードディスクの起動時に必要なマスターブートレコード(MBR)が
書き換えられ、端末が起動できなくなります。
またシステム内部のファイルを破壊したり、韓国のセキュリティベンダーが提供するセキュリティ対
策ソフトを停止する機能も含まれていました。
このマルウェア自体はWindows PCにしか感染しませんがUnix系のOSにSSHで接続し、ハードディス
クの内容を破壊するスクリプトも含まれていたそうです。
外部ホストとの通信機能がなくシステム内にファイルをダウンロードしたり、レジストリを変更する
ような機能もないため、「ターゲットとしたコンピュータを使用不可能にすることのみ」を目的とし
マルウェアのようです。


マルウェアに攻撃を許した原因は、アンチウィルスの更新プログラムを配布する「パッチ管理システ
ム」が乗っ取られ、マルウェア配布に利用され、パッチを受け取ったPCがマルウェアに感染した事です。
犯人によってユーザIDとパスワードが盗まれパッチ管理システムにマルウェアが仕掛けられたと考え
られます。
対策としてシステム管理ソフトの管理者権限を再設定したり不正な利用の有無を確認する事が考えら
れます。


私の勤務する会社の主要顧客は今回のサイバーテロで攻撃を受けた韓国企業と同様、放送局という事
もあり決して対岸の火事ではないと感じました。
以前、私が管理する放送局のポータルサイトのサーバーに対してDOS攻撃とおぼしき履歴がアクセス
ログに残っていた事もありました。

お客様や関係企業様にご迷惑をおかけする事のないように、日頃から基本対策をしっかり行う必要が
あると感じました。

非同期通信処理について(おさらい)

AjaxのAの文字は非同期通信処理(Asynchronous)です。

Ajaxとは?

Ajax」はAsynchronous JavaScript+XMLの略です。
技術そのものではなくWeb関連の技術を新しい組み合わせで連携させる事を指します。

採用例

XMLHttpRequestについて

以下ではAjaxの構成要素の中で特にXMLHttpRequestについて簡単にまとめます。
XMLHttpRequestはHttpクライアントを実現するオブジェクトです。

メリット
  • JavaScriptで画面遷移なしにサーバーと通信可能で柔軟な動作のRIAを実現可能
  • ユーザーの利用環境にプラグイン不要
デメリット
  • ブラウザの各バージョンに対応するクロスブラウザ対応が必要
  • プログラムがユーザーに丸見えになる

データ転送形式について

Ajaxの「X」はXMLだといわれているがデータ形式XMLでなくても問題ない

  • XML
    • XML形式でデータを作成してサーバーよりリクエストを返す
  • テキスト
    • サーバー側でHTMLを生成してデータを返すなどするとJavaScriptで面倒な処理を行う必要がないかな?
  • JSON(JavaScript Object Notation)
    • 軽量型データ交換フォーマットでテキストベースのフォーマット
    • {オブジェクト名:値}
    • JavaScriptでの読み込み方
  var data = eval("JSONデータ")
  Data.オブジェクト名

備考

非同期処理をJavaScriptで記述するとソースコードが丸見えになってしまうのが気になるところです。
このためJavaScriptの隠蔽化が必要になると思います。
もっとも完全な隠蔽化は不可能ですが・・・。
方法としてはJavaScriptの外部ファイル化です。
(外部ファイルはキャッシュされるのでパフォーマンスも向上する。)

  ただし、HTMLにURLが表示されるので直接アクセスされると意味がない
  よって、CGIを外部ファイルとして呼び出し、CGIからJavaScriptを生成する。
  (外部ファイルはjsファイルでなくても良い。)
  CGIで特定のページ以外からのアクセス時はJavaScriptを表示しないようにする必要があります。

  といってもIEで「名前を付けて保存」すると外部ファイルも保存されるので意味ないか?

Jenkinsでテスト自動化(まずは座学から)

継続的インテグレーション結合テスト


Jenkinsを使用したテスト自動化について覚え書きです。
必要となる6つのツール

1.継続的インテグレーションサーバ
  Jenkins
2.ソースコード管理システム
  Subversion、Gitなど
3.ビルドツール
  Apache Ant
4.テストツール
  JUnitSelenium(セレニウム
5.テストカバレッジ取得ツール
  JUnit対応ツールとしてEmma(エマ)、Cobertura(コヴェルトゥーラ)
6.インスペクションツール
  CheckstyleFindBugs


■補足
Selenium
 Web画面を自動的に操作する結合テスト自動化ツール
 
コードカバレッジ
・C0カバレッジ(命令網羅)
 テストによってプログラムの角行が1回以上実行されれば100%とする測定方法
・C1カバレッジ(分岐網羅)
 全ての分岐の組み合わせが実行されれば100%とする測定方法
・C2カバレッジ(条件網羅)
 条件分岐の全ての組み合わせが実行されれば100%とする測定方法

携帯向けWebアプリのセキュリティ

■ブラウザの特徴

クッキーが使用できない端末の存在

iモード
 クッキーの使用不可
iモード以外
 クッキーの使用可能
→シェアの高いドコモ端末でクッキーが使用できないため、セッション管理(セッションID)をクッキーを使用せずに
URLにセッションIDを埋め込む方式が主流

JavaScriptが使用できない端末が大半

iモード
 iモード2.0以降でほぼフルセットのJavaScriptに対応
ソフトバンク
 2004年のノキア702NKで非公式に簡易的JavaScript対応
 2006年以降多数の端末で非公式にJavaScript対応
 2010年夏モデルの一部で公式にJavaScript対応
au
 JavaScript未対応

リクエストヘッダの制限

Refererが送信されない場合がある
RefererCSRF対策に使用する事ができない

■携帯IDについて

・IDとパスワードの代わりの認証用識別子として利用される
・クッキーの代わりにセッション保持の目的


今日はここまでで、続きは後日記述します。

超初心者のモバイルサイト構築

ケータイのブラウザの機能的特徴

・クッキーが使用できない端末の存在
JavaScriptが使用できない端末が大半
Refererなどのリクエストヘッダの制限
・HTTPレスポンスの容量制限

3キャリア対応ケータイ

超初心者ですが、ケータイサイトの構築のために調査した内容についてメモした備忘録です。

文字コード

国際的にもUTF-8が推奨だがDoCoMoではshift-jisが指定されている
 ⇒shift-jis

CSS

CSSが使用できないケースを考慮する必要有り。(構造的なマークアップを行う)
CSSは一度読み込むと2頁目以降はキャッシュを参照できる。

  ・FOMAより前の機種(初期のFOMA21xxシリーズも含む)
   ⇒使用不可
  ・2009年3月以前の機種(iモードブラウザ1.0搭載端末)の場合
   ⇒外部ファイル、ヘッダ部ともに使用不可だがstyle属性は使用可能
    xhtmlでContent-typeヘッダの記述はapplication/xhtml+xml
  ・2009年5月以降の機種(iモードブラウザ2.0搭載端末)の場合
   ⇒外部ファイル、ヘッダ部共に使用可能
    html、xhtmlどちらもCSS対応可能なのでContent-typeヘッダの記述はtext/html

   ⇒外部ファイル、ヘッダ部共に使用可能

画像形式

 ⇒GIFとJPEGは使用可能

tableタグ

レイアウト目的の場合はCSSを使用すべき

   ⇒以前は使用不可だったが、2005年11月発売のdocomo902i以降は使用可能(入れ子は不可)

   ⇒使用可能(table要素の入れ子は5個まで)

   ⇒使用可能(入れ子は不可)

横幅サイズ

 ⇒240pxだがぴったりだと入りきらないので228ピクセル以内

フォント
  • 文字サイズの指定

   携帯端末側で設定が効かなかったり、各機種で表示が異なるため使わない方がいい。


   docomoの文字の大きさが「3段階」までしかなく、一番大きいフォントは
   見栄えが悪いので「2段階」で設定
    ⇒x-small(もしくはxx-small)とmediumを使用する

  • 太字

   DoCoMo
    ⇒iモードブラウザ1.0:2008年冬モデル以降は使用可能
   au
    ⇒使用不可
   softbank
    ⇒使用可能

背景画像は1つ

 bodyタグのみに指定可能
 背景色は何種類でも問題ない

違う背景色の連続

 使用可能
例外)au
 ⇒要素と要素の間に隙間があく(divを入れ子にして対応)
例)

<div style="background:#84775d;">サイト内検索<br />
<div style="background:#f6f0e3;">フォームのパーツ</div>
</div>
フレーム

 未対応機種が多数存在するため使用不可

ポップアップウィンドウ

 未対応機種が多く、また操作性が悪いため使用不可

リフレッシュ(画面表示後一定秒数後に指定画面を再表示する機能)

 未対応機種が多数存在するため使用不可

FlashJAVAアプレットなどの埋め込みオブジェクト

 使用できない端末があるため使用不可

JavaScript

 使用できない端末があるため使用不可

横スクロール

 使用不可(DoCoMoは使用できない)

ケータイサイト構築時の注意点

 携帯端末の容量制限の問題と、スクロールの操作性が悪いため最低限の内容に絞る。
 また、長い文章や分かり難い言葉を使用せず簡潔に表示する。