정보처리기사 70

X. 애플리케이션 테스트 관리_01. 애플리케이션 테스트 케이스 설계

1) 애플리케이션 테스트 케이스 작성 SW테스트 : 개발된 응용 애플리케이션이나 시스템이 사용자가 요구하는 기능과 성능, 사용성, 안정성 등을 만족하는지 확인하고 노출되지 않은(숨어있는 소프트웨어의 결함)을 찾아내는 활동 SW테스트 필요성 오류 발견 관점 프로그램에 잠재된 오류를 발견하고 이를 수정하여 올바른 프로그램을 개발하기 위해 필요 오류 예방 관점 프로그램 실행전 동료검토, 워크스루, 언스팩션 등을 통해 오류를 사전에 발견하는 예방차원의 필요 품질 향상 관점 사용자의 요구사항 및 기대 수준을 만족하도록 반복적인 테스트를 거쳐 제품의 신뢰도를 향상하는 품질보증을 위해 필요 SW테스트 원리 결함 존재 증명 결함이 존재함을 밝히는 행동 결함이 없다는 것을 증명할 수는 없음 결함을 줄이는 활동 완벽한 테..

IX. 소프트웨어 개발 보안 구축_02. 소프트웨어 개발 보안 구현

1) 소프트웨어 개발 보안 구현 시큐어코딩 : 설계 및 구현 단계에서 해킹 등의 공격을 유발할 가능성이 있는 잠재적인 보안 취약점을 사전에 제거하고 외부 공격으로부터 안전한 소프트웨어를 개발하는 기법 입력데이터 검증 및 표현 프로그램 입력값에 대한 검증 누락, 부적절한 검증, 잘못된 형식 지정 사용자, 프로그램 입력데이터에 대한 유효성 검증체계를 수립하고 실패시 처리 설계 및 구현 보안 기능 보안 기능(인증, 접근제어, 기밀성, 암호화, 권한 관리 등)의 부적절한 구현 인증, 접근통제, 권한관리, 비밀번호 등의 정책이 적절하게 반영되도록 설계 및 구현 시간 및 상태 거의 동시에 수행 지원하는 병행시스템 또는 하나 이상의 프로세스가 동작하는 환경에서 시간 및 상태의 부적절한 관리 공유 자원의 접근 직렬화,..

IX. 소프트웨어 개발 보안 구축_01. 소프트웨어 개발 보안 설계

SW 개발 보안 : 소스 코드 등에 존재하는 보안 취약점을 제거하고 보안을 고려하여 기능 설계 및 구현하는 등 소프트웨어 개발과정에서 지켜야할 일련의 보안 활동, 시큐어 코딩 기밀성 인가되지 않은 개인 혹은 시스템 접근에 따른 정보공개 및 노출을 차단하는 특성 도청, 사회공학 -> 암호화, 트래픽통제 무결성 정당한 방법을 따맂 않고선 데이터가 변경될 수 없으며 데이터의 정확성 및 완전성과 고의/악의로 변경된거나 훼손 또는 파괴되지 않음을 보장하는 특성 트로이목마 -> 백신 가용성 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속할 수 있도록 보장하는 특성 DoS, DDoS, 천재지변 등 -> 백업, 클러스터링 SW 개발 보안 용어 자산 조직의 데이터 또는 조지그이 소유자가 가치를 부여한 대상 ex..

VIII. 서버프로그램 구현

01. 개발환경 구축 : 응용 소프트웨어의 개발 편의성, 개발성능 향상을 위해 하드웨어 및 소프트웨어 개발환경을 구축하는 과정 빌드도구 작성한 코드의 빌드 및 배포를 수행하는 도구 각각의 구성요소와 모듈에 대한 의존성 관리를 지원하는 도구 Gradle, Maven, Ant 구현도구 코드의 작성과 디버깅, 수정 등과 같은 작업시 사용되는 도구 프로그램을 개발할 때 가장 많이 사용되는 도구 이클립스, IntelliJ, STS, VS 테스트도구 코드의 기능 검증과 전체의 품질을 높이기 위해 사용하는 도구 코드의 테스트, 테스트에 대한 계획, 수행 및 분석 등의 작업 수행 xUnit, PMD, FindBugs, SonarQube 형상관리도구 개발자들이 작성한 코드와 리소스 드 ㅇ산출물에 대한 버전관리를 위한 도..

V. 인터페이스 구현

01. 인터페이스 설계 확인 인터페이스 모듈 연계 방법 : 대표적인 인터페이스 모듈 연계 방법으로 EAI방식과 ESB 방식이 있음 EAI : 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보 전달, 연계, 통합을 가능하게 해주는 기술 EAI 구축 유형 - 포인트 투 포인트 (Point-to-point) : 중간에 미들웨어를 두지않고 각각의 애플리케이션 간에 점대점 형태로 연결 - 허브 앤 스포크 (Hub & Spoke) : 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙집중식 방식 - 메시지 버스 (Message Bus) : 애플리케이션 사이 미들웨어(버스)를 두어 연계하는 미들웨어 통합 방식 - 하이브리드 (Hybrid) : 그룹 내는 허브 앤 스포크 방식을 사용하고 그룹 간에는..

