- 인수(Acceptable) 테스트의 종류
- 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 두는 테스트
- 알파 테스트 → 통제된 환경에서 사용자가 개발자와 함께 확인
- 베타 테스트 → 통제되지 않은 환경에서 여러 명의 사용자가 행하는 테스트
- **사용성(**Usability)은 소프트웨어 품질 목표 중 쉽게 배우고 사용할 수 있는 정도
- **이식성(Portability)**은 하나 이상의 하드웨어 환경에서 운용되기 위해 쉽게 수정될 수 있는 능력
- 형상 관리는 소프트웨어 개발을 위한 변경사항을 관리하므로 개발 비용과는 거리가 멀다
- 요구 분석서, 소스 코드, 운영 및 설치 지침서 …
- 화이트박스 테스트는 코드 분석과 프로그램 구조에 대한 지식을 바탕으로 문제가 발생할 가능성이 있는 모듈 내부를 직접 관찰, 테스트
- 블랙박스 테스트는 프로그램의 구조를 고려하지 않고, 요구나 명세를 기초로 테스트
- 소프트웨어 테스트 검증(verification)과 확인(validation)
- 검증 → 개발 과정 테스트, 올바른 제품 생산인지 검증, 설정된 개발 규격 요구 충족 판단, 명세화된 기능을 올바로 수행하는지
- 확인 → 결과 테스트, 제대로 동작 테스트, 최종 사용자 요구에 적합 판단, 사용자 시각으로 개발 되었는지 입증
- 코드 인스펙션
- 정적 테스트 시 활용 기법
- 수행 시키는 것 대신 눈으로 확인하는 방법
- 결함과 함께 표준 준수 여부, 효율성 등의 다른 품질 이슈 검사
- 소프트웨어 아키텍처 패턴 중 파이프-필터 패턴
- 서브 시스템이 입력 데이터를 받아 처리하고, 결과를 다음 서브 시스템으로 넘겨주는 과정 반복
- 필터 컴포넌트는 재사용성 좋고 추가 쉽기 때문에 확장 용이
- 미들웨어 솔루션 유형
- DB 미들웨어/ 원격 프로시저 호출(RPC)/ 메시지 지향 미들웨어 (MOM)
- 트랜잭션 처리 모니터(TP-모니터)/ 레거시웨어/ 객체 기반 미들웨어(ORB) / WAS
- 요구사항 분석 단계에서 요구사항에 대한 협의, 우선 순위 부여 등을 통해 요구사항 변경 가능
- 추출된 요구사항에 대해 충돌, 중복, 누락 등의 분석을 통해 완전성 + 일관성
- 후보 요구사항 모델링, 우선 순위 부여, 릴리즈 수행할 요구사항 선정
- 비용과 일정에 대한 제약설정, 타당성 조사, 요구사항 정의 문서화
- 다형성: 하나의 메시지에 대해 각 개체가 가지고 있는 고유한 방법으로 응답할 수 있는 능력(오버라이딩)
- 추상화: 공통 성질 추출 → 추상 클래스 설정
- 정보 은닉: 코드 내부 데이터 메스드 숨기고 공개 인터페이스를 통해서만 접근
- 상속성: 상위 클래스의 속성과 메서드를 재정의 없이 하위 클래스에서 사용
- 캡슐화: 서로 연관된 데이터 함수를 함께 묶어 외부와 경계를 만들고, 필요한 인터페이스만을 드러냄
- CASE의 주요 기능
- 그래픽 지원
- 생명주기 전 단계 연결
- 소프트웨어 개발 모형 지원
- 표준화된 개발 환경 구축, 문서 자동화 기능 제공
- 작업 과정 및 데이터 공유를 통해 커뮤니케이션 증대
- XP의 5가지 가치
- UML 활동 다이어그램
- 시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름 순서대로 표현