인터페이스 설계

2022. 5. 27. 16:46정처기(필기)/소프트웨어설계

(1) 요구공학

1. 요구공학의 개념

- 요구공학은 사용자의 요구가 반영된 시스템을 개발하기 위하여 사용자 요구사항에 대한 도출, 분석, 명세, 확인 및 검증하는 구조화된 활동이다. 

- 이해관계자 사이에 효과적인 의사소통 수단이 목적

 

2. 요구공학 프로세스

도출 -> 분석 -> 명세 -> 확인 및 검증

 

★ 요구사항 개발 단계

순서 절차 내용
1 요구사항 도출 소프트웨어가 해결해야 할 문제를 이해하고 수집된 요구사항을 구체적으로 표현하는 단계
2 요구사항 분석 도출된 요구사항에 대해 완전성과 일관성을 확보하는 단계
3 요구사항 명세 체계적으로 검토, 평가, 승인될 수 있는 문서를 작성하는 단계
4 요구사항 확인 및 검증 요구사항이 고객이 정말 원하는 시스템을 제대로 정의하고 있는지 점검하는 과정

 

요구사항 명세 원리 및 검증 항목

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

 

3. 요구사항 확인 및 검증 단계의 주요 기법

  • 정형 기술 검토 활용법 : 동료 검토, 워크 스루(오류를 조기에 검출하는 데 목적), 인스펙션
  • 모델 검증 : 분석단계에서 개발된 모델의 품질 검증 필요
  • 테스트 케이스 : 각각의 요구사항에 대한 테스트 케이스 작성
  • CASE 도구 할용 검증 : 자동화된 일관성 분석을 제공하는 CASE 도구 활용
  • 베이스라인을 통한 검증 : 요구사항 변경 베이스라인을 통해 요구사항에 대한 지속적 검증 수행
  • 요구사항 추적표 : 요구사항 정의서를 기준으로 최종 산출물이 반영 

 

(2) 시스템 아키텍처

1. 시스템이란

- 시스템은 하나의 공통적인 목적을 수행하기 위해 조직화된 요소들의 집합체이다. 

 

2. 시스템 구성요소

구성요소 설명
입력 처리 방법, 처리할 데이터, 조건을 시스템에 투입하는 행위
출력 처리된 결과를 시스템에서 산출하는 행위
처리 입력된 데이터를 처리 방법과 조건에 따라 처리하는 행위
제어 자료를 입력하고 출력될 때까지의 처리 과정이 올바르게 진행되는지를 감독하는 행위
피드백 출력 결과가 목표를 만족시키지 못하는 경우 달성을 위해 반복 개선하는 행위

 

3. 시스템 아키텍처 개념

- 시스템 아키텍처는 시스템의 구조, 행위, 동작 원리를 설명하는 프레임워크다. 

 

★ 시스템 아키테처 설계 원칙

  • 대규모 트랜잭션 처리 및 온라인 성능 보장 : 파크타임 용량 확보, 대용량 배치 처리, 부하 분산 최적화 등
  • 시스템 아키텍처 확장성 보장 : 다계층 아키텍처 구성, 하드웨어 확장성 등
  • 서비스 고가용성 보장 : 장애 예방, 서비스 중단시간 최소화, 비상 시스템 구성
  • 운영관리 효율성 : 트랜잭션 관리, 성능 및 장애 관리, 통합 백업 관리
  • 시스템 보안 강화 : 정보 보호 전략 수립, 네트워크 보안, 시스템 보안

 

4. 시스템 아키텍처 물리 설계

  1. 1-Tier 아키텍처 : AP/DB 서버 1대 이상 구성(물리적 노드 수가 최소 1개로 구성)
  2. 2-Tier 아키텍처 : AP 서버, DB 서버 2대 이상 구성(물리적 노드 수가 최소 2개 이상 필요)
  3. 3-Tier 아키텍처 : 프레젠테이션 섭, AP 서버, DB서버 3대 이상으로 구성(대용량 온라인 트랜잭션 처리 업무)

 

(3) 인터페이스 시스템

1. 인터페이스 시스템 개념

- 인터페이스 시스템은 서로 다른 두 시스템과 장치와 소프트웨어를 서로 이어주는 접속 및 중계 시스템이다.

 

