情報処理のWeb教科書―IPA情報処理試験対策のお供に!
トップ 情報処理の知識体系 テクノロジ系 技術要素 開発技術 ソフトウェア開発
ソフトウェア開発をテーマに、アジャイル開発手法など工程知識と著作権と職務著作など法律知識についてまとめています。
このページの目次です。
1. ソフトウェア開発とは
2. 開発プロセス・手法
3. 知的財産適用管理
ソフトウェア開発は、文字通りソフトウェア製品を開発します。 ユーザーのニーズやマーケティング上の目標をソフトウェア製品に変換する作業を行います。
エクストリームプログラミングなどソフトウェア開発プロセスや工程に関する手法の考え方、特徴をまとめていきます。
ソフトウェア開発手法についてまとめていきます。
ソフトウェア開発の効率化や品質向上のために用いられるソフトウェア開発モデルの考え方、必要性、ソフトウェア開発モデルの特徴をまとめていきます。
ウォーターフォールモデルは、ソフトウェアの開発工程の段階を上流から下流に向けて作業を進めていくソフトウェア開発モデルです。 アジャイルとは、すばやいという意味を持つ言葉で、別の開発手法であるウォーターフォールモデルの開発手法と比べ、迅速かつ適応的にソフトウェア開発を行う軽量な開発モデルです。 ウォーターフォールとは何か、言葉の意味とソフトウェア開発手法のウォーターフォールモデルとアジャイルのモデルの違いを比較してまとめました。
アジャイル開発手法は、スクラムやイテレーションなど、顧客・技術・経営をつなぐ協調的ソフトウェア開発手法として期待される手法です。 迅速かつ適応的にソフトウェア開発を行う軽量な開発手法であるアジャイルについてまとめています。
ソフトウェア開発におけるDevOpsは、 開発側と運用側が密接に連携し、自動化ツールなどを活用して機能などの導入や更新を迅速に進めます。
以下ではDevOpsに関連したIPA情報処理試験の過去問とその解説をまとめています。
リバースエンジニアリングとは、既存のソフトウェアを解析し、その仕様や構造を明らかにすることをいいます。
以下ではリバースエンジニアリングに関連したIPA情報処理試験の過去問とその解説をまとめています。
マッシュアップとは、複数の提供元によるAPIを組み合わせることで、新しいサービスを構築する手法です。
マッシュアップとは、英語でMashupと記述します。 もともとは音楽で使われる用語で二つの楽曲の要素を取り出して組み合わせ一つの新しい楽曲を作り上げるリミックス手法のことをいいます。 これが転じてITの分野では複数のWebサービスのAPIを組み合わせて、一つのWebサービスのように機能させることをマッシュアップと呼ぶようになりました。
マッシュアップの例としては以下のようなものがあげられます。
マッシュアップサイトは、ユーザーがWebブラウザで指定したURL以外からも確認なしにデータが取得され、ブラウザ上に表示されることになります。 何者かもわからないマッシュアップサイトが、何者かもわからない別のサイトから取得したコンテンツを提供している、ということになります。 つまり、マッシュアップはXSS(クロスサイトスクリプティング)と変わらない、ということになります。 これらの視点も考慮して十分にセキュリティを高めたうえで提供しなければなりません。
以下ではマッシュアップに関連したIPA情報処理試験の過去問とその解説をまとめています。
モバイルアプリケーションソフトウェア開発について見ていきます。
クロス開発は、組込みシステムなどソフトウェアを実行する機器とはCPUのアーキテクチャが異なる機器で開発を行うことをいいます。
以下ではモバイルアプリケーションソフトウェア開発に関連したIPA情報処理試験の過去問とその解説をまとめています。
ここでは開発プロセスについてまとめていきます。
SLCPは、Software Life Cycle Process:ソフトウェアライフサイクルプロセスの略です。
システムの開発や保守の各工程の作業項目は共通フレームの定義に含まれています。
以下ではソフトウェアライフサイクルプロセスに関連したIPA情報処理試験の過去問とその解説をまとめています。
開発と保守のプロセスを評価、改善するに当たって、システム開発組織とプロセス成熟度をモデル化したCMMIがあります。 プロセス成熟度を5段階のレベルで定義するなどCMMIの考え方、高次のレベルに達するために必要な方策をまとめていきます。
CMMIとは、読み方はシーエムエムアイ、Capability Maturity Model Integrationの略でソフトウェア開発組織及びプロジェクトのプロセスの成熟度を評価するためのモデルです。 ソフトウェア開発の組織能力を評価するための5段階の基準、組織の持つ開発プロセスの標準化と合理化を推進し、製品やサービスの開発、調達、保守活動の能力を改善するガイドラインを提供します。
CMMIの目的は、組織がプロセスをより適切に管理出来るようになること、 製品やサービスについて、組織が開発と保守やプロセスを改善するのを助けることを目的としています。
CMMIの5段階の基準は以下のような基準です。
成熟度 | 説明 |
---|---|
初期段階 | 何もルールがない状態 |
再現可能段階 | 同様のプロジェクトを実現可能とする方針、手順を確立した状態 |
定義段階 | 組織全体でソフトウェアの開発、保守の方針を確立し、文書で定義した段階 |
管理段階 | ソフトウェアとプロセスを定量的に評価する基盤を確立し、目標を定めて開発できる状態 |
最適化段階 | 組織全体が永続的にプロセス改善に取り組んでいける状態 |
以下ではプロセス成熟度に関連したIPA情報処理試験の過去問とその解説をまとめています。
開発するソフトウェアの著作権の帰属の考え方を理解し、プログラムを外注する場合の留意事項を把握しておくことは重要です。 著作権と職務著作などソフトウェア開発工程で必要となる知的財産権の取得、管理の目的、考え方についてまとめていきます。
著作権管理について見ていきます。
ソフトウェアやドキュメントなどの著作物の著作権は、著作物を捜索した者に帰属すると著作権法で定められています。 例えば、以下のケースの場合、協力会社のC社の著作物となります。
A社は顧客管理システムの開発を、情報システム子会社であるB社に委託し、B社は要件定義を行った上で、設計・プログラミング・テストまでを協力会社であるC社に委託した。 C社ではD社員にその作業を担当させた。このとき、開発したプログラムの著作権はどこに帰属するか。ここで、関係者の間には、著作権の帰属に関する特段の取決めはないものとする。
上述の例で、D社員が作成したものでD社員の著作物とならないのではないか、と考えられますが、職務上作成する著作物の著作権は法人に帰属すると著作権法で定められています。
このようなケースを著作権の帰属とか、職務著作、あるいは法人著作といいます。
もちろんどのようなケースでも適用されるわけではなく、会社や使用者の発意がある場合などのように要件を満たす必要があります。
著作権法に職務著作の要件が定められています。
著作権法の「第二章 著作者の権利>第二節 著作者>職務上作成する著作物の著作者>第十五条」には以下のように定められています。
法人その他使用者(以下この条において「法人等」という。)の発意に基づきその法人等の業務に従事する者が職務上作成する著作物(プログラムの著作物を除く。)で、その法人等が自己の著作の名義の下に公表するものの著作者は、その作成の時における契約、勤務規則その他に別段の定めがない限り、その法人等とする。
2 法人等の発意に基づきその法人等の業務に従事する者が職務上作成するプログラムの著作物の著作者は、その作成の時における契約、勤務規則その他に別段の定めがない限り、その法人等とする。
参考)http://law.e-gov.go.jp/htmldata/S45/S45HO048.html
ソフトウェア開 発時に他者のもつ特許を利用する必要が生じた場合は,使用許諾を受ける必要があります。
特許で保護された技術を使っていないソフトウェアであっても、使用許諾することは可能です。
技術的保護について見ていきます。
ソフトウェアの不正利用防止などを目的として、プロダクトIDや利用者のハードウェア情報を使って、 ソフトウェアのライセンス認証を行うことをアクティベーションといいます。
DVD-RやSDカードなどに採用され、ディジタルコンテンツを記録メディアに一度だけ複製することを許容する著作権保護技術です。
以下では知的財産適用管理に関連したIPA情報処理試験の過去問とその解説をまとめています。
情報処理試験対策用のサイトオリジナル教科書をテーマにテクノロジ系の知識をまとめています。
このページの更新履歴です。
Copyright (C) 2010-2023 情報処理のWeb教科書. All Rights Reserved. Loarding…