상세 컨텐츠

본문 제목

🏷️2025 정보처리기사 필기 요점정리 1과목 소프트웨어설계(2)

자격정보

by best2253 2025. 8. 11. 17:51

본문

 

🏷️ 정보처리기사 필기 요점정리

1과목 소프트웨어설계

정처기 수업 내용 요약본

 

 

✨ 객체지향(Object Oriented)

현실 세계의 개체를 기계의 부품처럼 하나의 객체로 만들어, 기계적인 부품들을 조립하여 제품을 만들 듯이 소프트웨어를 개발할 때에도 객체들을 조립해서 작성할 수 있는 기법

객체, 클래스, 캡슐화, 상속, 다형성, 연광성 등

 

✨ 객체지향 분석의 방법론

Rumbaugh(럼바우)
분석활동을 객체모델링(객체다이어그램) ->동적모델링(상태다이어그램) -> 기능모델링(자료흐름도)으로 나누어 수행
Booch(부치)
미시적, 거시적 모두 사용. 클래스의 속성과 연산 정의
Jacobson
Use Case를 강조하여 사용하는 분석 방법
Coad와 Yourdon 방법
E-R다이어그램사용.

 

✨ 객체지향 설계 원칙

단일 책임 원칙
객체는 단 하나의 책임만 가진다는 원칙
개방 폐쇄 원칙
클래스는 확장에 대해 열려 있어야 하며 변경에 대해 닫혀 있어야 한다는 원칙
리스코프 치환 원칙
자식 클래스는 최소한 자신의 부모 클래스에서 가능한 행위는 수행할 수 있어야 한다는 설계 원칙
인터페이스 분리 원칙
자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 한다는 원칙
의존 역전 원칙
각 객체들 간의 의존 관계가 성립될 때, 추상성이 낮은 클래스보다 높은 클래스와 의존 관계를 맺어야 한다는 원칙

 

✨ 결합도

모듈간에 상호 의존하는 정도 (낮을수록 좋다)


출처 : 시나공 교재 사진 자료

✨ 응집도

명령어나 호출문 등 모듈의 내부 요소들의 서로 관련되어 있는 정도

출처 : 시나공 교재 사진 자료

 

✨GoF(Gang of Four) 디자인 패턴

생성 패턴
구조 패턴
행위 패턴
추상 팩토리, 빌더
팩토리 메소드,
프로토타입, 싱글톤
어댑터, 브리지, 컴포지트
데코레이터, 퍼싸드
플라이웨이트, 프록시
책임연쇄, 커맨드, 인터프리터
반복자, 중재자, 메멘토
옵서버, 상태, 전략,
템플릿 메소드, 방문자

 

 

✨ 디자인 패턴 사용의 장단점

구조파악이 용이, 설계 및 구현의 생산성을 높이는데 적합. 초기 투자 비용이 부담될 수 있다

객체지향을 기반으로 한 설계와 구현을 다루므로 다른 기반의 애플리케이션 개발에는 적합하지 않음

 

✨ 인터페이스 요구사항 검증 방법

-동료 검토(Peer Review) : 작성자가 직접 설명하고 동료들이 이를 들으면서 결함을 변견하는 형태의 검토 방법

-워크스루(Walk Through) : 검토전에 미리 배포하고 회의를 통해 결함을 발견하는 검토 방법

-인스텍션(Inspection) : 작성자를 제외한 다른 검토 전문가들이 결함을 발견하는 검토 방법

-프로토타이핑(Prototyping) : 견본품을 만들어 최종 결과물을 예측

 

✨미들웨어(Middleware)

분산 켐퓨팅 환경에서 서로 다른 기종 간의 하드웨어나 프로토콜, 통신 환경 등을 연결

운영체제와 응용 프로그램, 또는 서버와 클라이언트 사이에서 원만한 통신이 이루어지도록 다양한 서비스를 제공

위치 투명성을 제공

사용자가 미들웨어의 내부 동작을 확인하려면 별도의 응용 소프트웨어를 사용해야 함

종류 : DB, RPC, MOM, TP-Monitor, ORB, WAS 등

 

DB : 데이터베이스 벤더에서 제공하는 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어

RPC(원격 프로시저 호출) : 원격 프로시저를 마치 로컬 프로시저처럼 호출하는 방식의 미들웨어

MOM(Message Oriented Middleware) : 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어

TP-Monitor(Transaction Processing Monitor) : 항공기나 철도 예약 업무 등과 같은 온라인 트랜잭션 처리나 감시하는 미들웨어

ORB(Object Request Broker) : 객체 지향 미들웨어로 코바(CORBA) 표준 스펙을 구현한 미들웨어

*코바(CORBA) : 네트워크에서 분산 프로그램 객체를 생성, 배포, 관리하기 위한 규격을 의미

WAS(Web Application Server) : 웹에 동적인 콘텐츠를 처리하기 위한 미들웨어

 

✨코드오류의 종류

① 필사오류(Transcription Error) : 입력시 한 자리를 잘못 기록하는 오류

② 전위오류(Transposition Error) : 입력시 좌우 자리를 바꾸어 발생하는 오류

③ 이중오류(Double Transposition Error) : 전위 오류가 두 개 이상 발생하는 오류

④ 생략오류(Missing Error) : 입력시 한 자리를 빼고 기록하는 오류

⑤ 추가오류(Addition Error) : 입력시 한 자리를 추가해서 기록하는 오류

⑥ 임의오류(Random Error) : 두가지 이상의 오류가 결합해서 발생하는 오류

 

 

모두 모두 응원합니다

 

 

 

 

반응형

관련글 더보기