객체지향소프트웨어공학 - 시스템공학과 소프트웨어공학

2023. 3. 19. 16:51·수업

OOSE_01_시스템공학과소프트웨어공학

 

1. 시스템 vs 소프트웨어

 

시스템 :  특정 기능을 수행하기 위한 관련 요소들의 집합체(unified whole)

시스템 공학: 시스템의 개발, 운용, 보수를 합리적으로 수행하기 위한 사고방법,
                     절차, 조직 및 기법 등을 총칭
=> 가치 평가: 성능, 시간, 비용, 신뢰성, 보전성, 안전성 등

 

소프트웨어 : 프로그램과 관련 자료 일체(산출물)를 통칭
    -프로그램 : 문제를 해결하기 위해 처리 방법과 순서를 기술한 명령문 집합체

더보기

= 알고리즘 + 데이터 (Imperative Programming Language)
= 함수 + 값 (Functional Programming Language)
= 논리적인 데이터 시퀀스 (Logical Programming Language)
= 데이터(속성) + 역할(메소드) + 상호작용 (Object-Oriented Programming Language)

 

Object-Oriented -> Encapsulation(캡슐화), Inheritance(상속), Polymorphism(다형성)을 가짐.

   -산출물 : 구동환경, 구성, 기능, 코드 등의 집합체


소프트웨어 공학: 소프트웨어의 개발, 운용, 보수, 파기에 대한 체계적인 접근방법
• 소프트웨어 개발 : 문제를 해결하기 위한 목적물을 만들어 내는 과정을 총칭
• 과정(생명주기 모델) : 계획, 요구사항 분석, 설계, 구현, 시험, 유지보수
• 가치 평가 : 주요 기능, 성능 제약조건, 설계 제약조건, 인터페이스, 정보구조 등

 

 

2. 건축공학 vs 소프트웨어공학

건축공학 설계 과정과 소프트웨어공학 개발 과정은 매우 비슷하다.

 

건축공학 설계 과정

계획 - 건축물 사용자 요구사항 분석 - 건축물 설계 - 시공 - 감리 - 건축물 유지보수

 

소프트웨어 개발 과정

계획 - 분석 - 설계 - 구현 - 시험 - 유지보수

 

  • 계획 : 목표를 세우고 이를 달성하기 위해 체계적인 진행 상황 관리를
    할 수 있도록 세부 행동 방안을 마련하는 활동
  • 분석 : 요구사항의 규명, 타당성 조사, 비용과 일정에 대한 제약 설정,
    요구사항 정의, 문서화 등의 활동 (개념적 단계)
  • 설계 : 분석과정에서 모아진 요구사항을 설계도면에 옮기는 활동
    (물리적 단계 시작)
  • 구현 : 설계의 결과를 사용자가 이용할 수 있는 모습으로 변환하는 활동
  • 시험 : 개발 전 과정에 대해 체계적으로 점검할 수 있는 일련의 활동들의 집합
    (제품의 오류를 발견하고 수정하는 활동)
  • 유지보수 : 사용 중 발생하는 여러 변경 사항에 대해 적응하는 활동
    (변화에 대비하는 과정)

첫 번째 창조를 [분석], 두 번째 창조를 [개발]이라 부른다.

첫 번째 창조는 [무엇](What)을 만들 것인가를 규명하는 단계이고,

두 번째 창조는 첫 번째 창조에서 밝혀진 목표를 [어떻게](How to) 이루어 나갈지

밝히는 실천 과정이다.

 

'수업' 카테고리의 다른 글

웹 프로그래밍 - 02. HTML 폼 태그  (0) 2023.03.20
컴퓨터그래픽스 - 3. 컴퓨터 그래픽스 컬러모델  (2) 2023.03.19
모바일프로그래밍 - <간단한 숫자 계산 앱>  (0) 2023.03.14
컴퓨터그래픽스 - 2. 컴퓨터 그래픽스 하드웨어  (0) 2023.03.14
모바일프로그래밍 기초 - Android studio 활용 <간단한 주사위 게임 앱 만들기>  (0) 2023.03.14
'수업' 카테고리의 다른 글
  • 웹 프로그래밍 - 02. HTML 폼 태그
  • 컴퓨터그래픽스 - 3. 컴퓨터 그래픽스 컬러모델
  • 모바일프로그래밍 - <간단한 숫자 계산 앱>
  • 컴퓨터그래픽스 - 2. 컴퓨터 그래픽스 하드웨어
eunslog
eunslog
코딩 잘하는 개발자가 꿈입니다. 꾸준히 열심히 코딩공부를 하고 있습니다.
  • eunslog
    오늘도 코딩
    eunslog
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • 일상 (0)
      • 코딩 (31)
        • Spring (1)
        • Database (3)
        • Server (8)
        • Error (11)
        • Git (2)
        • NodeJS (0)
      • SQL (0)
      • 수업 (34)
      • IT 관련 (7)
      • 자격증 (11)
      • 멘토링 (9)
      • 그외 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github 주소
  • 공지사항

  • 인기 글

  • 태그

    AWS 서버
    멋쟁이사자처럼
    컴퓨터그래픽스
    자바 기초
    코틀린
    멋사
    자바
    웹프로그래밍
    안드로이드 스튜디오
    멋쟁이사자처럼 11기
    CSS
    모바일프로그래밍
    멋사 11기
    androidStudio
    java 기초
    Kotlin
    Android Studio
    html
    java
    안드로이드스튜디오
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
eunslog
객체지향소프트웨어공학 - 시스템공학과 소프트웨어공학
상단으로

티스토리툴바