목차 애플리케이션 테스트 프로세스 📌 애플리케이션 테스트 프로세스는 개발된 소프트웨어가 사용자의 요구대로 만들어졌는지, 결함은 없는지 등을 테스트하는 절차로, 다음과 같은 순서로 진행된다. 애플리케이션 테스트를 마치면 테스트 계획서, 테스트 케이스, 테스트 시나리오, 테스트 결과서가 산출된다. 테스트 계획서 : 테스트 목적, 범위, 일정, 수행 절차, 대상 시스템 구조, 조직의 역할 및 책임 등 테스트 수행을 계획한 문서 테스트 케이스 : 사용자의 요구사항을 얼마나 준수하는지 확인하기 위한 입력 값, 실행 조건, 기대 결과 등으로 만들어진 테스트 항목의 명세서 테스트 시나리오 : 테스트를 수행할 여러 개의 테스트 케이스의 동작 순서를 기술한 문서 테스트 결과서 : 테스트 결과를 비교/분석한 내용을 정리한..
목차 개발 단계에 따른 애플리케이션 테스트 📌 애플리케이션 테스트는 소프트웨어의 개발 단계에 따라 단위 테스트, 통합 테스트, 시스템 테스트, 인수 테스트로 분류된다. 이렇게 분류된 것을 테스트 레벨이라고 한다. 애플리케이션 테스트는 소프트웨어의 개발 단계에서부터 테스트를 수행하므로 단순히 소프트웨어에 포함된 코드 상의 오류뿐만 이나라 요구 분석의 오류, 설계 인터페이스 오류 등도 발견할 수 있다. 애플리케이션 테스트와 소프트웨어 개발 단계를 연결하여 표현한 것을 V-모델이라 한다. 💡 검증(Verification) 테스트 : 개발자 기준의 테스트로, 단위 테스트, 통합 테스트, 시스템 테스트가 해당됨 💡 확인(Validation) 테스트 : 사용자 기준의 테스트로, 인수 테스트가 해당됨 단위 케스트 (..
목차 💡 주요 키워드 ? 화이트박스 테스트, 블랙박스 테스트, 단위 테스트, 통합 테스트, 하향식 통합 테스트, 상향식 통합 테스트, 테스트 케이스, 테스트 오라클, 빅오 표기법, 순한 복잡도 애플리케이션 테스트의 개념 📌 애플리케이션 테스트는 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차이다. 애플리케이션 테스트는 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인(Validation)하고 소프트웨어가 기능을 정확히 수행하는지 검증(Verification)한다. 애플리케이션 테스트를 실행하기 전에 개발한 소프트웨어의 유형을 분류하고 특성을 정리해서 중점적으로 테스트할 사항을 정리해야 한다. 🔔 예) 소프트웨어 유형별 특성 소프트웨어명 제공 유형 기능 유형 사용 환경 개발 유형 ..
목차 빌드 자동화 도구의 개녕 📌 빌드란 소스 코드 파일들을 컴파일 한 후 여러개의 모듈을 묶어 실행 파일로 만드는 과정이며, 이러한 빌드를 포함하여 테스트 및 배포를 자동화하는 도구를 빌드 자동화 도구라고 한다. 애자일 환경에서는 하나의 작업이 마무리될 때마다 모듈 단위로 나눠서 개발된 코드들이 지속적으로 통합되는데, 이러한 지속적인 통합(Continuous Integration)개발 환경에서 빌드 자동화 도구는 유용하게 활용된다. 빌드 자동화 도구에는 Ant, Make, Maven, Gradle, Jenkins 등이 있으며, 이중 Jenkins와 Gradle이 가장 대표적이다. 💡 Ant : 자바 프로그래밍 언어에서 사용하는 자동화된 소프트웨어 빌드 도구 💡 make : 유닉스 계열 운영 체제에서 사..
목차 소프트웨어 사용자 매뉴얼 작성의 개요 📌 소프트웨어 사용자 매뉴얼은 사용자가 소프트웨어를 사용하는 과정에서 필요한 내용을 문서로 기록한 설명서와 안내서이다. 사용자 매뉴얼은 사용자가 소프트웨어 사용에 필요한 절차, 환경 등의 제반 사항이 모두 포함되도록 작성한다. 소프트웨어 배포 후 발생될 수 있는 오류에 대한 패치나 기능에 대한 업그레이드를 위해 매뉴얼의 버전을 관리한다. 개별적으로 동작이 가능한 컴포넌트 단위로 매뉴얼을 작성한다. 사용자 매뉴얼은 컴포넌트 명세서와 컴포넌트 구현 설계서를 토대로 작성한다. 사용자 매뉴얼에는 목차 및 개요, 서문, 기본 사항 등이 기본적으로 포함되어야 한다. 사용자 매뉴얼의 목차에는 매뮤얼 전체 내용을 순서대로 요약한 후 관련 내용의 시작 페이지를 함께 기술한다. ..
목차 저작권의 개요 📌 저작권이란 소설, 시, 논문, 강연, 연술, 음악, 연극, 무용, 회화, 서예, 건축물, 사진, 영상, 지도, 도표, 컴퓨터 프로그램 저작물 등에 대하여 창작자가 가지는 배타적 독점걷 권리로 타인의 침해를 받지 않을 고유한 권한다. 컴퓨터 프로그램들과 같이 복제하기 쉬운 저작물에 대해 불법 복제 및 배포 등을 막기 위한 기술적인 방법을 통칭해 '저작권 보호 기술'이라고 한다. 디지털 저작권 관리 (DRM: Digital Right Management)의 개요 📌 디지털 저작권 관리는 저작권자가 배포한 디지털 콘텐츠가 저작권자가 의도한 용도로만 사용되도록 디지털 콘텐츠의 생성, 유통, 이용까지의 전 과정에 걸쳐 사용되는 디지털 콘텐츠 관리 및 보호 기술이다. 원본 콘텐츠가 아날로그인..
목차 💡 주요 키워드 ? 소프트웨어 패키징, 릴리즈 노트, DRM, 소프트웨어 설치 매뉴얼, 소프트웨어 사용자 매뉴얼, 형상 관리, Subversion, Git, Jenkins, Gradle 소프트웨어 페키징의 개요 📌 소프트웨어 패키징이란 모듈 별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 개발자가 아니라 사용자를 중심으로 진행한다. 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다. 사용자가 소프트웨어를 사용하게 될 환경을 이해하여, 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징한다. 💡 일반적으로 패키징(Packaging)이란 관련된 것들을 하나로 묶는 것을 말하며, 소프트웨어 패키징이란 기능별로 생성한 실행 파일들을 묶어 배포용 ..
목차 💡 주요 키워드 ? 단위 기능 명세서, IPC, 테스트 케이스, 단위 모듈 테스트, 테스트 프로세스, IDE, 빌드 도구, 단위 모듈, Ant, Maven 단위 모듈 (Unit Modeul)의 개요 📌 단위 모듈은 소프트웨어 구현에 필요한 여러 동작 중 한 가지 동작을 수행하는 기능을 모듈로 구현한 것이다. 단위 모듈로 구현되는 하나의 기능을 단위 기능이라고 부른다. 단위 모듈은 사용자나 다른 모듈로부터 값을 전달받아 시작되는 작은 프로그램의 의미하기도 한다. 두 개의 단위 모듈이 합쳐질 경우 두 개의 기능을 구현할 수 있다. 단위 모듈의 구성 요소에는 처리문, 명령문, 데이터 구조 등이 있다. 단위 모듈은 독립적인 컴파일이 가능하며, 다른 모듈에 호출되거나 삽입되기도 한다. 단위 모듈을 구현하기 ..