애플리케이션 테스트 기본 원리 완벽한 테스트 불가능 : 소프트웨어의 잠재적인 결함을 줄일 수 있찌만 소프트웨어에 결함이 없다고 증명할 수는 없음. 파레토 법칙 : 애플리케이션의 20%에 해당하는 코드에서 전체 결함의 80%가 발견된다는 법칙 살충제 패러독스 : 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않는 현상 테스팅은 정황 의존 : 소프트웨어의 특징, 테스트 환경, 역량 등 정황에 따라 테스트 결과가 달라질 수 있으므로 정황에 따라 테스트를 다르게 수행해야 함 오류 - 부재의 궤변 : 소프트웨어의 결함을 모두 제거해도 사용자의 요구사항을 만족시키지 못하면 해당 소프트웨어는 품질이 높다고 말할 수 없는 것 테스트와 위험은 반비례 테스트의 점진적 확대 테스트의 별도 팀 수행..
사용자 인터페이스 사용자와 시스템 간의 상호 작용이 원활하게 이뤄지도록 도와주는 장치나 소프트웨어를 의미한다. 사용자 인터페이스의 구분 CLI (Command Line Interface) : 명령과 출력이 텍스트 형태로 이뤄지는 인터페이스 GUI (Graphical User Interface) : 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 그래픽 환경의 인터페이스 NUI (Natural User Interface) : 사용자의 말이나 행동으로 기기를 조작하는 인터페이스 사용자 인터페이스의 기본 원칙 직관성 : 누구나 쉽게 이해하고 사용할 수 있어야 함 유효성 : 사용자의 목적을 정확하고 완벽하게 달성해야 함 학습성 : 누구나 쉽게 배우고 익힐 수 있어야 함 유연성 : 사용자의 요구사항을 최대한 ..
시스템 인터페이스 요구사항 명세서 구성 요소 인터페이스 이름 연계 대상 시스템 연계 범위 및 내용 연계 방식 송신 데이터 인터페이스 주기 기타 고려 사항 시스템 인터페이스 요구사항 분석 절차 요구사항 목록 만들기 관련 자료 준비 기능적인 요구사항, 비기능적인 요구사항 분류 요구사항 분석 & 요구사항 명세서 내용 추가, 수정 요구사항 명세서, 목록을 관련 이해관계자에게 전달 요구사항 검토 동료검토 : 요구사항 명세서 작성자가 명세서 내용을 직접 설명하고 동료들이 이를 들으며 결함을 발견하는 형태의 검토 방법 워크스루 : 검토 회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후에 짧은 검토 회의를 통해 결함을 발견하는 형태의 검토 방법 인스펙션 : 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이..
📝소프트웨어 아키텍처 모듈화 시스템의 기능들을 모듈 단위로 나누는 것 추상화 전체적이고 포괄적인 개념을 설계한 후 구체화시켜 나가는 것 정보은닉 모듈 내부에 포함된 절차와 자료들의 정보가 감추어져 다른 모듈이 접근하거나 변경하지 못하도록 하는 기법 상위 설계와 하위 설계 상위 설계 하위 설계 아키텍처 설계, 예비 설계 모듈 설계, 상세 설계 구조, DB, 인터페이스 컴포넌트, 자료 구조, 알고리즘 시스템 측면 품질 속성 성능, 보안, 가용성, 기능성, 사용성, 변경 용이성, 확장성 등 협약에 의한 설계 컴포넌트를 설계할 때 클래스에 대한 여러 가정을 공유할 수 있도록 명세한 것 📝아키텍처 패턴 아키텍처 패턴 아키텍처를 설계할 때 참조할 수 있는 전형적인 해결 방식 또는 예제 레이어 패턴, 클라이언트-서버..
📝요점정리 데이터 저장소 데이터들을 논리적인 구조로 조직화하거나, 물리적인 공간에 구축한 것을 의미 데이터베이스 공동으로 사용될 데이터를 중복을 배제하여 통합하고, 쉽게 접근하여 처리할 수 있도록 저장 장치에 저장하여 항상 사용할 수 있도록 운영하는 운영 데이터 DBMS 사용자의 요구에 따라 정보를 생성해 주고, 데이터베이스를 관리해 주는 소프트웨어 필수 기능 3가지 : 정의 / 조작 / 제어 기능 데이터의 독립성 논리적 독립성 물리적 독립성 스키마(Schema) 외부 스키마 : 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것 개념 스키마 : 데이터베이스의 전체적인 논리적 구조, 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 ..