본문 바로가기

연구원생활

[필기 | 소프트웨어 설계] 객체지향

728x90
반응형
📖 참고
2025 시나공 기출문제집 정보처리기사 필기 요약 pdf
2025년도 정보처리기사 시험일정
📂 정보처리기사 필기 1과목 소프트웨어 설계
01. [필기 | 소프트웨어 설계] 소프트웨어 생명 주기 모형
02. [필기 | 소프트웨어 설계] 스크럼과 XP
03. [필기 | 소프트웨어 설계] 현행 시스템 파악 / 데이터베이스 관리 시스템(DBMS) / 웹 에플리케이션 서버(AWS)
04. [필기 | 소프트웨어 설계] 요구사항 정의
05. [필기 | 소프트웨어 설계] 요구사항 분석
06. [필기 | 소프트웨어 설계] UML(Unified Modeling Language)
07. [필기 | 소프트웨어 설계] 사용자 인터페이스(UI)
08. [필기 | 소프트웨어 설계] 품질 요구사항
09. [필기 | 소프트웨어 설계] 소프트웨어 아키텍처 설계
10. [필기 | 소프트웨어 설계] 패턴
11. [필기 | 소프트웨어 설계] 객체와 클래스
12. [필기 | 소프트웨어 설계] 객체지향
13. [필기 | 소프트웨어 설계] 모듈
14. [필기 | 소프트웨어 설계] 코드
15. [필기 | 소프트웨어 설계] 디자인 패턴
16. [필기 | 소프트웨어 설계] 시스템 연계

 


✏️ 객체지향 분석의 방법론

럼바우(Rumbaugh) 방법

  • 가장 일반적으로 사용되는 방법으로, 분석 활동을 객체 모델, 동적 모델, 기능 모델로 나누어 수행
  • 모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 기법으로, 객체 모델링기법(OMT, Object-Modeling Technique)라고도 함
    • 분석 활동은 '객체 모델링 > 동적 모델링 > 기능 모델링'  순
객체 모델링
(Object Modelign)
정보 모델링이라고도 하며, 시스템에서 요구되는 객체를 찾아내어 속성과 연산 식별 및 객체들 간의 관계를 규정하여 객체 다이어그램으로 표시하는 것
동적 모델링
(Dynamic Modeling)
상태 다이어그램을 이용하여 시간의 흐름에 따른 객체들 간의 제어 흐름, 상호 작용, 동작 순서 등의 동적인 행위를 표현하는 모델링
기능 모델링
(Functional Modeling)
자료 흐름도(DFD)를 이용하여 다수의 프로세스들간의 자료 흐름을 중심으로 처리 과정을 표현한 모델링

부치(Booch) 방법

  • 미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용하는 분석 방법으로, 클래스와 객체들을 분석 및 식별하고, 클래스의 속성과 연산을 정의

Jacobson 방법

  • Use Case를 강조하여 사용하는 분석

Coad와 Yourdon 방법

  • E-R 다이어그램을 사용하여 객체의 행위를 모델링
  • 객체 식별, 구조 식별, 주제 정의, 속성과 인스턴스 연결 정의, 연산과 메세지 연결 정의 등의 과정으로 구성하는 기법

Wirfs-Brock 방법

  • 분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법

✏️ 객체지향 설계 원칙

시스템 변경이나 확장에 유연한 시스템을 설계하기 위해 지켜야 할 다섯가지 원칙으로, 다섯가지 원칙의 앞 글자를 따 SOLID 원칙이라고도 불림

단일 책임 원칙(SRP, Single Responsibility Principle)

  • 객체는 단 하나의 책임만 가져야 한다는 원칙

개방-폐쇠 원칙(OCP, Open-Closed Principle)

  • 기존의 코드를 변경하지 않고, 기능을 추가할 수 있도록 설계해야 한다는 원칙

리스코프 치환 원칙(LSP, Liskov Substitution Principle)

  • 자식 클래스는 최소한 자신의 부모 클래스에서 가능한 행위는 수행할 수 있어야 한다는 설계 원칙

인터페이스 분리 원칙(ISP, Interface Segregation Principle)

  • 자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 한다는 원칙

의존 역전 원칙(DIP, Dependency Inversion Principle)

  • 각 객체들 간의 의존 관계가 성립될 때, 추상성이 낮은 클래스보다 추상성이 높은 클래스와 의존 관계를 맺어야 한다는 원칙

 

728x90
반응형