본문 바로가기

분류 전체보기

(102)
[정보처리기사] Chapter 01. 데이터베이스 구축: 논리 데이터베이스 설계 1. 데이터베이스 설계 (중요도: A) 사용자 요구를 분석하여 컴퓨터에 저장할 수 있는 데이터베이스 구조로 변형 후 특정 DBMS로 구현하는 것을 데이터베이스 설계라고 한다. 1.1. 데이터베이스 설계 시 고려사항 ◍ 무결성(정확성): 삽입, 삭제, 갱신 등의 연산 후에도 DB에 저장된 데이터가 정해진 제약 조건을 항상 만족해야 한다. ◍ 일관성: DB에 저장된 데이터들 사이 또는 특정 쿼리에 대한 응답이 처음부터 끝까지 변함없이 일정해야 한다. ◍ 회복: 시스템에 장애가 발생했을 때 발생 직전 상태로 복구할 수 있어야 한다. ◍ 보안: 데이터 노출, 변경, 손실로부터 보호할 수 있어야 한다. ◍ 효율성: 응답시간의 단축, 시스템의 생산성, 저장 공간의 최적화 등이 가능해야 한다. ◍데이터베이스 확장: ..
[JAVA] Chapter 12. 제어문- 흐름제어문 1. 흐름제어(분기)문 반복문은 조건이 참이라면 지정한 실행문을 지속적으로 반복한다. 경 우에 따라서 조건의 값이 변화하지 않도록 동작을 구성하기도 한다. 이런 경우, 무한 루프가 생성되어 지속적으로 반복한다. 무한반복은 알고리즘이 끝나지 않음을 이야기하며 메모리 낭비를 비롯하여 보안 자체의 취약점으로 작용하기도 한다. 이러한 문제를 해결하려면 특정 조건에 따라 예외 조건을 주어야한다. 이때 사용하는 것이 바로 흐름제어문이다. 흐름제어문에는 break, continue, return 총 3가지가 있다. 2. break; 레이블이나 루프 밖 등 특정 위치로 분기하는 제어문이다. break는 그 문장이 포함된 루프만 빠져나온다. 2중 for 혹은 while에서 사용한다면 문장이 포함된 블록("{}안에") 항..
[JAVA] Chapter 11. 제어문 - 반복문 while 1. 반복문 while while (조건){실행문;} while은 조건이 ‘참’일 경우 실행문을 반복하는 반복문으로 for과 다르게 조건에 증감 연산과 범위가 정해지지 않는다. 이러한 특성 때문에 일반적으로 사용자가 입력한 데이터에 대한 반복이나 정보 처리에 사용한다. 다만 주의할 것은 증감 연산이 조건에 포함되지 않아 ‘무한 루프’를 생성할 수 있으며, 이를 방지하기 위해 예외 처리(break 등) 혹은 증감연산을 실행문에 포함해 주어야 한다. 2. 반복문 while의 연산 순서 int i = 1; while ( i < 6) ① ④ { System.out.println(i); ② ⑤ i++; ③ ⑥ } System.out.println(“while 항목 밖에서의 i =”+i ); //조건==거짓 whi..
[정보처리기사] Chapter 05. 소프트웨어 개발: 인터페이스 구현 1. 모듈 간 공통 기능 및 데이터 인터페이스 확인 (중요도: C) 모듈 간 공통 기능 및 데이터 인터페이스는 인터페이스 설계서에서 정의한 모듈의 기능을 기반으로 확인 후, 모듈 간 연계가 필요한 인터페이스의 기능을 식별하는데 사용된다. 공통 기능은 모듈의 기능 중 공통적으로 제공되는 기능이며, 데이터 인터페이스는 모듈 간 교환되는 데이터가 저장될 파라미터를 의미한다. 모듈 간 공통 기능 및 데이터 인터페이스를 확인하는 순서는 인터페이스 설계서를 통해 모듈별 기능을 확인하고, 외부 및 내부 모듈을 기반으로 공통적으로 제공되는 기능과 각 데이터의 인터페이스를 확인하는 것이다. 1.1. 인터페이스 설계서 인터페이스 설계서는 시스템 사이의 데이터 교환 및 처리를 위해 교환 데이터 및 관련 업무, 송수신 시스템..
[정보처리기사] Chapter 04. 소프트웨어 개발: 애플리케이션 테스트 관리 1. 애플리케이션 테스트 (중요도: B) 애플리케이션 테스트는 애플리케이션에 잠재되어 있는 결함을 찾아내는 행위 또는 절차이다. 애플리케이션 테스트는 고객의 요구사항을 만족시키는지 확인(Validation: 사용자 입장에서 SW가 고객의 요구에 맞게 구현되었는지 확인 )하고, 기능을 정확히 수행하는지 검증(Verification: 개발자 입장에서 SW가 명세서에 맞게 만들어졌는지 점검 )한다. 애플리케이션 테스트를 실행하기 전에 개발한 소프트웨어의 유형을 분류하고 특성을 정리하여 테스트할 사항을 정리한다. ▶ 소프트웨어의 분류 1.1. 애플리케이션 테스트의 필요성 애플리케이션 테스트를 통해 프로그램 실행 전에 오류를 발견하여 예방할 수 있다. 이로써 사용자 요구사항을 만족시키기 위해 반복적으로 테스트하므..
[정보처리기사] Chapter 03. 소프트웨어 개발: 제품 소프트웨어 패키징 1. 소프트웨어 패키징 (중요도: B) 소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 소스 코드는 향후 관리를 고려해 모듈화하여 패키징하며, 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징한다. 사용자의 편의성 및 실행 환경을 우선적으로 고려해야 하며, 따라서 개발자가 아닌 사용자 중심으로 패키징을 진행해야 한다. 1.1. 패키징 시 고려사항 사용자의 시스템 환경, 즉 OS, CPU, 메모리 등에 필요한 최소 환경을 정의한다. UI는 시각적인 자료와 함께 제공하고 매뉴얼과 일치시켜 패키징한다. 소프트웨어를 패키징해 배포한 이후, 하드웨어와 함께 관리될 수 있도록 Managed Service (고객이 사용 중인 소프트웨어..
[정보처리기사] Chapter 02. 소프트웨어 개발: 통합 구현 1. 단위 모듈 구현 (중요도: C) 소프트웨어 구현에 필요한 여러 동작 중, 한 가지 동작 수행 기능을 모듈로 표현한 것이 단위 모듈(Unit Module)이다. 단위 모듈로 구현되는 하나의 기능을 단위 기능이라고 칭하며, 단위 모듈은 사용자나 다른 모듈로부터 값을 전달받아 시작되는 작은 프로그램을 의미하기도 한다. 하나의 기능을 단위로 지칭하기 때문에 두 개의 단위 모듈이 합쳐지면 두개의 기능을 구현할 수 있다. 단위 모듈의 구성 요소는 처리문, 명령문, 데이터 구조 등이 있으며, 다른 모듈에 호출되거나 삽입되기도 한다. 또한 독립적인 컴파일이 가능하다. 단위 모듈을 구현하기 위해서는 단위 기능 명세서를 작성한 후 입·출력 기능과 알고리즘을 구현해야 한다. 단위 모듈 구현 순서: 단위 기능 명세서 작..
[JAVA] Chapter 10. 제어문 - 반복문 for 1. 반복문 개요 특정 동작을 조건이나 횟수에 따라 반복(Loop)하는 것을 반복문이라고 한다. 2. 반복문 for for (초기화; 종료 조건(참 혹은 거짓 여부); 증감 수식) {실행문} for 반복문은 초기값을 확인한 뒤에 종료 조건의 충족여부를 확인하고, 종료 조건이 참이라면 증감 수식을 수행한다. 그 뒤 ‘실행문’을 수행하고 ‘종료 조건’의 충족 여부를 확인하여 증감과 실행문을 반복한다. int i = 0; System.out.print(++i); System.out.print(++i); System.out.print(++i); System.out.print(++i); System.out.print(++i); ++i // 아래와 위의 동작은 동일하다. 결국 for문을 쓰는 것이 더 효율이 좋다는..