본문 바로가기

정보처리기사25

정보처리기사 실기 약술형 정리 #12 약술형 정리 #12 역공학을 통한 공격을 막기 위해 프로그램의 소스 코드를 알아보기 힘든 형태로 바꾸는 기술 코드 난독화 서버 측에서 동적으로 수행되는 페이지를 만들기 위한 언어 ASP(Active Server Page) 개발 자원을 요구사항에 할당하기 전에 요구사항 명세서가 정확하고 완전하게 작성되었는지를 검토하는 활동 요구사항 확인 객체지향 기능을 지원하는 대화형 인터프리터 언어로, 플랫폼에 독립적이고 문법이 간단하여 배우기 쉬운 언어 파이썬(Python) 수학적 함수를 조합하여 문제를 해결하는 언어로, 알려진 값을 함수에 적용하는 것을 기반으로 한다. 함수형 언어 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 발견하고 이를 걸러내기 위한 과정 요구사항 분석 J.. 2021. 4. 29.
정보처리기사 실기 단답형 정리 #13 단답형 정리 #13 1. 트랜잭션수행 중에서 데이터베이스 회복(Recovery) 기법 중에서 Rollback시 Redo, Undo가 모두 실행되는 트랜잭션 처리법. 트랜잭션 수행 중에서 갱신 결과를 DB에 즉시반영, 데이터를 변경하면 로그 파일로 저장되며, 모든 내용 수정 시 즉시 데이터베이스에 반영 답안 : 즉시갱신기법 2. 컴퓨터 네트워킹에서 쓰이는 용어로서, IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고받는 기술로써 네트워크 주소 변환이라고 한다. 답안 : NAT(Network Address Transformation) 3. 대량의 자료를 처리할 수 있는 대형 컴퓨터 클러스터에서 동작하는 분산 응용 프로그램을 지원하는 오픈.. 2021. 4. 23.
정보처리기사 실기 단답형 정리 #9 단답형 정리 #9 1. 데이터 개체를 구성하고 있는 속성들에 데이터 타입이 정의되어 구체적인 데이터 값을 갖고 있는 것을 말한다. 답안 : 릴레이션 인스턴스(Relation Instance) 2. 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합을 의미하며, 릴레이셭 간의 관계를 표현할 때 사용 답안 : 외래키(Foreign Key) 3. 온라인 업무 처리 형태의 하나로 네트워크상의 여러 이용자가 실시간으로 데이터베이스의 데이터를 갱신하거나 검색하는 등의 단위 작업을 처리하는 방식 답안 : OLTP(Online Transaction Processing) 4. 교착상태가 발생할 가능성을 배제하지 않고 교착상태가 발생하면 적절히 피해나가는 방버으로, 주로 은행원 알고리즘이 사용되는 교착상태 해결 방.. 2021. 4. 19.
정보처리기사 실기 단답형 정리 #6 단답형 정리 #6 1. 내부 정보 유출 방지를 의미하는 것으로, 기업 내에서 이요하는 기술 정보, 프로젝트 계획, 사업 내용, 영업 비밀, 고객 정보 등을 보호하고 외부 유출을 방지하기 위해서 사용 답안 : DLP(Data Loss Prevention) 2. 모듈 내부에 존재하는 구성 요소들 사이의 밀접한 정도를 나타낸다. 정보은닉 개념의 확장 개념으로, 하나의 모듈은 하나의 기능을 수행하는 것을 의미한다. 답안 : 응집도(Cohesion) 3. 소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, 유지 관리를 용이하게 하여 프로그램을 효율적으로 관리할 수 있도록 시스템을 분해하고 추상화하는 기법 답안 : 모듈화 4. 테스트 기반에 따른 테스트 종류 답안 : 구조 테스트, 명세 테스트, 경험 테스트.. 2021. 4. 16.
정보처리기사 실기 단답형 정리 #4 단답형 정리 #4 1. 상용 관계형 데이터베이스 시스템인 오라클 DBMS에서 SQL 언어를 확장하기 위해 사용하는 컴퓨터 프로그래밍 언어 중 하나로, Oracle 기반의 모든 프로시저 작성에 사용되며 표준 SQL의 확장 기능이 우수한 언어 답안 : PL/SQL(Procedural Language for SQL) 2. 서버 쪽 응용 프로그램 개발에 사용할 수 있는 자바스크립트 기반의 소프트웨어 플랫폼으로 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 답안 : Node.js(노드JS) 3. 공격자가 패킷의 출발지 주소나 포트를 임의로 변경해 출발지와 목적지 주소를 동일하게 함으로써 공격 대상 컴퓨터의 실행속도를 느리게 하거.. 2021. 4. 14.
정보처리기사 실기 단답형 정리 #3 단답형 정리 #3 1. 기업이 재해로 타격을 입은 뒤 업무 운명을 어떻게 복구 재개하는 지에 대한 계획을 말하며, 재해 복구를 포함하는 더 넓은 개념이다. 답안 : BCP(Business Continuity Planning : 업무 연속 계획) 2. 개체-관계 다이어그램(ERD)의 기본 요소 3가지 답안 : 개체(Entity), 속성(Attribute), 관계(Relationship) 3. AS(자율시스템) 내에서 사용하는 거리벡터 알고리즘에 기초하여 개발된 통신규약으로, 최대 홉 수를 15개로 제한한 라우팅 프로토콜 답안 : RIP(Routing Information Protocol) 4. 컴퓨터상에 가상의 컴퓨터를 구동시키는 것으로 물리적인 하드웨어를 가상화하여, 하나의 물리적 하드웨어 상에서 여러 .. 2021. 4. 13.
정보처리기사 실기 단답형 정리 #2 단답형 정리 #2 1. 키 분배를 위해 얽힘 상태 광자 또는 단일 광자를 사용하여 양자통신을 위해 비밀키를 분배하고 관리하는 기술 답안 : 양자 암호키 분배(QKD : Quantum Key Distribution) 2. 기존 개발된 시스템의 기술적인 원리를 시스템의 코드나 데이터 등의 구조분석을 통해 도출해내는 작업 답안 : 역공학(Reverse Engineering) 3. 프로토콜(Protocol)의 기본 요소 3가지 답안 : 구문, 의미, 타이밍 4. 각 메시지에서 목적지까지 갈 수 있는 여러 경로 중 한 가지 경로를 설정해 주는 과정 답안 : 라우팅(Routing) 5. 특정한 기능을 수행하기 위해 독립적으로 개발, 보급하고 잘 정의된 인터페이스를 가지며 다른 부품과 조립되어 응용시스템을 구축하기 .. 2021. 4. 12.
정보처리기사 실기 단답형 정리 #1 단답형 정리 #1 1. HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 네트워크 상태에서 교환하는 프로토콜 답안 : SOAP(Simple Object Access Protocol) 2. HTTP URI를 통해 자원을 명시하고, HTTP 메소드(POST, GET, PUT, DELETE)를 통해 해당 자원에 대한 생성, 조회, 갱신, 삭제 등의 명령을 적용할 수 있는 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처 답안 : REST(Representational State Transfer) 3. 다양한 네트워크를 상호 연결하는 컴퓨터 네트워크의 일부로서, 각기 다른 LAN이나 부분망 간에 정보를 교환하기 위한 경로를 제공하는 망 답안 : 백본망(Backbone Network) 4. .. 2021. 4. 11.
정보처리기사 실기 약술형 정리 #8 약술형 정리 #8 데이터 레코드를 빠르게 접근하기 위해 키값, 포인터 쌍으로 구성되는 데이터 구조 인덱스(Index) 새로운 컴퓨터 시스템이나 소프트웨어의 요구 사항을 좀 더 잘 이해하고 결정하기 위하여 전체적인 기능을 간략한 형태로 구현한 시제품 프로토타입(Prototype) SQL을 가장 빠르고 효율적으로 수행할 최적의 처리경로를 생성해 주는 데이터베이스 핵심모듈 옵티마이저(Optimizer) 자바 프로그램 안에서 SQL을 실행하기 위한 응용프로그램 인터페이스 JDBC(Java Database Connectivity) 데이터베이스를 자유롭게 사용하기 위하여 만든 응용프로그램의 표준방법 ODBC(Open Database Connectivity) 비즈니스 프로세스를 중심으로 기업 내 각종 애플리케이션 간.. 2021. 4. 8.
정보처리기사 실기 약술형 정리 #7 약술형 정리 #7 인터넷과 같은 분산환경에서 리소스에 대한 정보와 자원 사이의 관계-의미 정보를 기계(컴퓨터)가 처리할 수 있는 온톨로지 형태로 표현하고, 이를 자동화된 기계(컴퓨터)가 처리하도록 하는 지능형 웹이다. 시맨틱 웹(Semantic Web) 데이터들을 유사한 특성을 지닌 몇 개의 소그룹으로 분할하는 작업을 뜻한다. 다른 데이터 마이닝 작업을 위한 성행 작업으로서의 역학을 수행하는 경우가 많다. 군집화(Clustering) 공격자가 웹 서버의 취약점을 이용하여 악성 스크립트 구문을 삽입하고, 정상적인 사용자로 하여금 자신의 의지와는 무관하게 게시판 설정 변경, 회원 정보 변경 등 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격이다. CSRF(Cross-Site Request Forg.. 2021. 4. 7.
정보처리기사 실기 약술형 정리 #6 약술형 정리 #6 기업에서 운영되는 서로 다른 플랫폼(이기종) 및 애플리케이션들 간에 연계해서 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 아키텍처 또는 기술 ESB(Enterprise Service Bus) 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법 화이트박스 테스트(White Box Test) 하나의 트랜잭션이 데이터를 액세스하는 동안, 다른 트랜잭션이 그 데이터 항목을 액세스할 수 없도록 하는 제어하는 기법이다. 로킹(Locking)기법 프로젝트의 특성과 필요에 따라 소프트웨어 개발 프로세스, 기법, 산출물 등을 비즈니스적으로 또는 기술적인 요구에 맞도록 최적화하는 과정 및 방법론이다. 테일러링(Tailoring) 프로그.. 2021. 4. 6.
정보처리기사 실기 약술형 정리 #5 약술형 정리 #5 HTML의 단점을 보완한 인터넷 언어로, SGML의 복잡한 단점을 개선한, 특수한 목적을 갖는 마크업 언어 XML(Extensible Markup Language) 정책, 프로세스, 콘텐츠 구성, 와이어 프레임(UI, UX), 기능 정의, 데이터베이스 연동 등 서비스 구축을 위한 모든 정보가 담겨 있는 설계 산출물 스토리보드 소프트웨어 요구, 설계, 원시 코드 등의 저작자 외의 다른 전문가 또는 팀이 검사하여 오류를 찾아내는 공식적 검토 기법 인스펙션(Inspection) 업무 분석 결과로 도출된 실체(엔티티)와 엔티티 간의 관계를 도식화한 것이다. ERD(E-R Diagram) 웹상에서 구글, 마이크로소프트, 아마존 등에서 제공하는 환경의 네트워크, 보안, 데이터 저장소, 콘텐츠 딜리.. 2021. 4. 5.
정보처리기사 실기 약술형 정리 #1 약술형 정리 #1 애플리케이션을 실행하지 않고, 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도 및 남은 결함을 발견하기 위해 사용하는 도구 정적 분석 도구(Static Analysis Tools) 트랜잭션의 처리가 비정상적으로 종료되어 작업을 취소하고 실행 이전으로 되돌리는 명령어 ROLLBACK 재해 발생 시 데이터 손실을 수용할 수 있는 손실 허용 시점 RPO(Recovery Point Objective, 목표복구시점) 재해로 인하여 서비스가 중단되었을 때 서비스를 복구하는 데 걸리는 최대 허용시간 RTO(Recovery Time Objective, 목표복구시간) 시스템의 성능 향상, 개발 및 운영의 편의성 등을 위해 정규화된 데이터 모델을 통합, 중복, 분리하는 과정으로 의도적으로 정규화.. 2021. 4. 1.
XML(eXtiensible Markup Language) XML(eXtiensible Markup Language) XML • HTML의 단점을 보완한 인터넷 언어로, SGML의 복잡한 단점을 개선한, 특수한 목적을 갖는 마크업 언어 • 유니코드를 기반으로 다국어를 지원 • 사용자가 직접 문서의 태그를 정의할 수 있으며, 다른 사용자가 정의한 태그를 사용할 수 있다. 특징 유니코드 문자(Unicode Text) : 텍스트 데이터 형식으로 유니코드를 사용하여 전 세계 언어를 지원 XML 파서(Parser) : 대다수의 웹 브라우저가 해석을 위한 번역기(Parser)를 내장하고 있다. 마크업(Markup)과 내용(Content) • XML 문서의 문자들은 마크업과 내용으로 구분 • 일반적으로 마크업은 ""로 끝나는 태그(Tag)를 의미하고, 그 외의 문자열은 내용.. 2021. 3. 31.
연계 매커니즘 연계 매커니즘 연계 매커니즘 • 직접 연계 방식과 간접 연계 방식으로 분류 • 데이터의 생성 및 전송을 담당하는 송신 체계와 데이터 수신 및 운영 DB 반영을 담당하는 수신 체계로 구성 직접 연계 방식 • 중간 매개체가 없이 적접 연계하는 방식으로 연계 처리 속도가 빠르고 구현이 단순하다. • 개발 비용과 개발 기간이 짧다. • 송신 시스템과 수신 시스템 간의 결합도가 높아서 시스템 변경에 민감하다. • 보안을 위한 암•복호화 처리와 비즈니스 로직 구현을 인터페이스별로 작성해야 한다. • 전사 시스템 인터페이스에 대한 통합 환경 구축이 어렵다. 직접 연계 방식의 종류 DB LinkDB Link • DB에서 제공하는 DB Link 객체를 이용하는 방식 • 수신 시스템에서 DB Link를 생성하고 송신 시스.. 2021. 3. 30.
요구사항 확인 : 현행 시스템 파악 절차 현행 시스템 파악 절차 현행 시스템 파악 절차 1단계 시스템 구성 파악 시스템 기능 파악 시스템 인터페이스 파악 2단계 아키텍처 구성 파악 소프트웨어 구성 파악 3단계 하드웨어 구성 파악 네트워크 구성 파악 시스템 구성 파악 : 조직의 주요 업무를 담당하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 기술 시스템 기능 파악 : 단위 업무 시스템이 현재 제공하는 기능들을 주요 기능과 하부 기능, 세부 기능으로 구분하여 계층형으로 표시 시스템 인터페이스 파악 : 단위 업무 시스템이 다른 단위 업무 시스템과 주고받는 데이터의 종류, 형식, 프로토콜, 연계 유형, 주기 등을 명시 아키텍처 구성 파악 : 기간 업무 수행에 어떠한 기술 요소들을 사용하고 있는지 최상위 수준에서 계층별로 표현한 아키텍처 구성도로 .. 2021. 3. 29.
객체 지향 프로그래밍 언어 객체 지향 프로그래밍 언어 객체 지향 프로그래밍 언어 객체 지향 언어는 객체의 개념을 중심으로 하는 컴퓨터 프로그래밍 언어. 데이터와 행동을 모두 통합하는 다양한 유형의 객체 조합으로 소프트웨어를 구성. 객체 지향 프로그래밍 언어의 종류 Java •분산언어이며, 멀티 스레딩 기능을 통해 여러 작업을 동시에 수행할 수 있는 프로그램을 작성할 수 있다. •보안기능으로 안전한 시스템을 개발 •캡슐화가 가능하고 재사용성 높음 C++ •C언어에 객체지향 개념을 적용한 언어로 C언어의 고급버전이라고 할 수 있다. •모든 문제를 객체로 모델링하여 표현. Smalltalk •순수 객체지향 언어이다. C++나 Java와 달리 원시 자료형이 없고, 모든 정수, 부동소수, 문자열, 블록을 포함한 모든 것이 객체며 클래스가 .. 2021. 3. 28.
절차적 프로그래밍 언어 절차적 프로그래밍 언어 절차적 프로그래밍 언어 일련의 처리 절차를 정해진 문법에 따라 순서대로 기술해 나가는 언어. 컴퓨터가 무엇을 해야하는지 이해할 수 있도록 각 단계는 체계적으로 순서대로 수행된다. 절차적 프로그래밍 언어의 종류 C 언어 •1972년 데니스 리치(Dennis Ritchie)에 의해 개발 •주로 운영 체제를 작성하기 위한 시스템 프로그래밍 언어로 개발 •메모리에 대한 낮은 수준의 접근 •C언어에는 라이브러리에 저장된 헤더 파일을 사용하여 특정 함수를 사용할 수 있는 것과 같이 일반적인 문제를 해결하기 위한 자체 라이브러리가 있다. •중간 수준의 언어로 어셈블리 언어 기능과 고급 언어 기능이 결합된 형태 •확장이 쉽다. •C언어로 작성된 프로그램은 변경 사항이 없거나 약간만 변경해도 모든.. 2021. 3. 27.
럼바우(Rumbaugh) 객체지향 분석 기법 럼바우(Rumbaugh) 객체지향 분석 기법 객체 지향 분석 기법 정의 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 객체지향 분석 기법 모델링의 목적 물리적 엔티티를 빌드하기 전에 테스트 고객과의 소통 시각화 복잡성 감소 종류 객체 모델링(Object modeling) - 객체 다이어그램으로 표시. 가장 중요하며 가장 선행되는 단계 동적 모델링(Dynamic modeling) - 상태 다이어그램(상태도)를 이용 기능 모델링(Functional) - 자료흐름도를 이용하여 프로세서들의 처리 과정을 기술 럼바우 객체 지향 분석 절차 객체 모형 → 동적 모형 → 기능 모형 2021. 2. 27.
인터페이스 구현 검증 도구, 감시도구 인터페이스 구현 검증 도구, 감시도구 인터페이스 구현 검증 도구 인터페이스가 정상적으로 작동하는 지 확인하기 위한 도구 인터페이스 구현을 검증하기 위해서는 인터페이스 단위 기능 및 시나리오에 기반한 통합 테스트가 필요하다. 인터페이스 구현 검증 도구의 종류 xUnit : Java, C++, Net 등 다양한 언어를 지원 STAF : 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원 FitNesse : 웹 기반 테스트 케이스 설계, 실행, 결과 확인 등을 지원 NTAF : STAF와 FitNesse를 통합 Selenium : 다양한 브라우저 지원 및 개발 언어를 지원 watir : Ruby 기반 인터페이스 구현 감시 도구 APM(Application Performance Management)을 사용하.. 2021. 2. 25.
제품 소프트웨어 패키징 도구 제품 소프트웨어 패키징 도구 제품 소프트웨어 패키징 도구 패키징 작업 진행 시에 암호화/조안 기능을 고려하여 패키징할 수 있도록 도와준다. 제품 소프트웨어 패키징 도구의 개념 배포를 위한 패키징 시에 디지털 콘텐츠의 지적 재산권을 보호하고 관리하는 기능 제공. 안전한 유통과 배포를 보장하는 도구이자 솔루션. 패키징 도구 활용 시 고려 사항 반드시 내부 콘텐츠에 대한 암호화 및 보안을 고려한다. 추가로 다양한 이기종 연동을 고려한다. 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다. 제품 소프트웨어 종류에 적합한 암호화 알고리즘을 적용한다. 2021. 2. 23.