본문 바로가기

기술사 준비/SW공학 - 개발 방법론

[SW공학] 객체지향 방법론

반응형

아래 내용은 예문사의 '정보처리기술사 개정 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 기법 활용을 통한 생산성 향상 필요


 

반응형