Ⅰ. 소프트웨어 설계 - 인터페이스 설계

2024. 5. 1. 17:57자격증/정보처리기사 필기

01. 인터페이스 요구사항 확인

(1) 내/외부 인터페이스 요구사항
 1) 내/외부 인터페이스 요구사항 개념 : 시스템 접속 방법이나 규칙에 대한 필수 요구사항
 2) 내/외부 인터페이스 요구사항 구성
   - 구성요소 여동 방안에 대한 사전 협의 필요
   - 인터페이스 이름, 연계 대상 시스템, 연계 범위 및 내용, 연계 방식, 송신 데이터, 인터페이스 주기 등
 3) 내/외부 인터페이스 요구사항 분류
   - 기능적 요구사항
   - 비기능적 요구사항 : 성능, 보안성 등

(2) 요구공학
 1) 요구공학 개념 : 요구사항에 대한 도출, 분석, 명세, 확인 및 검증하는 활동
 2) 요구공학 목적
   - 효과적인 의사소통 수단 제공 (요구사항에 대한 공통 이해)
   - 요구사항 누락 방지 및 이해 오류 비용 감소 (요구사항 변경 추적 가능)
   - 개발 비용과 시간 절약
 3) 요구사항의 분류
   ① 기능적 요구사항
     - 기능 및 서비스 요구사항
     - 특정 입력에 대한 반응 및 특정 상황에 대한 동작 기술
     - 특성 : 기능성, 완전성, 일관성
     - 사례 : 장바구니 기능, 결제수단 종류
    ② 비기능적 요구사항
     - 시스템 구축에 대한 제약사항
     - 품질 관련 사항 및 시스템 제한 조건 기술
     - 특성 : 신뢰성, 사용성, 효율성, 유지보수성, 이식성, 보안성 등
     - 사례 : 함수호출시간, 24시간 가동, 패치 및 업그레이드 이슈
 4) 요구공학 프로세스 - 요구사항 개발 단계
    ① 요구사항 도출
     - 요구사항을 구체적으로 표현하는 단계
     - 주요기법 : 인터뷰, 브레인스토밍, 델파이 기법, 롤 플레잉, 워크숍, 설문조사
    ② 요구사항 분석
     - 요구사항의 완전성과 일관성을 확보하는 단계
     - 자료 흐름 지향 분석 : 데이터 흐름도 및 자료 사전 활용
     - 객체 지향 분석 : 기능과 데이터를 함께 분석, UML 표준화

    ③ 요구사항 명세
     - 검토, 평가, 승인을 위한 문서 작성 단계
     - 비정형 명세 기법 : 자연어 기반 - 이해가 용이하나 명확성 및 검증 문제
     (FSM, Decision Table, ER모델링, State Chart)
     - 정형 명세 기법 : 수학적 원리와 표기법 - 명확성 및 검증이 용이하나 이해 어려움
     (VDM, Z-스키마, Petri-Nets, CSP)

    ④ 요구사항 확인 및 검증
     - 요구사항에 대한 검토 및 베이스라인 설정, 정형 기술 검토 수행
     - 동료 검토 : 작성자가 설명하고 동료들이 리뷰
     - 워크 스루 : 사전 검토 후 회의 (오류 조기 검출 목적)
     - 인스펙션 : 저작자 외의 다른 전문가가 검사
     - 정형 기술 검토 지침 사항
       1 제품의 검토에만 집중
       2 의제를 제한하여 진행
       3 논쟁과 반박을 제한
       4 문제 영역을 명확히 표현
       5 해결책과 개선책은 논의 금지
       6 참가자 수 제한 및 사전준비 강요
       7 자원과 시간의 일정 할당
       8 검토자들의 의미있는 훈련 필요
       9 사전 작성 메모 공유
       10 검토의 과정과 결과를 재검토

    ★ 요구사항 명세 원리 및 검증 항목
     - 명확성
     - 완전성
     - 검증 가능성
     - 일관성
     - 수정 용이성
     - 추적 가능성
     - 개발 후 이용성

 

02. 인터페이스 대상 식별

(1) 시스템 아키텍처
 1) 시스템 개념 : 공통 목적 수행을 위해 조직화된 요소들의 집합체
 2) 시스템 구성요소
   - 입력
   - 출력
   - 처리
   - 제어
   - 피드백
 3) 시스템 아키텍처 개념 : 시스템의 구조, 행위, 동작 원리를 설명하는 프레임 워크
 4) 시스템 아키텍처 기본 요구사항
   - 시스템 구성 및 동작 원리 표현
   - 시스템 구성요소에 대해 자세히 기술
   - 구성요소 간 관계 및 시스템 외부 환경과의 관계 설명
   - 전체 생명주기 고려
   - 시스템의 전체적인 최적화 목적
 5) 시스템 아키텍처 설계 원칙
   - 대규모 트랜젝션 처리 및 온라인 성능 보장
   - 시스템 아키텍처 확장성 보장
   - 서비스 고가용성 보장
   - 운영관리 효율성
   - 시스템 보안 강화
 6) 시스템 아키텍처 물리 설계
   ① 1-Tier 아키텍처
     - AP서버, DB서버 1개 이상
     - UI로직이 없는 인터페이스 게이트웨이 업무
     - 데이터 및 비즈니스 로직 유출 가능
     - 물리적 노드 최소 1개
     - Tier간 네트워크 트래픽 없음
   ② 2-Tier 아키텍처
     - AP서버, DB서버 2대 이상
     - 일반 OLTP 업무
     - 비즈니스 로직 유출 가능성
     - 물리적 노드 최소 2개
     - AP와 DB 서버간 네트워크 트래픽 발생
   ③ 3-Tier 아키텍처
     - 프레젠테이션 서버, AP서버, DB서버 3대 이상
     - 대용량 온라인 트랜잭션 처리 업무
     - 데이터 및 비즈니스 로직 유출 방지 용이
     - 물리적 노드 최소 3개
     - Tier간 네트워크 트래픽 발생

(2) 인터페이스 시스템
 1) 인터페이스 시스템 개념 : 서로 다른 시스템 및 장치를 서로 이어주는 접속 및 중계 시스템
 2) 인터페이스 시스템 구성
   - 송신시스템
   - 수신시스템
   - 중계 서버

반응형