반응형
아래 내용은 예문사의 '정보처리기술사 개정 4판 1쇄'를 기본으로, 필자의 이해를 덧붙여 요약 및 정리한 자료임을 명시합니다.
객체지향 방법론
객체지향 방법론의 정의
- 복잡한 현실세계를 객체로 추상화하여 시스템을 개발하는 방법론
- 객체는 속성과 메서드로 구성, 객체 간의 인터페이스로 통신함
객체지향 방법론의 특징
- 재사용성, 유지보수성, 소스 레벨에서의 재사용
- 모형의 현실 적합성, 현실세계 및 인간의 사고방식과 유사
- 일관성, 추적성, 전체공정에서 각 단계 간 전환/변경이 자연스럽고 신속함
객체지향 방법론의 개념도
요구사항 | 분석/설계 | Class/Object화 | 개발 | |||
현실세계 | → | OOA 객체/동적/기능 모델링 |
→ | Class - Property - Method |
→ | .NET 기반 SW |
| (인스턴스화) ↓ |
J2EE기반 SW |
|||||
OOD 시스템/객체 설계 |
Object |
객체지향 방법론의 원리
기본개념 | 설명 |
추상화 | - 객체 표현 간소화, 공통특징 추출을 통한 슈퍼 클래스화 - 자료 추상화, 기능 추상화, 제어 추상화 |
캡슐화 (정보 은닉) |
- 객체 간의 상세 내용을 외부에 숨기고 메시지를 통해 객체 간 상호 작용 - 독립성, 이식성, 재사용성 등 향상 가능 |
상속성 | - 하위 클래스에게 자신의 속성, 메서드를 사용하게 하여 확장성을 향상 - 단일 상속, 다중 상속 |
다형성 | - 하나의 객체를 여러 형태로 재정의 할 수 ㅇ맀는 성질 - 오버로딩: 동일한 이름의 operation 사용 (수평적) - 오버라이딩: 슈퍼 클래스의 메서드를 서브 클래스에서 재정의 (수직적) |
반응형
객체지향 방법론의 종류
종류 | 설명 | 특징 |
OOSE | - Ivar Jacobson - Object Oriented SW Engineering - Use Case를 모든 모델의 근간으로 활용 |
- "분석 - 설계 - 구현" 공정 - 기능적 요구사항 중심 |
OMT | - James Rumbaugh - Object Modeling Technology - "객체지향 분석 - 시스템 설계 - 오브젝트 설계 - 구현"의 4단계로 구성 - 객체 모델링: 시스템의 정적구조 표현 - 동적 모델링: 객체의 제어흐름/상호반응 표현 - 기능 모델링: 데이터 값의 변화 과정 표현 |
- 복잡한 대형 프로젝트에 유용 - 기업 업무의 모델링 및 사용자와 의사소통 관리 |
OOD | - Grady Booch - Object Oriented Design - Design 부분만 존재, 설계 문서화 강조, 다이어그램 중심 개발 |
- 분석과 설계 분리 안 됨 - 객체모델 설계 시 적용 |
객체지향 방법론의 개발절차
요건 정의 | → | 분석 | → | 설계/구현 | → | 테스트 |
- 업무요건 정의 - 요구사항 정의 |
- 객체 모델링 - 동적 모델링 - 기능 모델링 |
- 시스템 설계 - 객체 설계 - 구현 |
- 테스트 - 통합 - 프로젝트 평가 |
객체지향 방법론의 한계
- 다른 언어 간의 객체 호출이나 재사용이 거의 불가능
- 개발은 Low Level Coding이며 White Box Test를 주로 함
- 개발의 생산성 및 유지보수성을 위한 아키텍처 및 표준 적용 어려움
객체지향 방법론 한계의 해결방안
- 표준 인터페이스로 컴파일된 이진형태의 코드인 컴포넌트 활용(CBD)
- 이종 시스템 간의 호환성 위해 웹서비스 개념 도입
- 완성도 높은 패키지 활용
- AOP 기법 활용을 통한 생산성 향상 필요
반응형
'기술사 준비 > SW공학 - 개발 방법론' 카테고리의 다른 글
[SW공학] CBD (0) | 2022.01.16 |
---|---|
[SW공학] 정보공학 방법론 (0) | 2022.01.16 |
[SW공학] SDLC (Software Development Life Cycle) (0) | 2022.01.13 |