반응형

정처기(시나공) 10

Section 010. 주요 UML 다이어그램

유스케이스 다이어그램 : 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수행할 수 있는 기능을 사용자의 관점에서 표현 구성 요소 기능 시스템 / 시스템 범위 시스템 내부의 유스케이스들을 사각형으로 묶어 시스템의 범위 표현 액터 사람이나 외부 시스템 의미 유스케이스 시스템이 액터에게 제공하는 서비스 / 기능 표현 관계 액터와 유스케이스, 유스케이스와 유스케이스 사이에서 나타남 → 포함 관계, 확장 관계, 일반화 관계 클래스 다이어그램 : 시스템을 구성하는 클래스, 클래스의 특성인 속성과 오퍼레이션, 속성과 오퍼레이션에 대한 제약조건, 클래스 사이의 관계 표현 ▶ 시스템을 구성하는 요소에 대해 이해 ▶ 시스템 구성 요소 문서화에 사용 구성 요소 기능 클래스 - 각각의 객체들이 갖는 속성과 오퍼레이션 ..

Section 009. UML(Unified Modeling Language)

UML : 상호간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어 ▶ 시스템의 구조를 표현하는 6개의 구조 다이어그램 + 시스템의 동작을 표현하는 7개의 행위 다이어그램 작성 가능 사물 : 개체를 컴퓨터 내부에 추상적으로 표현한 것 ▶ 구조 사물, 행동 사물, 그룹 사물, 주해 사물 관계 연관 관계 : 2개 이상의 사물이 서로 관련되어 있음 다중도 의미 1 1개의 객체가 연관됨 n n개의 객체가 연관됨 0..1 연관된 객체가 없거나 1개 존재 0..* 또는 * 연관된 객체가 없거나 다수 존재 1..* 연관된 객체가 적어도 1개 이상 존재 n..* 연관된 객체가 적어도 n개 이상 존재 n..m 연관된 객체가 최소 n개에서 최대 m개 존재 집합 관계 : 하나의 사물이 다른 사물에 포..

Section 008. 요구사항 분석 CASE와 HIPO

요구사항 분석을 위한 CASE(자동화 도구) : 요구사항을 자동으로 분석 / 요구사항 분석 명세서 기술하도록 개발된 도구 SADT ▶ SoftTech 사에서 개발 ▶ 시스템 정의, 소프트웨어 요구사항 분석, 시스템/소프트웨어 설계를 위해 널리 이용 ▶ 블록 다이어그램 채택 SREM ▶ TRW 사가 실시간 처리 소프트웨어 시스템에서 요구사항을 기술하도록 개발 ▶ RSL과 REVS 사용 RSL : 요소, 속성, 관계, 구조들을 기술하는 요구사항 기술 언어 REVS : RSL로 기술된 요구사항들을 자동으로 분석해 명세서를 출력하는 요구사항 분석기 PSL / PSA ▶ 미시간 대학에서 개발 ▶ PSL : 문제 기술 언어 ▶ PSA : PSL로 기술한 요구사항을 자동으로 분석해 다양한 보고서를 출력하는 문제 분석..

Section 007. 요구사항 분석

구조적 분석 기법 : 자료의 흐름과 처리를 중심으로 하는 요구사항 분석 방법 ▶ 도형 중심의 분석용 도구와 분석 절차 이용 ▶ 하향식 방법을 사용해 시스템 세분화 ▶ 자료 흐름도, 자료 사전, 소단위 명세서, 개체 관계도, 상태 전이도, 제어 명세서 등의 도구를 이용해 모델링 자료 흐름도 : 요구사항 분석에서 자료의 흐름 및 변환 과정과 기능을 도형 중심으로 기술하는 방법 ( 시간의 흐름이 아님을 주의 ) = 버블 차트 ▶ 시스템 안의 프로세스와 자료 저장소 사이에 자료의 흐름을 나타내는 그래프 ▶ 자료 흐름과 처리를 중심으로 하는 구조적 분석 기법 ▶ 처리를 거쳐 변환될 때마다 새로운 이름이 부여됨 ▶ 처리는 입력 자료가 발생하면 기능 수행 후 출력 자료를 산출함 기호 의미 프로세스 - 자료를 변환시키..

Section 006. 요구사항 정의

요구사항 : 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약조건 등을 나타냄 기능 요구사항 ▶ 시스템 기능에 대한 사항 ▶ 시스템이 반드시 수행해야 하는 기능 ▶ 시스템이 어떤 데이터를 저장하거나 연산을 수행해야 하는지에 대한 사항 비기능 요구사항 ex 1. 병원 진료 관리 시스템 - 시스템 장애로 인한 정지 시간이 한 달에 1시간을 넘어서는 안 된다. ex 2. 호텔 예약 시스템 - 해외 분점 호텔의 고객 정보까지 관리하기 위해 시스템을 확장할 수 있도록 설계해야 된다. ▶ 시스템 장비 구성 요구사항 ▶ 성능 요구사항 ▶ 인터페이스 요구사항 ▶ 데이터 요구사항 ▶ 테스트 요구사항 ▶ 보안 요구사항 ▶ 품질 요구사항 ▶ 제약사항 ▶ 프로젝트 관리 요구사항 ▶ 프로젝트 지원 요구사항 사용자 요구사항..