구성 내용
송신 시스템 연계할 데이터를 DB와 애플리케이션으로부터 연계 테이블 또는 파일 형태로 송신하는 시스템
수신 시스템 데이터를 데이터 형식에 맞게 변환하여 DB에 저장하거나 활용할 수 있도록 하는 시스템
중계 서버 송신 시스템과 수신 시스템 사이에서 데이터를 송수신하고 모니터링하는 시스템

 

2. 인터페이스 시스템의 데이터 표준

  1. 인터페이스 데이터 공통부 : 인터페이스 표준 항목을 포함
  2. 인터페이스 데이터 개별부 : 송, 수신 시스템에서 업무 처리에 필요한 데이터 포함
  3. 인터페이스 데이터 종료부 : 전송 데이터의 끝을 표시하는 문자를 포함하여 종료 표시

 

(4) 내외부 송수신 연계 기술

1. 내외부 송수신 연계 기술

연계 기술 설명
DB 링크 데이터베이스에서 제공하는 DB 링크 객체를 이용하는 기술
DB 연결 수신 시스템의 WAS에서 송신시스템 DB로 연결하는 풀을 생성하고 그것을 이용하는 기술
API 송신 시스템의 DB에서 데이터를 읽어서 제공하는 프로그램
JDBC 수신 시스템의 프로그램에서 JDBC 드라이버를 이용하여 송신 시스템 DB와 연결하는 기술
하이퍼링크 웹 애플리케이션에서 하이퍼링크를 이용하는 기술
소켓 서버는 통신을 위한 소켓을 생성하여 포트를 할당하고 클라이언트와 연결하고 통신하는 기술

 

(5) 인터페이스 설계

1. 인터페이스 정의서 작성

- 인터페이스 정의서는 데이터 송신 시스템과 수신 시스템 간의 데이터 저장소와 속성 등의 상세 내역을 포함한다.

 

★ 주요 항목

  • 인터페이스 ID : 인터페이스를 구분하기 위한 식별자, 명명 표준에 맞게 부여
  • 최대 처리 횟수 : 단위 시간당 처리할 수 있는 해당 인터페이스 최대 수행 건수
  • 데이터 크기 : 해당 인터페이스 1회 처리 시 소요되는 데이터의 평균 크기와 최대 크기
  • 시스템 정보 : 시스템명 등
  • 데이터 정보 : 번호, 필드, 식별자 여부 등

 

(6) 미들웨어 솔루션

1. 미들웨어란

- 미들웨어는 컴퓨터와 컴퓨터 간의 연결을 쉽고 안전하게 할 수 있도록 해주고 이에 대한 관리를 도와주는 소프트웨어다. 

- 서로 다른 프로토콜이나 운영체제, DB와 애플리케이션간에 통신을 지원해 주는 소프트웨어를 의미. 

 

2. 미들웨어 솔루션 유형

구분 설명
DB 미들웨어 DB 솔루션 업체에서 제공하는 통신을 원활하게 하는 미들웨어
원격 프로시저 호출 응용 프로그램의 프로시저를 사용하여 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어
메시지 지향 미들웨어 메시지 기반의 비동기형 메시지 전달 방식 미들웨어
트랜잭션 처리 온라인 업무에서 트랜잭션을 처리, 감시하는 미들웨어
레거시웨어 새로 업데이트된 기능을 덧붙이고자 할 때 사용되는 미들웨어
객체 기반 미들웨어 코바 표준 스펙을 구현한 객체 지향 미들웨어
WAS 다른 이기종 시스템과의 애플리케이션 연동을 지원하는 미들웨어

 

3. EAI와 ESB

[1] EAI 개념

- EAI는 비즈니스 프로세스를 중심으로 기업 내 각종 플랫폼 및 애플리케이션 간의 상호 연동이 가능하도록 통합하는 솔루션이다. 

 

[2] ESB 개념

- ESB는 기업에서 운영되는 서로 다른 플랫폼(이기종) 및 애플리케이션들 간을 연계해서 관리 운영할 수 있도록 서비스 중심의 통합을 지향하는 기술이다. 

 

차이점 : EAI는 기업 내부의 서로 다른 플랫폼의 모듈 간 통합이 목적인 것이고, ESB는 기업 간의 서비스 교환을 위해 표준 API로 통합하는 것임