• 検索結果がありません。

ソフトウェア開発の手順・チームでのソフトウェア開発

N/A
N/A
Protected

Academic year: 2021

シェア "ソフトウェア開発の手順・チームでのソフトウェア開発"

Copied!
12
0
0

読み込み中.... (全文を見る)

全文

(1)

樋口さぶろお

龍谷大学理工学部数理情報学科

応用プログラミング☆実習 L14(2018-01-09 Tue)

最終更新: Time-stamp: ”2018-01-09 Tue 07:37 JST hig”

今日の目標

世の中のソフトウェア開発手順を説明できる 世の中のチームでのソフトウェア開発方法を説 明できる

チーム内 , チーム間でコミュニケーションしてソ

フトウェアを開発できる

http://hig3.net

(2)

大規模ソフトウェア開発手順 I

ウォーターフォールと言われる古典的開発手法での開発手順を zip-server/client の例で言うと ,

1

システム要件定義 ( 基本計画 )

(やらなかった)

この程度の正確さ, 速さ, 更新労力で住所を知りたい

2

システム方式設計 ( 外部設計 )

(教員が与えた)

データはテキストファイルで. Linux で動く, インター

ネットで通信するサーバクライアントシステムで.

3

ソフトウェア要件定義 ( 外部設計 )

クライアントは, メニューベースで, こういう機能を選択できるように.

4

ソフトウェア方式設計 ( 内部設計 )

サーバとクライアントに分割, データ検索は

zip.c

で別モジュール.

5

ソフトウェア詳細設計 ( プログラム設計 )

モジュール分割

(

別チームに任せられる

)

を含む

.

その界面の定義

.

こういうプロトコルで

(Excel

の設計書

).

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 2 / 12

(3)

大規模ソフトウェア開発手順 II

LSearch

は何を引数にとり, 何を返す. zipdataS はどういうフォーマッ

ト. ZIP 構造体の定義. (zip.h とドキュメント)

6

ソフトウェア構築 ( プログラミング )

サーバ

/

クライアントの

main

を書く

. LSearch

を書く

.

デバッグする

.

上流工程 : ユーザ側

下流工程 : コンピュータ側

ウォーターフォールと言われる古典的開発手法では , 上から下へ ( 上流工 程から下流工程へ )1 段階ずつ進む .

この後に テストと言われる工程があるが , 下流から上流に遡るように 進む .

ユーザが使い始めてから , 保守を行う .

うまくソフトウェアを開発する方法を整備すること , はソフトウェア工

学という 1 個の学問領域 .

(4)

ソフトウェアテスト ( 検証 )

システムテスト

全体を結合してシステムが正しく機能するか確かめる.

結合テスト

本物の親と子を使って

,

親の外側から見て正しく機能するか確かめる

.

単体テスト ( ユニットテスト )

リクエストに対して

LSearch

を正しい引数で呼び出している

LSearch

が正しい値を返す

ダミーの親

(ドライバ)

で子を, ダミーの子

(スタブ)

で親をテストして おく.

上流工程 : ユーザ側

下流工程 : コンピュータ側

満たすべき性質を , この引数を与えるとこの返り値 , のリストとしてあら かじめ与えておく .

ここでいうテストとは , 学力試験や検定や試行のことではない .

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 4 / 12

(5)

呼ばれる側 ( 関数 ) の単体テストに使うドライバの例

main.c

1 #i n c l u d e <s t d i o . h>

2 #i n c l u d e ” z i p . h ”

3 /

: d a t a

の 準 備

/

4 i n t main ( ){

5 /

: d a t a

の 準 備

/

6 p r i n t f ( ”%d ” , L S e a r c h ( d a t a , 1 0 0 , 5 2 0 2 1 4 5 ) ) ;

7 r e t u r n 0 ;

8 }

9

10 /

開 発 中 の

L S e a r c h

を テ ス ト

/

(6)

呼ぶ側 (main) の単体テストに使うスタブの例

zip.c

1 #i n c l u d e <s t d i o . h>

2 #i n c l u d e ” z i p . h ”

3

4 i n t L S e a r c h ( ZIP d a t a [ ] , i n t n d a t a , i n t k e y ){

5 i n t i ;

6 i f( n d a t a>0 && key<=9999999 && key>=0){

7 i =n d a t a1;

8 r e t u r n i ;

9 } e l s e {

10 f p r i n t f ( ” o u t o f r a n g e . ” ) ;

11 e x i t ( 1 ) ;

12 }

13 }

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 6 / 12

(7)

ソフトウェア開発と職種 業種 ( 会社 ): 情報 , ソフトウェア , 通信 , 製造 , ...

職種 ( ): PG, SE, 営業 , ...

日本ではソフトウェア構築より上を担当する技術者を SE( システム エンジニア ), ( ソフトウェア詳細設計や ) ソフトウェア構築を担当す る技術者を PG( プログラマ ) という職種名で呼ぶことが多い .

SE 担当部分の中でも最上流を担当する場合 , お客さんのアバウトな

希望や困りごとを聞いて , 「こういうシステムで解決できます」など

と提案することになる .

