컴퓨터의이해

06강-소프트웨어와 정보시스템

2026-03-06

소프트웨어란 무엇인가

  • 소프트웨어(Software): 컴퓨터 하드웨어가 동작하도록 하는 프로그램과 데이터의 집합
  • 하드웨어만으로는 컴퓨터가 동작할 수 없으며, 소프트웨어가 있어야 기능을 수행할 수 있음
  • 컴퓨터 시스템은 보통 다음과 같은 구조로 구성됨

사용자 → 응용 소프트웨어 → 시스템 소프트웨어 → 하드웨어


소프트웨어의 종류

소프트웨어는 크게 시스템 소프트웨어응용 소프트웨어로 나눌 수 있다

시스템 소프트웨어

  • 컴퓨터 하드웨어를 관리하고 응용 소프트웨어가 실행될 수 있는 환경을 제공
  • 사용자와 하드웨어 사이에서 중재자 역할

대표 종류

  • 운영체제(OS)
  • 언어 번역 프로그램(컴파일러, 인터프리터)
  • 유틸리티 프로그램

응용 소프트웨어

  • 사용자가 특정 목적을 위해 사용하는 프로그램

종류

  • 사용자 프로그램

    • 특정 조직이나 개인을 위해 개발된 프로그램
  • 응용 패키지 프로그램

    • 많은 사용자가 공통적으로 사용하는 프로그램

대표 예

  • 워드프로세서 (Word, 한글)
  • 스프레드시트 (Excel)
  • 그래픽 프로그램 (Photoshop)
  • 영상 편집 프로그램 (Premiere 등)

운영체제(OS)

운영체제는 컴퓨터 시스템에서 가장 중요한 시스템 소프트웨어이다

  • 사용자와 컴퓨터 하드웨어 사이에서 중재 역할
  • 컴퓨터 자원을 효율적으로 관리

운영체제의 주요 기능

사용자 인터페이스 제공

사용자가 컴퓨터와 상호작용할 수 있도록 환경 제공

대표 방식

  • CLI (Command Line Interface)

    • 명령어를 입력하여 컴퓨터를 제어
  • GUI (Graphical User Interface)

    • 아이콘, 메뉴, 창 등을 이용한 그래픽 환경

컴퓨터 자원 관리

운영체제는 컴퓨터의 주요 자원을 관리한다

대표 자원

  • CPU
  • 메모리
  • 입출력 장치
  • 네트워크 장치

파일 시스템 관리

  • 데이터를 파일 형태로 저장하고 관리
  • 파일 생성, 삭제, 수정 등의 기능 제공

프로그램 실행 관리

  • 여러 프로그램이 동시에 실행될 때
  • CPU와 메모리를 적절히 배분하여 실행을 관리

대표적인 운영체제

Windows

  • Microsoft에서 개발한 운영체제
  • GUI 기반 운영체제

대표 버전

  • Windows 95
  • Windows 98
  • Windows XP
  • Windows 7
  • Windows 10
  • Windows 11

특징

  • 가상 데스크탑
  • 작업 보기(Task View)
  • Windows Hello 등 보안 기능

UNIX

  • 1970년대 Bell 연구소에서 개발
  • 서버 시스템에서 많이 사용

특징

  • 멀티태스킹 지원
  • 멀티유저 지원
  • 안정성과 확장성이 뛰어남

Linux

  • 1991년 리누스 토발즈(Linus Torvalds) 개발
  • 오픈소스 운영체제

대표 배포판

  • Ubuntu
  • RedHat
  • Debian

MacOS

  • Apple에서 개발한 운영체제
  • UNIX 기반 운영체제

특징

  • GUI 환경 우수
  • Apple 하드웨어와 최적화

프로그래밍 언어와 번역 프로그램

컴퓨터는 기계어만 이해할 수 있기 때문에, 사람이 작성한 프로그램을 번역하는 과정이 필요하다

이 역할을 하는 프로그램을 언어 번역기라고 한다


컴파일러

  • 프로그램 전체를 한 번에 번역

특징

  • 실행 속도가 빠름
  • 번역 과정(컴파일)이 필요

대표 언어

  • C
  • C++
  • Go 등

인터프리터

  • 프로그램을 한 줄씩 번역하면서 실행

특징

  • 개발과 수정이 편리
  • 실행 속도는 상대적으로 느림

대표 언어

  • Python
  • JavaScript

프로그래밍 언어의 발전

프로그래밍 언어는 발전 단계에 따라 세대로 구분하기도 한다

세대 특징
1세대 기계어
2세대 어셈블리어
3세대 고급언어 (C, Java, Python 등)
4세대 데이터베이스 중심 언어
5세대 인공지능 언어

알고리즘

알고리즘(Algorithm)

  • 문제를 해결하기 위한 논리적인 절차와 방법

알고리즘이 갖추어야 할 조건

  • 유한성: 반드시 끝나야 한다
  • 명확성: 각 단계가 분명해야 한다
  • 실행 가능성: 실제로 수행 가능해야 한다

알고리즘 표현 방법

순서도(Flowchart)

  • 알고리즘을 도형으로 표현

대표 기호

  • 시작 / 끝
  • 처리
  • 조건
  • 입력 / 출력

의사코드(Pseudo Code)

  • 실제 프로그래밍 언어와 비슷하게 알고리즘을 표현하는 방법

소프트웨어 개발 방법

대규모 소프트웨어 개발을 체계적으로 수행하기 위해 소프트웨어 공학 방법론이 사용된다

대표적인 개발 방식은 워터폴 모델이다

개발 단계

계획 → 요구 분석 → 설계 → 구현 → 테스트 → 유지보수


소프트웨어 사용권(라이선스)

소프트웨어는 대부분 저작권과 사용권을 가진다


사유 소프트웨어

  • 개발자가 권리를 가진 소프트웨어

대표 예

  • Windows
  • Microsoft Office

쉐어웨어(Shareware)

  • 일정 기간 무료 체험 후 구매

프리웨어(Freeware)

  • 무료 사용 가능
  • 그러나 수정이나 재배포는 제한될 수 있음

자유 소프트웨어 / 오픈소스

대표 라이선스

  • GNU GPL

사용자에게 다음과 같은 자유를 제공

  • 프로그램 실행 자유
  • 소스코드 확인 자유
  • 프로그램 복사 및 배포 자유
  • 수정 후 재배포 자유

정보 시스템

정보 시스템은 조직이나 기업에서 정보를 수집, 처리, 저장, 활용하기 위한 시스템이다

대표적인 정보 시스템

시스템 설명
TPS 거래 처리 시스템
DSS 의사 결정 지원 시스템
ERP 전사적 자원 관리
CRM 고객 관계 관리
SCM 공급망 관리

정리

  • 소프트웨어는 컴퓨터 하드웨어를 동작시키는 프로그램과 데이터의 집합이다
  • 소프트웨어는 시스템 소프트웨어응용 소프트웨어로 구분된다
  • 운영체제는 컴퓨터 자원을 관리하는 핵심 시스템 소프트웨어이다
  • 기업에서는 다양한 정보 시스템(TPS, ERP, CRM 등) 을 활용하여 조직 운영을 지원한다