126. 소프트웨어 개발 방법론

alpaka·2024년 2월 5일
0

정보처리기사

목록 보기
130/161
post-thumbnail

소프트웨어 개발 방법론의 개요

  • 소프트웨어 개발 방법론은 소프트웨어 개발, 유지보수 등에 필요한 여러 가지 일들의 수행 방법과 이러한 일들을 효율적으로 수행하려는 과정에서 필요한 각종 기법 및 도구를 체계적으로 정리하여 표준화한 것이다.
  • 소프트웨어 개발 방법론의 목적은 소프트웨어의 생산성과 품질 향상이다.
  • 소프트웨어 개발 방법론의 종류에는 구조적 방법론, 정보공학 방법론, 객체지향 방법론, 컴포넌트 기반(CBD) 방법론, 애자일(Agile) 방법론, 제품 계열 방법론 등이 있다.

구조적 방법론

  • 구조적 방법론은 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리(Precess) 중심의 방법론이다.
  • 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법론이다.
  • 쉬운 이해 및 검증이 가능한 프로그램 코드를 생성하는 것이 목적이다.
  • 복잡한 문제를 다루기 위해 분할과 정복(Divide and Conquer) 원리를 적용한다.
  • 구조적 방법론의 절차

정보공학 방법론

  • 정보공학 방법론은 정보 시스템의 개발을 위해 계획, 분석, 설계, 구축에 정형화된 기법들을 상호 연관성 있게 통합 및 적용하는 자료(Data) 중심의 방법론이다.
  • 정보 시스템 개발 주기를 이용하여 대규모 정보 시스템을 구축하는데 적합하다.
  • 데이터베이스 설계를 위한 데이터 모델링으로 개체 관계도(ERD; Entity- Relationship Diagram)를 사용한다.
  • 정보공학 방법론의 절차

객체지향 방법론

  • 객체지향 방법론은 현실 세계의 개체(Entity)를 기계의 부품처럼 하나의 객체(Object)로 만들어, 소프트웨어를 개발할 때 기계의 부품을 조립하듯이 객체들을 조립해서 필요한 소프트웨어를 구현하는 방법론이다.
  • 객체지향 방법론은 구조적 기법의 문제점으로 인한 소프트웨어 위기의 해결책으로 채택되었다.
  • 설계 과정에서 주로 사용되는 모델링 언어에는 패키지 다이어그램(Package Diagram), 배치 다이어그램(Deployment Diagram), 상태 전이도(State Transition Diagram) 등이 있다.
  • 객체지향 방법론의 절차

컴포넌트 기반(CBD; Component Based Design) 방법론

  • 컴포넌트 기반 방법론은 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조합하여 하나의 새로운 애플리케이션을 만드는 방법론이다.
  • 컴포넌트의 재사용(Reusability)이 가능하여 시간과 노력을 절감할 수 있다.
  • 새로운 기능을 추가하는 것이 간단하여 확장성이 보장된다.
  • 유지 보수 비용을 최소화하고 생산성 및 품질을 향상시킬 수 있다.
  • 컴포넌트 기반 방법론의 절차

애자일(Agile) 방법론

  • 애자일은 '민첩한 '기민한'이라는 의미로, 애자일 방법론은 고객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발 과정을 진행하는 방법론이다.
  • 소규모 프로젝트, 고도로 숙달된 개발자, 급변하는 요구사항에 적합하다.
  • 애자일 방법론의 대표적인 종류에는 익스트림 프로그래밍(XP; eXtreme Programming), 스크럼(Scrum), 칸반(Kanban), 크리스탈(Crytal) 등이 있다.
  • 애자일 방법론의 절차

제품 계열 방법론

  • 제품 계열 방법론은 특정 제품에 적용하고 싶은 공통된 기능을 정의하여 개발하는 방법론이다.
  • 임베디드 소프트웨어를 만드는데 적합하다.
  • 제품 계열 방법론은 영역공학과 응용공학으로 구분된다.
    • 영역공학: 영역 분석, 영역 설계, 핵심 자산을 구현하는 영역이다.
    • 응용공학 제품 요구 분석, 제품 설계, 제품을 구현하는 영역이다.
  • 영역공학과 응용공학의 연계를 위해 제품의 요구사항, 아키텍처, 조립 생산이 필요하다.
  • 제품 계열 방법론의 절차
profile
alpaka의 자격증 공부장

0개의 댓글

관련 채용 정보