Blog

  • 品質管理のメモメモ

    コーディング量を対象規模として扱う場合の考え方

    テスト対象規模不良評価規模テスト対象規模不良評価規模
    新規UOC新規UOC新規UOC新規UOC
    新規自動生成×A新規自動生成×A新規自動生成×B新規自動生成×B
    改造UOC×C改造UOC改造UOC×E改造UOC
    改造自動生成×C改造自動生成改造自動生成×E改造自動生成
    改造母体×D 改造母体×F改造母体×G
      母体×F母体×G
    パラメータ標準値/目安値設定値範囲解説
    A0.1を目安0.05~0.2 程度自動生成はユーザコーディングに比べ、基本的に不良の作り込みは少ないとの前提。
    B0.3を目安0.0<0.3<1.0”A”と同様の考え方。但し、結合以降では、自動生成部分も含めて機能の確認を実施する事が必要。
    C2を目安1.5<2.0<2.5改造については、修正規模でみた場合、新規より不具合を作り込む可能性が高い事を考慮する。
    D0.06を目安0.05<0.06<0.10未修正の母体への改修箇所の影響を考慮する。
    E1or21~2流用時 1 継続改造時 2  継続改造時は、元のPGの改修で有る。
    F0.1~0.3 を目安0.05~1.0 程度流用時 0.3~1.0 継続改造時 0.06 を目安として、PRJごとで指定する。
    G0.0~0.3 を目安0.0~1.0 程度流用時 0.3~1.0 継続改造時 0.0 を目安として、PRJごとで指定する。
  • クラウドコストの比較メモ

    Xeon Bronze 3204 1.9GHz 1P6C 16GB メモリ 600GBHDD×3 ぐらいのスペックを前提として、クラウドとの環境を簡易的に比較した。

    項目オンプレプライベートクラウドパブリッククラウド備考
    コスト形態資産資産+経費経費 
    初期費用高額
    機器やライセンスの購入等
    安価
    初期費用は無料か安価
     
    月額費用固定費固定費+変動費変動費 
    調達期間数週間~即日~ 
    カスタマイズ柔軟に対応可制限有り 
    拡張性困難(機器の増設等)容易 
    縮小性  困難(機器の増設等) ←   容易 
    既存システムとの連携容易困難 
    自社内接続高速回線等の条件による 
    拠点よりの接続回線等の条件による 
    情報セキュリティ自社内で閉じた運用が可能論理的に自社内で閉じた運用が可能物理的な切り離しは不可
    論理的な切り離しとなる
     
    障害対応復旧に時間が掛かる
    障害原因の明確化が可能
    復旧が短時間で可能
    障害原因の特定が困難
     
    災害対応対応にコストが掛かる比較的容易 ← 
    冗長化対応にコストが掛かる比較的容易 
    更新5~7年程度で更新が必要不要 
    環境の継続性自社でコントロール可クラウドサービスの環境に依存 
    <費用>    
    初期費用約1,100k\ ※1・サーバの構築費等はすべて除く
    月額費用(サーバ等)約60k\~(ラック収容面積による)約31k\~(構成による) 
    月額費用(電気代等)約3k\ ※2 
    月額費用(回線接続)約4.4k\~(回線速度/トラフィックによる)・事務所側(利用側)の回線費用等は含まない
    5年総額約1,280k\約4,764k\~約2,124k\~ 
    ※1:ハードの保守は、5年保守モデル前提で試算 <- 適当!
    ※2:電気代等を想定
  • システム開発のTipsメモ

    標準のテストケース

    最大、最小、数字、桁あふれ、桁足らず、重複、コード無し

    異常ケース、エラーケース

    実感環境、実データでのテスト

    デグレードに対するテスト

    設計段階での仕様確認不足->製造や、運用に入ってからの仕様変更につながる

    あの時こうすれば良かった!という思いを明確に出す必要が有る。

    基本動作・教育の徹底。

    1)事前/事後のバックアップ

    2)提供するバージョンの確認(タイムスタンプ、大きさ他)

    定量分析の概念まとめ

  • ブスの25箇条

    何処の出典だったか不明となってますが、掲載します。性別を問わず当てはまるかと。

    ~ブスの25箇条~

    01.笑顔がない
    02.お礼を言わない
    03.おいしいと言わない
    04.精気がない
    05.自信がない
    06.グチをこぼす
    07.希望や信念をもっていない
    08.いつも周囲が悪いと思っている
    09.自分がブスであることを知らない
    10.声が小さくイジケている
    11.何でもないことにキズつく
    12.他人をシットする
    13.目が輝いていない
    14.いつも口がへの字の形をしている
    15.責任転嫁がうまい
    16.他人をうらむ
    17.悲観的に物事を考える
    18.問題意識を持っていない
    19.他人につくさない
    20.他人を信じない
    21.人生においても仕事においても意欲がない
    22.謙虚さがなく傲慢である
    23.人のアドバイスや忠告を受け入れない
    24.自分が最も正しいと思いこんでいる
    25.存在自体が周囲を暗くする

  • 重大事故の時の対応について

    元ヤフーの社長だった宮坂さんが投稿している記事。

    重大事故(非常時)の対応として、必要な内容がまとまっているように思うので、健忘禄としてリンクを残す。通常のPRJを運営する上でも、参考になるエッセンスが多いと思う。

    https://note.com/mmiya/n/n746eb2e36f81

    2022/8/4 追記

    先月、KDDI(AU)が大規模障害を起こしましたが、このエッセンスとして紹介されている10項目で見ると、”7.後方はユーザーファーストに”と”8.対外リリースも定時化”が不十分だったようい感じられます。いずれも、内向きの組織(典型的なのは役所(全部では無いですが))で有りがちな・・・・。

    古い体質(KDD時代)がこんな所に出たので無ければ良いですが。

    もっとも、元エンジニアとしては、障害理由の方が気になりますね。古い手順書を使ったのが悪いような発表でしたが(直接の理由はそうでしょうが)、安定が強く求められるシステムでダイナミックルーティング的な思想で設計されているのでは?と思える記載が有るのが気になります。確かに、現在はこちらが主流なので疑問を抱かないのかも知れませんが、運用(維持)には高いスキルが必要になります。レガシーな方式の方が、万が一の時に影響を拡大しないように思うのですけど。

  • PLに要求されるスキル要素と育成ポイント

    いつになっても”有能な人材が不足する”状況は変わらない。結局、育てる事を考えないと!

    (大手の資本力が有る会社とか、勢いが有るベンチャーとかは別)

  • linkメモ

    https://monoist.atmarkit.co.jp/mn/articles/0906/18/news099.html

    https://ssaits.jp/promapedia/method/burndown-chart.html

    https://kakutani.com/articles/XPmatsuri2004-LT.kakutani.pdf

    http://www.maruko2.com/mw/rsync_%E3%81%A7%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AE%E5%90%8C%E6%9C%9F%EF%BC%88%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%EF%BC%89

    https://knowledge.sakura.ad.jp/22269/

  • Windows10内自動バックアップ

    Windows10環境下(で動作させている)パソコン自動アップの設定。コマンド自体はDOSベースのコマンドなので、他のVerでも同様に利用出来る。

    以下の内容でバッチファイルを作成する(単独で実施する場合でも、バッチファイルを作成する事が望ましい。コマンドで指定するような運用だと、ミスの元!)。

    robocopy c:\バックアップ元DIR e:\バックアップ先DIR /MIR /R:1 /W:1 /LOG+:c:\var\log\bakuplog.txt /NP /NDL /FFT /DCOPY:T /SEC

    指定したオブションの意味

    /MIR コピー元とコピー先を完全に同一化する(ミラー化の略と覚えると覚えやすい)。元側で削除されたファイルは、コピー先でも削除されるので、指定間違いに注意する事(さもないと、必要なファイルを削除してしまう事につながる。

    /R:1 コピー失敗時の再試行(リトライ)回数。”1”だと、1回(失敗+リトライの計2回)試行する。

    /W:1 コピー失敗と判断するまでの待ち時間(ウエイトタイム)。ネット経由のバックアップの場合は、この値を大きくした方が良い。

    /LOG+:C:\*** ログの出力方法と出力先の指定。”+” は追記を意味する。

    /NP 進捗率を非表示とする。ログをファイルへ出力する場合は、指定が望ましい(見づらくなるので)。

    /NDL コピー成功時にはフォルダ名のログを出力しない。

    /FFT コピー元とコピー先のファイル更新時間比較時、2秒までの誤差を許容する(同一とみなす)。

    /DCOPY:T ディレクトリへコピーする情報。デフォは”DA”。D=データ、A=属性、T=タイムスタンプ。

    /SEC コピー時にセキュリティ情報もコピーする。(/COPY:DATSOU と同等)

    その他、オブションが多数有るので、必要ならマニュアル等を調べる事。

    動作確認を実施して、問題が無ければ、ジョブスケジューラへ登録して自動実行させる。日々と週次等何パターンかで取得する事が望ましい。

  • samba設定のTips

    ・設定は以下のファイルで実施する。

     /etc/samba/smb.conf

    ・F/W SELinux については、デフォだと許容されていない。面倒なら一旦止める。

    ・設定したパラメータは、以下のコマンドで記述の正当性確認が出来る。

     testparm

     引数とかは不要。ワーニングとか表示されるようなら、設定内容が間違っています。

     testparm -v <- これでも可。

    <設定の詳細:サンプルです> <- Ver 4.9 系でのサンプル

    [global]
    unix charset = UTF-8 <- OSのコードセット指定
    dos charset = CP932 <- Windows ファイルの設定。MSの標準を指定(MS-KANJI)

    workgroup = WORKGROUP <- ワークグループの名称を指定(AD等で無い場合) security = user <- セキュリティの方法を指定

    security = user ユーザー名とパスワードでローカル認証を行う設定 security = share パスワードだけで認証を行う設定

    security = domain ドメインコントローラにより認証を行う設定 security = server ほかのSMBサーバにより認証を行う設定 security = ads AD(アクティブディレクトリ)ドメインのドメインコントローラで認証を行う設定

    passdb backend = tdbsam

    assdb backend = tdbsam TDB(Trivial DataBase)を使用する passdb backend = ldapsam LDAPを使用する

    printing = cups

    printcap name = cups

    load printers = yes

    cups options = raw

    hosts allow = 127. 172.16.1.10 <- アクセス対象をIPで絞る場合の指定 map to guest = Bad User <- Sambaユーザとして存在しないユーザのアクセスをゲストアカウントとする指定

    Never 不正なパスワードによるユーザーのログイン要求を拒否する Bad User 不正なパスワードによるユーザーのログイン要求を拒否するが、指定されたユーザーが存在しなかった場合はゲストログインとして扱う。この場合、guest accountで指定したユーザーとなる

    Bad Password 不正なパスワードによるユーザーのログイン要求はゲストユーザーとして扱う。この場合、 guest accountで指定したユーザーとなる

    browseable = No <- 個別ユーザの共有領域をブラウジング禁止にする (これをここに指定しないと、[homes] に指定しても表示される(Samba の仕様))

    [homes]
    comment = Home Directories
    valid users = %S, %D%w%S
    browseable = No
    read only = No
    inherit acls = Yes

    [printers]
    comment = All Printers
    path = /var/tmp
    printable = Yes
    create mask = 0600
    browseable = No

    [print$]
    comment = Printer Drivers
    path = /var/lib/samba/drivers
    write list = @printadmin root
    force group = @printadmin
    create mask = 0664
    directory mask = 0775

    [Share] <- この指定は実質的に無意味!。デフォで作成されるディレクトリなので、念の為。 (指定しなくても良い)
    path = /home/share
    writable = No
    browseable = No
    valid users = @users
    force create mode = 777
    force directory mode = 777

    [users] <- ユーザ認証での指定例
    path = /home/users
    writable = Yes
    browseable = No
    valid users = @users
    force create mode = 777
    force directory mode = 777

    <Samba のユーザ管理>

    ※:大前提としてて、OS側にユーザの登録が必要。パスワード等の管理は別となるが、ユーザとしては、存在している必要が有る。
     (Windowsの場合でも、ユーザ単位でアクセス権を管理しようとすると、ユーザの登録を行う事が前提となる)

    useradd -s /sbin/nologin users <-これではNG グループを指定して設定が必要

    cat passwd | grep users

    users:x:1001:1001::/home/users:/sbin/nologin <-グループIDを指定しないので、新規のグループとなる。

    useradd -s /sbin/nologin -g users users <-これで指定するか、後で所属グループを変える事

    [root@localhost etc]# pdbedit -a -u users -f “users”
    new password:

    retype new password:
    Unix username: users
    NT username:

    以下省略

    [root@localhost etc]# pdbedit -L
    users:1001:users <- 設定されている事を確認する
    [root@localhost etc]#

    [root@localhost etc]# pdbedit -x users <- ユーザの削除
    [root@localhost etc]# pdbedit -L
    [root@localhost etc]#

  • linux Tips

    HDDの認識状態確認

    fdisk -l

    パーティション作成

    fdisk /dev/sdb とか

    ファイルシステムの作成

    mkfs -t xfs /dev/sdb1 とか

    手動マウント

    mkdir /home2 マウントポイント作成

    mount /dev/sdb1 /home2 とか

    自動マウントは fstab へエントリを追加するのが現実的

    UUID でエントリを追加する方がトラブルは少ない

    blkid /dev/sdb1 とかで確認出来る