S/W 공학의 발전적 추세

bi_sz·2022년 4월 6일
0

요구사항 확인 

목록 보기
17/22

1. 소프트웨어 재사용 (Software Reuse)

  • 이미 개발되어 인정받은 소프트웨어를 다른 소프트웨어 개발이나 유지에 사용하는 것
  • 소프트웨어 개발의 품질과 생산성을 높이기 위한 방법
  • 기존에 개발된 소프트웨어와 경험, 지식 등을 새로운 소프트웨어에 적용
  • 소프트웨어 재사용 방법
    -합성 중심 ( Composition-Based )
    블록을 만들어서 끼워 맞춰 소프트웨어를 완성시키는 방법 -> 블록 구성 방법
    -생성 중심 ( Generation-Based )
    추상화 형태로 써진 명세를 구체화하여 프로그램을 만드는 방법 -> 패턴 구성 방법

2. 소프트웨어 재공학 (Software Reengineering)

  • 기존 시스템을 이용하여 보다 나은 시스템을 구축하고, 새로운 기능을 추가하여 소프트웨어 성능을 향상시키는 것
  • 유지보수 비용이 소프트웨어 개발 비용의 대부분을 차지하기 대문에 유지보수의 생산성 향상을 통해 소프트웨어 위기를 해결하는 방법
  • 기존 소프트웨어의 데이터와 기능들의 개조 및 개선을 통해 유지보수성과 품질 향상
  • 소프트웨어 재공학의 이점
    -품질 향상, 생산성 증가, 수명 연장, 오류 감소

3. CASE ( Computer Aided Sofrware Engineering )

  • 소프트웨어 개발 과정에서 사용되는 교수 분석, 설계, 구현, 검사 및 디버깅 과정 전체 또는 일부를 컴퓨터와 전용 소프트웨어 도구를 사용하여 자동화 하는 것
  • 객체지향 시스템, 구조적 시스템 등 다양한 시스템에서 활용되는 자동화 도구(CASE Tool)
  • 소프트웨어 생명 주기의 전체 단계를 연결하고 자동화하는 통합된 도구 제공
  • 소프트웨어 개발 도구와 방법론이 결합되었으며, 정형화된 구조 및 방법을 소프트웨어 개발에 적용하여 생산성 향상 구현
  • CASE의 주요 기능
    -소프트웨어 생명 주기 전 단계의 연결
    -다양한 소프트웨어 개발 모형 지원
    -그래픽 지원

자동화 도구 ( CASE Tool )

소프트웨어 공학과 관련된 작업 중에서 하나의 작업을 자동화하는 패키지

0개의 댓글