(1) 모델링 기법
◼︎ 모델
모델은 객체, 시스템, 개념에 대한 구조나 작업을 보여주기 위한 패턴이다.
이는 개발 대상을 추상화하고 기호나 그림 등으로 시각적으로 표현한다.
모델 특징
- SW에 대한 이해도 향상, 이해 당사자 간의 의사소통 향상
- 문제 상황에 대한 이해도 높이고 해결책 설명
- 향후 개발될 시스템에 대한 유추 가능
- 개념 모델은 문제 도메인의 엔터티 들과 관계 및 종속성을 반영
◼︎ 모델링
: 모델링은 실세계의 물리현상을 특정한 목적에 대응하여 이용하기 쉬운 형식으로 표현하는 기법이다.
모델링 특징
- 여러 분야의 엔지니어들이 공통된 개념을 공유하는 데 도움을 줌
- 개발팀이 응용문제를 이해하는 데 도움을 줄 수 있음
- 모델링 작업의 결과물은 다른 모델링 작업에 영향을 줄 수 있음
- 절차적인 프로그램을 위한 자료 흐름도는 프로세스 위주의 모델링 방법
- 구조적 방법론에서는 DFD, DD 등을 사용하여 요구사항의 결과를 표현
- 객체 지향 방법론에서는 UML 표기법 사용
- 실세계 문제에 대한 모델링이 소프트웨어 요구사항 분석의 핵심
(2) 분석 자동화 도구 **
요구사항을 자동으로 분석하고, 요구사항 분석 명세서를 기술하도록 개발된 요구사항 분석을 위한 자동화도구 (CASE)이다.
여기서 CASE란, Computer Aided Software Engineering으로 SW생명주기의 전체 단계를 연결해 주고 자동화해 주는 통합된 도구로써 소프트웨어, 하드웨어, 데이터베이스, 테스트 등을 통합하여 소프트웨어를 개발하는 환경을 조성한다.
◼︎ 분석 자동화 도구의 등장 배경
관점 | 등장 배경 |
산업 측면 | - 소프트웨어 위기의 극복 대응 방안으로 대두 |
관리 측면 | - 사용자의 요구사항과 실제 시스템 간의 차이 발생 극복 필요 - 시스템의 재사용성, 생산성, 유지보수의 어려움 극복 필요 |
◼︎ 분석 자동화 도구의 특징
품질향상
- 표준화 적용과 문서화를 통한 보고를 통해 품질 개선이 가능
- 자동화된 기법을 통해 소프트웨어 품질이 향상
변경 관리
- 변경 사항과 변경으로 인한 여향에 대한 추적이 쉬움
유지보수
- 소프트웨어 모듈의 재사용성이 향상, 유지보수가 용이
- 명세에 대한 유지보수 비용의 축소가 가능
기술적 기반
- CASE의 원천기술
- 구조적 기법
- 프로토타이핑 기술
- 자동프로그래밍 기술
- 정보 저장소 기술
- 분산 처리 기술
◼︎ 분석 자동화 도구의 분류
상위 CASE
- 계획수립, 요구분석, 기본설계 단계를 다이어그램으로 표현
- 모델들 사이의 모순 검사 및 모델의 오류 검증, 일관성 검증 지원
- 자료 흐름도 프로토타이핑 작성 지원 및 UI 설계 지원
하위 CASE
- 구문 중심 편집 및 정적, 동적 테스트 지원
- 시스템 명세서 생성 및 소스 코드 생성 지원
SW 개발 주기 전체를 지원하는 통한 CASE(Integrated CASE)도 존재
◼︎ 분석 자동화 도구 주요 기능 (CASE 도구) ***
- 그래픽 지원
- SW 생명주기 전 단계를 연결
- 다양한 SW 개발 모형 지원
- 표준화된 개발 환경 구축 및 문서 자동화 기능 제공
- 작업자 간의 커뮤니케이션 증대
'CS' 카테고리의 다른 글
[CS] Java 기초 (형 변환, 문자열 기능) (0) | 2025.02.14 |
---|---|
[CS] 소프트웨어 설계 -소프트웨어 아키텍처 패턴 (0) | 2025.01.21 |
[CS] 소프트웨어 설계 - 애자일 방법론 (0) | 2025.01.19 |
[CS] 소프트웨어 설계 - UML 다이어그램(시퀀스/상태) (0) | 2025.01.19 |
[CS] 소프트웨어 설계 - UML 다이어그램(클래스/유스케이스) (0) | 2025.01.19 |