Skip to content

소프트웨어 개발 방법론 #
Find similar titles

Structured data

Category
Computer science

소프트웨어 개발 방법론 #

정의 #

  • 소프트웨어 공학 + 방법론 = 소프트웨어 개발 방법론
  • 소프트웨어 공학 원리를 소프트 웨어 개발 생명주기에 적용
  • 정보시스템을 개발히기 위한 작업 활동, 절차, 산출물, 기법등을 정리
  • 품질을 높이고 납기일을 준수하여 고객의 만족도를 높이기 위한 효율적인 개발방법

필요성 #

  • 개발 경험 축적 ( 표준화 )
  • 재활용을 통한 개발 생상성 향상 ( 모듈화 )
  • 효과적인 프로젝트 관리 ( 가시화 )
  • 절차와 용어 정리로 소통의 수단으로 사용

구성 #

작업 절차(Process) #

  • 프로젝트 수행 시 진행되는 작업의 단계
  • 단계별 활동내역을 세부하게 열거

작업 방법(Method) #

  • 각각의 단계에서 수행하는 구체적이고 명확한 설명
  • 절차 / 작업방법 ( 누가 , 무엇을 , 언제 해야한다는 내역으로 진행 )

산출물 #

  • 각 단계별로 만들어야 하는 산풀물의 목록 및 양식
  • 매뉴얼 / 설정방법등

기법 #

  • 기술 및 기법 설명

도구 #

  • 기법에 사용되는 지원도구 혹은 사용표준 및 방법

소프트웨어 방법론의 진화 과정 #

1960년대 #

  • 컴퓨터라는것은 대용량 계산을 하거나 주로 군사적으로 사용하던 시절.
  • 프로그래밍의 사용 폭도 좁았고, 요구사항도 단순
  • 기계어를 사용하였으며 개발방법 없음.

1970년대 #

  • 고급언어를 사용
  • 컴퓨터가 점차 전문영역으로 확대
  • 점차 민간 영역으로 컴퓨터가 사용되면서 고객의 요구사항이 발생
  • 그에대한 체계적인 대응책이 필요
  • "1968년 소프트웨어 위기" 론이 대두되고 폭포수 방법론이 탄생

1980년대 #

  • PC가 대중화
  • C가 나오고 4세대 언어 툴이 탄생
  • 고객의 요구사항은 더 복잡해지며 생명주기 관점으로 소프트웨어 개발 방법론이 대두
  • 소프트 웨어를 하나의 거대한 사업으로 인식
  • 맞춤형으로 소프트 웨어와 하드웨어가 발전
  • 애플의 "리사"와 "매킨토시"가 고객 편의성에 기반을 둔 UI로 큰 성공

1990년대 #

  • 프로젝트의 효율성과 생산성에 초점
  • 소프트웨어는 이미 하드웨어보다 고 부가가치 시장으로 인식
  • 당연히 기업에서도 많은 투자 발생
  • 위험성이 큰 대형 프로젝트들이 증가
  • 개발 방법론은 위험관리와 고객 요구사항의 정합성, 생산성을 고려하게 됨
  • 객체지향언어(JAVA, C++)의 전성기
  • 반복과 통합 프로세스의 탄생
  • 반복과 통합의 프로세스를 토대로 RUP가 탄생
  • 컴포넌트 기반 방법론CBD가 기반이 됨

2000년대 #

  • 2000년대는 보다 고객과 서비스 중심으로 변모
  • 웹 어플리케이션 중심으로 변화
  • 고객의 니즈를 예측하고 빠른 시간안에 구축해야 하는 과제로 개발은 점차 생산성 중심으로 재편
  • 쉬운 개발을 선호 하게 되면서 각종 자동화 툴이 발전

현재 ~ #

  • 고객의 니즈 뿐 아니라 개발자의 편의성을 고려
  • 개발은 점차 기업,그룹 화에서 개인화가 되어가는 추세
  • 툴의 비약적인 발전으로 여러 개발 언어들은 하나의 플랫폼 아래에서 동일하게 작동
  • 개발자 혼자서 개발을 계획부터 테스트 까지 가능한 시기
  • 사용자가 곧 공급자

개발 방법론 #

구조적(structural) 방법론 #

  • 특징: 전통적인 방식, 절차 중심
  • 대표 방법론: 폭포수

정보공학(Information Engineering)방법론 #

  • 특징 : 데이터 중심, 모델링 기반
  • 대표 방법론: 프로토타입, 정보공학방법론

객체지향(Object Orient) 방법론 #

  • 특징 : 객체 중심, 사용자의 참여 중시
  • 대표방법론 : 반복적 개발

컴포넌트 기반(Component Based) 방법론 #

  • 특징 : 컴포넌트 기반, 재사용성 중시, 반복과 통합 중시
  • 대표 방법론 : RUP, XP, Agile, 마르미

개발 방법 선택 #

  • 프로젝트의 특징
  • 프로젝트 규모
  • 가용한 자원 ( 사람 , 돈 , 장비 , 시간 )

Incoming Links #

Related Data Sciences #

Suggested Pages #

0.0.1_20140628_0