Section 005. 개발 기술 환경 파악

운영체제 : 컴퓨터 시스템의 자원들을 효율적으로 관리 ▶ 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어 ▶ Windows, UNIX, Linux, Mac OS, iOS, Android # 운영체제 관련 요구사항 식별 시 고려사항 : 가용성, 성능, 기술 지원, 주변 기기, 구축 비용 데이터베이스 관리 시스템 : 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보 생성, 데이터베이스 관리해 주는 소프트웨어 ▶ Oracle, IBM DB2, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis # 운영체제 관련 요구사항 식별 시 고려사항 : 가용성, 성능, 기술 지원, 상호 호환성, 구축 비용 웹 애플리케이션 서버 : 정적인 콘..

Section 004. 현행 시스템 파악

현행 시스템 파악 절차 1단계 : 시스템 구성 파악 ▶ 조직의 주요 업무를 담당하는 기간 업무와 지원 업무로 구분하여 기술 : 시스템 기능 파악 ▶ 단위 업무 시스템이 현재 제공하는 기능들을 주요 기능과 하부 기능, 세부 기능으로 구분하여 계층형으로 표시 : 시스템 인터페이스 파악 ▶ 단위 업무 시스템 간에 주고받는 데이터 종류, 형식, 포로토콜, 연계 유형, 주기 등을 명시 2단계 : 아키테처 구성 파악 ▶ 기간 업무 수행에 어떠한 기술 요소들이 사용되는지 최상위 수준에서 계층별로 표현한 아키텍처 구성도로 작성 : 소프트에워 구성 파악 ▶ 단위 업무 시스템별로 업무 처리를 위해 설치되어 있는 소프트웨어들의 제품명, 용도, 라이선스 적용 방식, 라이선스 수 등 명시 3단계 : 하드웨어 구성 파악 ▶ 단위..

Section 003. XP(eXtreme Programming) 기법

XP(eXtreme Programming) : 일부 요구사항이 적용된 기능이 완성될 때마다 고객에게 보여주고 반응을 확인하는 과정을 최종 제품이 완성될 때까지 지속적으로 반복 ▶ 릴리즈의 기간을 짧게 반복하면서 고객의 요구사항 반영에 대한 가시성을 높임 ▶ 5가지 핵심 가치 : 의사소통, 단순성, 용기, 존중, 피드백 # XP 개발 프로세스 사용자 스토리 : 고객의 요구사항을 간단한 시나리오로 표현 ▶ 기능 단위 구성 릴리즈 계획 수립 : 부분 / 전체 개발 완료 시점에 대한 일정 수립 스파이크 : 요구사항의 신뢰성을 높이고 기술 문제에 대한 위험을 감소시키기 위해 별도로 만드는 간단한 프로그램 이터레이션 : 하나의 릴리즈를 더 세분화 한 단위 승인 검사 : 릴리즈 단위의 부분 완료 제품이 구현되면 수행..

Section 002. 스크럼(Scrum) 기법

스크럼 : 팀이 중심이 되어 개발의 효율성을 높임 제품 책임자 : 이해관계자들 중 개발될 제품에 대한 이해도가 높고, 요구사항을 책임지고 의사 결정할 사람으로 선정 ▶ 요구사항이 담긴 백로그 작성 / 우선순위 지정 ▶ 팀원들이 백로그에 스토리를 추가할 수는 있지만 우선순위는 지정할 수 없음 ▶ 주기적으로 요구사항의 우선순위 갱신 스크럼 마스터 : 스크럼 팀이 스크럼을 잘 수행할 수 있도록 객관적인 시각에서 조언하는 가이드 역할 ▶ 일일 스크럼 회의 주관 개발팀 : 제품 책임자와 스크럼 마스터를 제외한 모든 팀원 ▶ 개발자 외에도 디자이너, 테스터 등이 대상 # 스크럼 개발 프로세스 제품 백로그 : 제품 개발에 필요한 요구사항을 우선순위에 따라 나열 ▶ 지속적으로 업데이트됨 ▶ 백로그에 작성된 사용자 스토..

Section 001. 소프트웨어 생명 주기

소프트웨어 공학의 기본 원칙 품질 높은 소프트웨어 상품 개발 지속적인 검증 시행 결과에 대한 명확한 기록 유지 소프트웨어 생명 주기 ( = 소프트웨어 프로세스 모형 / 소프트웨어 공학 패러다임 ) : 소프트웨어를 개발하기 위해 정의하고 운용, 유지보수 등의 과정을 단계별로 나눈 것 폭포수 모형 : 한 단계가 완전히 끝나야만 다음 단계로 넘어가는 개발 방법론 ▶ 고전적 생명 주기 모형 ▶ 선형 순차적 모형 ▶ 단계적 정의와 산출물이 명확함 프로토타입 모형 : 사용자의 요구사항을 정확히 파악하기 위해 실제 개발될 소프트웨어에 대한 견본품을 만들어 최종 결과물을 예측하는 모형 ▶ 원형 모형 나선형 모형 : 폭포수 모형과 프로토타입 모형의 장점에 위험 분석 기능을 추가한 모형 ▶ 점진적 모형 ▶ 위험 관리가 중..

반응형