[자격증]/정보처리기사 필기
소프트웨어 공학의 개념 { 개념, 특징, 시스템의 기본요소, 소프트웨어 위기 & 공학 }
Ben의 프로그램
2023. 5. 27. 12:26
728x90
소프트웨어(software)의 개념
- 소프트웨어 공학이라는 것은 소프트웨어를 만들기 위한 학문이다라고 이해할 수 있다.
- 소프트웨어라는 것은 우리가 알고 있는 어플리케이션이고, 모바일&PC 등 환경에서 사용되는 프로그램들이다.
- 어려운 말로 정의하자면 다음과 같다.
소프트웨어의 개념 software
"컴퓨터를 동작시키고 어떤 일의 처리 순서와 방법을 지시하는 명령어의 집합인 프로그램과 프로그램의 수행에 필요한 절차, 규칙, 관련 문서 등을 총칭한다."
소프트웨어(software)의 특징
- 상품성 : 소프트웨어를 개발하면 상품이 되어 판매가 된다.
- 복잡성 : 개발하는 과정이 복잡하고 관리가 어렵다.
- 변경 가능성 : 프로그램을 일부 수정하여 업그레이드 및 오류 수정 등을 할 수 있다.
- 복제성 : 복제가 용이해 쉽게 복사, 유통이 가능하다.
시스템 system 의 개요와 기본 요소
- 시스템의 개요
- 컴퓨터의 시스템이라는 것은 하나의 조직을 의미한다. - 시스템의 기본 요소
- 입력, 처리, 출력, 제어, 피드백

소프트웨어의 위기 software crisis
- 소프트웨어의 특징 중 복잡성이 있었다.
- 소프트웨어가 시간이 지날수록 더욱더 복잡해짐에 따라서 다양한 사람들이 필요해졌다.
- 예전에는 1명이 다 개발했다면, 이제는 설계자 & 디자이너 & 기획자 & 프로덕트 매니저 & 데이터베이스 등 많은 사람들이 필요해지면서 돈이 많이 필요해졌다.
- 개발 인력이 많이 필요한데, 사람이 부족하며 인건비가 상승했다.
- 소프트웨어에서 가장 중요한 부분은 바로 유지보수 부분입니다.
- 개발 보다 유지보수 하는 것이 더 많은 비용이 듭니다.

소프트웨어 공학 software engineering
- 소프트웨어 공학이라는 것은 지금 소프트웨어의 위기가 왔는데, 어떻게 하면 이 문제를 해결할 것인가에 대한 고민이다.
- 어떻게 하면 빠르고, 쉽고, 경제적으로 소프트웨어를 만들 수 있을까를 고민한 것이다.
- IEEE(전기/전자기술협회)는 소프트웨어의 개발, 운용, 유지보수 및 파기에 대한 체계적인 접근 방법이라 정의하였다.

소프트웨어 공학의 기본 요소
- 현대적인 프로그래밍 기술을 적용해야 한다.
- 신뢰성이 높아야 한다.
- 사용의 편리성과 유지보수성이 높아야 한다.
- 지속적인 검증 시행을 해야 한다.

출처 : https://www.youtube.com/watch?v=JhKOsZuMDWs&list=PL6i7rGeEmTvqEjTJF3PJR4a1N9KTPpfw0