소프트웨어 설계
❖ 소프트웨어 개발에 이용되는 모델(Model)에 대한 설명 중 거리가 먼 것은?
① 모델은 개발 대상을 추상화하고 기호나 그램등으로 시각적으로 표현한다.
② 모델을 통해 소프트웨어에 대한 이해도를 향상시킬 수 있다.
③ 모델을 통해 이해 당사자 간의 의사소통이 향상된다.
④ 모델을 통해 향후 개발될 시스템의 유추는 불가능하다.
정답
④ 모델을 통해 향후 개발될 시스템의 유추는 불가능하다.
❖ 다음의 설명에 해당하는 언어는?
객체 지행 시스템을 개발할 때 산출물을 명세화, 시각화, 문서화하는데 사용된다.
① JAVA
② C
③ UML
④ Python
정답
③ UML
❖ 다음 내용이 설명하는 UI설계 도구는?
– 디자인, 사용방법설명, 평가 등을 위해 실제 화면과 유사하게 만든 정적인 형태의 모형
① 스토리보드 (Storyboard)
② 목업 (Mockup)
③ 프로토타입 (Prototype)
④ 유스케이스 (Usecase)
정답
② 목업 (Mockup)
소프트웨어 개발
❖ 소프트웨어 재공학의 주요 활동 중 기존 소프트웨어 시스템을 새로운 기술 또는 하드웨어 환경에서 사용할 수 있도록 변환하는 작업을 의미하는 것은?
① Analysis
② Migration
③ Restructuring
④ Reverse Engineering
정답
② Migration
❖ 정보시스템 개발 단계에서 프로그래밍 언어 선택 시 고려할 사항으로 가장 거리가 먼 것은?
① 개발 정보시스템의 특성
② 사용자의 요구사항
③ 컴파일러의 가용성
④ 컴파일러의 독창성
정답
④ 컴파일러의 독창성
❖ 소프트웨어 패키징에 대한 설명으로 틀린 것은?
① 패키징은 개발자 중심으로 진행한다.
② 신규 및 변경 개발소스를 식별하고, 이를 모듈화하여 사용제품으로 패키징한다.
③ 고객의 편의성을 위해 매뉴얼 및 버전관리를 지속적으로 한다.
④ 범용 환경에서 사용이 가능하도록 일반적인 배포 형태로 패키징이 진행된다.
정답
① 패키징은 개발자 중심으로 진행한다.
데이터베이스 구축
❖ 다음 릴레이션의 Degree와 Cardinality는?
학번 | 이름 | 학년 | 학과 |
13001 | 홍길동 | 3학년 | 전기 |
13002 | 이순신 | 4학년 | 기계 |
13003 | 강감찬 | 2학년 | 컴퓨터 |
① Degree : 4, Cardinality : 3
② Degree : 3, Cardinality : 4
③ Degree : 3, Cardinality : 12
④ Degree : 12, Cardinality : 3
정답
① Degree : 4, Cardinality : 3
❖ 뷰 (View)에 대한 설명으로 틀린 것은?
① 뷰 위에 또 다른 뷰를 정의할 수 있다.
② DBA는 보안성 측명에서 뷰를 활용할 수 있다.
③ 사용자가 필요한 정보를 요규에 맞게 가공하여 뷰로 만들 수 있다.
④ SQL을 사용하면 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약 사항이 없다.
정답
④ SQL을 사용하면 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약 사항이 없다.
❖ 관계 대수식을 SQL 질의로 옮게 표현한 것은?
π 이름 (σ학과= ‘교육’ (학생))
① SELECT 학생 FROM 이름 WHERE 학과 = ‘교육’;
② SELECT 이름 FROM 학생 WHERE 학과 = ‘교육’;
③ SELECT 교육 FROM 학과 WHERE 이름 = ‘학생’;
④ SELECT 학과 FROM 학생 WHERE 이름 = ‘교육’;
정답
② SELECT 이름 FROM 학생 WHERE 학과 = ‘교육’;
프로그래밍 언어
❖ TCP/IP 계층 구조에서 IP의 동작 과정에서의 전송 오류가 발생하는 경우에 대비해 오류 정보를 전송하는 목적으로 사용하는 프로토콜은?
① ECP (Error Checking Protocol)
② ARP (Address Resolution Protocol)
③ ICMP (Internet Control Message Protocol)
④ PPP (Point-to-Point Protocol)
정답
③ ICMP (Internet Control Message Protocol)
❖ 좋은 소프트웨어 설계를 위한 소프트웨어의 모듈가느이 결합도(Coupling)와 모듈 내 요소간 응집도(Cohesion)에 대한 설명으로 옮은 것은?
① 응집도는 낮게 결합도는 높게 설계한다.
② 응집도는 높게 결합도는 낮게 설계한다.
③ 양쪽 모두 낮게 설계한다.
④ 양쪽 모두 높게 설계한다.
정답
② 응집도는 높게 결합도는 낮게 설계한다.
❖ 다음과 같은 형태로 임계 구역의 접근을 제어하는 상호배제 기법은?
P(S) : while S <=0 do skip;
① Dekker Algorithm
② Lamport Algorithm
③ Peterson Algorithm
④ Semaphore
정답
④ Semaphore
정보시스템
❖ 블루투스 (Bluetooth) 공경과 해당 공격에 대한 설명이 올바르게 연결된 것은?
① 블루버그 (BlueBug) – 블루투스의 취약점을 활용하여 장비의 파일에 접근하는 공격으로 OPP를 사용하여 정보를 열람
② 블루스나프 (BlueSnarf) – 블루투스를 이용해 스팸처럼 명함을 익명으로 퍼뜨리는 것
③ 블루프린팅 (BluePrinting) – 블루투스 공격 장치의 검색 활동을 의미
④ 블루재킹 (BlueJacking) – 블루투스 장비사이의 취약한 연결 관리를 악용한 공격
정답
③ 블루프린팅 (BluePrinting) – 블루투스 공격 장치의 검색 활동을 의미
❖ DoS(Denial of Service) 공격과 관련한 내용으로 틀린 것은?
① Ping of Death 공격은 정상 크기보다 큰 ICMP 패킷을 작은 조각(Fragment)으로 쪼개어 공격 대상이 조각화 된 패킷을 처리하게 만드는 공격 방법이다.
② Smurf 공격은 멀티캐스트(Multicast)를 활용하여 공격 대상이 네트워크의 임의의 시스템에 패킷을 보내게 만드는 공격이다.
③ SYN Flooding은 존재하지 않는 클라이언트가 서버별로 한정된 접속 가능 공간에 접속한 것처럼 속여 다른 사용자가 서비스를 이용하지 못하게 하는 것이다.
④ Land 공격은 패킷 전송 시 출발지 IP 주소와 목적지 IP 주소 값을 똑같이 만들어서 공격 대상에게 보내는 공격 방법이다.
정답
② Smurf 공격은 멀티캐스트(Multicast)를 활용하여 공격 대상이 네트워크의 임의의 시스템에 패킷을 보내게 만드는 공격이다.
❖ 다음 설명에 해당하는 시스템은?
– 1990년대 David Clock 이 처음 제안하였다.
① Aapche
② Hadoop
③ Honeypot
④ MapReduce
정답
③ Honeypot