목록분류 전체보기 (265)
SW
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b9CzD5/btqGG9DK3z4/hsxxJLU1YOz7mXAEKNtn2K/img.jpg)
49. 애플리케이션 테스트 ★★ 1. 애플리케이션 테스트의 개념 - 애플리케이션 테스트는 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차이다. - 고객의 요구사항을 만족시키는지 확인(Validation)하고 소프트웨어가 기능을 정확히 수행하는지 검증(Verification)한다. - 애플리케이션 테스트를 진행하기 전에 개발한 소프트웨어의 유형을 분류하고 특성을 정리해서 중점적으로 테스트할 사항을 정리해야 한다. - Validation : 사용자의 입장에서 개발한 소프트웨어가 고객의 요구사항에 맞게 구현되었는지를 확인하는 것 - Verification : 개발자의 입장에서 개발한 소프트웨어가 명세서에 맞게 만들어졌는지를 점검하는 것 2. 애플리케이션 테스트의 필요성 - 프로그램 실행 전..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vVicD/btqGK5fxcdJ/KUprKXHnpMudRln2tl6syk/img.jpg)
45. 소프트웨어 사용자 매뉴얼 작성 ★ 1. 소프트웨어 사용자 매뉴얼의 개요 - 소프트웨어 사용자 매뉴얼은 사용자가 소프트웨어를 사용하는 과정에서 필요한 내용을 문서로 기록한 설명서와 안내서이다. - 사용에 필요한 절차, 환경 등의 제반 사항이 모두 포함되도록 작성 - 배포 후 발생될 수 있는 오류에 대한 패치나 기능에 대한 업그레이드를 위해 매뉴얼의 버전을 관리한다. - 개별적으로 동작이 가능한 컴포넌트 단위로 매뉴얼을 작성 2. 서문 - 문서 이력, 사용자 매뉴얼의 주석, 기록 보관을 위해 필요한 내용을 기술한다. - 사용자 매뉴얼의 주석 : 주의 사항과 참고사항을 기술한다. 3. 기본 사항 - 소프트웨어의 개요, 소프트웨어 사용 환경, 소프트웨어 관리, 버전별 특징, 기능특징, 소프트웨어 구동 환..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/erPeJQ/btqGJGAibTy/JS7lfjxRDeE56gg8dAOjdK/img.jpg)
41. 소프트웨어 패키징 ★★ 1. 소프트웨어 패키징의 개요 - 소프트웨어 패키징이란 모듈로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. - 개발자가 아니라 사용자가 중심으로 진행한다. - 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다. - 사용자가 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징 - 사용자를 중심으로 진행되는 작업이므로 사용자의 편의성 및 실행 환경을 우선적 고려 2. 패키징 시 고려사항 - 사용자의 시스템 환경, 즉 운영체제(OS), CPU, 메모리 등에 필요한 최소 환경을 정의한다. - UI는 매뉴얼과 일치시켜 패키징한다. - 하드웨어와 함께 관리될 수 있도록 Managed Service 형태로 제공하는 것이 좋다. ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zpNUH/btqGH1rd9Rl/kSaukgTxCr04peqxdP2zd1/img.jpg)
38. 단위 모듈 구현 ★ 1. 단위 모듈(Unit Module)의 개요 - 단위 모듈은 소프트웨어 구현에 필요한 여러 동작 중 한 가지 동작을 수행하는 기능을 모듈로 구현한 것이다. - 단위 모듈로 구현되는 하나의 기능을 단위 기능이라고 부른다. - 단위 모듈은 독립적 컴파일이 가능하며, 다른 모듈에 호출되거나 삽입되기도 한다. - 단위 모듈을 구현하기 위해서는 단위 기능 명세서를 작성한 후 입출력 기능과 알고리즘을 구현해야 한다. 2. 단위 기능 명세서 작성 - 단위 기능 명세서는 설계 과정에서 작성하는 기능 및 코드 명세서나 설계 지침과 같이 단위 기능을 명세화한 문서들을 의미한다. - 단위 기능 명세서를 작성하는 작성하는 단계에서는 복잡한 시스템을 단순하게 구현하기 위한 추상화 작업이 필요하다. ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9JTwB/btqGPPwly8d/5alXgObqfRQbwmsIPGAhCK/img.jpg)
189. 서비스 공격 유형 ★★★ 1. 서비스 거부(DoS; Denial of Service) 공격의 개념 - 서비스 거부 공격이란 표적이 되는 서버의 자원을 고갈시킬 목적으로 다수의 공겨자 또는 시스템에서 대량의 데이터를 한 곳의 서버에 집중적으로 전송함으로써, 표적이 되는 정상적인 기능을 방해하는 것이다. - 서비스 거부 공격의 유형에는 Ping of Death, SMURFING, SYN Flooding, TearDrop, Land, DDos 등이 있다. 2. Ping of Death(죽음의 핑) - Ping of Death는 Ping 명령을 전송할 때 패킷의 크기를 인터넷 프로토콜 허용 범위(65,536 바이트) 이상으로 전송하여 공격 대상의 네트워크를 마비시키는 서비스 거부 공격 방법이다. - I..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/K3LCG/btqGHqkudGE/YKknWXSiwHs8l64EsJvZo0/img.jpg)
184. 에러처리 ★★ 1. 에러처리의 개요 - 에러처리는 소프트웨어 실행 중 발생할 수 있는 오류들을 사전에 정의하여 오류로 인해 발생할 수 있는 문제들을 예방하기 위한 보안 점검 항목들이다. 2. 오류 메시지를 통한 정보노출 - 오류 메시지를 통한 정보노출은 오류 발생으로 실행 환경, 사용자 정보, 디버깅 정보 등의 중요 정보를 소프트웨어가 메시지로 외부에 노출하는 보안 약점이다. - 오류 메시지를 통해 노출되는 경로 및 디버깅 정보는 해커의 악의적인 행위를 도울 수 있다. - 예외 처리 구문에 예외의 이름이나 스택 트레이스를 출력하도록 코딩한 경우 해커는 소프트웨어의 내부구조를 쉽게 파악할 수 있다. - 오류 발생 시 가능한 한 내부에서만 처리되도록 하거나 메시지를 출력할 경우 최소한의 정보 또는 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/EZfW3/btqGHpTmcW1/HtKsx81f2lujXdv8FAfog0/img.jpg)
179. Secure SDLC ★★★ 1. Secure SDLC의 개요 - Secure SDLC는 보안상 안전한 소프트웨어를 갭라하기 위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것을 의미한다. - Secure SDLC는 소프트웨어의 유지 보수 단계에서 보안 이슈를 해결하기 위해 소모되는 많은 비용을 최소화하기 위해 등장했다. - Secure SDLC의 대표적인 방법론에는 Secure Software 사의 CLASP, Microsoft사의 SDL이 있다. - 요구사항 분석, 설계, 구현, 테스트, 유지 보수 등 SLDC 전체 단계에 걸쳐 수행되어야 할 보안 활동을 제시한다. 2. 요구사항 분석 단계에서의 보안 활동 - 요구사항 분석 단계에서는 보안 항목에 해당하는 요구사항을 식별하는 작업을 수행한..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9PsDN/btqGGHfEXyd/3DisXhZaX3Fvk6wo9opu40/img.jpg)
174. HW 관련 신기술 ★★★ 1. 고가용성(HA; High Availability) - 긴 시간동안 안정적인 서비스 운영을 위해 장애 발생 시 즉시 다른 시스템으로 대체 가능한 환경을 구축하는 메커니즘을 의미한다. - 가용성을 극대화하는 방법으로는 클러스터, 이중화 등이 있다. 2. 3D Printing(Three Dimension Printing) - 대상을 평면으로 출력하는 것이 아니라 손으로 만질 수 있는 실제 물체로 만들어내는 것 3. 4D Printing(Fourth Dimension Printing) - 특정 시간이나 환경 조건이 갖춰지면 스스로 형태를 변화시키거나 제조되는 자가 조립 기술이 적용된 제품을 3D Printing하는 기술 4. RAID - 여러 개의 하드디스크로 디스크 배열..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/DyssS/btqGDPkLgNQ/oTkMi8fIThIrXR8rREOBI0/img.jpg)
170. SW 관련 신기술 ★★★ 1. 인공지능(AI; Artificial Intelligence) - 인공지능(AI)은 인간의 두뇌와 같이 컴퓨터 스스로 추론, 학습, 판단 등 인간지능적인 작업을 수행하는 시스템이다. - 개발 언어로는 리스프(LISP), 프롤로그(PROLOG) 등이 있다. 2. 뉴럴링크(Neuralink) - 사람의 뇌와 컴퓨터를 결합하는 기술을 개발하기 위해 설립한 회사 3. 딥 러닝(Deep Learning) - 딥 러닝은 인간의 두뇌를 모델로 만들어진 인공 신경망(ANN; Artiifcial Neural Network)을 기반으로 하는 기계 학습 기술이다. - 컴퓨터가 마치 사람처럼 스스로 학습할 수 있어 특정 업무를 수행할 때 정형화된 데이터를 입력받지 않고 스스로 필요한 데이..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/brnrDf/btqGH1EcXik/cge6YTzA7TXrqpDcVefBUk/img.jpg)
166. 네트워크 관련 신기술 ★★★ 1. IoT(Internet of Things, 사물 인터넷) - IoT는 다양한 사물들을 인터넷으로 서로 연결하여 진보된 서비스를 제공하기 위한 서비스 기반 기술 - 유비쿼터스 공간을 구현하기 위한 컴퓨팅 기기들이 환경과 사물에 심겨 환경이나 사물 그 자체가 지능화되는 것부터 사람과 사물, 사물과 사물 간에 지능 통신을 할 수 있는 엠투엠(M2M; Machine to Machine)의 개념을 인터넷으로 확장하여 사물은 물론, 현실과 가상 세계의 모든 정보와 상호작용하는 IoT 개념으로 진화했다. - 주요 기술로는 스마트 센싱 기술, 유무선 통신 및 네트워크 인프라 기술 등이 있다. - 정보 공유에 대한 부작용을 최소화하기 위한 정보 보안 기술의 적용이 중요하다. 2..