출처 : 강의 교안, 시스템분석설계 with 애자일 (생능출판사, 최은만)
1. SW 요구사항
1.1 요구사항의 정의
1) 요구사항(Requirements)이란?
- SW 요구사항은 시스템이 가져야 할 기능이나, 어떤 특성을 가져야 하는지를 기술한 것
- 사용자가 필요한 것
- 어떤 기능? ➡️ 비즈니스 요구 [분석 단계]
- 어떻게 구현? ➡️ 시스템 요구 [설계 단계]
2) 요구사항의 정의 : IEEE 610 표준
- 문제의 해결 또는 목적 달성을 위하여 고객에 의해 요구되는 기능
- 계약, 표준, 명세 등을 만족하기 위하여 시스템이 처리하거나 충족해야 하는 서비스 또는 제약사항
- 고객이 요구한 사항과 요구하지 않았더라도 당연히 제공되어야 한다고 가정되는 사항들
3) 요구사항의 명세
- 요구사항의 추출과 분석을 통해 얻어지는 고객이 시스템에 대해 요구하는 기능 도는 서비스와 제약사항에 대한 기술 (Specification)
- 프로젝트 수주를 위한 제안의 기초이면서 프로젝트 제약의 기초가 되므로 상세히 기술되어야 한다.
- 요구사항의 종류 ; 기능적, 비기능적
4) 기능적 요구 (Functional Requirement)
- 시스템으 수행해야 할 서비스나 정보 저장 등의 기능
- 시스템이 외부의 데이터나 명령을 받아들여 어떤 반응을 하는지 기술해야 한다.
- 구현 기술과는 독립적
5) 비기능적 요구 (Non-functional Requirement)
- 성능, 사용 용이성, 보안 등 기능 이외의 사항
- 시스템 구축이나 동작에 대한 제한사항들
- 요구분석 이후 설계 단계에서 결정해야 할 언어나 플랫폼, 구현의 선택을 까다롭게 할 수 있다.
- 기능적 요구사항보다 중요할 수 있다.
6) 요구사항의 결정
- 비즈니스나 IT측면에서 요구 자체를 결정
- 사용자와 엔지니어가 정보를 나누고 이해한다.
1.2 요구사항 조사 수행하기
1) 요구사항 조사하기
- 시스템이 수행해야 할 것들에 대한 정보를 많은 정보원(information source)을 통하여 수집한다.
- ex) 사용자, 리포트, 폼, 절차
2) 요구사항 조사과정의 산출물
- 사용자들로부터 수집된 정보 : 인터뷰 결과서, 관찰노트, 회의록
- 기존 문서 및 파일 : 업무양식, 절차매뉴얼, 직무기술서, 현 시스템의 흐름도
- 컴퓨터 기반 정보 : JAD 모임의 결과, 현 시스템의 저장 내용 및 레포트, 시스템 프로토타입으로부터 얻어지는 산출물 및 레포트
- 조직의 구성 요소에 대한 이해 : 사업 목표, 데이터 처리 규칙, 정책 및 지침
1.3 요구사항 조사를 위한 방법론
1) 인터뷰 및 탐문
(1) 인터뷰
- 운영과 현 시스템의 이슈, 앞으로의 조직 활동에 따른 시스템에 대한 요구사항 등에 관해서 인터뷰 수행
- 진술, 의견, 견해 등을 수집
- 인터뷰 질문
- 개방형 질문 (Open-Ended)
- 사전에 정의된 답변이 없다/
- 예기치 못한 답변을 이끌어내는데 사용한다.
- 폐쇄형 질문 (Closed-Ended)
- 응답자는 사전에 정의된 응답 중에서 답을 선택하도록 요청받는다.
- 질문에 대한 흔한 답변이 알려져 있을 때 유용하다.
- 많은 시간이 필요하지 않기 때문에 많은 수의 토픽들을 다룰 수 있다.
- 효과적인 인터뷰를 위한 지침
- 인터뷰 일정의 수립 : 대상자들에게 인터뷰 목적을 설명하고, 일정을 약속, 인터뷰를 위한 체크리스트, 의사일정, 질문 등을 준비한다.
- 중립적인 인터뷰 : 유도심문 피하기
- 인터뷰 내용의 기록과 검토 : 인터뷰 수행 후 48시간 이내에 인터뷰 일지 검토
- 다양한 관점을 유지 : 잠재적 사용자와 관리자 등 넓은 폭의 사용자들을 대상으로 인터뷰를 수행해야 한다.
(2) 작업자 관찰
- 정해진 시간에 작업자를 관찰하여 데이터가 어떻게 다루어지고, 업무를 위해 필요로 하는 정보가 무엇인지를 파악
- 인터뷰를 보완하는 방법
- 편견이 없는 데이터를 얻기 어렵다.
2) 업무 문서의 분석
- 조직에서 사용하는 데이터와 정보에 대한 구체적인 사례, 보고된 이슈, 정책, 규칙 등을 발견하기 위해 사용
- 문서를 통해 찾을 수 있는 정보의 유형
- 기존 시스템의 문제 : 결여된 정보, 중복된 절차 등
- 조직이 추구하는 방향
- 주요 사용자들의 직위와 이름
- 조직의 가치 판단 기준
- 데이터, 데이터 처리 규칙, 조직의 운영 원리
3) 합동응용시스템설계 (JAD, Joint Application Design)
- 최종 사용자와 정보시스템 전문가가 한 자리에 모인 대화의 자리에서 시스템 설계를 논의
- 주 사용자, 관리자. 시스템 분석가를 모이게 한다.
- 목적 : 주요 사람들로부터 시스템 요구사항을 동시에 수집
- 사용자 참여를 유도하여 시스템 설계를 가속화
- 최종 결과
- 기존 시스템에 대한 자세한 문서
- 제안된 시스템의 특성에 대한 자세한 문서
4) 프로토타이핑 (Prototyping)
- 시스템의 초기 버전이 빠르게 구축될 수 있다.
- 요구사항 조사 프로세스를 강화시킬 수 있다.
- 목적 : 최종 시스템을 개발하는 것이 아니라 최종 시스템의 구체적인 세부 사항을 개발하는 것
1.4 업무 프로세스 분석
1) 업무 프로세스 분석
- 업무 프로세스 : 사업에 필요한 요인을 기능별로 나눠 연속된 흐름으로 정리하는 것
- 업무 프로세스 분석의 3단계
1️⃣ 현재 시스템(AS-IS) 이해
2️⃣ 개선할 점 파악
3️⃣ 새로운 시스템(TO-BE)을 정의
- 업무 흐름의 효율 : 불필요한 작업 통합 및 병렬화
'전공과목 정리 > 소프트웨어분석및설계' 카테고리의 다른 글
[소프트웨어분석및설계🛠️] 6장 UML (Unified Modeling Language) (0) | 2024.09.08 |
---|---|
[소프트웨어분석및설계🛠️] 5장 정보공학방법론 (0) | 2024.09.07 |
[소프트웨어분석및설계🛠️] 4장 구조적 방법론 (0) | 2024.08.29 |
[소프트웨어분석및설계🛠️] 2장 프로젝트 관리 (0) | 2024.08.17 |
[소프트웨어분석및설계🛠️] 1장 SW 개발 프로세스 (0) | 2024.08.16 |