꾸준한 개발일기

SW:: 소프트웨어의 위기(software crisis)란? 본문

Programing/SW

SW:: 소프트웨어의 위기(software crisis)란?

꾸개일 2022. 1. 20. 09:00
반응형

 소프트웨어 공학 초기에 사용되던 용어로 컴퓨터 계산 용량과 문제의 복잡성이 급격히 증가함에 따라 발생한 충격을 서술하기 위하여 사용되었다.

 

원인

- 소프트웨어 규모의 대규모화, 복잡화에 따른 개발비용 증대

- 하드웨어 비용에 대한 소프트웨어 가격 상승폭 증가

- 유지보수의 어려움과 개발 정체 현상 발생

- 프로젝트 개발 및 소요예산 예측의 어려움

- 신기술에 대한 교육 및 훈련의 부족

 

증상

- 프로젝트 예산이 초과되었다.

- 프로젝트 일정이 지연되었다.

- 소프트웨어가 비효율적이었다.

- 소프트웨어 품질이 낮았다.

- 소프트웨어가 요구 사항을 만족시키지 못하는 일이 빈번히 일어났다.

- 프로젝트는 관리 불가능했고 코드 관리는 힘들었다.

- 소프트웨어가 고객의 손에 전달 되지 못했다.

 

대응방안

소프트웨어 공학이 제안되었다.

- 객체 지향 프로그래밍, 캡슐화

- 구조적 프로그래밍

- 통합 개발 환경신속 응용 프로그램 개발

- 소프트웨어 콤포넌트화

- 소프트웨어 프로토타이핑

- 애자일 개발 프로세스

- 반복형 개발

- 버그 / 이슈 관리 시스템버전 관리 시스템

- 디자인 패턴

- Model+View+Controller

- 가비지 콜렉션

- 멀티스레드 프로그래밍

 

 

 

소프트웨어 생명주기의 정의와 종류는?

https://dev-h2.tistory.com/26

 

SW:: 소프트웨어 생명주기의 정의와 종류

 소프트웨어 개발 생명주기(Software Development Life Cycle : SDLC)는 소프트웨어의 생성에서 소멸까지의 과정을 단계별로 나눈 것 으로, 각 단계별 주요활동과 산출물을 통해 프로젝트의 진행방향을 명

dev-h2.tistory.com

 

소프트웨어 공학의 정의란?

https://dev-h2.tistory.com/28

 

SW:: 소프트웨어공학의 정의

정의 - 소프트웨어의 개발, 운용, 유지보수 및 폐기에 대한 체계적인 접근 방법 - 체계적인 접근방법 : 개발 방법이 일회성이 아니라 반복 사용이 가능하도록 한다. 특징 - 소프트웨어 개발 전 과

dev-h2.tistory.com

 

반응형
Comments