1과목 정리

기록지·2021년 4월 7일
1

정처기

목록 보기
1/12
post-thumbnail

* 현행 시스템 파악

  • 현행시스템이 어떤 하위시스템으로 구성되어있고, 제공 기능 및 연계정보는 무엇이며 어떤 기술요소를 사용하는지 파악하는 활동

* 현행 시스템 파악 절차
구성/기능/인터페이스 파악-> 아키텍쳐 및 소프트웨어 구성 파악-> 하드웨어 및 네트워크 구성 파악

* 소프트웨어 아키텍쳐

  • 여러 가지 소프트웨어 구성요소와 그 구성요소가 가진 특성 중에서 외부에 드러나는 특성, 그리고 구성요소간의 관계를 표현하는 시스템의 구조나 구조체

* 소프트웨어 아키텍처 프레임워크 구성요소

  • 아키텍처 명세서
  • 이해관계자
  • 관심사
  • 관점

* 소프트웨어 아키텍쳐 4+1뷰

  • 고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 소프트웨어적인 접근방법->
    유스케이스 사용함.

* 운영체제의 개념

  • 컴퓨터 시스템이 제공하는 모든 하드웨어, 소프트웨어를 사용할 수 있도록 해주고, 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스를 담당하는 프로그램

* OSI 7계층 (아파서 티내다,피나다)

  • 응용계층(Application Layer) 사용자와 네트워크 간 응용서비스 연결, 데이터 생성
    프로토콜 HTTP, FTP 전송단위 데이터(DATA)
  • 표현계층(Presentation Layer) 데이터 형식 설정과 부호교환, 암/복호화 프로토콜: JPEG, MPEG 전송단위 데이터(DATA)
  • 세션계층(Session Layer) 연결 접속 및 동기제어 프로토콜: SSH, TLS 전송단위: 데이터(DATA)
  • 전송계층(Transport Layer) 신뢰성 있는 통신 보장 데이터 분할과 재조립, 흐름 제어, 오류 제어 , 혼잡 제어 등을 담당. 프로토콜: TCP, UDP 전송단위: 세그먼트(Segment)
  • 네트워크계층 단말 간 데이터 전송을 위한 최적화된 경로 프로토콜: IP,ICMP 전송단위: 패킷(Packet)
  • 물리계층(Physical Layer) 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환
    프로토콜: RS-232C 전송단위: 비트(Bit)

* DBMS(Database Management System)

  • 데이터베이스라는 데이터의 집합을 만들고, 저장 및 관리할 수 있는 기능들을 제공하는 응용프로그램
  • 중복제어, 접근 통제, 인터페이스 제공, 관계 표현, 시딩/파티셔닝/ 무결성 계약조건, 백업 및 회복

* JDBC(Java Database Connectivity)

  • 자바에서 데이터베이스를 사용할 수 있도록 연결해주는 응용 프로그램 인터페이스
  • SQL을 사용하여 DBMS에 질의하고 데이터를 조작하는 API 제공
  • ODBC(Open Database Connectivity)
  • 데이터베이스를 액세스하기 위한 표준 개방형 응용 프로그램 인터페이스
  • 미들웨어(Middleware)
  • 분산 컴퓨터 환경에서 응용 프로그램과 프로그램이 운영되는 환경 간에 원만한 통신이 이뤄질 수 있도록 제어해주는 소프트웨어
  • OS와 SW사이에 위치
  • ex) WAS

* 웹 애플리케이션 서버(WAS)

  • 웹 애플리케이션 서버는 서버계층에서 애플리케이션이 동작할 수 있는 환경을 제공하고 안정적인 트랜젝션 처리와 관리, 다른 기존 시스템과의 애플리케이션 연동을 지원하는 서버

* 요구사항

  • 문제의 해결 또는 목적 달성을 위하여 고객에 의해 요구되거나, 표준이나 명세 등을 만족하기 위하여 시스템이 가져야 하는 서비스 또는 제약사항

