Clean & Blue 자세히보기
반응형

전공/정보처리기사 실기 36

정보처리기사 실기 - 11. 제품 소프트웨어 패키징 /코드서명/릴리즈노트/난독화/형상관리

1) 제품 소프트웨어 패키징 - 제품 소프트웨어 패키징 개발이 완료된 소프트웨어를 고객에게 전달하기 위해 패키징, 설계 및 매뉴얼을 작성하는 활동 제품 설명서 - 제품명/제품의 소개/시스템 설계/주요 기능/연락처 사용자 매뉴얼 실행 프로그램 - 제품 소프트웨어의 실행프로그램 패키징 MSN사의 윈도우 내장 프로그램 iExpress 이용 - 코드 서명(Code Signing) 수행 자사프로그램(보안 모듈)을 배포할 때 해당 기업이 제작 배포한 것임을 증명하기 위해 사용하는 전자서명 -> Signcode.exe 파일과 기업용 인증서 필요 - 제품 소프트웨어 패키징하기(Boxing) - 릴리즈노트 애플리케이션 최종 사용자에게 전달되는 제품의 릴리즈 정보에 대한 공유 정보 -> 변화 설명, 변화 이유 등 -> 현..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(8) /기본 개발환경 구축

4) 기본 개발환경 구축 - CentOS - RHEL의 복제본 - RHEL - Red Hot Enterprise Linux의 약자, 레드햇에서 만들어 판매하는 리눅스 - 7버전 다운로드 -> https://www.centos.org/download/ Download As you download and use CentOS Linux, the CentOS Project invites you to be a part of the community as a contributor. There are many ways to contribute to the project, from documentation, QA, and testing to coding changes for SIGs, providing mirrorin..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(7) /흐름제어/혼잡제어/UDP/라우팅

- TCP의 흐름제어 기법 Stop and Waiting Flow Control : 수신자가 에러 체크 후 에러가 있으면 에러가 발생한 데이터부터 하나씩 다시 받는 방식 -> 에러 없으면 ACK전송 슬라이딩 윈도우 : 수신 측에서 제대로 수신한 바이트에 대한 확인 응답을 전송할 때 마다 버퍼의 범위가 한꺼번에 미끄러지듯이 이동 -> 호스트는 가가 연결마나 하나의 윈도우 이용 - TCP의 혼잡제어 기법 네트워크가 혼잡하다고 판단될 때 송신률을 감속 -> 패킷 전송 지연 혹은 패킷 손실을 막는 것이 목적 슬로우 스타트(Slow Start) : 미리 정해진 임계 값에 도달할 때까지 윈도우의 크기를 2배씩 증가시킴 -> 매 전송마다 두배씩 증가하기 때문에 전송되는 데이터의 크기는 지수 함수적으로 증가 혼잡 회피..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(6) /네트워크 기초 활용하기 -1

