본문 바로가기

Lobo's study room/정보처리기사

[Lobo's Theory]요구공학

2.요구공학

요구사항을 받아들이는 것.

기획자가 사용자가 원하는 기능을 끄집어내는 것

수집.분석.명세화.검증.추적.변경되는 요구사항 도출.관리

고객의 머리 속에 있는 것을 뽑아내는 것

(2)요구공학의 필요성

1)분석의 어려움

2)요구사항 변화

3)관점별 차이 발생:고객과 개발자 관점이 다름

(3)요구사항의 분류

1)참여자 관점:사용자 요구사항(고객님의 요구사항), 시스템 요구사항(서버에 대한 요구사항-하드웨어와 소프트웨어가 갖춰야 하는 것들).소프트웨어 요구사항(개발자 관점에서 소프트웨어가 갖춰야 하는 사항)

2)요구사항 내용의 종류

기능적 요구사항:어떤 기능을 수행해야 하는지 기능들 정의

비기능적 요구사항: 조건과 제약사항들이 무엇인지 정의 - 효율성, 보안, 속도.성능.품질.안전성

(4)요구사항 개발 프로세스

도출-분석-명세-확인

도분명확

도출:사용자의 머리속에 있는 기능들 끄집어내기

분석:할수있는지 할수없는지 분석. 기능. 비기능. 종류 분석.

명세:작성. 수행

확인:고객과 협의.

1)도출

소프트웨어가 해결해야 할 문제를 이해하고 요구사항이 어디에있고 어떻게 수집할 것인가.

머리속에 있는 기능들을 다 끄집어내는 것.

인터뷰

관찰

사용자 스토리-서로 요구사항들을 이야기 하는것

시나리오

설문조사-현업에 계신 분들한테 설문을 해서 요구사항 도출

브레인 스토밍-회의를 통해 머리속에 있는 것들을 끄집어내는것

포커스 그룹-제품의 요구사항에 대한 아이디어를 만들기 위해 소집된 사용자 대표 그룹.팀 단위 회의.

2)분석

할수 있는지 할수 없는지. 전체적인 범위 결정

요구사항 들간에 상충되는 것을 해결

소프트웨어의 범위를 파악

업무환경과의 상호작용 파악

도메인 분석. - 기능들 분석

구조적 분석 도구 : DFD, DD(데이터 사전),Mini-Spec(소단위 명세서),ERD(개체 관계 구조도),STD(상태전이도)

UML, 모델링

3)명세

실제로 쓰는 것

문서를 작성하는 것

정형 명세 기법

(약속된 기호로 표시.수학.논리학.명세 오류 및 모호성 쉽게 파악)

(작성이 어렵고 시간이 많이 소모됨)

Z

vs

비정형 명세기법

(자연어로 작성.자연어.그림.의사전달 용이.)

(내용이 모호하고 완전한 검증이 곤란)

산출물

-시스템 정의서

-시스템 요구사항 명세서

-소프트웨어 요구사항 명세서

4)확인

고객과 만나서 명세한 것을 통해 확인

확인, 검증, 형상관리(버전관리 모아놓는것.변경히스토리 남기는것)

(5)요구사항 분석 기법

1)요구사항 분류

기능 요구사항/ 비기능 요구사항

2)개념 모델링

대충대충 그림을 그리는 것.

3)요구사항 할당

분류. 요구사항 만족시키기위한 구성요소 식별.

식별된 구성요소들간에 어떻게 작용하는지 분석하는 과정에서 추가 요구사항 발견.

4)요구사항 협상

못하겠다 기간을 늘려달라!

요구사항이 서로 충돌할 경우 협상을 통해 적절히 해결.

5)정형분석

수학적 기호. 자연어등을 이용해 쓰는 것

정형화된 언어를 이용해 요구사항을 수학적 기호로 표현후 분석.

(6)요구사항 분석도구

1)요구사항 분석(CASE : Computer Aided Software Engineering)

요구사항을 받았을때 잘 분류하도록 도와주는 도구들. 소프트웨어.

요구사항 자동 분석(반복적인 것들). 요구사항 분석 명세서 기술.

소프트웨어 개발 전반에 거쳐 적용

분석 설계(상위)/구현 Test(하위)

*생명주기 SDLC : Software Development Life cycle

상위 CASE 도구:생명주기 전반부에 사용. 소프트웨어의 요구분석, 설계단계 지원.UML, ERD.스토리보드.

하위 CASE 도구:생명주기 후반부. 코드의 작성과 테스트, 문서화.개발자 도구. 데이터베이스 접근 툴.

통합 CASE 도구 : 생명주기 전체과정.전부다 지원.형상관리

종류

SADT:시스템 정의, 요구사항 분석, 시스템/소프트웨어 구현 및 설계에 이용되는 구조적 분석 및 설계도구

TAGS:시스템 공학 방법 응용에 대한 자동 접근 방법.

PSL/PSA:미시간 대학에서 개발한 것.

SREM:실시간 처리 소프트웨어 시스템에서 요구사항을 명확히 기술하도록 할 수 있는 도구.

2)HIPO

요구사항 분석도구. 요구사항을 그릴 수 있는 도구.

하향식. 구조적 설계. 절차지향언어.

하향식 소프트웨어 개발을 위한 문서화 도구.

HIPO의 기능

분석 및 설계도구.

하향식 개발에 적합.

체계적인 문서관리에 효율적.

기능과 자료의 의존관계를 명시할 수 있다.

HIPO Chart 도구

가시적 도표:전체적인 구조.전체 기능과 흐름. 입력, 출력, 처리 표시 없음.사이트맵.

총체적 도표:프로그램 구성 기능 기술.입력.,처리.출력 등의 전반적인 정보.

세부적 도표:상세히 기술.

'Lobo's study room > 정보처리기사' 카테고리의 다른 글

[Lobo's Theory]IT 서비스 관리  (0) 2023.03.25
[Lobo's Theory]요구사항 분석 모델링  (0) 2023.03.25
[Lobo's Theory]현행 시스템 분석  (0) 2023.03.25
[Lobo's Theory]애자일 방법론  (0) 2023.03.25
RAID  (0) 2023.03.25