Download presentation
Presentation is loading. Please wait.
1
제6장 소프트웨어와 정보시스템 김진수
2
학습목표 소프트웨어의 개념 및 분류를 이해 프로그래밍 언어의 종류와 특성을 열거 프로그램 흐름도의 개념을 설명
정보시스템의 수명주기를 이해 구조적 기법의 개발단계를 설명 MIS, ERP, CRM 및 SCM의 개념과 특성을 이해
3
6.1 소프트웨어 시스템소프트웨어 응용소프트웨어 하드웨어 구성요소들을 부드럽게 작동하도록 설계된 프로그램
하드웨어 자원의 효율적인 관리 응용소프트웨어를 원활하게 수행하도록 지원 응용소프트웨어 개인이나 조직의 일에 대한 컴퓨터 활용 수단
4
시스템 소프트웨어 운영체제 언어번역기 : 원시프로그램을 기계어로 변환 유틸리티 프로그램 개인용 컴퓨터 중심의 운영체제
DOS, Windows3.1, Windows95, Window98, Windows Me, Windows XP Home Edition, … 서버 중심의 운영체제 Windows NT, Windows 2000, Window XP, Unix, Linux , … 중대형 시스템 의전적인 운영체제 IBM, UNISYS, FACOM 등의 운영체제는 각 회사나 기종에 따라 독자적인 운영체제를 사용 언어번역기 : 원시프로그램을 기계어로 변환 컴파일러 C, C++, Delphi, Visual C++, … 인터프리터 한문장씩 해독, 속도가 느리다 Basic, Prolog, … 유틸리티 프로그램 이용자들이 자주 사용하는 프로그램들 프로그램이나 데이터를 한 매체에서 다른 매체로 옮기거나, 데이터의 내용이나 배치순서를 바꾸거나, 에러를 쉽게 찾아주는 등 압축 프로그램, 디버거, 텍스트 에디터, …
5
응용 소프트웨어 사용자 프로그램 응용 패키지 프로그램 직접 개발 상용화된 제품 한글, MS Office, …
SAS, SPSS, …
6
6.2 프로그래밍 언어 저급언어 개발 초기에 사용되었던 프로그래밍 언어 기계어
초창기 컴퓨터 프로그래밍은 기계어로 작성되고 처리 컴퓨터의 전기적 회로를 통해 직접적으로 해석되어 실행되는 언어 컴퓨터를 효율적으로 활용 복잡하고 어렵다
7
어셈블리어 컴퓨터가 최초로 상업화 되었을 때 기계어 대체언어 프로그래밍 수단으로 사용
명령들을 알기 쉬운 기호로 표시(MOVE, ADD, …) 어셈블러를 이용하여 기계어로 변환 프로그램의 수행시간이 빠르고, 주기억장치를 매우 효율적으로 이용할 수 있다 거의 모든 명령어와 기계어들이 1:1 대응 다른 기종의 어셈블리어와 거의 일치하지 않는다
8
고급언어 절차지향언어(procedural language) 전통적인 프로그래밍 논리를 사용하여 문제 해결 순차적으로 명령 실행
FORTRAN, COBOL, PASCAL, C, BASIC, …
9
객체지향언어(OOP:Object Oriented Programming)
객체 : 데이터와 데이터에 관련된 연산으로 구성 클래스 : 객체들의 공통된 성질을 정의 상속 : 객체의 정보를 세분화 또는 일반화의 원칙에 따라 조직화 Smalltalk, C++, Visual C++, Java, …
10
비절차어 제4세대 언어(4GL : 4th Generation Language) 프로그램 생산성을 향상
데이터베이스에서 정보를 검색하고, 보고서와 그래픽을 만들고, 데이터를 처리하는 원시코드를 실제로 만드는 기능을 제공 SQL(Structure Query Language) QBE(Query By Example)
11
함수언어, 논리언어 제5세대 언어(5GL) 자연어 : 인공지능의 구현이나 전문가시스템을 만드는데 사용 함수기반언어 논리기반언어
LISP, 1958년 MIT, John McCarthy, 인공지능 연구에 폭넓게 사용 논리기반언어 Prolog, 1972년, 프랑스, 각종 응용프로그램을 작성할 수 있는 강력한 기능 제공 C나 C++로 작성되기도 함 LISP+Prolog
12
고급언어의 종류별 특성 비주얼베이직 C 쉽게 프로그램을 작성, 인터프리터 방식 폼, 클래스, 일반 모듈
Dennis Ritchie가 설계 Unix 운영체제 작성 구조화 프로그래밍 기법 저급언어와 유사한 기능뿐 아니라 융통성과 이식성, 풍부한 연산자와 데이터형 및 제어구조를 갖는다 C++ 객체지향 개념을 추가
13
비주얼 C++ Java XML Windows 프로그램을 쉽게 작성 가능 Sun microsoft, 객체지향 프로그래밍 언어
웹 프로그래밍 및 일반 애플리케이션 프로그래밍 가능 XML eXtensible Markup Language 1996, W3C(World Wide Web Consortium) 웹상에서 구조화된 문서를 전송 가능하도록 설계 HTML의 한계를 극복, SGML의 복잡성을 해결 DTD(Document Type Definition) 전자 카탈로그와 EDI 시스템 등에서 활용
14
6.3 프로그팸의 설계 프로그램의 개요 컴퓨터를 이용해서 어떤 문제를 해결하려면? 프로그램을 실행시키려면?
프로그래밍 언어를 이용하여 프로그램 작성/실행 프로그램을 실행시키려면? 원시프로그램 명령들을 기계어 명령들로 만들어 주기억장치에 로드(Load)
15
프로그램 개발과정 프로그램 작성을 위한 시스템 및 프로그램 설명서의 검토 분석 설계 프로그램 작성(프로그래밍 언어 선택)
화면구성, 출력내용 구성, 흐름도 등 분석 설계 프로그램 작성(프로그래밍 언어 선택)
16
흐름도 기호
17
윤년 검색 프로그램의 흐름도
18
6.4 소프트웨어 개발방법론 소프트웨어 수명주기(Life Cycle)
사용자의 요구에 따라 소프트웨어시스템이 탄생하고, 가동 및 운용되는 가운데 수정,보완이 반복되어, 최종적으로 사용이 종료될 때까지의 기간 소프트웨어 설계구현테스트운용 및 유지보수 폭포수 모델 [그림 6-6]
20
구조적 기법의 개발방법론 기획단계 요구분석단계 문제점 파악, 대안 강구 타당성 검토
S/W 개발과정 중 모든 단계에 큰 영향을 미침 정보교환의 부정확성, 요구의 변화로 인한 적절한 예측이 어려움 자료흐름도(data flow diagram) 시스템의 프로세서와 이 프로세서들을 연결하는 데이터를 네트워크로 표현 하향식 접근법을 사용 자료사전(data dictionary) 자료흐름도에 나타나는 모든 데이터에 대한 정형적인 정의의 집합 소단위 명세서(mini specification) 자료흐름도의 프로세서에서 어떠한 일이 일어나는가를 기술 보통 도형적 표현으로 작성
22
객체지향 개발방법론 소프트웨어의 규모 방대 및 복잡화 시간과 비용 절감 및 질 향상 컴포넌트 기술, 비주얼 프로그래밍 등
컴포넌트 기반 개발(CBD) 5단계 : 요구분석, 분석, 설계, 개발, 구현 3단계(분석,설계,개발)는 반복단계 프로젝트 통제 및 품질보증은 모든 단계에서 적용 그림 6-9
23
6.5 정보시스템의 발전 MIS(Management Information Systems, 경영정보시스템)
기업 경영에 관한 정보를 제공해 주는 컴퓨터시스템 초기 : 단순 임금 계산 및 회계장부 관리 현재 : 판매, 재고, 마케팅 의사결정지원, 인적자원관리, 프로젝트관리, 데이터베이스검색 시스템 등 경영활동 유형 거래처리시스템 경영정보시스템(MIS) 의사결정지원시스템(DSS) ERP(Enterprise Resource Planning, 전사적 자원관리) 생산,판매,자재,인사,회계 등 기업 전반적인 업무프로세스를 하나의 체계로 통합 및 재구축하여 관련된 정보를 서로 공유, 신속한 의사결정 및 업무수행이 가능하도록 지원
24
CRM(Customer Relationship Management, 고객관계관리)
기업이 잘 정리된 방법으로 고객관계를 관리해 나가기 위해 필요한 방법론이나 소프트웨어 등을 지칭 대개 인터넷시스템 기능을 가짐 SCM(Supply Chain Management, 공급망관리) 물자, 정보 및 재정 등이 공급자에게서 생산자에게, 도매업자에게, 소매상인에게, 그리고 소비자에게 이동함에 따라 그 진행과정을 감독하는 것 재고를 줄이는 것이 최종 목표 웹 인터페이스를 가진 정교한 소프트웨어시스템 주요흐름 제품흐름 정보흐름 재정흐름
Similar presentations