3) 네트워크 기초 활용하기 - 네트워크 계층 구조 - OSI(Open System Interconnection) 7 Layer 네트워크 통신에서 생기는 여러가지 충돌문제를 완화하기 위해 국제표준기구(ISO)에서 제시한 네트워크 기본 모델 -> 서로 독립적으로 구성 -> 하위 계층의 기능을 이용하여 상위 계층에 기능을 제공 응용 계층(Application Layer) - 응용 서비스 연결 - HTTP, TELNET, FTP, SSH, SMTP, SNMP - DATA단위 표현 계층(Presentation Layer) - 데이터 형식 설정, 암호화, 해독 - SSL, JPEG, MPEG - DATA단위 세션 계층(Session Layer) - 연결 접속 및 동기 제어 - SSH - DATA단위 전송 계층(T..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(5) /데이터베이스 기초 활용하기 -2

- 관계 대수(Relation Algebra) 관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 언어 - 순수관계 연산자 select : 시그마(σ) : σ(조건)(R) project : 파이(π) : π(속성리스트)(R) : 주어진 릴레이션에서 속성 리스트에 제시된 애트리뷰트만을 추출하는 연산, 수직 연산자 join : 조인(⋈) : R⋈키속성r=키속성sS : 공통 속성을 중심으로 두개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만듦 -> =, ≠, , ≤ 등 비교 연산자를 θ로 일반화하여 세타조인이라고도 함 division : ÷ : 릴레이션 R(X), S(Y)가 있을 때, R의 속성이 S의 속성값을 모두 가진 튜플에서 S가 가진속성을 제외 -> R[속성r ÷ 속성..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(4) /데이터베이스 기초 활용하기 -1

2) 데이터베이스 기초 활용하기 - 데이터베이스의 종류 -> 오라클의 Oracle과 MySQL, 티맥스의 Tibero, MSN사의 SQL Server, IBM의 DBI등 -> 오픈소스로는 PostgreSQL, MariaDB 등 - RDBMS : 테이블 구조관계 기본키, SQL 질의어 - OODBMS : 엔티티간 포인팅 방식 객체 식별(OID), OQL(Object Query Language) - ORDBMS : RDBMS + OODBMS, SQL 확장질의어 사용(SQL3) - NoSQL(Not Only SQL) -> 페타바이트 수준의 대량의 데이터처리 NoSQL은 수평적 확장이 가능, 다수 서버들에 데이터 복제 및 분산 저장이 가능 Schema-less : 고정된 데이터 스키마 없이 키(key)값을 이용..

정보처리기사 실기 - 10 . 응용 SW 기초 기술 활용(3) /운영체제 기초 활용하기 -3

- 작업 우선순위 - 프로세스 : 프로그램이나 명령어를 실행 시 메모리에 적재되어 동작하는 상태 -> 식별번호인 PID 할당 -> 최상위 프로세스는 항상 init -> 나머지는 항상 부모 프로세스인 PPID를 가짐 -> Linux는 모든 프로세스가 공평하게 자원을 배분받지는 못함 * inode : 파일에 대한 정보(형식, 권한, 소유자, 크기 등)를 저장하는 자료구조(구조체) - Linux 프로세스 우선순위 관리 - 우선순위 값의 범위는 -20 ~ +19 이며 낮을수록 우선순위 높음 - jobs : 명령어 실행 시 백그라운드로 실행되는 작업 번호 목록 확인 * 명령어 뒤에 & 붙이면 백그라운드로 실행 - PRI(시스템이 nice의 데이터를 이용하여 계산한 실제 우선순위 값) - NI : nice에 의해 ..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(2) /운영체제 기초 활용하기 -2

- Linux/Unix 기본 명령어 사용자 - id, last, who 파일 처리 - ls, pwd, rm, cp, mv, tar 프로세스 - ps, pmap, kill, pid 파일 permision - chmod, chown 네트워크 - ifconfig, dig, host 인스톨 - yum, rpm 검색 - grep, find, locate 디렉토리 이동/생성 - cd, mkdir -> ls --color : ls 결과를 컬러로 표시 - head -n 2 : 파일의 첫 2줄 표시 - ls -- -test.txt : 하이픈(-)을 두개 쓰면 -test.txt 같은 파일명을 옵션으로 인식하지 않음 - 파이프(|) : 선행 명령어의 결과값을 리다이렉트 시키고 그 겨로가값을 다음 명령어의 입력값으로 전달 -..

정보처리기사 실기 - 10. 응용 SW 기초 기술 활용(1) /운영체제 기초 활용하기 -1

1) 운영체제 기초 활용하기 - 서버 : 다른 컴퓨터(클라이언트)에서 요청하는 정보나 서비스를 네트워크를 통해 제공하는 역할을 하는 컴퓨터 시스템 -> 24x365 무중단 서비스 제공을 목적 -> 온/습도가 관리되는 데이터센터(IDC)에 위치하여 안정성 확보 -> 중앙처리 장치, 기억장치, 입출력장치, 통신 장치 등으로 구분됨 - 서버의 종류 DNS 서버 WEB 서버 파일 서버 DB 서버 Proxy 서버 * CPU 아키텍처에 따른 서버 구분 Unix 서버 : 제조사별로 RISC 계열의 CPU를 장착 -> 하드웨어 제조사에서 제공하는 전용 운영체제 -> IBM power, HP Superdome, Oracle M 시리즈 등 x86 서버 : 인텔이나 AMD의 x86 계열 CPU 장착 -> Linux 또는 윈..

정보처리기사 실기 - 9. 프로그래밍 언어 활용(3) /선언형언어/라이브러리