I. 요구사항 확인_03. 요구사항 확인

1) 요구사항 요구공학 : 사용자의 요구가 반영된 시스템을 개발하기 위하여 사용자 요구사항에 대한 도출, 분석, 명세, 확인 및 검증하는 구조화된 활동 요구사항의 목적 : 이해관계자 사이에 효과적인 의사소통 수단 제공, 시스템 개발의 요구사항에 대한 공통된 이해 설정, 요구사항 누락 방지 및 이해 오류로 인한 불필요한 비용 절감, 요구사항 변경 추적 가능 요구사항의 분류 기능적 요구사항 비기능적 요구사항 시스템이 제공하는 기능, 서비스에 대한 요구사항 특정 입력에 대해 시스템이 어떻게 반응해야 하는지에 대한 기술 특정 상황에 대해 시스템이 어떻게 동작해야 하는지에 대한 기술 시스템을 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약 사항에 관한 요구사항 품질 속성에 관련하여 시스템이 갖춰야 할 사항에..

I. 요구사항 확인_02. 현행 시스템 분석

1) 현행 시스템 파악 : 현생시스템이 어떤 하위 시스템으로 구성되고 제공 기능 및 연계정보, 사용된 기술요소 등을 파악하는 활동 현생 시스템 파악 절차 : 구성, 기능, 인터페이스 파악 -> 아키텍처 및 SW구성 파악 -> HW 및 NW 구성파악 구성, 기능, 인터페이스 파악 -> 아키텍처 및 SW구성 파악 -> HW 및 NW 구성파악 현행 시스템 구성 현황 파악 기능 현황 파악 인터페이스 현황 파악 현행 시스템 아키텍처 구성파악 소프트웨어 구성파악 HW 구성파악 NW 구성파악 소프트웨어 아키텍처 : 여러가지 소프트웨어 구성요소와 그 구성요소가 가진 특성 중 외부에 트러나는 특성, 구성요소간의 관계를 표현하는 시스템 구조 소프트웨어 아키텍처 프레임워크 : 소프트웨어 집약적인 시스템에서 아키텍처가 표현해..

IV. 통합구현_02. 내외부 연계 모듈 구현

연계 모듈구현 환경 구성 및 개발 EAI : 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션 EAI 플랫폼 이기종 시스템 간 애플리케이션 상호 운영 데이터의 신뢰성있는 전송을 위한 메시지큐와 트랜잭션 미들웨어 기능 수행 대규모 사용자 환경 지원을 위한 유연성과 확장성 보장 어댑터 다양한 패키지 애플리케이션 및 기업에서 자체적으로 개발한 애플리케이션을 연결하는 EAI의 핵심 장치로 데이터 입출력 도구 브로커 시스템 상호간 데이터가 전송될 때 데이터 포맷과 코드를 변환하는 솔루션 메시지 큐 비동기 메시지를 사용하는 다른 응용 프로그램 사이에서 데이터를 송수신하는 기술 비즈니스 워크플로우 미리 정의된 기업의 비즈니스 workflow에 따라 업무를 ..

IV. 통합구현_01. 연계 메커니즘 구성

연계 메커니즘 : 응용 소프트웨어와 연계 대상 모듈간의 데이터 연계시 요구사항을 고려한 연계방법과 주기를 설계하기 위한 메커니즘 연계 메커니즘의 기능 : 데이터를 생성하여 전송하는 송신시스템과 송신 데이터를 수신하여 DB에 반영하는 수신시스템으로 구성 송신 시스템 : 운영 데이터베이스, 애플리케이션으로부터 연계 데이터를 연계 테이블 또는 파일로 생성하여 송신 수신 시스템 : 송신시스템으로부터 전송된 데이터를 변환 처리후 데이터베이스에 반영 직접 연계 간접 연계 장점 연계 및 통합 구현이 단순하며 용이함 개발 소요 비용 및 기간이 짧음 중간 매개체가 없으므로 데이터 연계처리 성능이 좋음 서로 상이한 네트워크, 프로토콜 연계 및 통합 가능 인터페이스 변경 시에도 장애나 오류없이 서비스 가능 보안이나 업무처리..

I. 요구사항 확인_01. 소프트웨어 개발방법론

SDLC : Software Development Life Cycle, 시스템의 요구분석부터 유지보수까지 전 공정을 체계화한 절차 요구사항 분석 - 설계 - 구현 - 테스트 - 유지보수 - 폭포수 모델 : Waterfall, 소프트웨어 개발시 각 단계를 확실히 마무리 지은 후 다음 단계로 넘어가는 모델 가장 오래된 모델 선형 순차적 모형으로 고전적 생명주기 모형이라고 함 모형의 적용 경험과 성공 사례가 많음 단계별 정의와 산출물이 명확 요구사항 변경이 어려움 - 프로토타이핑 모델 : 고객이 요구한 주요 기능을 프로토타입(시제품)으로 구현하여 고객의 피드백을 반영하여 소프트웨어를 만들어 가는 모델 발주자나 개발자 모두에게 공동의 참조 모델 제공 구현 단계의 구현 골격 - 나선형 모델 : 시스템 개발시 위험..

반응형