毎日Learning

学んだことを共有します

アーキテクチャ記述 ( Architecture Description ) の章立て

先日、以下の書籍を読み終えたうえで、


ソフトェアシステムアーキテクチャ構築の原理を読み終えて - 毎日Learning

じゃあアーキテクチャ記述のアウトプットをどうしようかなって考えて、色々と調べて参考にして、以下の構成でアウトプットすることにしようと一旦、決めた。

1.  目的
2.  目標
3.  システム概要
4.  ステークホルダ
5.  ビューポイント
6.  コンテクストビュー
7.  機能的ビュー
8.  情報ビュー
9.  並行性ビュー
10. 開発ビュー
11. 配置ビュー
12. 運用ビュー
13. 品質特性
14. 重要なシナリオ
15. 決定待ちの課題
16. 付録

こんな感じでいこうと思う。

中身を書くうえで必要な考えるポイントとかは、

ソフトウェアシステムアーキテクチャ構築の原理 第2版 ITアーキテクトの決断を支えるアーキテクチャ思考法

ソフトウェアシステムアーキテクチャ構築の原理 第2版 ITアーキテクトの決断を支えるアーキテクチャ思考法

  • 作者: ニック・ロザンスキ,オウェン・ウッズ,榊原彰,牧野祐子
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2014/09/26
  • メディア: 大型本
  • この商品を含むブログを見る
をバリバリに参考にしまくって考えていく。

そんなイメージです。

ソフトェアシステムアーキテクチャ構築の原理を読み終えて

 

ソフトウェアシステムアーキテクチャ構築の原理 第2版 ITアーキテクトの決断を支えるアーキテクチャ思考法

ソフトウェアシステムアーキテクチャ構築の原理 第2版 ITアーキテクトの決断を支えるアーキテクチャ思考法

  • 作者: ニック・ロザンスキ,オウェン・ウッズ,榊原彰,牧野祐子
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2014/09/26
  • メディア: 大型本
  • この商品を含むブログを見る
 

 

読了しました。
 
アーキテクチャ設計を今までフェーズとして担当したことがなかったのですが、
 
お仕事の機会もあり、きちんと標準的なところからプロセスを理解して取り組みたかったので、
 
この本を読んでみました。
 
アーキテクチャ設計とはなんぞや。
 
から、プロセス、各フェーズや視点から漏れの危険性や注意点、気をつけるべき網羅ポイントなどが学べました。
 
アーキテクチャ設計は、なかなか一言で表現しにくい取り組みだと感じていますが、
 
ある一面では、リスクに対してどうするか?という取り組みとも言えます。
 
なので、細かすぎたり、時間をかけすぎたり、こだわりすぎたりしては、リスクに対処する行為自体が、リスクになり得るという。
 
ややこいけど、とてもとても重要なフェーズであり、お仕事だなーと思いました。
 
もっと、このアーキテクトに近づくべく取り組みたいと思いました。
 
また、アーキテクチャ関連で知ったり、気づきがあればアウトプットしていきたい。

Amazon Web ServiceのElastic Transcoderが、HTTP Live Streaming(HLS)に対応したらしい。

ちょっと前にメールが来てたので、そっからちょっと調べてみた。

HTTP Live Streaming(HLS)は、Appleが開発した動画をストリーミング配信するプロトコルらしい。

iOS 3.0以上を搭載したiPhoneiOS 3.2以上を搭載したiPad、そしてAndroid 3.0以上で対応しているらしい。

HLSの仕組みについては、
HTTP Live Streaming (HLS) - Apple Developer
とかを見ればわかりそう。

その方式でライブストリーミング配信するサーバーを簡単に構築できるんだから、値打ちあるよねー。

と思いました。

使用感はまた別途、やってみようと思う。

Cacooで書いた画像をSphinxに埋め込む拡張を使ったら便利だった

企画とかモデル図とか、ネットワーク構成図とか、なんやかんやと図を書くときって、
Cacoo最強とか最近思っているのです。

が、Cacooで書いた画像をSphinxだとかPower Pointだとかに貼り付けるときにどうしても
エクスポートして貼るっていうひと手間ふた手間が必要なので、SphinxならAPIだらリンクだらで
何とかなるんじゃね?って思ってぐぐったら、、、


Cacoo の画像を Sphinx に埋め込む拡張を作ってみた: sphinxcontrib_cacooimage - Hack like a rolling stone

Sphinx拡張ではいつもお世話になっている id:tk0miya さんのブログに出会いましたので、
早速試させていただきました。

Sphinxって、お試しのハードルが低くってとても便利ですよね。
拡張の作りもシンプルだし。なんだし。

導入手順は、
https://bitbucket.org/birkenfeld/sphinx-contrib
から、ソース -> cacooを開いていただくと書いてあります。

ざっと抜粋させていただくと、以下のとおり。

pip install sphinxcontrib-cacoo

したあとに、

プロジェクトのconf.pyに、

extensions += ['sphinxcontrib.cacoo']
cacoo_apikey = 'your apikey'

を追記するだけ。

あとは、表示したいとこに、

.. cacoo-image:: [diagramId]

って書くだけ。

ほかにも、いろいろあるやーつは、bitbucketか、何ならソース嫁ばいける。

この拡張の真にうれしいのは、Cacooをメインの画像エディタとして使っても、運用乗る気がするところだ。

Cacooって便利なのにメインの画像エディタにするとメンテ性というか長く使うには、いろいろと障害を感じてて、今までこっそり個人的に使うことが多かった。

Sphinxをプロジェクトのメインドキュメントと置いた場合に、Cacooで書いた画像がなんもせんでも反映されるなら、依存性も良い感じに排除されるので、深く長く使い続けることができそうな気がするー。

ただ、CacooのAPIキーをconf.pyに書かないといけないので、そのあたりが若干気になる。
運用乗せる前に、Cacoo側か、Sphinx側、もしくは、Webサーバー側で何らかの手当てをしようと思います。

以上です。

ConnpassのAPIでイベントを検索するPythonスクリプトを書いた


connpassのAPIでイベントを検索するスクリプト。

ぜんぜん汎用的に作ってないけど、キーワードとか年月日を指定してぱっと検索したいときにちゃっと使うのに良い感じ。

Pythonインタプリタで実行するときは、

import connpass
connpass.printd(connpass.search(keyword="python"))

みたいな感じ。

Vim Awesomeなるサイトができていた


Vim Awesome

Vimプラグイン関係を検索しやすいサイトっぽい。

検索がお手軽で、検索結果に対してアクセスしやすく、Vundle等各種プラグイン導入手順についても
整理してあり見やすい。

いつ作られて、最終アップデートがいつで、最近のか古くてあかんやつっぽいのかが一目でわかっちゃう。

検索結果一覧は、お気に入り?順でソートされているので、みんながよく使っているオヌヌメプラグインから見つけられるぜ!

このサイトがあれば、今まで「同じようなやつがあってどれを入れたらいいのかわからないー」といった悩みを解消してくれるお役に立ちそうだ。

PythonでMicrosoft SQL ServerにアクセスするpymssqlをUbuntuにinstallする

pymssqlUbuntu環境にインストールするときに、
必要なUbuntuパッケージがあるので、メモっとく。

sudo apt-get install freetds-dev

を入れとくと、

sudo pip install pymssql

がうまいこと動く。

入れてないと、

_mssql.c:314:22: fatal error: sqlfront.h: そのようなファイルやディレクトリはありません

みたいなエラーが出て失敗する。