- 선언형 언어 특정 선언으로만 프로그램을 동작 시키는 프로그래밍 패러다임 -> 무엇과 같은지를 설명하는 방식 - 선언형 언어의 유형 함수형 언어 - Haskell, LISP 논리형 언어 - Prolog, SQL 제약형 언어 - Oz - 변수간의 관계를 제약하는 형태로 프로그래밍을 기술 - 선언형 언어의 특징 참조 투명성 : 프로그램 동작의 변경 없이 관련 값을 대체 할 수 있다면 이를 참조상 투명하다 한다. 지연(Lazy) 평가 지원 : 계산이 필요한 순간이 오는 경우 까지 미룬다는 개념 빠른 개발 : 이미 만들어진 것을 선언을 통해 사용 적은 버그 : 구체적인 작동 순서를 나열하지 않음 - 대표적인 선언형 언어 하스켈(Haskell) : 난립하고 있는 함수형 언어들을 통합 정리 SQL : 관계형 데이..

정보처리기사 실기 - 9. 프로그래밍 언어 활용(2) /객체지향언어/스크립트

- 객체지향 프로그래밍 언어 - 구조적(절차적) 방식의 문제점을 극복하고 인간이 사고하는 방식대로 - 객체(object)라는 실 세계에 존재하거나 또는 개념적인 그 어떤 것을 표현한 것 - 기능과 자료가 통합된 객체 단위로 프로그래밍 객체 : 클래스의 인스턴스 클래스 : 객체를 생성하는 틀 메세지 : 객체간 통신을 의미 - 객체의 구성요소 개체(Entity) : 현실 세계에 보이는 본질 속성(Attribute) : 자료 저장소 역할을 하며, 절차 지향 프로그래밍 변수와 대응됨 메소드(Method) : 호출 단위 의미, 절차 지향 프로그램의 함수와 대응됨 - 대표적 객체지향 언어 Java : (과거)썬 마이크로시스템즈에서 개발 C# : 마이크로소프트에서 개발, 닷넷 프레임워크의 한 부분 델파이 스위프트 :..

정보처리기사 실기 - 9. 프로그래밍 언어 활용(1) /기본문법/변수명명법/절차적언어

1) 기본 문법 활용 - 데이터 타입의 길이 - Java short - 2byte long - 8byte char - 2byte - Python long - 무제한 float - 8byte - C# long - 8byte char - 2byte decimal - 16byte(실수형) - 변수 - 변수 명명 제한 -> 첫 자리에는 숫자를 사용할 수 없다. -> 이미 사용되고 있는 예약어의 경우에는 변수로 사용할 수 없다. - 일반적인 변수 명명법 프로그램의 가독성 향상 및 유지보수성 증가를 위해 - 변수 명명법 Pascal Casing(파스칼 케이싱) : 대문자로 시작하는 변수명을 사용 -> 복잡어일 경우 중간에 시작하는 새로운 단어는 대문자로 적는다. -> HumanResource Camel Casing..

정보처리기사 실기 - 8. 소프트웨어 개발 보안 구축(3) /보안기능/에러처리/모바일앱/보안테스트

- 보안기능 - 인증 및 비밀번호 관련 보안 약점 적절한 인증 없는 중요 기능 허용 반복된 인증 시도 제한 기능 부제 취약한 비밀번호 허용 - 권한 관리 관련 보안 약점 부적절한 인가 중요한 자원에 대한 잘못된 권한 설정 - 암호 연산 관련 보안 약점 취약한 암호화 알고리즘 사용 -> AES, SEED, ARIA 등 사용 충분하지 않은 키 길이 사용 -> RSA는 최소 2048비트, 대칭키는 최소 128비트 이상 하드코드된 암호화 키 -> 코드 내부에 암호화 키 하드 코딩 x 적절하지 않은 난수 값 사용 -> Seed 적용 가능 함수 사용 솔트 없이 일방향 해시 함수 사용 - 중요 정보 처리 관련 보안 약점 중요 정보 평문 저장 중요 정보 평문 전송 사용자 하드디스크에 저장되는 쿠키를 통한 정보 노출 -..

정보처리기사 실기 - 8. 소프트웨어 개발 보안 구축(2) /입력데이터검증

