핑구

Ⅰ. 소프트웨어 설계 : 인터페이스 설계 본문

CS/정보처리기사

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

코딩 펭귄 2022. 2. 6. 21:54

1. 시스템 인터페이스 요구사항 분석

시스템 인터페이스
독립적으로 떨어져 있는 시스템끼리 서로 연동하여 상호작용하기 위한 접속 방법이나 규칙

시스템인터페이스 요구사항
개발을 목표로 하는 시스템과 외부 시스템을 연동하는데 필요한 시스템 인터페이스

 

시스템 요구사항 명세서 포함 요소 : 인터페이스 이름, 연계 대상 시스템, 연계 범위 및 내용, 연계 방식, 송신 데이터, 인터페이스 주기, 기타 고려사항 등

 

시스템 인터페이스 요구사항 분석 : 요구사항 명세서에서 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류, 조직화하여 요구사항 명세를 구체화하고 이를 이해관계자에게 전달하는 일련의 과정

  • 기능적 요구사항 : 시스템이 무엇을 하고, 어떤 기능을 하는지
  • 비기능적 요구사항 : 시스템이나 프로젝트 개발 과정 등에서 지켜야 할 제약 사항

 

시스템 인터페이스 요구사항 분석 절차

시스템 인터페이스 요구사항 분석 절차

 

2. 인터페이스 요구사항 검증

요구사항 검증
인터페이스의 설계 및 구현 전 사용자의 요구사항이 요구사항 명세서에 정확하고 완전하게 기술되었는지 검토하고, 개발 범위의 기준인 베이스라인을 설정하는 것

 

인터페이스 요구사항 검증 절차

인터페이스 요구사항 검증 절차

  1. 인터페이스 요구사항 검토 계획 수립
    • 검토 기준 및 방법
    • 참여자
    • 체크리스트
    • 관련 자료
    • 일정
  2. 검토 및 오류 수정
    체크리스트의 항목에 따라 인터페이스 요구사항 명세서를 검토하고 오류 발견 시 오류 목록과 시정 조치서 작성
    조치가 완료된 후 요구사항 검토 작업 종료
  3. 베이스 라인 설정
    주요 의사 결정자에게 공식적인 승인 받음

 

요구사항 검증 방법

  • 요구사항 검토 : 결함 여부를 담당자들이 수작업으로 분석
    • 동료 검토 (Peer Review) : 요구사항 명세서 작성자가 명세서 내용을 직접 설명하고, 이를 동료들이 들으며 결함 검토
    • 워크스루 (Walk Through) : 검토 회의 전 미리 요구사항 명세서를 배포하여 사전 검토 후 짧은 회의를 통해 결함 검토
    • 인스펙션 (Inspection) : 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 요구사항 명세서를 확인하며 결함 검토
  • 프로토 타이핑 : 실제 개발될 소프트웨어에 대한 견본품을 만들어 최종 결과물을 예측
  • 테스트 설계 : 테스트 케이스를 생성하여 이후의 요구사항이 현실적으로 테스트 가능한지 검토
  • CASE (Computer Aided Software Engineering) 도구 활용 : 일관성 분석(Consistency Analysis)을 통해 요구사항 변경 사항의 추적 및 분석, 관리, 표준 준수 여부 확인

 

인터페이스 요구사항 검증의 주요 항목

  • 완전성
  • 일관성
  • 명확성
  • 기능성
  • 검증 가능성
  • 추적 가능성
  • 변경 용이성

 

3. 인터페이스 시스템 식별

인터페이스 시스템 식별

  • 개발 시스템 식별 : 인터페이스 관련 자료들을 기반으로 개발하고자 하는 시스템의 상세 식별 정보를 정의, 목록 작성
    인터페이스 관련 자료 : 업무 정의서, 시스템 아키텍처 정의서, 유스케이스 정의서 등
  • 내·외부 시스템 식별 : 인터페이스 자료들을 기반으로 개발할 시스템과 연계항 시스템의 상세 식별 정보를 정의하고 목록 작성
  • 내·외부 시스템 환경 관리 및 관리 주체 식별 : 연계할 시스템 접속에 필요한 IP, URL, Port 정보 등 시스템의 실제 운용 환경 및 하드웨어를 실제적으로 관리하는 담당자 확인
  • 내·외부 시스템 네트워크 연결 정보 식별 : 내·외부 시스템을 연계하는데 필요한 네트워크 연결 정보(시스템 로그인 및 DB 정보) 확인
  • 인터페이스 식별 : 인터페이스 요구사항 명세서와 인터페이스 요구사항 목록을 기반으로 개발할 시스템과 연계할 시스템 사이의 인터페이스를 식별하고 목록 작성
  • 인터페이스 시스템 식별 : 인터페이스 별로 인터페이스에 참여하는 시스템들을 송신 시스템과 수신 시스템으로 구분하여 작성

 

4. 송·수신 데이터 식별

식별 대상 데이터 : 송수신 시스템 사이에서 교환되는 데이터로 규격화된 표준 형식에 따라 전송됨

교환되는 데이터 종류

  • 인터페이스 표준 항목 : 송수신 시스템을 연계하는데 표준적으로 필요한 데이터
    • 시스템 공통부 : 시스템 연동 시 필요한 공통 정보
    • 거래 공통부 : 시스템이 연동된 후 송수신되는 데이터를 처리할 때 필요한 정보
  • 송수신 데이터 항목 : 송수신 시스템이 업무를 수행하는데 사용하는 데이터
  • 공통 코드 : 시스템에서 공통으로 사용하는 코드

