-
테스트소프트웨어 공학 2022. 5. 23. 17:57
과거 프로그램 코드 실행 후 오류 발견/수정 현대 개발 프로세스 전반에 걸쳐 생산되는 문서 검토하여 잠재 오류 미리 발견 활동 포함 목적 잠재적인 오류 발견 성공적인 테스트 최소시간으로 최대노력으로 오류 발견 단계적 테스트 - 왼쪽에 개발 단계, 오른쪽에 테스트 단계 배치 - 단위 테스트와 통합 테스트는 모듈 설계와 구조설계에 따라 프로그램이 올바르게 동작하는지 확인 - 시스템 테스트는 시스템이 요구 명세에 기술된 요구를 올바르게 구현했는지 확인 검증 - 인수 테스트는 고객이 기대하고 원하는 올바른 시스템을 구현했는지 검증 단위 테스트 단위 모듈이 모듈 설계에 따라 올바르게 구현되었는지 확인하는 테스트 화이트박스 테스트 방법에의해 설계된 테스트 데이터 이용 통합 테스트 여러 모듈을 통합한 테스트 모듈간 ..
-
모듈 설계소프트웨어 공학 2022. 5. 23. 17:46
소프트웨어 아키텍처를 구성하는 모듈 내부의 세부 처리 과정 모듈 설계 명세 도구 - 그래픽 기반 - 텍스트 기반 - 기타 흐름도 가장 고전적이고 광범위하게 사용 프로그램 논리 구조 표현 모듈 내부 수행 절차에 대한 흐름 표현 PDL 프로그래밍 코드와 유사한 주요 키워드를 이용하여 서술적으로 명세 NS 도표 박스 다이어그램 설계 명세 • 분석에서 작성된 SRS 만족하는지 확인위해 설계 명세서 공식 검토 • 설계 명세에 기술된 내용은 SRS 의 관련 요구사항으로 추적 가능 • 설계 명세는 테스트 활동에 대한 기초 자료 –> 설계 명세에 기초하여 모듈이나 모듈 통합에 대한 테스트 케이스 개발
-
구조적 설계 방법소프트웨어 공학 2022. 5. 16. 16:34
구조적 설계 방법 가장 고전적, 일반적인 설계 방법 하향식, 기능 중심 분해 방법 구조도 이용 기능 중심, 탑다운 방식 구조도 모듈 예) 상위 중간 계층 모듈은 제어모듈 , 하위 계층 모듈은 작업모듈 모듈 이름은 모듈 자체의 기능과 모듈이 호출하는 하부 모듈의 모든 기능을 포함하는 포괄적이며 의미 있는 이름으로 작성 데이터와 제어 플래그 X 미리 정의된 라이브러리 모듈의 합 모듈은 나타내지 않는다. 모듈 이름은 호출되는 모든 하부 모듈의 행위를 요약하도록 작성 설계 전차 변형흐름 특성 -> 변형중심 설계 방법 거래흐름 특성 -> 거래중심 설계 방법
-
설계 개요소프트웨어 공학 2022. 5. 4. 20:26
분석 What이 깊이 이해, 파악, 정의 결과물은 논리적 모델 설계 How를 어떻게 만족할 것인가 결과물은 물리적 모델 설계 작업 아키텍처 설계 - 시스템 아키텍처 설계 - 소프트웨어 아키텍처 설계 모듈 설계 데이터 설계 인터페이스 설계 --- 크게 4 ~ 6개의 단계로 나눌 수 있다. 사용자 인터페이스 설계는 분석에 해당한다. 설계의 첫번째 수행 작업은 시스템 아키텍처 설계 – 소프트웨어 아키텍처 설계를 포함한 모든 설계에 지대한 영향 추상화 핵심과 본질 목적에 관련되는 정보에만 집중하고 다른 것은 배제한다. 절차 추상화 =기능 추상화 어떤 기능 수행을 위해 필요한일련의 절차(알고리즘)를 추상화한다. 자료 추상화 추상화 결과는 연관 자료를 포괄적으로 의미하는 자료 개체 제어 추상화 운영체제에서 이용되는..
-
구조적 분석 방법소프트웨어 공학 2022. 5. 3. 12:31
구조적 개발 방법론 = 구조적 분석 방법 + 구조적 설계 방법 + 구조적 프로그래밍 방법 구조적 분석의 다양한 관점 정보 모델링 - 정보 구조와 이들 사이의 관계 표현 - 개체 관계도 이용 기능 모델링 - 자료 흐름도 이용 - 데이터가 어떻게 변형, 처리되는가 표현한다 행위 모델링 - 상태 전이도 이용 보조 도구 - 프로세스 명세서 - 자료 사전 데이터 모델 전통적인 정보 시스템에서 데이터와 데이터 사이의 관계 표현 중요 기능 모델 = 데이터 흐름 모델 모든 컴퓨터 시스템 다양한 (자료, 매체, 형태) 이용 DFD(자료 흐름도) 일반적인 추상화 수준과 상세 수준까지 표현할 수 있다. 최상위 DFD 문맥 다이어그램 (Context Diagram), 레벨 0 DFD 최상위 추상화 수준에서 데이터 흐름과 프로..
-
요구 공학소프트웨어 공학 2022. 4. 19. 22:53
요구 문제 해결 및 목적 달성을 위한 조건 or 능력 요구 분류 기능요구 시스템에 의해 제공해야 하는 기능/서비스/능력을 의미한다. 비기능 요구 일반적으로 단일 기능에 제한되지 않으며 시스템 전체에 대하여 적용되는 요구 가용성 요구 효율성 요구 유연성 요구 무결성 요구 상호운영성 요구 신뢰성 요구 강건성 요구 사용성 요구 유지보수성 요구 이식성 요구 재사용성 요구 시험용이성 요구 성능성 요구 환경 요구 표준 요구 요구 공학 사용자 요구를 체계적으로 다루기 위한 프로세스와 방법 요구 추출 문제 도메인에 대한 기본적인 이해 도메인 분석 , 요구 획득 , 요구 발견 , 요구 조사 , 요구 파악 효과적인 요구 추출 방법 요구 분석 깊이 이해, 필요한 요구 정의 구조적 분석 방법과 객체지향 분석 방법이 잇다. 요..
-
프로젝트 계획소프트웨어 공학 2022. 4. 10. 19:10
시스템 정의 처음에 시스템 정의서를 작성한다. - 최상위 수준에서 시스템을 정리한 문서이다. 일정 수립 - 작업 분해 구조 WBS 작업들의 계층구조 그래픽 도구 , 일정수립 첫번째 단계 PERT/CPM 네트워크와 Gantt 차트 작성에 대한 기초 자료 일정수립 - PERT/CPM PERT/CPM 방법 WBS 에서 파악된 작업 사이의 상호의존 관계 및 작업 소요 기간을 네트워크로 표시 PERT/CPM 방법 순서 의존관계 밒 소요기간 목록 작성 PERT/CPM 네트워크 작성 임계경로 결정 여유시간 계산 임계경로 결정 CP 프로젝트 전체 기간에 중요한 영향을 미치는 작업경로 가장 빨리 프로젝트를 종료 완수 하는 기간과 관련된 작업경로 여유시간 계산 Slack Time 전체 프로젝트 지연하지 않으면서 어떤 작업..
-
프로젝트 관리소프트웨어 공학 2022. 4. 3. 00:09
프로젝트 관리 프로세스 계획,감시,통제,보고 척도 측정 모든 공학 분야에 적용 측정되지 않는 것을 평가 , 제어 , 관리하는 것은 매우 어려움 척도 효과적 관리에 필요하다. 소프트웨어의 어떤 특징 제품크기 , 신뢰성 , 프로세스 에 대한 측정 기준 혹은 측정 방법 프로덕트 vs 프로세스 프로덕트 척도 : 소프트웨어 개발 과정에서 생산되는 결과물에 대한 척도 프로세스 척도 : 소프트웨어 개발 프로세스 개선을 위한 척도 객관적 vs 주관적 객관적 척도 : 주어진 척도에 대하여 항상 같은 측정 결과를 보이는 척도 주관적 척도 : 측정 주체의 판단에 따라 서로 다른 측정 결과를 보일 수 있는 척도 기본 vs 복합 척도 기본 척도 : 직접 측정할 수 있는 척도 복합 척도 : 직접 측정할 수 없지만 다른 척도들과 ..