2) 소프트웨어 개발 보안 구현하기 - 입력 데이터 검증 및 표현 - SQL 삽입(SQL Insertion) 웹 사이트의 입력 값이나 URL에 SQL문을 삽입하여 DB로부터 정보를 열람, 조작, 파괴할 수 있는 보안 약점 -> PreparedStatements 객체를 이용하거나 MyBatis등의 프레임워크를 이용하여 SQL 구문에 입력변수가 정적 바인딩되도록 구현 -> PreparedStatements 예시 String param = request.getParameter("id"); String sql = "select name from board where id = ?" Connection con = db.getConnection(); PreparedStatement pstmt = con.prepare..

정보처리기사 실기 - 8. 소프트웨어 개발 보안 구축(1) /보안요구사항/보안고려사항

1) 소프트웨어 개발 보안 설계하기 - 소프트웨어의 보안 품질에 영향을 주는 요소들 - 소프트웨어 보안 취약점 : 외부에 노출된 보안 약점 - 모의해킹 : 작동하는 시스템을 대상으로 수행하는 동적 검증을 통해 보안 취약점을 확인하는 보안 품질 관리 활동 - CVE(Common Vulnerability Exposure)로 보안 취약점이 DB화 되어 관리 - 소프트웨어 보안 약점 : 보안 취약점의 근본 원이 되는 소프트웨어의 결함이나 버그 -> 모든 보안 취약점은 보안 약점에 포함되나 모든 보안 약점이 보안 취약점인 것은 아니다. - 시큐어 코딩 : 보안 약점이 존재하지 않도록 개발하는 방법 - CWE(Common Weakness Enumeration)으로 보안약점이 DB화 되어 관리 - 소프트웨어 개발 보..

정보처리기사 실기 - 7. SQL 응용(4) /프로시저/트리거

- 프로시저 및 호출문 작성 매개변수를 받을 수 있고 반복해서 사용할 수 있는 이름이 있는 SQL 블록 - 프로시저 구성 DECALRE BEGIN/END CONTROL //순차실행, 조건분기, 반복수행 등 SQL 문장의 수행 순서를 조정하는데 사용 SQL EXCEPTION //예외처리 TRANSACTION //DML 수행 내역의 DBMS의 적용 또는 취소 여부를 결정하는 처리부(COMMIT/ROLLBACK) - 프로시저 작성 CREATE 명령어로 DBMS 내에 프로시저 생성이 가능 -> [OR REPLACE] 명령은 기존 프로시저 존재 시에 현재 컴파일하는 내용으로 덮어쓴다는 의미 -> PARAMETER는 외부에서 프로시저 호출 시 변수를 입력 또는 출력할 수 있다. -> MODE는 변수의 입력 또는 출..

정보처리기사 실기 - 7. SQL 응용(3) /절차형SQL

2) 절차형 SQL 작성하기 - 절차형 SQL : SQL 문의 연속적인 실행이나 조건에 따른 분기, 반복 등의 제어를 활용하여 다양한 기능을 수행하는 데이터베이스 저장 모듈 -> DBMS 엔진에서 직접 실행되며 BEGIN/END의 블록화된 구조를 갖는다. -> 비즈니스 로직을 캡슐화하여 데이터 관리를 단순화할 수 있다. -> 작업에 필요한 데이터를 DBMS 내부에서 직접 처리하기 때문에 In/Out Packet이 적다. -> 이식시 수정 및 재컴파일이 필요함 - 구성 DECLARE : 정의 BEGIN : 시작점 END : 종료점 - 제어문 종류 IF condition THEN statements; ELSEIF condition THEN statements; ELSE statements; END IF; -..

정보처리기사 실기 - 7. SQL 응용(2) /트랜잭션/집계성SQL/윈도우함수