(8)

ソフトウェア開発とチームとキャリアプラン

案件ごとに , プロジェクトマネージャに率いられた数人から数十人の チームで行われることが多い .

SE(... エンジニア , ... エンジニア , ...), プログラマ , テスター , デザイ ナ , 事務担当 , ...

プロジェクトマネージメントはそれ自身が経営学のひとつの研究 対象 .

技術者は , 経験を積むとともに , 下流から上流に移動していくことが多い . プログラマ的な仕事をする SE 下流担当 SE→ 上流担当 SE プロ ジェクトマネージャ

そういう仕組みの外で高収入で , 尊敬されてやっていく情報技術者もい る . 建築会社に対して , 宮大工や彫刻家やカリスマ建築家のようなもの . システムコンサルタント , フリーランスプログラマ .

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 8 / 12

(9)

大学と就職活動でのグループワーク

就職活動 ( 教員を含む ) では , その場で集まったメンバーで , 何々を作成し ろ , 何々について話し合って結論を出せ , と言われて , 採用担当者がその 様子をじっと観察している , ということが起きる .

リーダー ( 議長 ), タイムキーパー , 記録係 , などの役目を臨時で決めるこ

とがよく行われる .

(10)

ソフトウェア開発と仕様

ソフトウェアの製品には形がないので , 簡単な指定はできない . 発注者と 提供者 (= お客さんとソフトウェア会社 , main の担当者と LSearch の担当 者 ) の間で , 提供者の責任を明らかにしておくことが必要 . 詳細な仕様書 が作られる .

「 3cm×2cm×100cm の檜の角材 10 本」

「使いやすいポータル作って」

本システムは…と…の機能を有する . …は…

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 10 / 12

(11)

今回のチームプロジェクトでめざすこと

各自のチーム活動スキルの課題を発見するために,次回にチーム内で相互評価を行います.成績には無関係,匿名, (教員と本人以外に)非公表.

NA 1 2 3 4 5

チーム の 作 業進行

評 価 対象 に な る 機会 が なかった.

自 分の担 当 部 分を実 行 しない.

自分 の 担 当 部分 を 実 行 する. 担当 部分 の 状 況 につ い て 説 明する.

2 に 加 え, チ ーム 全体 の 効果 的な 作 業進 行に つ いて 提案 する.

2,3に 加 え, 異な る提 案 の間 を調 整 する.

2,3,4の間に

加え, メン バー から提 案が出され, チー ムの全 メン バーが 貢献 できる よう に配慮 する. プログ ラ ム

の仕様 と 機 能と構 築 に ついて の コ ミュニ ケ ー ション

評 価 対象 に な る 機会 が なかった.

質 問や説 明 をしない.

本 人 に とっ て疑 問 な こ とを 質 問 す る.

本 人 に とっ て 疑問 なこ と を質 問す る. 相手か ら 求め られ た とき に説 明をする.

質問 や説 明 が必 要な と きに 自分 か ら質 問や 説 明をする.

質 問や 説明 が 必要 なと き に聞 き手 の 状況 を配 慮 して 質問 や 説明 をす る 説明方法 評 価 対象 に

な る 機会 が なかった.

説明しない. 不確 か な ま ま説明する.

知って い る こ とに つい て 正し く説 明する.

知って い る こと につ い て正 しく 説 明する. 知 らな いこ と はそ れを 明 示 し て 持っ てい る範 囲 の情 報を 示 す.

聞 き手 にあ わ せて 言い 方 や例 を工 夫 して 可能 な 情報 を提 供する

ルーブリック評価

(12)

お知らせ

樋口オフィスアワー月 3.5 4.5(1-502), 金 4(1-502) L15 の最初でも非参照のテストやります

ソフトウェア開発について. 予告しにくいので

Learn Math Moodle

の 予習問題から察してね

基本情報技術者 プログラミングだけでない情報技術の資格 . 3 年生 の春に合格可能 . 申込期限 :2018-02-19, 試験 :2018-04-15( ).

https://www.jitec.ipa.go.jp

樋口さぶろお (数理情報学科) L14ソフトウェア開発の手順・チームでのソフトウェア開発応用プログ…☆実習(2017) 12 / 12

参照

関連したドキュメント

[email protected] サガワ タロウ 佐川 太郎. 「0%、8%、10%」以外を設定さ れているお客様の消費税率は、移

RemoteDataReplication Asynchronous iStorage RemoteDataReplication Asynchronous RemoteDataReplication/DisasterRecovery iStorage RemoteDataReplication/DisasterRecovery

日臨技認定センターの認定は 5 年毎に登録更新が必要で、更新手続きは有効期間の最終

J-STAGEの運営はJSTと発行機関である学協会等

12月 米SolarWinds社のIT管理ソフトウェア(orion platform)の

Lane and Bands Table と同様に、Volume Table と Lane Statistics Table も Excel 形式や CSV

Annex 2 :Illustrative Examples of selection of analytical validation testing methodology for common analytical

病院と紛らわしい名称 <例> ○○病院分院 ○○中央外科 ○○総合内科 優位性、優秀性を示す名称 <例>