소프트웨어 - 위키백과, 우리 모두의 백과사전 소프트웨어 위키백과, 우리 모두의 백과사전. ( 컴퓨터 소프트웨어에서 넘어옴 ) 둘러보기로 가기 검색하러 가기 사용자가 일반적인 데스크톱 컴퓨터에서 응용 소프트웨어와 어떻게 상호 작용하는지 나타낸 그림. AbiWord 워드 프로세싱 소프트웨어의 스크린샷 컴퓨터 소프트웨어 ( computer software, 혹은 간단히 소프트웨어, 문화어 : 쏘프트웨어, 순화 용어 : 무른모 ) 는 저장장치에 저장된 특정한 목적의 하나 또는 다수의 컴퓨터 프로그램을 뜻한다. 프로그램 소프트웨어는 컴퓨터 하드웨어에 직접 명령어를 주거나 다른 소프트웨어에 입력을 제공함으로써, 그것이 수행하도록 구현된 기능을 수행한다. " 소프트웨어 " 라는 용어는 1957년에 존 터키 ( John W. Tukey ) 가 처음 사용한 용어이다. 일상적으로 이 용어는 응용 소프트웨어의 의미로 자주 쓰인다. 컴퓨터 과학과 컴퓨터 공학에서 " 컴퓨터 소프트웨어 " 는 컴퓨터 시스템, 프로그램, 데이터에 의해 처리된 모든 정보를 말한다. 컴퓨터 소프트웨어는 컴퓨터 하드웨어의 반대 의미로, 컴퓨터 하드웨어는 소프트웨어가 실행되고 저장되는 물리적 장치 ( 물리 구조 ) 이다. 목차 1 역사 2 사용자가 보는 소프트웨어의 세 층 3 소프트웨어의 수행 4 소프트웨어 제작 5 소프트웨어 특허 6 법학적 관점에서의 소프트웨어 7 소프트웨어 라이선스 8 개발 단계에 따른 소프트웨어 분류 9 함께 보기 10 외부 링크 역사 [ 편집 ] 이
##장비숨은 분류 : 영어 표기를 포함한 문서문화어 표기를 포함한 문서LCCN 식별자를 포함한 위키백과 문서GND 식별자를 포함한 위키백과 문서BNF 식별자를 포함한 위키백과 문서 둘러보기 메뉴 개인 도구 로그인하지 않음토론기여계정 만들기로그인 이름공간 문서토론 변수 보기 읽기편집역사 보기 더 보기 검색 둘러보기 대문사용자 모임요즘 화제최근 문서 보기임의 문서로도움말기부 도구 여기를 가리키는 문서가리키는 글의 최근 올리기특수 문서 목록고유 링크문서 정보위키데이터 항목이 문서 인용하기 다른 프로젝트 인쇄 / 내보내기 책 만들기PDF로 다운로드인쇄용 판 다른 언어 ( ) - - / inuktitut 日 本 語 / / / / 中 文 - - 語 링크 편집 이 문서는 2018년 9월 12일 ( 수 ) 04 : 29에 마지막으로 편집되었습니다. 모든 문서는 크리에이티브 커먼즈 저작자표시 - 동일조건변경허락 3. 0에 따라 사용할 수 있으며, 추가적인 조건이 적용될 수 있습니다. 자세한 내용은 이용 약관을 참고하십시오.
##ightly build : 매일 발생하는 소프트웨어에 대한 수정사항을 포함하고 있는 소프트웨어 배포버전이다. 소프트웨어는 테스트가 되어 있지 않을 수 있기 때문에 매우 불안정한 상태이다. 정식 버전 함께 보기 [ 편집 ] 공용에 분류가 있습니다. 소프트웨어 컴퓨터 프로그래밍 프로그래밍 언어 텍스트 편집기 컴파일러 알고리즘 소프트웨어 개발과정 소프트웨어 개발도구 소프트웨어 유지보수 소프트웨어 최적화 API 소프트웨어 공학 소프트웨어 패키지 소프트웨어 라이선스 오픈 소스 소프트웨어 소프트웨어 저작권 침해 프리웨어 셰어웨어 교육용 소프트웨어 교수용 소프트웨어 학습용 소프트웨어 외부 링크 [ 편집 ] ( 영어 ) 소프트웨어 - Curlie ( DMOZ 기반 ) vdeh소프트웨어 공학분야 컴퓨터 프로그래밍 요구공학 소프트웨어 배치 소프트웨어 설계 소프트웨어 유지보수 소프트웨어 테스트 시스템 분석 정형 기법 개념 데이터 모델링 엔터프라이즈 아키텍처 기능 명세서 모델링 언어 직교성 프로그래밍 패러다임 소프트웨어 소프트웨어 고고학 소프트웨어 구조 소프트웨어 구성 관리 소프트웨어 개발 프로세스 소프트웨어 개발 방법론 소프트웨어 품질 소프트웨어 품질 보증 소프트웨어 검증 및 확인 구조화 분석 지향 애자일 영역 지향 객체 지향 온톨로지 서비스 지향 SDLC 모델개발 애자일 EUP Executable UML Incremental model 반복적 모델 프로토타입 모델 스크럼 나선 모형 V 모델 폭포수 모델 XP RAD UP 기타 SPICE CMMI 데이터 모델 ER 모델 기능 모델 정보 모델 메타모델링 객체 모델 시스템 모델 뷰 모델 언어 IDEF UML SysML
##되었다. 사용자가 보는 소프트웨어의 세 층 [ 편집 ] 사용자들의 시각은 보통 프로그래머의 시각과는 차이가 있다. 현대의 범용 컴퓨터 ( 임베디드 시스템의 반대 의미 ) 를 사용하는 사람들은 보통 소프트웨어를 플랫폼, 응용 프로그램, 사용자 소프트웨어의 세 층으로 분류한다. 플랫폼 소프트웨어 플랫폼이란 바이오스 ( " 소프트웨어 " 대신 " 펌웨어 " 라는 용어로 종종 설명되는 ), 장치 드라이버, 운영 체제, 그리고 대표적으로 그래픽 사용자 인터페이스 등을 총체적으로 포함하는 것으로, 컴퓨터와 주변기기가 서로 소통할 수 있게 만들어 준다. 플랫폼 소프트웨어는 대개 컴퓨터에 꾸러미로 같이 제공되며, 대개의 사용자는 그러한 것이 실제로 있는지, 아니면 선택할 수 있는 다른 플랫폼 소프트웨어가 존재하는지에 대해서 모르는 경우가 많다. 응용 소프트웨어 응용 프로그램은 사람들이 일반적으로 소프트웨어라고 생각하는 것이다. 대표적인 예로 오피스 제품군, 비디오 게임을 들 수 있다. 응용 소프트웨어는 보통 컴퓨터 하드웨어와는 별도로 구매한다. 어떤 응용 프로그램은 컴퓨터에 꾸러미로 제공되지만, 독립적인 응용 프로그램으로 수행된다는 점에서 차이가 없다. 응용 프로그램은 거의 대개 운영 체제와는 독립적인 프로그램이지만, 보통 특정 플랫폼만을 위해 제작된다. 사용자들은 흔히 컴파일러, 데이터베이스와 같은 " 시스템 소프트웨어 " 를 응용 소프트웨어와 같이
특허 6 법학적 관점에서의 소프트웨어 7 소프트웨어 라이선스 8 개발 단계에 따른 소프트웨어 분류 9 함께 보기 10 외부 링크 역사 [ 편집 ] 이 부분의 본문은 소프트웨어의 역사입니다. 소프트웨어의 최초의 장소가 되는 윤곽 ( 알고리즘 ) 은 계획된 해석기관을 위해 19세기 에이다 러브레이스가 작성하였다. 그러나, 해석기관이든 소프트웨어는 실제로 만들어진 것은 없었다. 오늘날 우리가 인식하는 컴퓨터의 발명 이전의 소프트웨어에 대한 최초의 이론은 앨런 튜링이 1935년 수필 《 Computable numbers with an application to the Entscheidungsproblem 》 에서 제안되었다. ( 결정 문제 ) 이는 컴퓨터 과학과 소프트웨어 공학의 양대 산맥이 탄생하는 계기가 되었으며, 둘 다 소프트웨어 및 소프트웨어의 제작에 대해 연구한다. 컴퓨터 과학은 더 이론적인 반면 ( 튜링의 수필이 컴퓨터 과학의 한 예이다 ), 소프트웨어 공학은 더 실용적인 부분에 초점을 둔다. 그러나 1946년 이전까지 우리가 알고있는 소프트웨어, 즉 저장식 프로그램 디지털 컴퓨터의 메모리에 저장되는 프로그램들은 존재하지 않았다. 최초의 전자식 컴퓨팅 장치들이 그 대신 이들을 다시 프로그램할 목적으로 재배치되었다. 사용자가 보는 소프트웨어의 세 층 [ 편집 ] 사용자들의 시각은 보통 프로그래머의 시각과는 차이가 있다
##는 다시 Node locked license, floating license, per user license, per machine license와 같이 수 있다. 개발 단계에 따른 소프트웨어 분류 [ 편집 ] 소프트웨어 개발 단계에 따라 분류를 나눌 수 있다. 소프트웨어 배포자에 따라 이 소프트웨어 분류는 바뀔 수 있지만 일반적인 룰은 다음과 같다. 알파 버전 : 개발 주기에서 알파 버전의 경우 내부 테스트용으로 공개하는 경우가 많다. 거의 모든 주요 기능을 포함하고 있지만 많은 버그가 존재하고 실제 사용자가 도입해서 사용하기에는 무리가 있는 버전을 말한다. 베타 버전 이전의 단계이다. 베타 버전 : 베타 버전의 경우 알파에서 나온 문제점들을 수정한 단계이고 외부로 공개 테스트를 시작할 수 있을 정도의 완성도를 가진 소프트웨어를 말한다. 이후로는 새로운 기능보다는 나온 문제점들을 수정하고 UI를 최적화 하는 작업을 진행한다. RC ( Release Candidate ) : RC는 Microsoft에서 사용하는 소프트웨어 개발 단계로 정식판이 배포되지 직전의 단계로 볼 수 있다. 일반적으로 베타와 정식 배포판의 중간단계에 해당한다. Nightly build : 매일 발생하는 소프트웨어에 대한 수정사항을 포함하고 있는 소프트웨어 배포버전이다. 소프트웨어는 테스트가
특정 플랫폼만을 위해 제작된다. 사용자들은 흔히 컴파일러, 데이터베이스와 같은 " 시스템 소프트웨어 " 를 응용 소프트웨어와 같이 여긴다. 사용자 작성 소프트웨어 사용자 소프트웨어는 사용자 특화된 요구를 충족시키기 위한 것이다. 사용자 소프트웨어에는 스프레드시트 템플릿, 워드 프로세서 매크로, 과학 시뮬레이션, 그래픽 / 애니메이션 스크립트 등이 있다. 심지어 전자우편 필터 역시 사용자 소프트웨어의 하나로 볼 수 있다. 사용자들은 이 같은 소프트웨어를 직접 제작하고도 그 중요성을 흔히 간과하곤 한다. 다층 구조 문서를 참고하십시오. 소프트웨어의 수행 [ 편집 ] 컴퓨터 소프트웨어는 컴퓨터의 저장장치 ( " 메모리 " 또는 " 램 " 으로 알려져 있음 ) 로 " 적재 " 되어야 한다. 소프트웨어를 불러오면 컴퓨터는 소프트웨어를 작동할 수 있다. 컴퓨터는 컴퓨터 프로그램을 " 실행 " 하여 작동시킨다. 여기에는 응용 소프트웨어에서 명령어를 보내는 과정이 포함되는데, 시스템 소프트웨어를 거쳐 궁극적으로 기계어 명령이 하드웨어에 전달된다. 각각의 명령어는 하나의 작업 ( 데이터를 옮기거나, 계산 결과를 저장하거나, 명령의 흐름을 변경하는 등의 ) 을 수행하도록 한다. 기능에 따른 소프트웨어의 종류 : 실행 가능한 프로그램 소스 코드 또는 스크립트 구성 소프트웨어 제작 [ 편집 ] 소프트웨어는 프로그래밍 언어와 관련 유틸리티를 사용하여 제작되는데, 다음과
소프트웨어를 " 컴퓨터 · 통신 · 자동화 등의 장비와 그 주변장치에 대하여 명령 · 제어 · 입력 · 처리 · 저장 · 출력 · 상호 작용이 가능하도록 만드는 지시 · 명령 ( 음성이나 영상정보를 포함한다 ) 의 집합과 이를 작성하기 위하여 사용된 기술서 기타 관련 자료를 말한다. " 라고 정의한다. ( 법 제2조 1호 ) 소프트웨어 라이선스 [ 편집 ] 틀 : 소프트웨어 배포 문서를 참고하십시오. 소프트웨어에는 여러 종류의 라이선스 형태가 있다. 크게는 다음과 같이 나뉜다. 프리웨어 ( freeware ) : 제작자가 CCL만 지키면 마음껏 사용해도 된다. 셰어웨어 ( shareware ) : 보통 30일 동안 소프트웨어를 정식 버전과 같은 기능을 사용할 수 있다. 60일이나 90일 동안 사용할 수 있는 셰어웨어도 있다. 데모버전이라고도 한다. 상용 소프트웨어 ( Commercial Software ) : 돈을 지불하고 사용권을 구매해서 사용해야하는 소프트웨어 라이선스의 한 분류이다. 기업에서 제작하는 대부분의 소프트웨어가 상용 소프트웨어에 속한다. 예로는 Microsoft의 Office, Oracle의 Oracle DB등이 있다. 상용 소프트웨어는 다시 Node locked license, floating license, per user license, per
SPICE CMMI 데이터 모델 ER 모델 기능 모델 정보 모델 메타모델링 객체 모델 시스템 모델 뷰 모델 언어 IDEF UML SysML 소프트웨어엔지니어 en : Victor Basili 켄트 벡 그래디 부치 프레더릭 브룩스 en : Barry Boehm 워드 커닝햄 en : Tom DeMarco 에츠허르 데이크스트라 en : Martin Fowler C. A. R. 호어 en : Watts Humphrey en : Michael A. Jackson en : Ivar Jacobson en : Stephen J. Mellor en : Bertrand Meyer en : David Parnas en : Winston W. Royce en : James Rumbaugh 니클라우스 비르트 en : Edward Yourdon en : Edward Yourdon en : Mohamed Fayad 관련 분야 컴퓨터 과학 컴퓨터 공학 프로젝트 관리 위험관리 시스템 공학 분류 공용 전거 통제 LCCN : sh85029534 GND : 4055382 - 6 BNF : cb133183707 ( 데이터 ) NDL : 00684642 BNE : XX530960 원본 주소 " " 분류 : 소프트웨어법학전산장비숨은 분류 : 영어 표기를 포함한 문서문화어 표기를 포함한 문서LCCN 식별자를 포함한 위키백과
따라 사용할 수 있으며, 추가적인 조건이 적용될 수 있습니다. 자세한 내용은 이용 약관을 참고하십시오. 미국 및 다른 국가에 등록되어 있는 Wikimedia Foundation, Inc. 소유의 등록 상표입니다. 개인정보 정책 위키백과 소개 면책 조항 개발자 쿠키 정책 모바일 보기
컴퓨터 소프트웨어(computer software, 혹은 간단히 소프트웨어, 문화어: 쏘프트웨어, 순화 용어: 무른모)는 컴퓨터에게 동작 방법을 지시하는 명령어 집합의 모임이다. 프로그램 소프트웨어는 컴퓨터 하드웨어에 직접 명령어를 주거나 다른 소프트웨어에 입력을 제공함으로써, 명령어의 기능을 수행한다. 컴퓨터 소프트웨어는 컴퓨터 하드웨어의 반대 의미로, 컴퓨터 하드웨어는 해당 일을 실제로 수행하는 시스템이다. 쉽게 설명하자면 생명체를 하드웨어라고 가정한다면, 그를 구성하는 유전자가 소프트웨어라고 생각할 수 있다. "소프트웨어"라는 용어는 1957년에 존 터키(John W. Tukey)가 처음 사용한 용어이다. 일상적으로 이 용어는 응용 소프트웨어의 의미로 자주 쓰인다. 컴퓨터 과학과 컴퓨터 공학에서 "컴퓨터 소프트웨어"는 컴퓨터 시스템, 프로그램, 데이터에 의해 처리된 모든 정보를 말한다. 소프트웨어 대부분은 고급 프로그래밍 언어로 개발된다. 이 유형의 프로그래밍 언어는 프로그래머들에게 더 쉽고 더 효율적인데, 그 이유는 기계어보다 자연어에 더 가깝기 때문이다. 고급 언어는 컴파일러나 인터프리터, 또는 이 둘의 조합을 이용하여 기계어로 변환된다. 소프트웨어는 컴퓨터의 기계어와 상당히 일치되는 저급 어셈블리어로도 개발이 가능하며 이는 어셈블러를 사용하여 기계어로 변환된다.