정보 흐름 식별 : 개발할 시스템과 내·외부 시스템 사이에 전송되는 정보들의 방향성을 식별하는 것

 

송수신 데이터 식별 : 개발할 시스템과 연계할 시스템 사이의 정보 흐름과 데이터 베이스 산출물을 기반으로 식별

송수신 데이터의 종류

  • 인터페이스 표준 항목에 대한 데이터 항목
  • 코드성 데이터 항목

 

5. 인터페이스 방법 명세화

인터페이스 방법 명세화
내·외부 시스템이 연계하여 작동할 때 인터페이스 별 송수신 방법, 송수신 데이터, 오류 식별 및 처리 방안에 대한 내용들을 문서화해 놓은 것
인터페이스 별로 송수신 방법을 명세하기 위해서는 시스템 연계 기술, 인터페이스 통신 유형, 처리 유형, 발생 주기 등에 대한 정보가 필요함

 

  • 시스템 연계 기술
    개발할 시스템과 내·외부 시스템을 연계할 때 사용하는 기술
    • DB Link : DB에서 제공하는 DB Link 객체를 이용하는 방식
    • API/Open API : 송신 시스템의 DB에서 데이터를 읽어와 제공하는 애플리케이션 프로그래밍 인터페이스 프로그램
    • 연계 솔루션 : EAI(Enterprise Application Integration) 서버와 송수신 시스템에 설치되는 클라이언트를 이용하는 방식
      EAI : 기업용 응용 프로그램의 구조적 통합 방안으로 전사적 응용 프로그램 통합이라고도 함
    • Socket : 서버에서 통신을 위한 소켓을 생성하고, 클라이언트의 요청 시 연결하여 통신하는 네트워크 기술
    • Web Service : 웹 서비스에서 WSDL, UDDL, SOAP 프로토콜을 이용하여 연계하는 서비스
      WSDL (Web Service Description Language) : 웹 서비스 기술언어 또는 기술된 정의 파일의 총칭으로 XML로 기술됨. 서비스 제공 장소, 서비스 메시지 포맷, 프로토콜 등 웹 서비스의 구체적 내용이 기술되어 있음.
      UDDI (Universal Description, Discovery Integration) :  웹 서비스 관련 정보의 공개와 탐색을 위한 표준. 서비 스 제공자는 이미 알려진 온라인 저장소에 제공하는 서비스 목록을 등록하고, 서비스 소비자들은 그 저장소에 접근하여 원하는 서비스들의 목록을 찾음.
      SOAP (Simple Object Access Protocol) : 일반적으로 널리 알려진 HTTP, HTTPS, SMTP 등을 통해 XML 기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 프로토콜. 웹 서비스에서 기본적인 메시지를 전달하는 기반이 됨.
  • 인터페이스 통신 유형
    데이터를 송수신하는 형태
    • 단방향 : 시스템에서 거래를 요청만 하고 응답이 없는 방식
    • 동기 : 시스템에서 거래를 요청하고 응답이 올 때까지 대기하는 방식
    • 비동기 : 시스템에거 거래를 요청하고 응답이 올 때까지 다른 작업을 하며 대기하다 응답이 오면 처리하는 방식
  • 인터페이스 처리 유형
    송수신 데이터를 어떤 형태로 처리할 것인지에 대한 방식
    • 실시간 방식 : 사용자가 요청한 내용을 바로 처리해야 하는 경우 사용
    • 지연 처리 방식 : 데이터를 건 단위로 처리할 시 비용이 많이 발생하는 경우에 사용
    • 배치 방식 : 대량의 데이터 처리 시 사용
  • 인터페이스 발생 주기
    송수신 데이터가 전송되어 인터페이스가 사용되는 주기
  • 송수신 방법 명세화
    각각의 인터페이스에 대해 연계 방식, 통신 유형, 처리 유형, 발생 주기 등 송수신 방법을 정의하고 명게
  • 송수신 데이터 명세화
    인터페이스 시 필요한 송수신 데이터에 대한 명세 작성
  • 오류 식별 및 처리 방안 명세화
    인터페이스 시 발생할 수 있는 오류를 식별하고 오류 처리 방안에 대한 명세 작성

 

6. 시스템 인터페이스 설계서 작성

시스템 인터페이스 설계서
시스템의 인터페이스 현황을 확인하기 위해 시스템이 갖는 인터페이스 목록과 상세 데이터 명세를 정의한 문서로 시스템 인터페이스 목록과 시스템 인터페이스 정의서로 구성

 

시스템 인터페이스 목록 작성 : 업무 시스템과 내·외부 시스템 간 데이터를 주고받는 경우에 사용하는 인터페이스에 대해 기술한 것

시스템 인터페이스 정의서 작성 : 인터페이스별로 시스템 간의 연계를 위해 필요한 데이터 항목 및 구현 요건 등을 기술하는 것

 

7. 미들웨어 솔루션 명세

미들웨어 (Middleware)
운영체제와 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어로 표준화된 인터페이스를 제공하여 시스템 간의 데이터 교환에 일관성을 보장

 

미들웨어의 종류

  • DB
  • RPC (Remote Procedure Call)
  • MOM (Message Oriented Middleware)
  • TP-Monitor (Transaction Processing Monitor)
  • ORB (Object Request Broker)
  • WAS (Web Application Server)

미들웨어 솔루션 식별 : 개발 및 운용 환경에 사용될 미들웨어 솔루션을 확인하고 목록을 작성하는 것

미들웨어 솔루션 명세서 작성 : 미들웨어 솔루션 목록의 미들웨어 솔루션 별로 관련 정보들을 상세하게 기술하는 것