* 요구사항 분류

기능적 요구사항
개념: 시스템이 제공하는 기능, 서비스에 대한 요구사항
도출 방법: 특정 입력/상황에 대해 시스템이 어떻게 반응/동작해야 하는지에 대한 기술
특성: 기능성,완전성,일관성
사례: 최종주문 완료되면 배송추적 가능해야함.

비기능적 요구사항
개념: 시스템이 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약사항에 관한 요구사항
도출 방법: 품질 속성에 관련하여 시스템이 갖춰야 할 사항에 대한 기술
시스템이 준수해야 할 제약 조건에 대한 기술
특성: 신뢰성, 사용성, 효율성, 유지보수성, 이식성
사례: 특정 함수의 호출시간은 3초가 넘지 않아야 한다.

* 요구사항 개발 프로세스
1) 요구사항 도출
2) 요구사항 분석
3) 요구사항 명세
4) 요구사항 확인
* 요구사항 관리 프로세스
1) 요구사항 협상
2) 요구사항 기준선
3) 요구사항 변경 관리
4) 요구사항 확인 및 검증

* CCB(Configuration Control Board: 형상 통제 위원회)
형상 항목에 대한 형상 베이스라인이 승인된 후 발생되는 형상 항목의 변경에 대하여 평가, 조정, 승인/보류/기각을 결정하는 심의 조직

* 요구사항 분석기법

  • 요구사항 분류, 개념 모델링, 요구사항 할당, 요구사항 협상, 정형 분석

* 요구사항 확인기법

  • 요구사항 검토, 프로토타이핑, 모델 검증, 인수 테스트

* 프로토타이핑

  • 사용자가 요구한 주요 기능을 Prototype으로 구현하여, 사용자의 피드백을 통해 개선, 보완하여 완성 소프트웨어를 만들어가는 기법

* UML

  • 객체지향 소프트웨어 개발과정에서 산출물을 명세화, 시각화, 문서로 만들시 사용되는 모델링 기술과 방법론을 통합해 만든 표준화된 범용 모델링 언어
  • 요구사항 확인 프로세스
    1) 요구사항 목록 확인
    2) 요구사항 정의서 작성 여부 확인
    3) 비기능적 요구사항의 확인
    4) 타 시스템 연계 및 인터페이스 요구사항 확인

* 비용 산정 모델
: 소프트웨어 규모 파악을 통한 투입자원, 소요 시간을 파악하여 실행 가능한 계획을 수립하기 위해 비용을 산정하는 기법
하향식 산정방법: 경험 많은 전문가에게 비용산정을 의뢰하거나 여러 전문가와 조정자를 통해 산정하는 방식 EX> 전문가 판단, 델파이 기법
상향식 산정방법: 세부적인 요구사항과 기능에 따라 필요한 비용을 계산하는 방식
EX> 코드 라인 수 (Loc), Man Month, COCOMO 모형, Putam 모형, FP 모형

  • 예제
    예) Loc=500,000/한 프로그래머 한달에 25,000라인 개발 Man month는?
    -> 500,00/ 25,000 =50개월
    예) Man month가 50개월일 때 10명이 프로젝트를 수행한다면 프로젝트 총 기간은?
    ->50/10=5개월

하향식 비용산정 모델
1. 전문가 판단 - 조직내에 있는 경험이 많은 두 명 이상의 전문가에게 비용산정을 의뢰하는 기법
2. 델파이 기법 - 전문가의 경험적 지식을 통한 문제해결 및 미래 예측을 위한 기법

상향식 비용산정 모델
1. Lco - 소프트웨어 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용 산정 -> 이해 쉽고 측정 쉬움
2. Man Month - 한사람이 1개월동안 할 수 있는 양을 기준으로 프로젝트 비용을 산정하는 기법
3. COCOMO - Constructive cost Model 약자로 보헴이 제안, 프로그램 규모에 따라 비용을 산정, 개발 노력 승수를 결정

0개의 댓글