본문 바로가기

전체 글

(374)
소프트웨어 설계 - 주요 UML 다이어그램 1. 유스케이스(Use Case) 다이어그램유스케이스 다이어그램은 개발될 시스템과 관련된 외부 요소들, 즉 사용자와 다른 외부 시스템들이 개발될 시스템을 이용해 수행할 수 있는 기능을 사용자의 관점(View)에서 표현한 것이다.외부 요소와 시스템 간의 상호 작용을 확인할 수 있다.사용자의 요구사항을 분석하귀 위한 도구로 사용된다.시스템의 범위를 파악할 수 있다.유스케이스 다이어그램의 구성 요소유스케이스 다이어그램은 시스템 범위, 액터, 유스케이스, 관계로 구성된다.시스템(System) /시스템 범위(System Scope)• 시스템 내부에서 수행되는 기능들을 외부 시스템과 구분하기 위해 시스템 내부의 유스케이스들을 사각형으로 묶어 시스템의 범위를 표현함액터(Actor)• 시스템과 상호 작용을 하는 모든 ..
소프트웨어 설계 - UML(Unified Modeling Language) 1. UML(Unified Modeling Language)의 개요UML은 시스템 분석, 설계, 구현 등 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호간의 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어이다.UML은 Rumbaugh(OMT), Booch, Jacobson 등이 객체지향 방법론의 장점을 통합하였으며, 객체 기술에 관한 국제 표준화기구인 OMG(Object Management Group)에서. 표전으로 지정하였다.UML을 이용하여 시스템의 구조를 표현하는 6개의 구조 다이어그램과 시스템의 동작을 표현하는 7개의 행위 다이어그램을 작성할 수 있다.각각의 다이어그램은 사물과 사물 간의 관계를 용도에 맞게 표현한다.UML 의 구성 요소에는 사물(Things),..
소프트웨어 설계 - 요구사항 분석 CASE와 HIPO 1. 요구사항 분석을 위한 CASE(자동화 도구)요구사항 분석을 위한 자동화 도구는 요구사항을 자동으로 분석하고, 요구사항 분석 명세서를 기술하도록 개발된 도구를 의미한다.요구사항 분석을 위한 자동화 도구 사용의 이점은 다음과 같다.      - 표준화와 보고를 통한 문서화 품질 개전      - 데이터베이스가 모두에게 이용 가능하다는 점애서 분석자들 간의 적절한 조정      - 교차 참조도와 보고서를 통한 결함, 생략, 불일치 등의 발견 옹이성      - 명세에 대한 유지보수 비용의 축소 종류요구사항 분석을 위한 자동화 도구에는 SADT, SREM, PSL/PSA, TAGS, EPOS 등이 있다.SADT(Structured Analysis and Design Technique)      - Soft..
소프트웨어 설계 - 요구사항 분석 1. 요구사항 분석의 개요요구사항 분석은 소프트웨어 개발의 실제적인 첫 단계로 개발 대상에 대한 사용자의 요구 사항을 이해하고 문서화(명세화)하는 활동을 의미한다.사용자 요구의 타당성을 조사하고 비용과 일정에 대한 제약을 설정한다.사용자의 요구를 정확하게 추출하여 목표를 정하고, 어떤 방식으로 해결할 것인지를 결정한다.요구사항 분석을 통한 결과는 소프트웨어 설계 단계에서 필요한 기본적인 자료가 되므로 사용자의 요구사항을 정확하고 일관성 있게 분석하여 문서화해야 한다.소프트웨어 분석가에 의해 요구사항 분석이 수행되며, 이 작업 단계를 요구사항 분석 단계라고 한다.요구사항 분석을 위해 UML(Unified Modeling Language), 자료 흐름도(DFD), 자료 사전(DD), 소단위 명세서(Mini-..
소프트웨어 설계 - 요구사항 정의 1. 요구사항의 개념 및 특징요구사항은 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약조건 등을 나타낸다.요구사항은 소프트웨어 개발이나 유지 보수 과정에서 필요한 기준과 근거를 제공한다.요구사항은 개발하려는 소프트웨어의 의사소통을 원활하게 하는 데 도움을 준다.요구사항이 제대로 정의되어야만 이를 토대로 이후 과정의 목표와 계획을 수립할 수 있다.  2. 요구사항의 유형요구사항은 일반적을 기술하는 내용에 따라 기능 요구사항(Funcational requirements)과 비기능 요구사항(Non-Funcational requirements)으로 구분하여 기술 관점과 대상의 범위에 따라 시스템 요구사항(System requirements)과 사용자 요구사..
소프트웨어 설계 - 개발 기술 환경 파악 1. 개발 기술 환경의 정의개발하고자 하는 소프트웨어와 관련된 운영체제(Operating System), 데이터베이스 관리 시스템(Database Management System), 미들웨어(Middle Ware) 등을 선정할 때 고려해야 할 사항을 기술하고, 오픈 소스 사용시 주의해야 할 내용을 제시한다.  2. 운영체제(OS, Operating System)운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨이이다.컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다.컴퓨터 운영체제의 종류에는 Windows, UN..
소프트웨어 설계 - 현행 시스템 파악 1. 현행 시스템 파악 절차새로 개발하려는 시스템의 개발 범위를 명확히 설정하기 위해 현행 시스템의 구성과 제공 기능, 시스템 간의 전달 정보, 사용되는 기술 요소, 스프트웨어, 하드웨어, 그리고 네트워크의 구성 등을 파악한다. [1단계]- 시스템 구성 파악- 시스템 기능 파악- 시스템 인터페이스 파악 [2단계]- 아키텍처 구성 파악- 소프트웨어 구성 파악 [3단계]- 하드웨어 구성 파악- 네트워크 구성 파악   2. 시스템 구성 파악현행 시스템의 구성은 조직의 주요 업무를 담당하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 기술한다.조식 내에 있는 모든 정보시스템의 현황을 파악할 수 있도록 각 업무에 속하는 단위 업무 정보시스템들의 명칭, 주요 기능들을 명시한다.금융기관의 여신관리 업무와 고객관리..
소프트웨어 설계 - XP(eXtreme Programming) 기법 1. XP(eXtreme Programming)XP(eXtreme Programming)는 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상시키는 방법이다.XP는 짧고 반복적인 개발 주기, 단순한 설계, 고객의 적극적인 참여를 통해 소프트웨어를 빠르게 개발하는 것을 목적으로 한다.릴리즈의 기간을 짧게 반복하면서 고객의 요구사항 반영에 대한 가시성을 높인다.릴리즈. 테스트마다 고객을 직접 참여시킴으로써 요구한 기능이 제대로 작동하는지 고객이 직접 확인할 수 있다.비교적 소규모 인원의 개발 프로젝트에 효과적이다.XP의 5가지 핵심 가치: 의사소통(Communication), 단순성(Simplicity), 용기(Courage), 존중(Re..

728x90