0. 서론
- 정보처리기사 자격증을 준비하는 사람들을 위한 세 번째 요약 포스팅입니다.
이번 장에서는 소프트웨어 설계 중, '요구사항을 확인하는 방법(3)' 에 대해 배워 볼 것입니다.
마지막 장이니만큼, 양은 적지만 모델, 모델링의 개념, 분석 자동화 등에 대해 확실히 알아두는 편이 좋습니다.
1. 분석모델 확인
- 분석 모델 확인하는 방법인 1)모델링 기법 2)분석 자동화 도구 3)요구사항 관리도구 에 대해 알아보겠습니다.
2. 모델
1) 개념
- 모델은 객체/시스템/개념/구조 및 작업을 보여주기 위한 패턴입니다.
개발 대상을 추상화하고, 기호나 그림 등 '한눈에 알아보기 쉽게' 표시하는 것이 좋습니다.
2) 특징
- 소프트웨어에 대한 이해도가 향상됩니다.
- 이해 당사자 간 의사소통이 간편해집니다.
- 해결책 도출이 간편합니다.
- 미래 지향적으로, 향후 갭라도리 시스템의 결을 유추할 수 있습니다.
- 문제 도메인의 Entity들과 종속성과 관계를 반영하빈다.
3. 모델링
1) 개념
- 목적에 맞게 실세계의 물리현상을 쉽게 표기한 것입니다.
이해가 잘 될수록 모델링이 성공적이라고 말할 수 있습니다.
2) 특징
- 개발 시 FE,BE(프론트엔드, 백엔드), 디자이너, 기획자 등 여러 명의 프로젝트 인원들이 함께 작업을 진행합니다.
해당 작업자들에게 공통된 개념을 알려주어 '어떤 프로젝트를 진행하고, 어떤 기능을 개발하는가.' 에 대한 답변을 줍니다.
- 프로젝트 인원들이 응용 문제를 이해하는데 도움을 줍니다.
- 모델링은 서로 상호연결상태입니다. 한 가지 모델링의 결과물이 다른 모델에 영향을 미칠수도, 받을 수도 있습니다.
- 크게 1) 구조적 방법론과, 2) 객체지향 방법론이 있습니다.
2.1) 구조적 방법론
- DFD(Data Flow Diagram), DD(Data Dictionary)등을 사용하여 요구사항의 결과를 표현합니다.
2.2) 객체 지향 방법론
- UML 표기법을 사용합니다(이전 장에서 배운 UML과 동일합니다).
4. 분석 자동화 도구
1) 개념
- 분석을 자동화하는 것입니다. 단, 요구사항 분석 명세서를 기술하는 것 까지 포함해야합니다.
- 요구사항 분석을 위한 자동화 도구로, CASE로도 불립니다.
*CASE란?
- Computer Aided Software Engineering의 약자입니다.
- 소프트웨어 생명 주기를 연결 및 자동화 해주는 통합도구입니다.
2) 왜 생겼는가?
- 분석 자동화 도구는 1) 산업 측면과 2) 관리 측면으로 나눠집니다.
2.1) 산업 측면
- 소프트웨어 위기의 극복 방안으로 사용하기 위해서입니다.
2.2) 관리 측면
- 사용자 요구사항과 실제 시스템이 일치하지 않을 때 관리를 용이하게 하기 위해서입니다.
- 시스템의 유지보수와 생산, 재사용 등의 문제를 해결하기 위해서입니다.
3) 특징
- 문서화 된 보고를 통해 품질 개선이 가능합니다.
- 변경 사항에 대한 history를 알기 쉽습니다.
- 명세에 대한 유지 보수 비용을 알기 쉬우며, 절약할 수 있습니다.
- 자동화 되어 소프트웨어 품질에 대해 피드백이 빠르고 쉽습니다.
- 유지보수가 용이합니다.
- 구조적 기법, 프로토타이핑, 자동 프로그래밍, 정보 저장소 기술, 분산 처리 기술 등이 있습니다.
4) 분류
- 1) 상위 CASE, 2) 하위 CASE 2가지로 분류됩니다.
4.1) 상위 CASE
- 계획수립, 요구분석, 기본 설계 단계에 대해 다이어그램으로 나타냅니다.
- 모델 간 오류사항을 위한 검증을 지원합니다.
- 프로토타이핑 및 UI를 지원합니다.
4.2) 하위 CASE
- 구문 중심 편집을 지원합니다.
- 테스트 환경을 지원합니다(정적,동적).
- 시스템 명세서 생성 및 소스 코드 생성을 지원합니다.
5) 기능
- 그래픽을 지원합니다.
- 소프트웨어 생명주기를 통틀어 연결합니다.
- 소프트웨어 개발 모형을 지원합니다.
- 표준화된 개발 환경 및 문서 자동화 기능을 제공합니다.
- 프로젝트 구성원들 간의 커뮤니케이션을 증대합니다.
5. 요구사항 관리 도구
1) 개념
- 요구사항을 기반으로 하는 프로젝트 관리, 설계, 개발, 테스트 등ㅇ르 수행 할 수 있는 역할을 지원하는 도구입니다.
2) 왜 필요한가?
- 요구사항이 변경이 발생할 시 해당 사항을 1)가격 비교 2)history 3)평가 하기 위해서입니다.
3) 기능
- 1)기본 2)핵심 3)부가 기능 총 3가지로 구성되어 있습니다.
3.1) 기본 기능
- 프로젝트 생성 기능, 요구사항 작성, 요구사항 불러오기/내보내기로 이루어져 있습니다.
3.2) 핵심 기능
- 요구사항에 대한 이력관리, 베이스라인, 추적성으로 이루어져 있습니다.
3.3) 부가 기능
- 협업 환경, 외부 인터페이스, 확장성으로 이루어져 있습니다.
6. 마치며
- 모두 해당 자료로 공부하여, 정보처리기사 필기 시험을 잘 보시기 바랍니다.
자료는 요약본이 올라가며, 모르는 용어와 그림은 직접 찾아보면 공부에 더 큰 도움이 될 것입니다.
긴 글 읽어주셔서 감사합니다.
'정보처리기사[필기]' 카테고리의 다른 글
[정보처리기사][요약]1. 소프트웨어 설계(4)설계 모델링 (0) | 2023.05.19 |
---|---|
[정보처리기사][요약]1. 소프트웨어 설계(3)애플리케이션 설계 (0) | 2023.05.16 |
[정보처리기사][요약]1. 소프트웨어 설계(2)화면 설계 (0) | 2023.05.15 |
[정보처리기사][요약]1. 소프트웨어 설계(1)요구사항(2.확인) (0) | 2023.05.11 |
[정보처리기사][요약]1. 소프트웨어 설계(1)요구사항(1.현행시스템) (0) | 2023.05.09 |