- 트랜잭션 제어 한번에 수행되어야 하는 데이터베이스 연산들의 논리적인 모임 -> 데이터베이스 동시성 제어와 회복을 위한 기본 개념 - 트랜잭션 완료(commit) : 트랜잭션이 성공적으로 완료되었음 - 트랜잭션 철회(abort) : 비성공적 종료 -> 원자성을 보장하기 위해 갱신 사항을 트랜잭션 수행 전 상태로 되돌림 - 동시성 제어 : 다수 사용자가 테이터베이스를 동시에 접근하도록 허용하면서 연관성을 유지하는 DBMS 기능 - 회복 : 데이터베이스 갱신중에 시스템이 고장나도 데이터베이스의 일관성을 유지하는 DBMS 기능 로그를 이용한 회복 : [Trans ID, start]와 [Trans ID, commit]의 짝검사 -> [Trans ID, commit]가 없는 트랜잭션들은 취소 로그 먼저 쓰기(W..

정보처리기사 실기 - 7. SQL 응용(1) /DCL/DML/DDL

1) 응용 SQL 작성하기 - SQL 특징 : 비절차적 언어, 대화식 언어 또는 호스트 언어에 내장된 혀태로 사용 -> 프로그래밍 언어(호스트 언어)에 SQL을 내포 - SQL 종류 데이터를 검색하는 SELECT 명령문은 데이터 질의어(DQL)로 분류하거나 데이터 조작어에 포함하기도 한다. 데이터 질의어(DQL) : SELECT 데이터 조작어(DML) : INSERT, UPDATE, DELETE 데이터 정의어(DDL) : CREATE, ALTER, DROP 데이터 제어어(DCL) : GRANT, REMOVE, COMMIT, ROLLBACK - 데이터 검색하기 - SELECT 문 형식 SELECT employee, dno FROM employee; -> 모든 사원의 이름과 부서번호를 검색하시오. SELEC..

정보처리기사 실기 - 6. 애플리케이션 테스트 관리(3) /성능분석도구/코드리팩토링

3) 애플리케이션 성능 개선하기 - 애플리케이션 성능을 측정하기 위한 지표 처리량 응답 시간 경과 시간 자원 사용률 - 유형별 성능 분석 도구 성능 분석 도구는 애플리케이션의 성능을 점검하는 도구와 시스템 자원 사용량을 모니터링하는 도구로 분류 성능/부하/스트레스 점검 도구 모니터링 도구 - 애플리케이션 성능 저하 원인 분석 - 데이터베이스 연결 및 쿼리 실행 시 발생되는 성능 저하 원인 DB에 연결하기 위해 Connection 객체를 생성ㅇ하거나 쿼리를 실현하는 애플리케이션 데이터베이스 락(Lock) 불필요한 데이터페이스 패치(DB Fetch) 연결 누수, 부적절한 커넥션 풀 크기 - 내부 로직으로 인한 성능 저하 원인 인터넷 접속 불량으로 서버 소켓 쓰기는 지속되나 클라이언트에서 정상적 읽기가 수행되..

정보처리기사 실기 - 6. 애플리케이션 테스트 관리(2) /통합테스트/테스트자동화/결함관리

2) 애플리케이션 통합 테스트하기 •통합 테스트 소프트웨어 각 모듈간의 인터페이스 관련 오류 및 결함을 찾아내기 위한 체계적인 테스트 기법 -> 목적 : 단위 테스트가 끝난 모듈 또는 컴포넌트 단위의 프로그램이 실제 단계에서 제시한 애플리케이션과 동일한 구조와 기능으로 구현된 것인지 확인하는 것 -> 수행방법 : 비점증적인 빅뱅방식은 모든 컴포넌트를 사전에 통합하여 전체 프로그램을 한꺼번에 테스트 하는 것 -> 점증적인 방법은 상향적 통합과 하향식 통합 방식으로 구분 - 하향식 통합(Top Down) : 메인 제어 모듈(프로그램)로부터 아래 방향으로 제어의 경로를 따라 이동, 통합되는 하위 모듈과 최하위 모듈은 '깊이-우선' 또는 '너비-우선' 방식으로 통합 -> 아직 완성되지 않은 하위 제어모듈 및 모..

정보처리기사 실기 - 6. 애플리케이션 테스트 관리(1) /테스트케이스/정적•동적테스트/화이트박스/블랙박스

1) 애플리케이션 테스트케이스 설계하기 - 애플리케이션 테스트 케이스 작성 - 소프트웨어 테스트 : 소프트웨어의 결함을 적극적으로 찾아내는 활동 -> 테스트 : 알려지지 않은 에러의 발견, 시스템 내부 관련자, 외부의 제3자 -> 디버깅 : 이미 알고 있는 에러의 수정, 에러의 정확한 위치 파악, 에러 타입 식별, 에러 수정 -> 시스템 내부 관련자 - 소프트웨어 테스트 필요성 오류 발견 관점 오류 예방 관점 품질 향상 관점 * V모델 - 소프트웨어 테스트의 기본 원칙 - 테스팅은 개발 초기에 시작 : 소프트웨어 개발 생명 주기의 각 단계에 맞춰 전략적으로 접근하는 것을 고려하라는 의미 - 테스팅은 결함이 존재함을 밝히는 활동 : 결함이 발견 되지 않아도 결함이 없다고 증명할 수 없음 - 완벽한 테스팅은..

