정보처리기사 34

데이터베이스 설계

데이터베이스 설계 순서1. 요구 조건 분석 : 요구 조건 명세서 작성2. 개념적 설계 : 개념 스키마, 트랜잭션 모델링, E-R 모델3. 논리적 설계: 목표 DBMS에 맞는 논리 스키마 설계, 트랜잭션 인터페이스 설계4. 물리적 설계: 목표 DBMS에 맞는 물리적 구조의 데이터로 변환5. 구현: 목표 DBMS의 DDL(데이터 정의어)로 데이터베이스 생성, 트랜잭션 생성개념적 설계(정보 모델링, 개념화)- 개념적 설계: 정보의 구조를 얻기 위하여 현실 세계의 무한성과 계속성을 이해하고, 다른 사람과 통신하기 위하여 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정- 개념적 설계 단계에서는 개념 스키마 모델링과 트랜잭션 모델링을 병행 수행- 개념적 설계 단계에서는 요구 분석 단계에서 나온 결과인 요구 ..

정보처리기사 2025.02.16

인터페이스 보안 방법

인터페이스 보안 기능 적용- 인터페이스 보안 기능: 일반적으로 네트워크, 애플리케이션, 데이터베이스 영역에 적용네트워크 영역인터페이스 송/수신 간 스니핑(Snifing)등을 이용한 데이터 탈취 및 변조 위협을 방지하기 위해 네트워크 트래픽에 대한 암호화를 설정함암호화는 인터페이스 아키텍처에 따라 IPSec, SSL, S-HTTP 등의 다양한 방식으로 적용함 애플리케이션 영역소프트웨어 개발 보안 가이드를 참조하여 애플리케이션 코드 상의 보안 취약점을 보완하는 방향으로 애플리케이션 보안 기능을 적용함데이터베이스 영역데이터베이스, 스키마, 엔티티의 접근 권한과 프로시저, 트리거 등 데이터베이스 동작 객체의 보안 취약점에 보안 기능을 적용함- IPSec:(IP Security): 네트워크 계층에서 IP 패킷 단..

정보처리기사 2025.02.16

애플리케이션 간 연계

EAI(Enterprise Application Integraion)- 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계, 통합 등 상호 연동이 가능하게 해주는 솔루션- EAI는 비즈니스 간 통합 및 연계성을 증대시켜 효율성 및 각 시스템 간의 확장성(Determinacy)을 높여준다.- EAI의 구축 유형유형기능Point-to-Point가장 기본적인 애플리케이션 통합 방식으로, 애플리케이션을 1:1로 연결변경 및 재사용이 어려움Hub & Spoke단일 접점인 허브 시스템을 통해 데이터를 전송하는 중앙 집중형 방식확장 및 유지 보수가 용이함허브 장애 발생 시 시스템 전체에 영향을 미침Message Bus(ESB 방식)애플리케이션 사이에 미들웨어를 두어 처리하는 방식확장성이 뛰어나며 대용량 처리..

정보처리기사 2025.02.16

코드 최적화

소스 코드 최적화- 나쁜 코드를 배제하고 클린 코드로 작성하는 것.- 클린 코드: 누구나 쉽게 이해하고 수정 및 추가할 수 있는 단순, 명료한 코드, 즉 잘 작성된 - 나쁜 코드: 1) 프로그램의 로직이 복잡하고 이해하기 어려운 코드로, 스파게티 코드와 외계인 코드가 있음2) 스파게티 코드: 코드의 로직이 서로 복잡하게 얽혀있는 코드3) 외계인 코드: 아주 오래되거나 참고 문서 또는 개발자가 없어서 유지보수 작업이 어려운 코드클린코드 작성 원칙가독성누구든지 코드를 쉽게 읽을 수 있도록 작성함코드 작성 시 이해하기 쉬운 용어를 사용하거나 들여쓰기 기능 등을 사용함단순성코드를 간단하게 작성함한 번에 한 가지를 처리하도록 코드를 작성하고 클래스/메소드/함수 등을 최소 단위로 분리함의존성 배제코드가 다른 모듈에..

정보처리기사 2025.02.15

애플리케이션 성능 분석

결함(Fault)- 결함은 오류 발생, 작동 실패와 같이 소프트웨어가 개발자가 설계한 것과 다르게 동작하거나 다른 결과가 발생되는 것을 의미- 사용자가 예상한 결과와 실행 결과 간의 차이나 업무 내용과의 불일치 등으로 인해 변경이 필요한 부분도 모두 결함에 해당한다.애플리케이션 성능 분석- 사용자가 요구한 기능을 최소한의 자원을 사용하여 최대한 많은 기능을 신속하게 처리하는 정도를 나타냄- 애플리케이션 성능 측정 지표처리량(Throughput)일정 시간 내에 애플리케이션이 처리하는 일의 양응답 시간(Response Time)애플리케이션에 요청을 전달한 시간부터 응답이 도착할 때까지 걸린 시간경과 시간(Turn Around Time)애플리케이션에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간자원 ..

