본문 바로가기

자격증/정보처리기사

[정처기필기] 1과목_소프트웨어 설계

[ 2021 - 1회기출 ]

 

* 리눅스 명령어

> ls : 디렉토리 목록확인

> cat : 합칠떄?

> pwd : 지금 내위치

> uname : 버전확인 (uname -a)

 

* 소켓 : 통신을 위한 프로그램을 생성하여 포트를 할당,

요청시 클라이언트와 연결하는 내/외부 송/수신 연계기술 (원격제어)

> telnet_ 명령어 그대로(옜날에 많이씀)

> ssh_ 명령어 암호화(22번포트)

 

* 포트란?

> 외부에서 데이터를 전송할때 집주소가 IP, 포트가 방문 (카톡, 웹브라우저, mysql등등..)

ip주소를 확인해서 포트로 데이터를 전송하는 원격제어기술이 소켓기술!

 

* DB링크 기술 : DB링크라는 객체를 만들어서 그 링크를 통해 데이터베이스에 직접접속(오라클)

* 스크럼 기술 : 애자일 방법론, 팀이 중심이 되어 개발 효율성 높임

* 프로토타입 기술 : 시제품 테스트


* 캡슐화 (Encapsulation) : 객체지향, 연관된 데이터와 함수를 함께 묶어 외부와 경계를 만들고

                                                필요한 인터페이스만을 밖으로 드러내는 과정 

* 객체지향 특징

> 캡슐화 (Encapsulation)

> 정보은닉 (Information Hiding)

> 상속 (Inheritance)

> 다형성 (Polymorphism) _ 오버로딩(메소드), 오버라이딩(상속)

> 추상화 (Abstraction)

 

 

* GoF(Gangs of Four) 디자인 패턴

생성패턴 : 추상팩토리, 빌더, 팩토리메소드, 프로토타입, 싱글톤

구조패턴 : 어댑터, 브릿지, 컴포지트, 데코레이터, 퍼싸드, 플라이웨이트, 프록시

행위패턴 : 책임연쇄, 커맨드, 인터프리터, 반복자, 중재자, 메멘토, 옵서버, 상태, 전략, 템플릿메소드, 방문자

 

 

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

응용프로그램과 운영환경 간에 원만한 통신이 이루어질 수 있게 서비스를 제공하는 소프트웨어

* 미들웨어 

> RPC (Remote Procedure Call) : 원격 프로시저 호출 (로컬 프로시저처럼)

> MOM (Message Oriented Middleware) : 메시지 지향 미들웨어

> ORB (Object Request Broker) : 다른 시스템의 프로그램을 네트워크를 통해 호출

> DB 접속 미들웨어

> WAS (Web Application Server) : 웹에서 동적인 역할 담

> TP 모니터 : 트랜젝션

> ESB : 메세지 버스

 

* 객체지향 분석 방법론

> Rumbaugh (럼바우) _ 체, 적(상태), 능모델(DFD) 나눠서 수행

> Coad와 Yourdon 방법 _ E-R 다이어그램

> Booch (부치) _ 미시적개발 + 거시적개발

> Jacobson 방법 _ Use-Case 사용

> Wirfs-Brock 방법 _ 분석과 설계간 구분 없음

 

* 현행 시스템 분석

> 운영체제, 네트워크, DBMS, 미들웨어, 오픈소스(라이선스, 서비스 지속가능성 등)

 

* CASE (Computer Aided Software Engineering) _ 내가 개발할때 도와주는 친규

 

* UML (Unified Modeling Language) _ 그림을 그려주는 도구

> 구조적 다이어그램 : 클래스, 컴포넌트, 객체, 컴포지트, 배치, 패키지

> 행위적 다이어그램 : 유스케이스, 순차, 커뮤니케이션, 상태, 활동, 상호작용 개요, 타이밍