S/W   Software, Software Engineering   소프트웨어, 소프트웨어 공학

(2023-10-13)

시스템 소프트웨어, S/W 공학


1. 소프트웨어 (Software)컴퓨터 하드웨어를 동작하고 제어하는 역할을 하는 명령어 집합

  ㅇ 구분
     - 응용 소프트웨어        :  다양한 응용에 사용하기 위해 특별히 제작된 소프트웨어들
     - 시스템 소프트웨어      :  하드웨어 및 응용소프트웨어 중간에 위치
        . 운영체제            :  하드웨어와 직접 상호작용, 프로그램에 공통적인 서비스 제공
        . 유틸리티 소프트웨어 :  기본적인 활동을 수행하며 운영체제 기능을 확장시켜줌
        . 시스템 데몬         :  백그라운드에서 계속 실행 상태를 유지하는 프로세스
        . 언어 번역 프로그램  :  컴파일러, 어셈블러, 인터프리터, 디버거 등


2. 소프트웨어 공학 (Software Engineering)

  ㅇ 대규모/복잡한 소프트웨어 시스템의 개발시에,
     - 그 지침이 되는 원리들을 모색하는 컴퓨터과학의 한 분야

  ㅇ 소프트웨어 공학의 대상
     - 주로, 소프트웨어의 설계, 품질, 테스트를 다룸
     - 이외에도, 프로그래머 인력 관리, 프로젝트 관리경영과학적인 것도 포함될 수 있음

  ㅇ 소프트웨어 공학의 목표
     - 더 큰 규모의 재사용을 통한 생산성 및 품질 향상, 
     - 빠른 응용 개발을 통한 시장경쟁력 강화 등


3. 소프트웨어 개발 패러다임 및 시대적 변화

  ㅇ 1970년대  :  구조적 프로그래밍, 하향식 설계
     - 기능, 절차 중심의 개발 방식
  ㅇ 1980년대  :  객체지향 방법론
     - 코드 재사용성, 수정 용이성 등
  ㅇ 2000년대  :  컴포넌트 기반 방법론
  ㅇ 2010년대  :  서비스 지향 방법론


4. [참고사항]애자일 개발 방식
     - 작은 단위로 구현과 테스트를 반복하는 개발 방식

소프트웨어공학 기초
   1. 소프트웨어 공학   2. 버전 관리   3. 요구분석   4. 소프트웨어 설계   5. 소프트웨어 아키텍처   6. CBD (컴포넌트기반개발)   7. MDA (모델주도형구조)   8. 순기/생명주기   9. 분할 후 정복  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"