スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2年目SE、プロマネやります。(4話) 

前回のあらすじ:
開発環境の選択、その1。
RubyとRuby on Railsを知りました。




 Ruby on Rails(ルビーオンレイルズ:RoRと略されることもある)は圧倒的な開発効率を誇るWebアプリケーション開発のためのWebフレームワークです。Railsの用意した道のりに沿って開発することで、短時間で高機能なWebアプリケーションを構築することができます。
WebプログラマはRailsに乗るべきか? - @IT

(※太字は僕がつけました。)

読めば読むほど、これしかない、と思わされた。

短時間で高機能。
Javaで言うところのStrutsとHibernateとSpringを組み合わせたようなフレームワーク。
XMLがいらない。
すぐにコツが把握できる。

その殺し文句に見事にやられっぱなしだった。
これならば、オブジェクト指向のプログラミング経験がない友人と一緒に開発してもイケる気がする(注1)。

問題は、僕自身もRubyはやったことがないので、言語については勉強する、ということくらい。
幸いにして、Javaで、Struts、Springは実戦で使ったことがある。
Hibernateはやったことはないけれど、Hibernateがカバーする「O/Rマッピング」の概念は、同じく実開発で経験済みだ。

もはや予想は確信。
あとは、方針さえ固まれば、多分友人も納得してくれるだろう。
そう思い、今度はRuby on Rails本家を見てみることにした。

Railsに必要なのは、サーバーはApache(もしくはlighttpd)、DBはMySQL(PostgreやOracleもOK)、そして言語としてRuby。
サーバーやDBに関しては、ずいぶんと選択肢はあるようである。
サーバーはやっぱりよくわかってないので、後で精査は必要だと思いつつ、とりあえずApacheを記憶に入れておく。
DBは、Oracleは今まで使ってて使いやすいけど、無料ではないので却下。
脳内の知名度で、MySQLでいいんじゃない? と安易な気持ちで決定した。

あとは……、と思ったところで、ふと「ScreenCast」なる文字が目に留まった。

「15分で作るブログ」
「FlickrAPIを使ったアプリ(5分)」
(※それぞれ本当は英語です。意訳なのであしからず)

なかなかのうたい文句。
なんとはなしにクリックしてみることにした。
この後、僕も、後日それを見た友人も、これでRuby on Railsでの本気の開発を即決することになるとは、夢にも思わなかった。

続きます!

注1:一緒に開発することになっている友人(クライアントでもあり)。手続き言語についてはちょっと知識があるんだそうです。

※裏話・私見については続きを読むにて。

続きを読む

2年目SE、プロマネやります。(3話) 

前回のあらすじ:
ユーザーに概要を聞いて、何するかリストアップしました。




リストアップしたものを見ながら、今度はどれから手をつけるべきか、私は考えた。

まずは、概要設計からだろうか。
機能を決めて、設計書を作ってユーザーに見せる。
順序としては間違っていないように思える。
けれど、なんだかすっきりしない。
説明がしづらいけれど、しいてあげれば、「なんとなくこっちからだと考えにくい」気がする。

ほかの選択肢も考えてみる。
UIやDBなんて、概要が決まらなきゃ前に進ませられるわけもないし、残るは開発環境の構築。

いわゆるハード的なお話。

なんとなく、ぴんときた。
自分の経験ではハード面なんて、ほとんど触ってないけど、何を使って、どう作るかくらいは最初に決めてあったほうが、精神的に楽そうな気がする。
この辺は、一回決めればそうは動かないだろうから、立ち位置が定めやすい気がした。

「よし。じゃあ、まずはハードからってことで」

というわけで、開発環境の模索から入ることにした。

開発環境といえば、
・サーバー
・クライアントPCの環境
・開発に使う言語
・開発に使うDB

あとは思いつかなかったけど、とりあえず、これは動かす上で最低限だろうと判断する。

まずはサーバー。
……はっきり言えば、お手上げである。
自分の会社の例を参考にしてみるけれど、そんなン百万だかン千万だかするようなものができるわけがない。
自宅サーバーを立ち上げるのか、どこかのサービスを借りるのか、いまいち想像ができない。
とりあえず、クライアントで作ってみて、それをサーバーに乗せられるくらいのものができてから考えることにしよう、と割り切ることにした。
ここは金額面含めて、ユーザーと要相談としておこう。

ならば、と、次は言語。
果たして何がよいだろう。

自分がやったことのあるものをためしに列挙してみると、COBOL、VB、Java。
どうせなら、自分のフィールドで、と、この辺りから選ぶべきなのだろうか。

だが、一緒に開発する友人は、このどれも知らない。

Javaで、オブジェクト指向の話から、サーブレット、MVC、そんなことを説明するだけで、どれだけの時間がかかるかわからない。
少なくとも、僕は会社で研修してまで教えてもらって、約3ヶ月近くはかかった記憶がある。
それでは、始めるだけで相当先になってしまう。

正直言って、これだと、つらい。
しかし、だからといって、そのほかの言語がどういうものか、わからない。

さて、どうする?

半ば袋小路に陥りながら、@ITをぼんやりと見ていたときのことだった。

当時、トップページにあった、この記事が妙に目を引いたのである。

WebプログラマはRailsに乗るべきか? - @IT

「Ruby on Rails……?」

興味本位で記事を読むうち、私の中で何かがつながりあっていくような音を聞いた。

「これ……、もしかしたら、よくね?」

ひとつの答えを見つけた、と思った。