정보처리기사 실기 - 5. 화면 설계(2) /흐름설계/스토리보드/고객여정지도/HTML5

2) UI 설계하기 - UI 흐름 설계 업무의 흐름이나 업무 수행과 관련된 일련의 클릭에 의한 화면의 위치와 흐름을 흐름도 형식으로 표현하는 활동 -> 한 가지의 업무를 수행하는데 필요한 화면과 일련의 흐름을 이해시킴 -> 화면의 용도를 이해시킴 - UI 흐름 설계 수행 절차 - 업무 흐름 분석 - 화면에 표현되어야 할 기능 정의 시스템 입력 시스템 풀력 어떤 데이터를 저장할 건지 어떤 연산을 수행할지 - 업무 흐름을 기반으로 화면 흐름 정의 -> 각 단위 화면 간의 선후행 분석 -> 각 화면 간의 흐름을 정의 - 기능 분석을 통해 공통적으로 필요한 기능 및 양식 정의 - UI 상세 설계 - UI 요구사항 확인 - UI 구조 설계 -> UI 요구사항들과 UI 프로토타입에 기준해 UI 구조 설계 - 메뉴 ..

정보처리기사 실기 - 5. 화면 설계(1) /스타일가이드/프로토타입

1) UI 요구사항 확인하기 •화면 설계의 개요 - 화면(User Interface) 사람과 시스템 사이의 접점 -> 사용자와 각각의 시스템 사이의 정보 채널 -> 화면 설계 : 상호 정보 교환의 방법을 체계화하여 설계하고 디자인하는 작업 - 화면 설계의 방향 사용자 중심 단순한 설계 현명한 색상 사용 일관성 유지 사용자 경험 지식화 지속적인 테스트 및 반복 - 설계 원칙 직관성 유효성 학습성 유연성 - UI의 유형 명령어 방식 : 명령어 암기 필요 메뉴 방식 : 기억보다 인식에 의존하는 방식 자연언어 이용 방식 : 자연 언어의 모호성이 혼동을 가져올 수 있음 윔프 포인터와 클릭 - 화면 설계의 수행 절차 - UI 스타일 가이드 작성 디자이너 또는 개발자들이 각각 웹사이트의 다른 부분들을 맡아서 일을 할..

정보처리기사 실기 - 4. 서버 프로그램 구현(3) /알고리즘

•알고리즘 특정 문제를 해결하기 위한 일련의 순차적 계산 혹은 풀이 절차 - 알고리즘의 기본 절차 구조 순차구조(Sequence) : 직선형, 시작부터 마지막까지 순차적으로 진행 선택구조(Selection) : 분기형, 조건에 따라 실행 내용, 순서 달라짐 반복구조(Repition) : 조건을 만족할 때까지 일정 내용 반복 실행 * 수열 알고리즘 -> 1+2+3+ ... +99+100 까지 구하기 int i=0, sum=0; do { i++; sum+=i; } while(i>100); System.out.println(sum); -> 1-2+3-4+5-6+ ... +99-100 구하기 -> 스위치 변수(mode) 이용 int i=0, sum=0, mode=0; do { i++; if(mode==0){ s..

정보처리기사 실기 - 4. 서버 프로그램 구현(2) /DTO/DAO/개발보안/cron/crontab

3) 서버 프로그램 구현하기 •프로그램 구현 절차 -> MVC 기반 구조 - DTO/VO 구현 DTO(Data Transfer Object)는 프로그램에서 유통되는 데이터를 객체화한 것 -> 데이터 값을 설정하고 조회하는 getter, setter 외에 비즈니스 로직을 가지지 않음 VO(Value Object)는 DTO와 비슷하나 데이터의 값을 변경할 수 없음 - SQL 구현 - DAO 구현 DAO(Data Acess Object)는 데이터베이스에 접근하여 데이터를 생성, 조회, 수정 삭제하는 역할을 담당함 -> 특정 타입의 데이터베이스나 다른 영속성 매커니즘에 추상 인터페이스를 제공하는 객체 -> 비즈니스 로직과 데이터베이스 접근 로직을 분리하기 위해 사용 - Service 구현 사용자의 요청에 따라 ..

정보처리기사 실기 - 4. 서버 프로그램 구현(1) /개발환경/아키텍처/단위테스트

1) 개발 환경 구축하기 - 개발과 품질 관리에 대한 요구사항을 분석하여 형상 관리 서버, 테스트 서버, 빌드 서버를 결정 -> 구현 도구, 테스트 도구, 형상 관리 도구, 빌드 도구 등 설계 - IDE(Integrated Development Environment) 통합 개발 환경, 프로그램 개발에 관련된 모든 작업을 하나의 프로그램에서 처리하는 환경을 제공하는 소프트웨어 -> Eclipse, Visual Studio, Atom - 형상관리 도구 -> Git, CVS, SVN 등 - 빌드 도구 -> Maven, Ant, Gradle 등 - 서버 개발 프레임워크를 활용한 개발 환경 구축 개발 프레임워크는 재사용 가능한 라이브러리와 애플리케이션 인터페이스, 설정 정보 뿐만 아니라 개발과 운영을 지원하는 도..

