상세 컨텐츠

본문 제목

소프트웨어와 소프트웨어공학이란

관리X 과거글

by 까먹기전에 2013. 10. 9. 12:13

본문

반응형



소프트웨어  ?

프로그램 , 프로그래머 ,소스코트 , 버그 ,에러 등등

하드웨어의 반대말이며 무형의 논리


공학  ?

컴퓨터 , 전기 , 전자 , 기계 , 건축 , 엔지니어링 , 엔지니어




공학과 과학의 차이

공학 -> 어떻게 하면 적은 비용으로 소프트웨어를 개발할 수 있을까

            어떻게 하면 좋은 품질의 소프트웨어를 개발할 수 있을까

            어떻게 하면 적기에 소프트웨어를 개발할 수 있을까

           (사용자의 요구 충족 , 재미 , 수요등등을 고려)



소프트웨어 프로젝트의 예

-비행기 예약 및 발권

-원자력 발전소 제어 및 통제 시스템

-우주선 제어 및 통제 시스템

-은행 전산 처리 시스템

-운영체제 등등



소프트웨어의 분류


용도에 따른 부류


-응용 소프트웨어 - 사용자의 원하는 목적에 맞게 개발된 소프트웨어


-시스템 소프트웨어 - 하드웨어를 관리하고 응용 소프트웨어를 지원하는 소프트웨어


독립형 - 워드프로세서

내장형 - 자동차 제어 소프트웨어 , pda내장 소프트웨어

실시간형 - 레이더 관측 소프트웨어

네트워크형 - 웹 기반의 네트워크 게임



일반 소프트웨어

-일반적으로 pc 및 대형시스템상에서 수행되는 소프트웨어를 말함

-비기능적인 부분에 대한 고려가 많지 않음

-규격화된 하드웨어 및 OS를 대상으로 좋은 범용 개발 환경을 갖추고 있어 개발자들은

소프트웨어 분야의 지식만으로도 개발이 가능


임베디드 소프트웨어

-특정 기계 또는 시스템 상 특정 목적만을 위해 수행되는 소프트웨어를 말함

-특정 응용을 위해 설계되고, 확장성이 적을뿐 아니라, 비기능적인 부분을 충분히 고려해야함

-처리 기한이 주어지거나 외부영향에 따라 실시간으로 대응해야함

-개발자들은 해당 도메인, 하드웨어 및 소프트웨어 분야의 지식을 충분히 갖추고있어야함

 ex)전자오븐 제어 소프트웨어 , 자동차 브레이크 제어 소프트웨어


소프트 웨어의 특징 

소프트웨어의 비가시성

-소프트웨어 완제품의 구조가 개발된 코드안에 숨어있어 파악하기 힘든 특징

프레스만이 정의한 소프트웨어의 특징

-소프트웨어는 고전적인 의미의 제조가 아니라 개발이다

-소프트웨어는 닳지 않지만, 요구사항의 변경과 주변환경의 변화에 따라 수정되고 진화한다


소프트웨어의 특성으로 인한 개발의 어려움

소프트웨어

     -물리적인 형태가 없는 무형의 논리적인 요소

         =개발과정에 대해 정확한 이해 어려움

   =개발 진행 상황을 파악하기도 어려움


     -최종 산출물이 개발 과정에서 확인되지 않음

         =오류를 발견해야 할 시기를 놓치거나

         =오류에 대한 해결책을 못 찾는 경우가 발생


     -프로젝트의 지연 및 예상 범위 초과로 인한 프로젝트 실패 가능성이 높음

관련글 더보기