자격증/정보처리기사 34

[정보처리기사] 제품 패키징

소프트웨어 패키징 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것 패키징 작업 순서 패키징 개발주기는 개발기법에 따라 달라짐 애자일 기법 2 - 4주, 각 주기마다 패키징 수행 주기별 패키징한 결과물은 테스트 서버에 배포 1) 기능 식별 : 작성된 코드의 기능을 확인 2) 모듈화 : 확인된 기능 단위로 코드 분류 3) 빌드 진행 : 모듈 단위별로 실행 파일 제작 4) 사용자 환경 분석 : 최소 운영 환경을 정의 5) 패키징 및 적용 시험 빌드된 실행 파일들을 정의된 환경에 맞게 배포용 파일 형식으로 패키징 정의된 환경과 동일 환경에서 테스팅 한 후 사용자 입장에서 불편사항 확인 6) 패키징 변경 개선 확인된 불편사항을 반영하기 위한 패키징의 변경 및 개선 진행 7) 배포 배포 수행 시 ..

[정보처리기사] 어플리케이션 성능 개선

애플리케이션 성능 최소한의 자원을 사용하여 최대한 많은 기능을 신속히 처리하는 정도 처리량(Throughput) 응답시간(Response Time) 경과시간(Turn Around Time) 자원사용률(Resource Usage) 성능테스트 도구 애플리케이션에 부하나 스트레스를 가하여 측정 JMeter HTTP, FTP 다양한 프로토콜 지원 부하 테스트 도구 LoadUI 사용자 편리성이 강화된 부하테스트 도구, HTTP JDBC 등 다양한 프로토콜 지원 OpenSTA HTTP, HTTPS 프로토콜에 대한 부하테스트 시스템 모니터링 도구 Scouter 애플리케이션의 성능을 모니터링 통제하는 도구 Zabbix 웹기반 서버, 서비스 애플리케이션 모니터링 도구 시간 복잡도 알고리즘을 수행하기 위해 프로세스가 수행..

[정보처리기사] 어플리케이션 테스트 관리

애플리케이션 테스트 기본원리 완벽한 테스트 불가능 결함 집중(Defect Clustering) 파레토 법칙 : 20%의 코드에서 전체 결함의 80%가 발생한다. 살충제 패러덕스(Pesticide Paradox) 반복된 동일한 테스트는 더 이상 결함을 발견하지 못한다. 테스트는 지속적으로 수정 보완이 이루어져야 한다. 테스팅은 정황(Context) 의존 환경에 따라 테스트 결과는 달라질 수 있으니 정황을 달리하여 테스트를 실행해야 한다. 오류-부재의 궤변(Absence of Errors Fallacy) 요구사항을 만족시키지 못하면 품질이 높다고 말할 수 없다. 테스트와 위험은 반비례 테스트의 점진적 확대 테스트의 별도 팀 수행 애플리케이션 테스트 분류 정적 테스트 : 프로그램 실행 X, 소스코드, 명세서로..

[정보처리기사] 화면설계

사용자 인터페이스 사용자의 만족도에 가장 큰 영향을 미치는 요소 소프트웨어 영역 중 가장 많은 변경이 발생 구분 CLI(Command Line Interface) : 텍스트 형태의 명령 GUI(Graphical User Interface) : 아이콘이나 메뉴를 마우스로 선택하는 그래픽 환경 NUI(Natural User Interface) : 사용자의 말과 행동이 기기를 조작 사용자 인터페이스의 기본원칙 직관성, 유효성(목적부합), 학습성, 유연성(요구사항 수용) 사용자 인터페이스 설계시 고려 사항 사용자 중심, 일관성, 단순성, 결과 예측 가능, 가시성, 표준화, 접근성, 명확성, 오류 발생 해결 UI 설계 도구 와이어 프레임(Wireframe) : 화면 단위로 개략적인 레이아웃이나 UI 요소 뼈대 설..

[정보처리기사] 인터페이스 심화

▷ 인터페이스 구현 송수신 시스템 간의 데이터 교환 및 처리를 실현해주는 작업 데이터 통신을 이용한 구현 송신 측이 특정 데이터 포맷( JSON / XML )으로 인터페이스로 전송하면 인터페이스는 수신측으로 이를 전달하는 구조 수신측은 전달받은 데이터 포맷을 파싱(구문분석)하여 해석한다. - JSON ( JavaScript Object Notation ) : 데이터 객체를 속성-값의 쌍 형태로 표현하는 개방형 표준 포맷 - AJAX ( Asynchronous JavaScript and XML ) : 클라이언트와 서버 간의 XML 데이터를 주고 받는 비동기 통신 기술 인터페이스 엔티티를 이용한 구현 인터페이스가 필요한 시스템 사이에 별도의 인터페이스 엔티티( 인터페이스 테이블 ) 을 두어 상호 연계하는 것..

[정보처리기사] 모듈 연계를 위한 인터페이스