정보처리기사 실기 - 3. 통합 구현(3) /연계모듈/EAI/ESB/SOAP

3) 내외부 연계 모듈 구현하기 •연계 모듈 구현 환경 구성과 개발 - EAI/ESB 방식 -> DBMS의 트리거를 JAVA와 같은 프로그램 언어를 사용함 -> 응용 애플리케이션으로 구현 or 연계 테이블을 연계 파일로 변경 -> 연계 데이터 처리를 위해 테이블 방식 또는 파일 방식으로 운용 -> 전송이나 전송 이력을 기록하는 기능을 구현할 필요 없음 -> 데이터 변환, 운영 DB에 반영 시 발생하는 데이터 오류에 대한 사항을 기록 모듈 구현 -> 기존 연계를 위한 DB가 운영중인 경우 연계 목적에 따라 분리한 연계 사용자 계정 생성 운영 DB의 사용자와 연계를 위한 사용자는 생성되는 스키마의 목적이 다르므로 물리적 및 논리적으로 분리하여 관리 -> 연계를 위한 테이블 생성 : 연계 테이블, 로그 테이블..

정보처리기사 실기 - 3. 통합 구현(2) /연계 매커니즘/데이터보안

2) 연계 매커니즘 구성하기 - 연계 매커니즘 송신 시스템 + (중계 서버) + 수신 시스템 -> 연계 데이터는 인터페이스 테이블 또는 파일로 생성 -> 중계 서버 배치 의사 결정 포인트 : 보안 품질 특성이 중요하거나 송신시스템과 수신시스템이 위치한 네트워크가 상이한 경우 배치 - 연계 방식 -> 직접 연계 : 중간 매개체 없이 구성 -> 연계 및 통합 구현 단순, 시스템 간 결합도가 높아 변경에 민감 -> 간접 연계 : 중간 매개체 활용 -> 다양한 환경에 대해 연계 및 통합 가능, 시스템 간 인터페이스 변경시 장애나 오류 없이 서비스 가능, 연계 아키텍처 및 매커니즘이 복잡, 중간 매개체로 인해 성능에 영향 - 연계 데이터 추출 및 생성 -> 운영 DB에서 연계 데이터를 추출하고 생성 -> 응용 시..

정보처리기사 실기 - 3. 통합 구현(1) /연계데이터/태그/JSON

1) 연계 데이터 구성하기 - 연계 요구사항 분석 - 분석 문서 : 시스템 구성도, 응용 애플리케이션 구성, 테이블 정의서, 코드 정의서 - 분석 및 정의 기법/도구 : 인터뷰, 체크리스트, 설문조사, 델파이조사, 연계 솔루션 비교 * 델파이 조사 : 시스템 아키텍처/ 연계 전문가에게 자문 * 연계 솔루션 : EAI, ESP, OPEN API 등 - 통합 구현의 개념도 : 시스템 아키텍처 구성, 솔루션 방식, 송수신 모듈 구현 방법 등에 따라 다양함 * 송수신 방식은 직접연계 방식과 간접연계 방식으로 구분 * 직접 연계(점대점 방식, Point to point) : DB Link, JDBC, API 등 * 간접 연계 : EAI, ESB, 소켓 등 - 통합 구현 구성 - 송신 시스템과 송신 모듈 : 일반적..

반응형