タグ

ブックマーク / thinkit.co.jp (62)

  • [Think IT] 第1回:JavaエンジニアのためのBPMツールとは? (1/3)

    JBoss jBPMを試そう! 第1回:JavaエンジニアのためのBPMツールとは? 著者:レッドハット 三木 雄平 公開日:2008/1/24(木) JavaエンジニアのためのBPMツール「JBoss jBPM」 昨今、多くのベンダーからBPM(Business Process Management)製品がリリースされており、導入を考えておられる方や実際に検証・開発で利用されている開発者の方も多くいらっしゃることでしょう。BPMツールは業務プロセスの「分析」「設計」「実行」「モニタリング」「改善・再構築」といったマネジメントサイクルに適応した業務フロー全体を最適化するためのものとして位置づけられるため、多機能で複雑かつ高価という側面があります。 しかし、いざこれらのツールを利用してみると必要な機能が備わっていなかったり、開発には独自仕様言語や手法の習得が必要など、導入に苦労したことはない

  • andLinuxとは?

    Windows上でのLAMP開発 いわゆるLAMP(Linux、Apache、MySQLPHPPerlあるいはPython)環境の開発は、近年すっかりおなじみとなりました。読者の中にも業務あるいは趣味で携わっている方もいるでしょう。 しかし、その中でもクライアント環境自体もLinuxを使っているという人は案外少ないのではないでしょうか。多くの人は、日常使い慣れたWindows上で開発を行い、コードなどがある程度できた段階でLAMP環境に転送して動作確認をしているのではないでしょうか。 実際に稼働する番環境にて、開発したシステムの最終的な動作確認をすることは当然必要ですが、開発の途中で番環境に転送して確認するのは、手間が掛かります。そこで開発しているWindows上で何とかLAMP環境が動かないものかと思っている人や、あるいは最近急速に普及しつつある仮想化技術を用いてすでにWindo

  • ERの基礎知識とツールの活用法

    前回からデータモデリング全体の利用法が理解できたかと思います。今回はデータモデリングの中身の話に入り、ERの基礎知識とツールの活用方法について解説します。データ中心設計(DOA)の基礎となるERについて、ぜひマスターしてください。 ERの醍醐味はリレーションです。リレーションの線がなければERはただの箱(エンティティ)の羅列で、無味乾燥したものになります。エンティティとエンティティの関係が一目であらわされることがER図の意義なのです。 ERのリレーションには依存型と非依存型があります。親エンティティがなければ子エンティティが存在できないものが依存型リレーション、親がなくとも子が独立して存在できるものが非依存型リレーションです。 図1はSQL ServerのサンプルデータベースNorthwindをリバースしたER図の一部です。 「受注」と「受注明細」の関係は、依存/非依存のどちらでしょうか。

  • [ThinkIT] 第1回:Webアプリケーションフレームワークとは (1/4)

    近年のWebアプリケーション開発は大規模化が進み、基幹システムなどの一角を担うまでになってきています。また、Webアプリケーション開発はレガシーなシステム開発に比べて手間のかかる部分が多いにも関わらず、開発にかけられる工数は短縮化の傾向にあります。 そのため、案件の大規模化で開発に携わる人数も増える傾向にあり、開発チームの各々がWebアプリケーションのライブラリを別々に制作してしまい、同様の機能を持ったライブラリが複数存在してしまったり、またUIを担当するデザイナーとビジネスロジックを担当するプログラマが、いざそれぞれの部分を組み合わせようとしたらうまく機能しなかったりといった様々な問題が出てきます。 このような背景から、それらの問題に対するソリューションのひとつとして現在、開発現場ではWebアプリケーションフレームワークを用いた開発スタイルが注目され、実際に多くの開発会社がWebアプリケ

  • 文章表現の技術は誰にでも求められるか

    文章表現はライター・ディレクターだけのスキルではない ディレクターはディレクション全般、デザイナーはデザイン、コーダーはコーディング、プログラマーはプログラミング…。ほとんどのWeb制作現場において、作業は完全分業制が主流です。ただ、すべてのWebページ制作が分業で進むかというと、正直なところ、なかなかそういうケースばかりではありません。コストや納期、制作する側のリソースなどの事情から、1人のスタッフがやむなく複数の作業を幅広くこなさなければならないケースが多いのも事実です。そうした場合、たとえ専門外の分野でも自分の責任範囲として作業しなくてはならなくなります。 このように、サッカーの世界でよく使われる言葉、「ポリバレント(複数のポジションをこなす能力)」が求められるのがWebの制作現場です。ただ、テキスト制作に関する工程は、案件のさまざまな事情から専門のライターが起用されなかった場合、デ

  • プロジェクトの困ったを解決せよ!

    プロジェクトで起こるさまざまな悩み プロジェクトを進行する上で、実にさまざまな悩みが生まれます。その内容は、プロジェクト規模の大小によっても変わってきますが、連載では特に中小規模の案件において生まれがちないくつかの問題について、Google Sitesを使って解決する方法をご紹介していきます。 プロジェクトの悩みとして、まずよくあるのは、「あの情報どこ?」問題でしょう。間違って最新ではないファイルを参照してコンテンツを作ってしまったり、クライアントやチームメンバーから情報の所在について度々問い合わせが来たりという経験がある方も多いと思います。 また、プロジェクト管理ツールを使っていて、そこで情報は管理されているけれど、クライアントはその専門的なツールに馴染(なじ)めないなどということもあります。 連載で紹介するGoogle Sitesは、複数人数が共同で編集できるサイトを簡単に作れるサ

  • WEBrickを使ってみよう!

    Webサーバー=Apache!? 今、Webサーバーを構築しようとした時、ほとんどの人はサーバーソフトとして「Apache(Apache HTTP Server)」を選ぶと思います。 確かにApacheは非常に高機能で、通常必要と思われるほとんどの機能が備わっています。 しかし、自分用にちょっとしたサーバーを立ち上げるには、その設定項目の多さなどが少し大げさに感じることはないでしょうか? また、大抵のことは設定変更や外部で公開されているApacheモジュールなどで事足りますが、その範囲を超えてWebサーバーを拡張したい場合、自分でApacheモジュールを書かなくてはいけません。 Apacheモジュールを書こうとすると、かなりしっかりドキュメントなどを読む必要があり、また主にC言語による開発になるので、どうしても敷居が高くなってしまい、実際に書くということはほとんどないでしょう。 Apach

  • [ThinkIT] 第1回:言葉が先行しているCMMI (1/3)

    ソフトウェア開発におけるプロセス評価やプロセス改善は常に課題となっていますが、その1つの指標としてCMMI(Capability Maturity Model Integration)が多くの企業に注目されています。また、システムインテグレータやソフトウェアベンダーがCMMIを重要視しているのは、企業としての価値に繋がるからです。 しかし、それらの企業がCMMIを十分にいかしているかは疑問です。その疑問をはっきりさせるため、連載ではソフトウェアプロセスの原点に振り返り、ソフトウェア開発にとってのCMMIを見直した上で活かすためのヒントを紹介します。 第1回目ではCMMIについての概要を簡単に説明し、筆者たちがCMMIで目指すものは何かを提言します。 CMMIは米国カーネギーメロン大学ソフトウェア工学研究所(SEI)で開発されたソフトウェアプロセスの評価/改善のためのガイドラインです。CM

  • 低コスト高品質サーバでサイト構築&再販を手がけるマーカーネット

    大量のサイト構築とドメイン管理の負担をホスティングで軽減 企業向けにWebサイト構築サービスを提供する企業は、手がけたサイトの数だけドメインとデータを管理することになる。そうしたデータを自社に設置したサーバで運用する方法もあるが、増え続けるドメインとデータに合わせてサーバを増加させながら自社でその管理を行うというのは、非常に負担が大きい。 Webサイト構築という来のサービスに注力するためには、信頼できるホスティングサービスを活用するのが近道だ。ドメイン取得や管理、トラフィックの制御といった業務を委託できることで、制作スタッフの労力は大きく軽減される。 信頼できるサービスを、低コストで提供して欲しい。そうした要望に応えられる企業の一つが、連載で紹介している株式会社アット・ワイエムシー(以下、@YMC)だ。 今回は、主力であるWebサイト構築業務において@YMCを利用している、マーカーネッ

  • TopHatenarとHatenarMapsのDB!

    TopHatenarとHatenarMapsとは 連載では、さまざまなサービスで利用されているデータベースやその仕組みについて紹介していきます。第1回は、Webアプリケーションである「TopHatenar(http://tophatenar.com/)」と「HatenarMaps(http://hatenarmaps.com/)」を取り上げ、そのデータベース構造とデータアクセス手法を中心に、アプリケーションの裏側について解説を行います。 まずTopHatenarとHatenarMapsとは何かを紹介します。この2つのWebアプリケーションは、ともに大手ブログサービス「はてなダイアリー」のユーザー動向を把握するツールとして、筆者が開発したものです。 TopHatenarは、はてなダイアリーの全ブロガーを、「RSSフィード購読者数」と「ソーシャルブックマーク獲得数」の2つの指標に基づいて順位

  • 表示の概念

    コア表示クラスと継承 前回はActionScript 3.0の概要を中心に解説しました。今回は、Flashの根幹ともいるコア表示クラスについて紹介します。コア表示クラスとは、Flash Playerで表示できるビジュアルオブジェクトのクラスであり、主にflash.displayパッケージに含まれているDisplayObjectクラスを継承したサブクラスのことをいいます(一部、staticText、TextField、およびVideoはflash.displayに含まれないクラスですが、DisplayObjectクラスを継承しています)。 継承とは、既存のクラスを元に新しいクラスを開発する手法のことで、既存のクラスを"スーパークラス"または"基クラス"と呼びます。反対に、新しく継承するクラスのことを"サブクラス"と呼びます。継承を使うことで、既存のコードを維持したまま、コードの再利用が可能

  • そもそもサーバOSとは何か

    「サーバOS」とWindows XPとの違い 「『OS-1グランプリ』って言うけど、そもそもサーバOSってどんなのがあったっけ?」という方にぜひ読んでいただきたいのが、この「今日からはじめるOS入門」。執筆はぷらっとホームの若き獅子、松下 享平氏だ。学生時代よりISP立ち上げに挑戦するなどして、常にアグレッシブに経験を積み審美眼を磨いてきた松下氏。一見するとシャープでクールな文体だが、見え隠れするITへの愛情が読者をOSの森へと誘う!それでは松下氏どうぞ! 突然だが、読者が普段デスクトップで使用しているであろうWindows XP Professional(以下、Windows XP)は、サーバOSと呼べるだろうか? Windows XPは、ファイル共有サーバやプリント共有サーバ、ソフトウェアを別途インストールすれば、限定的な条件下にせよ、Webサーバとして動作する。限定的と表現したのは、

  • ActionScript 3.0の概要

    ActionScript 3.0とは アニメーションを簡単に制作したり、サウンドや動画を組み込むことができて、そのすべてが制御できるインタラクティブ(対話性)でステキなものと言えば、あなたはまず何を思い浮かべるでしょうか? Adobe Flash CS3 Professional(以下Flash)は、米国アドビ システムズ社(旧Macromedia社、以下Adobe)が開発したコンテンツ制作ソフトです。 ActionScriptとは、Flashコンテンツにおけるアニメーションの制御やインタラクティブなコンテンツを開発するためのスクリプト言語です。Flash IDEの進化に伴いActionScriptも進化し、2006年にはActionScript 3.0が発表され、より厳密にECMAScript(ECMA-262)規格に準拠したクラスベースのオブジェクト指向言語として生まれ変わりました。そ

  • [Think IT] 【これならわかる!JavaScript/Ajax】Ajaxライブラリ入門 第5回:Ajax開発の未来 (1/3)

    もうHTMLCSSをゼロから書くことはない? JavaScriptのライブラリは、各ブラウザ間のバグや仕様の違いを吸収することで、開発者の負担を激減することを可能としました。しかし、JavaScriptの仕様の違いと同時にCSSレイアウトのバグや仕様の違いも、Web開発者の大きな悩みの1つでした。そんな中、最近ではCSSのフレームワークも出てきたので、その中でも注目度の高い2つを紹介します。 1つ目は、blueprintcss(http://code.google.com/p/blueprintcss/)です。blueprintcssは柔軟にグリッドの設定ができるCSSフレームワークです。最新バージョンは0.7です。印刷時のCSSも用意されており、印刷時も適切なレイアウトで表示されます。また、非常に細かくグリッドの設定(http://files.bjorkoy.com/blueprint

  • タスクとコードをつなげるMylyn

    用途に合わせたEclipse 3.3のパッケージ こんにちは。チェンジビジョンの近藤です。Eclipse 3.3(コード名:Europa)がリリースされてはや2ヶ月が経ちました。普段Eclipseをお使いの方はEclipse 3.3へ乗り換えられたでしょうか。 今回リリースされたEclipse 3.3では用途に合わせて5つのパッケージが用意されています。 これまで通りの構成で作成されたEclipse Classic 一般的なJava開発エンジニア用のEclipse IDE for Java Developers JEE開発エンジニア用のEclipse IDE for JEE Developers C/C++言語開発者用のEclipse IDE for C/C++ Developers RCP/Plugin開発者用のEclipse for RCP/Plug-in Developers

  • Ajaxライブラリの変遷

    Ajaxライブラリが生まれた経緯 Ajaxテクノロジで開発する上で、大きな問題となることの1つは各Webブラウザ間の互換性問題です。主にInternet Explorer(以下、IE)とそれ以外のWebブラウザの仕様の違いに依存しています。 まず、Ajaxの肝となるXMLHttpRequestの呼び出し方からして異なっています。 IEの場合は、「xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");(IE7はXMLHttpRequest()でも可能)」となり、それ以外のWebブラウザでは、「xmlhttp = new XMLHttpRequest();」となります。 また、オブジェクトにイベントをアタッチするやり方も違います。 IEの場合は、「element.attachEvent('onclick', handler);」となり、それ以外のWe

  • [Think IT] 第1回:JSONってなにもの? (1/3)

    JSONとは何か? JSONとはJavaScript Object Notationの略で、XMLなどと同様のテキストベースのデータフォーマットです。 その名前の由来の通りJSONはJavaScriptのオブジェクト表記構文のサブセットとなっており、XMLと比べると簡潔に構造化されたデータを記述することができるため、記述が容易で人間が理解しやすいデータフォーマットと言えます。 なお、JSONは2006年に「RFC 4627(http://www.rfc-editor.org/rfc/rfc4627.txt)」として公開されています。 例としてXMLとJSONで同じデータを記述したものをリスト1とリスト2に示します(図1)。 リスト1のXMLではすべての情報をタグで囲んだテキストノードとして記述していますが、XMLでデータを表現する場合、データの記述方法として属性とテキストノードの使い分けが

  • レシピと味見でおいしいコーディング

    制作仕様書は「料理レシピ」 制作仕様書やコーディングチェックシートと言うと、堅苦しく聞こえるかもしれません。ワークフローや細かなサイト設計に基づいた制作の仕様が記載された制作仕様書は、料理の流れや材料、その分量が書いてある「料理レシピ」に似ています。 そして制作仕様書通りに制作されたものか確かめるコーディングチェックシートは、料理レシピによって作られた「料理の味見」をする様なものと解釈してみてはいかがでしょうか? ガイドライン化するメリットとデメリット 制作仕様書には、Webサイト全体の設計方針に分かりやすく書いたものにサイトマップなどを拡張した簡易的なものから、ファイル名や文法表記の統一など詳細情報を事細かに冊子のように厚いドキュメントに記載したものまで多く存在します。 ここではその内容や内容量に問わず制作仕様書が制作者へ与えるメリットとデメリットをご紹介します。 ガイドライン化する

  • JavaScriptを使って描画するCanvasとは?

    Canvasとは、JavaScriptを使って動的に図を描くために策定された仕様です。これまで、動的に図を表示させる方法としては、Flashが代表的な選択肢でした。しかし、Canvasを使うことで、テキストエディタさえあれば、誰でも無料で動的に図を描くアプリケーションを作ることができるようになるのです。 手前みそで恐縮ですが、図1は筆者がCanvasを使って作った棒グラフを描くJavaScriptライブラリのキャプチャ画像です。Canvasを使うことで、簡単な図だけではなく、かなり凝ったデザインも扱うことができることがおわかりいただけると思います。 しかし、Canvasは決してFlashの代替技術ではありません。まずは、Canvasの特徴を簡単にまとめてみましょう。Canvasの特徴としては、「JavaScriptを使って描画する」「文字は描けない」「アニメーション機能がない」の3つがあり

  • あると安心、孫の手アプリ

    安全第一、安心第一 Webページを作成する時、「第1回:ベストなコーディングツールを探せ!(http://www.thinkit.co.jp/article/47/1/)」で紹介したような王道のアプリケーションやテキストエディタだけで頑張ることもできますが、作業を楽にするための「あると便利なアプリケーションやツール」を紹介してみましょう。 「セルフレイティング」という言葉を聞いたことはあるでしょうか。簡単に説明すると、自分のWebサイトがどのようなコンテンツを含んでいるか、特にアダルトや暴力的な表現があるかないかをに埋め込むことで、安心してWebサイトを閲覧してもらえるというものです。これはMSN(http://jp.msn.com/)などに埋め込まれています。 しかし、実際にはあまり見かけないのが現実ではないでしょうか。筆者も担当していた大手プロバイダサイトのトップページのリニューアルの