설계문서 작성
(Design Process, Block Diagram, Class Diagram,
Sequence Diagram, State Transition Diagram, Pseudo Code) 2014-1 프로그래밍언어
2014. 6. 9.
교수 김 영 탁
영남대학교 공과대학 정보통신공학과
(Tel : +82-53-810-2497; Fax : +82-53-810-4742
http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr)
목 차
종합적인 시스템 개발 단계
소프트웨어 개발 절차 및 단계
프로젝트 제안서 (Proposal) 작성
설계 문서 (Design Document) 작성
z Block Diagram z Class Diagram
z Sequence Diagram
z Status Transition Diagram z Pseudo Code
설계문서 양식
종합적인 시스템 개발 단계 (1)
설계 목표 설정
z 개발 대상 기술 (시스템)의 필요성 및 중요성
필요성과 중요성이 인정되는 기술을 개발해야 연구비 지원을 받을 수 있다.
Do not reinvent the wheel !
z 개발 대상 기술 (시스템)의 성능 목표 설정
기존 시스템과의 성능 비교
관련 자료 수집 및 상세 분석
z 관련 연구 자료 분석: 논문, 특허, 등록된 소프트웨어 z 기존 상용 시스템 성능 분석
목표 시스템의 구체적 개선 사항, 성능목표
z 기존 시스템에 비교하여, 어떤 점이 향상되나 ?
예: 1 Gbps급 패킷 분석 장치를 개선하여 10 Gbps급 패킷 분석이 가능하게 함
z 기능 및 성능이 추가된 사항 z 기존 시스템의 생산 기술 개선
예: 기존 범용 CPU와 peripheral 하드웨어 모듈로 구현되었던 기능모듈을
성능 향상된 임베디드 프로세서 및 소프트웨어로 구현함으로써 생산 및
관리 비용 감소
종합적인 시스템 개발 단계 (2)
설계 방법 결정
z 시스템 설계에서 사용할 tool
z UML (Unified Modeling Language) in object-oriented software design
Class Diagram
Sequence Diagram
Usage Diagram
z VHDL in hardware design
z Logic circuit design: MAX-Plus II, LogicWorks z Simulation tool: ns-2, OPnet
구현 방법 결정
z 하드웨어 플랫폼 규격: CPU or embedded processor, Memory (cache, main, flash) size, system bus (8, 16, 32, 64, 128 bits), I/O devices z 소프트웨어 플랫폼 규격: 운영체제 (OS), System library
z Programming Language: C, C++, Java, C++.Net
종합적인 시스템 개발 단계 (3)
성능 시험 방법
z 개발된 시스템의 성능 시험 절차 z 성능 시험을 위한 측정 장치
z 목표 시스템 성능 시험 범위 및 규격
시스템 종합 분석
z 당초 설계목표를 달성하였는가 ?
z 시스템 설계 및 개발에서 개선되어야 하는 사항은 ?
z 실제 상용화 및 양산 단계를 고려할 때 개선되어야 하는 사항은 ?
설계 목표 설정
시스템 설계 목표
z 왜 이 정보통신시스템 (또는 기능 모듈)이 필요한가 ? z 설계하고자 하는 시스템의 기능이 무엇인가 ?
z 설계하고자 하는 시스템의 성능 목표값은 ?
z 기존 유사 시스템과의 차이점은 ?
프로젝트 제안서 (Project Proposal) 작성
프로젝트 제안서 (Project Proposal)
1. 개발 기술의 필요성 및 중요성 (Motivations)
2. 개발 기술 관련 현황 (Brief introduction of Related Work)
설계하고자 하는 시스템과 유사한 상용 시스템, 연구결과, 관련 논문, 관련 특허 등
Limitations, shortcomings of related (current) work
3. 본 연구개발에서 제안하는 주요 내용 (Proposals)
Brief introduction of the target improvements of the proposal
기능 블록도 (Functional Block Diagram)
4. 시스템 설계 방법
사용 예정 tool
Simulation tool
5. 시스템 구현 방법
Hardware spec: CPU, memory size
Software platform: operating system, file systems
Programming language, library
6. 일정계획
7. 참고문헌 (References)
시스템 설계, 구현 및 시험 절차
Requirements specification
Architectural
design Abstract
design Interface
design Component design
Data structure
design
Algorithm design
System
architecture Software
specification Interface
specification Component specification
structureData specification
Algorithm specification
Design Products Design activities
Design process
Debugging and Testing
Water Fall 모델
Locate
error Design error
repair Implementation error repair
Re-test unit/module/
system
testingUnit
Module testing
Sub-system testing
System testing
Acceptance testing Component
testing
Integration testing
Testing and Integration Phases
Requirements
specification System
specification System
Design Detailed
Design
Module/Unit implementation
and test Acceptance
test plan
System integration
test plan
Sub-system integration
test plan
Service Acceptance test
System integration
test
Sub-system integration
test