본문 바로가기
소프트웨어공학

[소프트웨어 공학] UML(Unified Modeling Language), OOP(Object-Oriented Development Process), Modeling Engineering

by Lizardee 2024. 2. 19.
UML(Unified Modeling Language)
  • Use Case Diagram: actor와 use case의 관계를 도식화한다. 모든 유스케이스를 취합하면 시스템의 모습이 된다.
  • Class Diagram: 클래스 또는 클래스들과 그들의 관계를 표시한다.
  • Sequence Diagram: 시간 경과에 따라 객체 간의 교류 과정을 표현한다.
  • Communication Diagram: 객체 간의 상호관계를 표현한다.
  • Activity Diagram
  • State Chart
  • Component Diagram
  • Deployment Diagram

OOP(Object-Oriented Development Process)
  1. Inception: 기존 시스템을 업데이트하거나, 새로운 시스템을 개발하기 위한 business case를 구축한다.
    • Problem statement
    • Use case diagram
    • Flow of event (Scenario)
  2. Elaboration: problem domain 분석, architectural foundation 구축, 프로젝트에서 가장 위험이 많은 부분 강조, 프로젝트를 성공적으로 수행할 수 있는 초기 버전 구축
    • Class diagram
    • Sequence diagram
    • Communication diagram
      --> 소프트웨어 아키텍처를 결정한다.
  3. Construction: 소프트웨어를 iteration planning에 맞추어 단계적으로 개발한다.
  4. Transition: 소프트웨어를 user에게 delivery

Modeling Engineering (모델 기반 설계)

: 모델을 미리 만들어서, 모델을 검증하면서(verification), 코드를 자동으로 생성한다(coding).