1. 소프트웨어(Software)의 개념
- 컴퓨터를 동작시키고 어떤 일의 처리 순서와 방법을 지시하는 명령어의 집합인 프로그램과 프로그램의 수행에 필요한 절차, 규칙, 관련 문서 등을 총칭한다.
- 프로그램(Program) : 컴퓨터를 통해 일련의 작업을 처리하기 위한 명령어와 관련된 데이터의 집합을 의미한다.
- 자료구조(Data Structure) : 컴퓨터 기억장치 내에 자료의 표현, 처리, 저장방법 등을 총칭하는 것으로 데이터 간의 논리적 관계나 처리 알고리즘을 의미한다.
- 문서(Paper) : 소프트웨어를 개발함에 있어서 사용자 설명서, 소프트웨어 요구 분석서, 평가서, 명세서, 프로젝트 계획서, 검사 계획서 등을 의미한다.
2. 소프트웨어의 특징 📌
- 상품성 (판매가 가능하다는 것)
- 복잡성 (개발 과정이 복잡하고 관리가 어렵다는 것)
- 변경 가능성 (즉, 요구나 환경의 변화에 따라 적절히 변형 시킬 수 있는다는 것)
- 복제성 (쉽게 복사, 유통이 가능하다는 것)
3. 시스템의 개요와 기본요소 📌
- 시스템의 개요
- 컴퓨터로 처리 가능한 자료를 입력하고 저장, 처리, 가공해 출력할 수 있도록 설계/구현된 정보 체계를 의미한다.
- 하나의 목적을 위해 다양한 요소가 유기적으로 결합된 것을 의미한다.
- 기본요소
- 입력, 처리, 출력, 제어, 피드백으로 구성된다.
4. 소프트웨어 공학의 목표
- 최소의 비용으로 단기간에 시스템에 적합한 소프트웨어를 개발하는 것이다.
- 소프트웨어 제품의 품질을 향상시키고 소프트웨어 생산성과 작업 만족도를 증대시키는 것이 목적이다.
- 신뢰성 있는 소프트웨어를 경제적인 비용으로 획득하기 위해 공학적 원리를 정립하고 이를 이용하는 것이다.