본문 바로가기

CS 공부

CS) CASE, 럼바우 기법, 요구사항 모델링

1. CASE (Computer-Aided Software Engineering, 컴퓨터 지원 소프트웨어 공학)

 

  • 소프트웨어 개발을 지원하는 자동화 도구
  • 분석, 설계, 구현, 테스트 등 소프트웨어 개발 과정을 지원
  • 요구사항 수집부터 유지보수까지 전체 소프트웨어 개발 라이프사이클(SDLC)에 걸쳐 사용됨

 

 CASE 도구의 주요 기능

  • 시스템 모델링 (UML, 다이어그램 생성)
  • 코드 자동 생성 및 문서화
  • 프로젝트 관리 지원
  • 형상 관리(Configuration Management) 기능 제공

 

 CASE 도구의 예시

  • UML 모델링 도구: StarUML, Visual Paradigm
  • 형상 관리 도구: Git, SVN
  • 테스트 자동화 도구: Selenium, JUnit

 


 

2. 럼바우 기법 (Rumbaugh Method, OMT: Object Modeling Technique)

  • 객체지향 분석 기법 중 하나
  • 분석과 설계를 체계적으로 수행하기 위한 방법론
  • 객체 모델 + 동적 모델 + 기능 모델 3가지 모델을 사용

 

 럼바우 기법의 3가지 모델

1. 객체 모델 (Object Model)

  • 시스템 내의 객체, 클래스, 관계를 정의
  • UML의 클래스 다이어그램과 유사

2. 동적 모델 (Dynamic Model)

  • 상태 다이어그램을 사용하여 객체의 상태 변화 표현
  • UML의 상태 다이어그램과 유사

3. 기능 모델 (Functional Model)

  • 데이터 흐름도(DFD)를 활용하여 입력-출력 관계 표현
  • UML의 활동 다이어그램과 비슷

 

 럼바우 기법의 특징

  • 시스템을 정적(구조적), 동적(행위), 기능적 관점에서 분석
  • 주로 초기 분석 단계에서 사용
  • UML 등장 이전까지 가장 널리 사용된 기법 중 하나

 


3. 요구사항 모델링 (Requirement Modeling)

 

소프트웨어 개발의 첫 단계인 요구사항을 분석하고 표현하는 과정

사용자의 요구를 체계적으로 정리하고 UML, DFD, 유스케이스 등으로 시각화

 

 요구사항 모델링의 주요 기법

  • UML 유스케이스 다이어그램: 사용자와 시스템의 관계 모델링
  • DFD (Data Flow Diagram): 데이터의 흐름을 분석하여 요구사항 정리
  • ERD (Entity-Relationship Diagram): 데이터베이스 설계를 위한 개체 관계 모델링
  • 스토리보드: UI/UX 요구사항을 정의하는 시각적 모델링