본문내용
진단하고 수정하는 과정
* 기능 개선 유지 보수(Prefective Maintenance) : 유지보수 유형 중 현재 수행중인 기능의 수정, 새로운 기능의 추가, 전반적인 기능 개선 등의 요구를 사용자로부터 받았을 때 수행되는 유형으로, 유지 보수 유형별 비용 비율 중 약 50%를 차지
* 적응 유지 보수(Adaptive Maintenance) : 소프트웨어 산물의 수명기간 중에 발생하는 환경 변화를 기존의 소프트웨어 산물에 반영하기 위하여 수행
* 예방 유지 보수(Preventive Maintenance) : 더 좋은 조건을 갖도록 향상시키기 위해서나 유지 보수성이나 신뢰성을 증진시키기 위해 변화될 때 발생
2. 소프트웨어 품질 보증과 신뢰도
(1) 품질 보증
(2) 신뢰성 측정 : MTBF(Mean Time Between Failure), MTTR(Mean Time To Repair), MTTF(Mean Time To Failure), 신뢰도(Reliability)
6. 객체 지향 설계 기법
1. 객체 지향의 개념
* 객체(object), 메시지(message), 상속(inheritance)으로 실세계의 모든 엔티티들은 시스템에서 객체로 모델링하며, 각 엔티티들은 인스턴스로 표현한다.
2. 객체 지향 용어
- 메소드(Method) : 객체 지향 시스템에서 전통적 시스템의 함수(Function) 또는 프로시저(Procedure)에 해당하는 연산 기능
- 클래스(Class) : 객체지향 개념 중 하나 이사의 유사한 객체들을 묶어 공통된 특성을 표현한 데이터 추상화를 의미
- 캡슐화(Encapsulation) : 객체지향 시스템에서 자료 부분과 연산(또는 함수)부분 등 정보 처리에 필요한 기능을 한 테두리로 묶는 것
3. 객체 지향 개발 방법
* 계획 → 분석 → 설계 → 구현 → 시험 및 유지보수
(1) 객체 지향 분석(OOA; Object Oriented Analysis)
- 람바우의 객체 지향 분석(OOA)
* 객체 모델링(Object Modeling) : 객체 식별 객체간의 관계 정의(객체 다이어그램)
* 동적 모델링(Dynamic Modeling) : 객체 모델링에서 규정된 객체들의 행위와 상태 흐름 작성
* 기능 모델링(Functional Modeling) : 다이어그램을 이용하여 다수 프로세스들간 데이터 흐름을 중심으로 처리
(2) 객체 지향 설계(OOD; Object Oriented Design)
- 객체 지향 설계에 있어 가장 중요한 문제는 시스템을 구성하는 개체와 속성, 연산을 인식하는 것이다.
- 객체 지향 설계를 문서화할 때 객체와 그들의 부객체(Sub-object)의 계층적 구조를 보여주는 계층 차트를 그리면 유용하다
- 객체는 순차적으로(Sequentially) 또는 동시적으로(concurrently)구현될 수 있다.
- 객체 지향 설계(OOD)
* 실세계를 모델로 생성해 나가는 것
* 성능 및 전략 확정 → 시스템 설계
* 자료구조와 알고리즘 상세화 → 객체 설계
7. S/W 공학의 발전적 주제
1. 소프트웨어 재사용
(1) 재사용의 장점
* 개발 시간과 비용을 감소시킨다.
* 프로젝트 실패의 위험을 줄여준다.
* 소프트웨어 개발자의 생산성을 증가 시킨다
* 소프트웨어 품질 향상
(2) 재사용의 단점
* 소프트웨어 프로그래밍 언어의 종속
* 새로운 개발 방법 도입이 어렸다.
* 표준화가 부족하다.
(3) 소프트웨어 재공학(Reengineering) 목적
* 복잡한 시스템을 다루는 방법
* 다른 뷰를 생성
* 잃어버린 정보의 복구 및 제거
* 부작용 발견
* 재 사용 용이
2. CASE(Computer-Aided Software Engineering)
(1) CASE 개념
* 소프트웨어 개발의 작업들을 자동화하는 것이다.
* 소프트웨어 도구와 방법론의 결합이다.
* 소프트웨어의 생산성 문제를 해결할 수 있다
(2) CASE 분류
* 상위(Upper) CASE
* 중위(Middle) CASE
* 하위(Lower) CASE
(3) CASE 특징
* 소프트웨어 개발 비용을 절약할 수 있다.
* 자동화된 검사를 통해 소프트웨어 품질을 향상시킨다.
* 프로그램의 유지보수가 용이하다
* 소프트웨어 생산성문제를 해결할 수 있다.
* 소프트웨어 개발 단계의 표준화
* 기능 개선 유지 보수(Prefective Maintenance) : 유지보수 유형 중 현재 수행중인 기능의 수정, 새로운 기능의 추가, 전반적인 기능 개선 등의 요구를 사용자로부터 받았을 때 수행되는 유형으로, 유지 보수 유형별 비용 비율 중 약 50%를 차지
* 적응 유지 보수(Adaptive Maintenance) : 소프트웨어 산물의 수명기간 중에 발생하는 환경 변화를 기존의 소프트웨어 산물에 반영하기 위하여 수행
* 예방 유지 보수(Preventive Maintenance) : 더 좋은 조건을 갖도록 향상시키기 위해서나 유지 보수성이나 신뢰성을 증진시키기 위해 변화될 때 발생
2. 소프트웨어 품질 보증과 신뢰도
(1) 품질 보증
(2) 신뢰성 측정 : MTBF(Mean Time Between Failure), MTTR(Mean Time To Repair), MTTF(Mean Time To Failure), 신뢰도(Reliability)
6. 객체 지향 설계 기법
1. 객체 지향의 개념
* 객체(object), 메시지(message), 상속(inheritance)으로 실세계의 모든 엔티티들은 시스템에서 객체로 모델링하며, 각 엔티티들은 인스턴스로 표현한다.
2. 객체 지향 용어
- 메소드(Method) : 객체 지향 시스템에서 전통적 시스템의 함수(Function) 또는 프로시저(Procedure)에 해당하는 연산 기능
- 클래스(Class) : 객체지향 개념 중 하나 이사의 유사한 객체들을 묶어 공통된 특성을 표현한 데이터 추상화를 의미
- 캡슐화(Encapsulation) : 객체지향 시스템에서 자료 부분과 연산(또는 함수)부분 등 정보 처리에 필요한 기능을 한 테두리로 묶는 것
3. 객체 지향 개발 방법
* 계획 → 분석 → 설계 → 구현 → 시험 및 유지보수
(1) 객체 지향 분석(OOA; Object Oriented Analysis)
- 람바우의 객체 지향 분석(OOA)
* 객체 모델링(Object Modeling) : 객체 식별 객체간의 관계 정의(객체 다이어그램)
* 동적 모델링(Dynamic Modeling) : 객체 모델링에서 규정된 객체들의 행위와 상태 흐름 작성
* 기능 모델링(Functional Modeling) : 다이어그램을 이용하여 다수 프로세스들간 데이터 흐름을 중심으로 처리
(2) 객체 지향 설계(OOD; Object Oriented Design)
- 객체 지향 설계에 있어 가장 중요한 문제는 시스템을 구성하는 개체와 속성, 연산을 인식하는 것이다.
- 객체 지향 설계를 문서화할 때 객체와 그들의 부객체(Sub-object)의 계층적 구조를 보여주는 계층 차트를 그리면 유용하다
- 객체는 순차적으로(Sequentially) 또는 동시적으로(concurrently)구현될 수 있다.
- 객체 지향 설계(OOD)
* 실세계를 모델로 생성해 나가는 것
* 성능 및 전략 확정 → 시스템 설계
* 자료구조와 알고리즘 상세화 → 객체 설계
7. S/W 공학의 발전적 주제
1. 소프트웨어 재사용
(1) 재사용의 장점
* 개발 시간과 비용을 감소시킨다.
* 프로젝트 실패의 위험을 줄여준다.
* 소프트웨어 개발자의 생산성을 증가 시킨다
* 소프트웨어 품질 향상
(2) 재사용의 단점
* 소프트웨어 프로그래밍 언어의 종속
* 새로운 개발 방법 도입이 어렸다.
* 표준화가 부족하다.
(3) 소프트웨어 재공학(Reengineering) 목적
* 복잡한 시스템을 다루는 방법
* 다른 뷰를 생성
* 잃어버린 정보의 복구 및 제거
* 부작용 발견
* 재 사용 용이
2. CASE(Computer-Aided Software Engineering)
(1) CASE 개념
* 소프트웨어 개발의 작업들을 자동화하는 것이다.
* 소프트웨어 도구와 방법론의 결합이다.
* 소프트웨어의 생산성 문제를 해결할 수 있다
(2) CASE 분류
* 상위(Upper) CASE
* 중위(Middle) CASE
* 하위(Lower) CASE
(3) CASE 특징
* 소프트웨어 개발 비용을 절약할 수 있다.
* 자동화된 검사를 통해 소프트웨어 품질을 향상시킨다.
* 프로그램의 유지보수가 용이하다
* 소프트웨어 생산성문제를 해결할 수 있다.
* 소프트웨어 개발 단계의 표준화
추천자료
- IT와 경영정보시스템 (1) 컴퓨터 시스템의 기억장치로서의 RAM과 자기디스크 장치의 비교와 (...
- (IT와경영정보시스템)(1) 일반적인 컴퓨터의 처리 방식인 직렬처리 방식에 비해 병렬처리 방...
- [IT와경영정보시스템]하드웨어 분류 방식 중 직렬처리 방식에 비해 병렬처리 방식의 특징을 ...
- 학습도구(교구)의 관련법규 변천배경, 학습도구(교구)의 설계규칙, 학습도구(교구)의 활용조...
- 로고프로그래밍의 안내적교수전략, 자폐아의 사회성발달교수전략, 자폐아의 행동연쇄방해교수...
- 영재교육수업전략, 물레방아수업전략(교육전략), 웹기반수업전략(교육전략), 교육용 소프트웨...
- 학습기자재(학습기기, 교육기자재) 활용현황, 학습기자재(학습기기, 교육기자재) 교육소프트...
- 사례 누구의 소유인가 토론 (에반스 사건의 경위, 소프트웨어 사건의 경위)
- [기술인력, 산업기술인력, 과학기술인력]기술인력과 산업기술인력, 기술인력과 과학기술인력,...
- [효과측정, 인터넷비즈니스 활동, 기업간 전자상거래]인터넷비즈니스 활동의 효과측정, 기업...
- [2000년대]2003년(2000년대)의 IT산업(정보기술산업), 2003년(2000년대)의 소프트웨어산업, 2...
- [분할][텍스트 분할][코드 분할][공개키 암호][코프로세서 분할][파장 분할]텍스트 분할, 코...
- ★교육공학에 대한 교육공학자들의 정의를 참고하여 내린 본인 나름대로의 [교육공학에 대한 ...
소개글