달짱달짱

[요구사항 확인] 요구사항 본문

정보처리기사 실기/[정리] 요구사항 확인

[요구사항 확인] 요구사항

달콩쨩 2021. 7. 1. 23:53

I. 요구공학 : 사용자의 요구가 반영된 시스템을 개발하기 위하여 사용자 요구사항에 대한 도출, 분석, 명세, 확인 및 검증

                하는 구조화된 활동 

    a. 목적 

        ① 이해관계자 사이에 효과적인 의사소통 수단 제공, 시스템 개발의 요구사항에 대한 공통된 이해 설정 

        ② 요구사항 누락 방지 및 이해 오류로 인한 불필요한 비용 절감, 요구사항 변경 추적 가능

        ③ 초기 요구사항 관리로 개발 비용과 시간을 절약, 효과적인 의사소통 수단 제공

    b. 분류 

        ① 개념 : 

            i. 기능적 요구사항 : 시스템이 제공하는 기능, 서비스에 대한 요구사항 

            ii. 비기능적 요구사항 : 시스템이 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약사항에 관한 요구사항 

        ② 도출 방법 :

            i. 기능적 요구사항 : 특정 입력에 시스템이 어떻게 반응/동작 해야 하는지에 대한 기술

            ii. 비기능적 요구사항 : 품질 속성에 관련하여 시스템이 준수해야 할 제한 조건에 관한 기술

        ③ 특성 :

            i. 기능적 요구사항 : 기능성, 완전성, 일관성 

            ii. 비기능적 요구사항 : 신뢰성, 사용성, 효율성, 유지보수성, 이식성, 보안성 및 품질 관련 요구사항, 제약사항 

        ④ 사례 : 

            i. 기능적 요구사항 : 온라인 홈페이지에서 쇼핑 카트에 주문하고자 하는 품목을 저장하는 장바구니 기능 제공

            ii. 비기능적 요구사항 : 특정 함수의 호출시간은 3초 이내 수행

    c. 프로세스 

출처 : http://blog.skby.net/%EC%9A%94%EA%B5%AC%EA%B3%B5%ED%95%99-requirement-engineering/

        ① 요구사항 개발 단계 구성 (CMM level3 프로세스 영역)

            i. 요구사항 도출 

                - 요구사항 소스

                - 도출 기법

                - 주요 기법

                    * 인터뷰 : 이해 관계자와 직접 대화를 통해 정보를 구하는 공식, 비공식적 정보 수집 방법

                    * 브레인 스토밍 : 회의 참석자들이 내놓은 아이디어들을 비판없이 수용하는 회의

                    * 델파이 기법 : 전문가의 경험적 지식을 통한 문제 해결 및 미래예측을 위한 기법

                    * 롤 플레잉 : 여러 사람이 각자가 맡은 역을 연기하면서 요구사항을 분석 수집 

                    * 워크숍 : 단기간의 노력으로 전문적인 정보를 획득 및 공유 

                    * 설문조사 : 설문지 또는 여론조사로 간접적 정보 수집

            ii. 요구사항 분석

                - 요구사항 분류 

                - 개념 모델링 : 모델링 표기는 주로 UML 사용 

                - 기술 구조 설계 및 요구사항 할당 

                - 요구사항 협상 

                - 정형 분석 : 형식적으로 정의된 의미를 지닌언어로 요구사항 표현 

                - 주요 기법 

                    * 자료 흐름 지향 분석 : 데이터 흐름도 및 자료 사전으로 부터 소프트웨어 구조를 유도 

                    * 객체지향 분석 : 시스템의 기능과 데이터를 함께 분석, UML 로 표준화 

            iii. 요구사항 명세

                - 시스템 정의서 

                - 시스템 요구사항 명세서 

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

                - 검증 항목 : 명확성, 완전성, 검증 가능성, 일관성, 수정 용이성, 추적 가능성, 개발 후 이용성 

                - 주요기법 

                    * 비정형 명세 기법 : 자연어 기반으로 서술, 사용자와 개발자의 이해가 용이

                    * 정형 명세 기법 : 수학적인 원리와 표기법으로 서술. Z-스키마, Petri Nets, 상태차트 활용. 표현이 간결,

                                            명확성 및 검증이 용이

            iv. 요구사항 확인 및 검증

                요구사항 목록 확인 -> 요구사항 정의서 작성 여부 확인 -> 비기능적 요구사항 확인

                        -> 타 시스템 연계 및 인터페이스 요구사항 확인 

                - 주요기법 

                    * 요구사항 검토 

                    * 정형 기술 검토 활용 

                        - 동료 검토 : 동료끼리 검토 

                        - 워크 스루 : 오류 조기 검출. 짧은 시간 회의로 리뷰하며 오류 검출 및 문서화 

                        - 인스펙션 : 소프트웨어 요구, 설계, 원시 코드 등 저작자 외 다른 전문가가 검사하여 오류 찾아냄

                    * 프로토타이핑 : 최종 사용자나 고객을 대상으로 시연하면서 시스템 작동을 경험 하며 요구사항 확인

                    * 모델 검증  

                    * 테스트 케이스 및 테스트를 통한 확인  

                    * CASE 도구 활용 검증

                    * 베이스라인을 통한 검증

                    * 요구사항 추적표를 통한 검증 

        ② 요구사항 개발 단계 구성 (CMM level2 프로세스 영역)

            요구사항 협상 -> 요구사항 기준선 설정 -> 요구사항 변경관리 -> 요구사항 확인 및 검증 

 

II. 요구사항의 시스템화 타당성 분석 

    a. 요구사항의 기술적 타당성 검토 

        ① 성능 및 용량 산정의 적정성 

        ② 시스템 간 상호 운용성 

        ③ IT 시장 성숙도 및 트랜드 부합성

        ④ 기술적 위험 분석

    b. 요구사항의 기술적 타당성 분석 프로세스 

        ① 타당성 분석 결과 기록

        ② 타당성 분석 결과의 이해관계자 검증

        ③ 타당성 분석 결과 확인 및 배포 / 공유