Software Quality Assurance 란 무엇입니까?
소프트웨어 품질 보증에는 컴퓨터 소프트웨어 디자인 및 구현을 테스트하고 최소 품질 표준을 충족하는지 확인하는 과정이 포함됩니다. 품질 보증 프로세스의 핵심은 테스트입니다. 테스트는 오작동이나 보안 문제와 같은 결함을 찾기 위해 개발주기의 모든 단계를 분석하는 방법입니다. 소프트웨어 품질 보증 프로세스에서 가장 일반적으로 알려진 부분은 소프트웨어 및 코드 테스트입니다. 그러나 엔지니어링주기의 다른 측면도 다룹니다. 품질 분석의 대상이되는 소프트웨어 엔지니어링의 다른 측면에는 설계 및 구현 단계가 포함됩니다.
소프트웨어 품질 보증의 전체 개념은 소프트웨어 계획 단계에서 시작해야합니다. 계획이 잘못된 소프트웨어는 구상 한 조직의 기대에 맞는 방식으로 작성하기 어렵거나 불가능할 수 있습니다. 설계 단계의 품질 관리에는 프로젝트 사양 또는 목표의 결과와 조직의 목표 달성 계획에 대한 영향이 포함됩니다. 설계 단계에서 품질 분석의 이점은 설계 문제가 해결하는 데 훨씬 더 비싼 개발주기 후반이 아니라 조기에 실수를 찾아서 제거한다는 것입니다.
소프트웨어 품질 분석가라고도하는 소프트웨어 테스트 엔지니어는 테스트 프로세스를 수행하는 주요 담당자입니다. 이 사람은 조직이 소프트웨어 품질을 향상시키는 데 도움이되는 테스트 계획을 설계하고 실행합니다. 이상적으로 프로그래머는 자신의 제품을 테스트해서는 안됩니다. 즉, 프로젝트 내에서 프로그래머와 테스트 엔지니어는 서로 다른 두 사람입니다.
테스트 계획은 품질 보증 시스템, 특히 소프트웨어 테스트 단계에서 중요한 부분입니다. 테스트 계획의 목적은 소프트웨어의 성공 또는 실패를 나타내는 조건을 결정하는 것입니다. 일반적인 테스트 계획에는 테스트와 관련된 기술뿐만 아니라 프로그램 및 하위 프로그램의 전체 목록 또는 테스트해야하는 절차가 포함됩니다. 테스트 계획의 또 다른 중요한 기능은 허용 할 수없는 결함을 결정하는 것입니다. 테스트 계획은 일반적으로 프로젝트의 실제 소프트웨어 코드가 개발되기 전에 설계됩니다.
테스트 엔지니어가 테스트 계획을 구현하기위한 프로그램을 작성할 때이를 테스트 스크립트라고합니다. 테스트 스크립트는 소프트웨어 품질 보증 프로세스의 필수 부분입니다. 이들의 목적은 결함을 찾기 위해 프로그램의 기존 코드 테스트를 자동화하는 것입니다. 또한 테스트 엔지니어는 일반적으로 상업적으로 설계된 테스트 도구를 사용하여 잠재적 인 문제를 찾습니다. 테스트 계획은 소프트웨어 개발의 코딩 단계에서 구현됩니다.
소프트웨어 품질 보증 프로세스의 실제 테스트 단계에는 여러 가지 중요한 단계가 있습니다. 여기에는 소프트웨어 테스트의 다양한 섹션의 무결성을 평가하는 단위 테스트와 오류 주입이 포함되어있어 프로그램이 잘못된 데이터에 어떻게 반응하는지 조사합니다. 추가 단계에는로드 테스트 또는 스트레스 테스트가 포함됩니다.이 테스트는 사용량이 많은 프로그램에서 프로그램이 작동하는 방식을 확인하고 침입 또는 보안 테스트를 통해 무단 액세스에 대한 프로그램의 저항을 테스트합니다. 소프트웨어 프로젝트는 일반적으로 다른 사람이 사용하기 쉬운 프로그램인지 확인하기 위해 사용성 테스트를 거칩니다.
소프트웨어 코드 테스트에 참여하는 전문가는 일반적으로 블랙 박스 테스터라고하는 그룹과 화이트 박스 또는 유리 상자 테스터라고하는 그룹으로 구분됩니다. 블랙 박스 테스트는 소프트웨어 코딩 단계에서 시작하여 기본 컴퓨터 코드를 검사하지 않는보다 피상적 인 프로세스입니다. 소프트웨어의 유용성, 외관상의 일관성 및 오류 및 오작동 발생을 조사합니다.
화이트 박스 테스트는 설계 단계에서 소프트웨어 품질 보증 프로세스의 맨 처음에 시작되는 프로세스입니다. 여기에는 코드를 실제로 작성하기 전에 발생할 수있는 문제에 대한 예측과 테스트 계획 및 고급 테스트 스크립트 작성이 포함됩니다. 블랙 박스 테스트와 달리 화이트 박스 테스트에는 기본 컴퓨터 코드에 대한 연구도 포함됩니다.
품질 보증은 소프트웨어 구현 단계에도 적용됩니다.이 단계는 소프트웨어가 거의 완성되어 평가를 위해 컴퓨터 시스템에 설치 될 때입니다. 이 단계는 종종 알파 테스트라고하며 거의 완성 된 제품을 개발자 직원이 설치하고 테스트 할 때 발생합니다. 회사 외부의 잠재 고객에게 소프트웨어를 제공 할 때이를 베타 테스트라고합니다. 소프트웨어가 출시 된 후 결함이 발생하고 패치를 개발해야하는 경우 회귀 테스트를 사용하여 업데이트로 새로운 오류가 발생하지 않도록합니다.