모듈 연계 내부 모듈 - 외부모듈 혹은 내부 모듈 간 데이터 교환을 위한 관계를 설정하는 것 EAI ( Enterprise Application Integration ) 기업 내 각종 어플리케이션 및 플랫폼 간의 상호 연동이 가능하게 해주는 솔루션 Point to Point 가장 기본적인 어플리케이션 통합 방식 ( 1 : 1 연결로 변경 및 재사용 어려움 ) Hub & Spoke : 단일 접점인 허브 시스템을 통해 데이터를 전송하는 중앙 집중형 방식 ( 확장 및 유지보수 용이 ) Message Bus ( ESB 방식 ) : 어플리케이션 사이 미들웨어를 두는 방식 ( 확장성 및 대용량 처리 용이 ) Hybrid : Hub & Spoke 와 Message Bus 방식을 통합, 그룹 내에서는 Hub & Spo..

[정보처리기사] 인터페이스 기본

인터페이스 요구사항 검증 방법 1) 요구사항 검토 - 동료검토 (Peer Review) : 요구사항 명세서 작성자가 동료들에게 설명하고 동료들이 결함을 발견하는 형태 - 워크스루 (Work Through) : 요구사항 명세서를 미리 배포하여 사전 검토 후 짧은 검토 회의로 결함을 발견하는 형태 - 인스펙션 (Inspection) : 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 결함을 검토하는 형태 2) 프로토타이핑(Prototyping) 실제 개발될 소프트웨어의 견본품을 만들어 최종 결과물을 예측하는 형태 3) 테스트 설계 요구사항을 테스트 할 수 있도록 작성, 테스트 케이스를 생성하여 요구사항이 현실적으로 테스트 가능한지 검토 4) CASE 도구 활용 일관성 분석(Coinsistency Ana..

[정보처리기사] 서버 개발 프로그램

서버개발 웹 애플리케이션의 로직을 구현할 서버 프로그램을 제작하여 WAS에 탑재하는 것 서버 프로그램 : 웹서버로부터 받은 요청을 처리하여 결과를 반환하는 역할 서버개발 프레임워크 서버프로그램 개발시 다양한 네트워크 설정, 요청 및 응답처리, 아키텍처 모델 구현등을 손쉽게 처리할 수 있도록 클래스나 인터페이스를 제공하는 소프트웨어 서버 개발 프레임워크는 대부분 모델-뷰 컨트롤러(MVC) 패턴을 기반으로 개발되었다. *MVC : 시스템을 세부분으로 분리하여 서로 영향 받지 않고 개발할 수 있는 아키텍처 패턴 종류 Spring JAVA 기반 프레임워크, 전자 정부 표준 프레임워크 기반 기술로 사용 Node.js JavaScript 기반 프레임워크, 비동기 입출력 처리와 이벤트 위주의 높은 처리 성능, 실시간..

[정보처리기사] 코드(Code) 및 디자인 패턴

코드(Code) 자료의 분류, 조합, 집계, 추출을 용이하게 하기위해 사용하느 ㄴ기호 정보를 일정한 규칙에 따라 작성하여 신속 정확하게 전달 할 수 있다. 주요기능 식별 기능 : 데이터 간의 성격에 따라 구분 분류 기능 : 특정 기준이나 동일한 유형에 해당하는 데이터를 그룹화 배열 기능 : 의미를 부여하여 나열할 수 있음 표준화 기능 : 다양한 데이터를 기준에 맞추어 표현할 수 있음 간소화 기능 : 복잡한 데이터를 간소화할 수 있음 코드의 종류 - 순차코드 (Squence Code) : 일정한 기준에 따라 차례대로 일련번호를 부여하는 방법 ( 1, 2, 3, 4,... ) - 블록코드 (Block Code) : 공통성 있는 것끼리 블록으로 구분하고 블록에 일련번호 부여하는 방법 ( 1001 ~ 1100 ..

[정보처리기사] 모듈(Module)

모듈 ( Module ) 소프트웨어 내 작업 단위 모듈은 독립성을 가져야 한다. 결합도(Coupling)는 약하게 (과도한 상호작용 X) 응집도(Cohesion)는 강하게 (하나의 기능만 수행) 모듈의 크기는 작게 - 결합도 (Coupling) (모듈 간 상호작용 정도) 자료(Data) 결합도 : 다른 모듈에 호출되어서 받은 인수를 처리 후 결과를 반환 스탬프(검인) 결합도 : 모듈 간 인터페이스의 자료구조를 함께 조회 제어(control) 결합도 : 한 모듈이 다른 모듈의 논리 흐름을 제어 외부(external) 결합도 : 한 모듈이 선언한 데이터를 다른 모듈이 참조 공통(공유)(Common) 결합도 : 공유되는 데이터 영역을 여러 모듈이 사용 내용(Content) 결합도 : 한 모듈이 다른 모듈의 기..