정보처리기사 2025.02.15

테스트 자동화 도구

테스트 자동화란?사람이 반복적으로 수행하던 테스트 절차를 스크립트 형태로 구현하는 자동화 도구를 적용함으로써 쉽고 효율적으로 테스트를 수행할 수 있도록 한 것- 테스트 자동화 도구의 유형정적 분석 도구(Static Analysis)프로그램을 실행하지 않고 분석하는 도구로, 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도 및 남은 결함 등을 발견하기 위해 사용된다.테스트 케이스 생성 도구(Test Case Ganaration Tools)자료 흐름도: 자료 원시 프로그램을 입력받아 파싱한 후 자료 흐름도를 작성기능 테스트: 주어진 기능을 구동시키는 모든 가능한 상태를 파악하여 이에 대한 입력을 작성입력 도메인 분석: 원시 코드의 내부를 참조하지 않고, 입력 변수의 도메인을 분석하여 테스트 데이터를 ..

정보처리기사 2025.02.14

애플리케이션 테스트 프로세스

애플리케이션 테스트 프로세스- 개발된 소프트웨어가 사용자의 요구대로 만들어졌는지, 결함은 없는지 등을 테스트하는 절차- 순서테스트 계획프로젝트 계획서, 요구 명세서 등을 기반으로 테스트 목표를 정의하고 테스트 대상 및 범위를 결정테스트 분석 및 디자인테스트의 목적과 원칙을 검토하고 사용자의 요구사항을 분석함테스트 케이스 및 시나리오 작성테스트 케이스의 설계 기법에 따라 테스트 케이스를 작성하고 검토 및 확인한 후 테스트 시나리오를 작성함테스트 수행테스트 환경을 구축한 후 테스트를 수행테스트의 실행 결과를 측정하여 기록함테스트 결과 평가 및 리포팅테스트 결과를 비교 분석하여 테스트 결과서를 작성함결함 추적 및 관리테스트를 수행한 후 결함이 어디에서 발생했는지, 어떤 종류의 결함인지 등 결함을 추적하고 관리..

정보처리기사 2025.02.14

기타 애플리케이션 테스트 기법

하향식 통합 테스트(Top Down Integration Test)- 프로그램의 상위 모듈에서 하위 모듈 방향으로 통합하면서 테스트하는 기법- 주요 제어 모듈을 기준으로 하여 아래 단계로 이동하면서 통합하는데, 이때 깊이 우선 통합법이나 넓이 우선 통합법을 이용- 테스트 초기부터 사용자에게 시스템 구조를 보여줄 수 있다- 상위 모듈에서는 테스트 케이스를 사용하기 어렵다.상향식 통합 테스트(Bottom Up Integration Test)- 프로그램의 하위 모듈에서 상위 모듈 방향으로 통합하면서 테스트하는 기법- 가장 하위 단계의 모듈부터 통합 및 테스트가 수행되므로 스텁(Stub)은 필요하지 않지만, 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터(Cluster)가 필요상테스트 드라이버와 테..

정보처리기사 2025.02.14

개발 단계에 따른 애플리케이션 테스트

개발 단계에 따른 애플리케이션 테스트- 소프트웨어 개발 단계에 따라 단위 테스트, 통합 테스트, 시스템 테스트,. 인수 테스트로 분류 가능하며, 이것을 테스트 레벨이라고 한다.- 애플리케이션 테스트와 소프트웨어 개발 단계를 연결하여 표현한 것을 V-모델이라고 한다.(요구사항-분석-설계-구현-단위 테스트-통합 테스트-시스템 테스트-인수 테스트)단위 테스트(Unit Test)- 코딩 직후 소프트웨어 설계의 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 테스트하는 것- 단위 테스트에서는 인터페이스, 외부적 I/O, 자료 구조, 독립적 기초 경로, 오류처리 경로, 경계 조건 등을 검사- 단위 테스트는 사용자의 요구사항을 기반으로 한 기능성 테스트를 최우선으로 수행- 단위 테스트는 구조 기반 테스트와 명세 기반 테..

정보처리기사 2025.02.14

블랙박스 테스트와 화이트박스 테스트

화이트박스 테스트(White Box Test)- 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법- 모듈 안의 작동을 직접 관찰- 원시 코드(모듈)의 모든 문장을 한 번 이상 실행함으로써 수행됨- 프로그램의 제어 구조에 따라 선택, 반복 등의 분기점 부분들을 수행함으로써 논리적 경로를 제어화이트박스 테스트의 종류기초 경로 검사(Base Path Testing)대표적인 화이트박스 테스트 기법테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주는 테스트 기법으로, 테스트 측정 결과는 실행 경로의 기초를 정의하는 데 지침으로 사용됨제어 구조 검사(Control Structrue Testing)조건 검사(Condition Tes..

정보처리기사 2025.02.13