続きます!


※裏話、私見については続きを読むへどうぞー。

続きを読む

2年目SE、プロマネやります。(2話) 

前回のあらすじ:
クライアントから概要だけ聞きましたよ。

さて、と。
クライアントの友人が帰って行ったところで、私は一息ついた。

会社と同じような仕組みでやる以上、ここからは自分が今の話をまとめないといけない。

だが、どうやって?

今さらながら、私はまだ会社では上流にはほとんど触ったことがない。
自分が触ってきた範囲なんて、基本設計からテストくらいまでのもの。
この工程の前や後はほぼ未知の領域である。

とはいえ、そうした基本設計をするにあたって、概要設計や要件定義書といった上流の成果物をまったく見てこなかったわけではない。

まずは、それを中心にどうまとめたらいいか書き出してみることにした。
以下が、そのメモに当たる。


☆目下、まとめておかないといけないこと。
 ・全体的なサービスの概要
 ・ハードウェアのデータの流れや使うハードの要件
 ・どんなソフトウェア・言語・アーキテクチャをといったソフトの要件
 ・予算・納期
 ・開発体制
 ・個別の具体的なサービス
 ・データベースの設定
 ・UI・画面遷移の定義



とりあえずは、このくらいだろうか。
意外と多いことに思わず驚いてしまう。
全部個人でやろうとすると、こうした工程をすべて自分だけでやらないといけないことを改めて認識した。

とはいえ、大きく分ければ、
「概要設計」、「開発環境構築定義書」、「DB設計書」、「UI設計書」
の4つでよさそうに見える。

これらのたたき台を作って、それからまた友人とミーティングできれば理想だ。

続きます!

続きを読む

2年目SE、プロマネやります。(1話) 

某月某日、都内某所。
とあるマンションの一室。
部屋のチャイムが明るく来客を告げた。

今日は、大学からの友人W氏と、新しいサービスを創りあげるための最初のミーティングを設けた。

事の起こりは数日前。
今、やろうとしてること、そのコンセプト、そういったものを雑談の中で聴き、それについて技術的な視点を求められた。
それに対し、私は少ない経験ながらも、思いつくままに指摘した。

どうやらそれが彼にとってはよかったらしい。

あれよあれよという間に、実際にシステムを扱っている会社でやっているような手法で開発ができないかという話になった。
そして、せっかくなので、一緒に創ってみないか、と誘われたのだ。

めったにあるチャンスではなかったので、私は二つ返事でOKした。

こうして、彼との個人的な仕事が幕を開けたわけである。

ミーティングを始めると、彼はさっそく自前のノートパソコンを開き、大まかな概要をスライドで説明してくれた。
ここからすでに、彼は本気であることを肌で感じる。
ならば、私としても全力でお相手せねばならない。
襟を正すつもりで、私はパソコンのディスプレイを見つめた。

全体的な概要は、当初聞いていたことと大きな食い違いはなかった。

コンセプトは「ITのリテラシーの向上」。
案件は、そのコンセプトに基づいた、ウェブサービスの開発である。

その中で、確実に欲しい基本的な機能はダウンロード・アップロード・閲覧・ログイン。
個人的な印象、ウェブサービスにはよくある機能と言えるように思う。

改めて聴いてみた限りでも、なんとかできそうな気がする。
問題は、これを私がどう開発できるカタチに落とし込むかというところにかかってきそうである。

目指せ、夏のアウトプット!とのことなので、さっそく手をつけていきたいところである。


続きます!

続きを読む

2年目SE、プロマネやります。(告知) 

えー、タイトルどおりです。笑。

……というと、誇張表現になりそうなので、若干フォローをば。

正確には、以下。

先日、ベンチャーな友人から、とあるサービスを創る話を持ちかけられました。
サービス名は「Tプロジェクト」(仮称)とでもしておきましょうか。
そのプロジェクトのアウトプットを創るうえで、技術的なところから力を貸してほしい。
で、どうせなら、社会一般的な形式で行われてるのに則った形式で創りたい。
そういう、要請があったのです。

上記の条件を満たすならばこの話。
今まで見るだけしかなかった上流工程に触れることもできるし、当たればいろんな意味で大きいチャンスかもしれません。

それに乗らないのは、SEとして、二年目社員として、若手としてもったいないのではないかッ!?

というわけで、ほぼ二つ返事でこの案件を請け負ったのです。

メインの構成要員は友人と僕。
クライアントは友人で、開発担当は友人と僕。
そして、必然的にプロマネ・SE・プログラマすべて僕が兼任する、と、いうわけです。

もちろん個人で勝手にやるわけで、会社という組織の力は借りたくなっても借りるわけにはいきません。
# 何よりできてから、明かすほうが楽しそうだし(性悪)。

なので、SEの仕事ってどんなのやるの?っていう現在就職活動真っ只中の人から、現役のプロマネ様、SE様、プログラマ様まで、どうぞ寄ってらっしゃい見てらっしゃい。ついでに口も出していらっしゃいませ。忌憚のない意見は常に募集いたします。

できる限りストーリー形式のようなカタチで、伝わりやすくを目指して書いてみようと思うので、以後、どうぞよろしくお願いいたします。

余談ですが、この話、(脚色はあるかもしれませんが)原則ノンフィクションでまいります。


そんなわけで、激しく行き当たりばったりの予感をはらませながら、2年目SEな僕の初プロジェクトマネジメントが始まります!

続きを読む

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。