[SW이론] 공학 개념

Kimseongeun·2022년 6월 3일
1

소프트웨어 공학

목록 보기
1/8
post-thumbnail
  • 공학이란 무엇인가? 세상에 있는 모든 것들을 어떻게 다 표현하고 체계화할 수 있을까? → 학문의 체계 학문 체계는 누가 확립했나? : 아리스토텔레스가 확립 (존재론(ontology)- 객체, 속성, 관계(클래스와 비슷한 개념)/분류 - 종/속/과/목/강/문/계 ) → 공학은 이런 체계를 따르고 있음
  • 스토리텔링
    • 프로세스 → 탐색, 분류, 다듬기, 보여주기, 공유하기
  • 유즈케이스 : 시스템의 동작을 사용자 입장에서 표현한 시나리오 시스템에 관련한 요구사항을 알아내는 과정을 말한다. 사용자와 사용을 분석하는 사람들이 쓰는 사용방법을 결정하는데 도움을 준다. 개발하는 입장보다는 사용자의 입장에 더 중점을 두는 과정
  • End-to-End 상의 IoT 보안지점 보안적으로 위협이 올 것같은 지점을 설계해서 그 부분의 보안을 강화시키는 쪽으로..
  • 공학이란 무엇인가?

    “삶은 짧고 예술은 길다.” - 히포크라테스

    공식적인 의미 : 과학적인 원칙들을 설계하는 것, 과학은 개념으로 두고 그걸 기반으로 어떤 도구를 활용해서 목표를 구현해내는 것이 “공학”이다. - 창조적인 활동들을 응용하는 것 공학이란? → 좋은 물건(재미, 감동, 쓸모)을 효율적으로 만드는 것
    • 스티브잡스 예술과 과학이 별개라고 생각하지 않는다. 최고의 인재들은 나무의 한쪽 가지만 보지 않는다. 제품의 본질에 완벽하게 통달해야한다. 기술과 휴머니티가 애플 회사의 메인 글귀
  • 공학적 과정
    문제제기(아이디어) → 개념설계 → 분석(문제) → 설계(해결책) → 구현 → 검증 → 출시 → 보수유지(AS)
  • SW공학이란?
    • SW 본질(공통의, 특정한 틀을 가지고 있지 않음 - 소프트웨어 형태가 정해져있지않다.)
      • SW가 완성되기까지 왜 그렇게 많은 시간이 필요한가
      • SW개발 비용이 왜 그렇게 많이 드나?
      • SW를 고객에게 전달하기 전에 왜 몬든 에러를 조치하지 못하는가?
      • 개발된 프로그램을 유지보수 하는데 왜 그렇게 많은 시간과 노력이 필요한가
      • SW를 개발하고 유지보수 할 때 진척 정도를 측정하는 것이 왜 어려운가
  • SW 정의 프로그램 문서 데이터를 중심으로 구성되는 집합이나 객체를 말한다.
  • SW특성
    • 무형성(비가시성) : 완제품의 구조가 코드 안에 숨어있음

    • 동적행위성 : 하드웨어 상에서 작동

    • 상품성 : 사용자가 구매의사에 따라 살 수 있음

    • 견고성 : 구조변경이나 수정이 용이하지 않다. / 일부 수정으로 SW에 영향을 줌

    • 비마모성 : 닳거나 소명되지 않음→ 그대로임 → 복제성..?

    • 비제조성 : 제조가 아니라 개발됨 하드웨워랑 같지 않음

    • 비과학성 : 개발자체는 과학적이지 않고, 조직, 인력, 시간 등이 중심임.

    • 복잡성 : 개발과정이 복잡하고 표준화 되어있지 않아서 이해와 관리가 어려움

    • 순응성 : 사용자의 요구나 환경변화에 적절히 변경할 수 있음

      → 소멸되지 않기때문에 처음에 잘 설계를 해야 함

  • HW 고장률 곡성 - 욕조 커브
  • SW 고장률 곡선
  • SW공학이란? 순수한 공학적 원칙을 정해주는 것 → 체계적인, 방법, 정리를 한 후 실질적으로 나타낼 수 있는 것 → 수치적인 것으로 나타낼 수 있는 것 → 기능성 점수 몇 점 이런 식으로
  • SW 공학 - 단계별 접근

    도구 - 방법론 - 프로세스 - 품질 - 휴먼 (가장 중요한 단계가 프로세스)

    가장 중요한 것은 이 과정을 통해서 결국에는 인간에게 이롭고 감동적이어야한다는 것이다.
profile
김성은입니다.

0개의 댓글