목차
목차
시스템 정의서6
1. 시스템 정의의 요약6
2. 문제의 기술6
3. 시스템 및 프로젝트의 목표6
4. 제약 사항6
5. 제공해야 할 기능6
6. 사용자의 특성6
7. 개발, 운영, 유지보수 환경6
8. 추진 전략7
* 부록, 용어 해설7
프로젝트계획서9
1. 개요9
1.1 프로젝트 개요9
1.2 프로젝트 산출물9
1.3 용어 정의 및 약어9
2. 자원 및 일정 예측10
2.1 자원(인력, 비용)10
2.2 프로젝트 일정 계획10
3. 조직 구성 및 인력 배치11
3.1 조직 구성11
3.2 인력 배치11
4. 작업 분해12
4.1 작업 분류 구조(WBS)12
4.2 CPM 네트워크12
4.3 시스템 배경도14
5. 개발 환경14
6.성능 시험 방법15
7. 참고 자료15
설계 사양서16
1. 개요16
1.1 시스템 목표16
1.2 하드웨어, 소프트웨어, 사용자 인터페이스16
1.3 주요 제약 사항16
2. 시스템의 제공 기능17
3. 시스템의 업무, 자료 흐름도17
3.1 자료 구조 설계17
3.2 업무 흐름도 (배경도, 전체 레벨0)17
3.3 자료 흐름도(전체 레벨1)19
3.4 자료 흐름도(레벨2)20
3.5 자료 흐름도(레벨3)21
3.6 구조도23
4. 자료 사전의 정의24
5. 시스템 입출력 설계24
6. 부서별 코드 정의25
7. 시스템의 기능 설계25
8. 모듈 명세서27
9. 프로그램 작성 지침31
10. 시험 계획32
11. 예외 조건32
프로젝트 개발 완료 보고서33
1. 개요33
2. 결과33
2.1 단계별 현황33
2.2 결과34
2.3 프로그램 소개35
2.4 Source Code 내역36
2.5 생산성 평가39
2.6 프로젝트 비용 산정39
2.7 프로젝트 개발 환경39
3. 관심 분야39
4. 습득한 기술39
시스템 정의서6
1. 시스템 정의의 요약6
2. 문제의 기술6
3. 시스템 및 프로젝트의 목표6
4. 제약 사항6
5. 제공해야 할 기능6
6. 사용자의 특성6
7. 개발, 운영, 유지보수 환경6
8. 추진 전략7
* 부록, 용어 해설7
프로젝트계획서9
1. 개요9
1.1 프로젝트 개요9
1.2 프로젝트 산출물9
1.3 용어 정의 및 약어9
2. 자원 및 일정 예측10
2.1 자원(인력, 비용)10
2.2 프로젝트 일정 계획10
3. 조직 구성 및 인력 배치11
3.1 조직 구성11
3.2 인력 배치11
4. 작업 분해12
4.1 작업 분류 구조(WBS)12
4.2 CPM 네트워크12
4.3 시스템 배경도14
5. 개발 환경14
6.성능 시험 방법15
7. 참고 자료15
설계 사양서16
1. 개요16
1.1 시스템 목표16
1.2 하드웨어, 소프트웨어, 사용자 인터페이스16
1.3 주요 제약 사항16
2. 시스템의 제공 기능17
3. 시스템의 업무, 자료 흐름도17
3.1 자료 구조 설계17
3.2 업무 흐름도 (배경도, 전체 레벨0)17
3.3 자료 흐름도(전체 레벨1)19
3.4 자료 흐름도(레벨2)20
3.5 자료 흐름도(레벨3)21
3.6 구조도23
4. 자료 사전의 정의24
5. 시스템 입출력 설계24
6. 부서별 코드 정의25
7. 시스템의 기능 설계25
8. 모듈 명세서27
9. 프로그램 작성 지침31
10. 시험 계획32
11. 예외 조건32
프로젝트 개발 완료 보고서33
1. 개요33
2. 결과33
2.1 단계별 현황33
2.2 결과34
2.3 프로그램 소개35
2.4 Source Code 내역36
2.5 생산성 평가39
2.6 프로젝트 비용 산정39
2.7 프로젝트 개발 환경39
3. 관심 분야39
4. 습득한 기술39
본문내용
의 컨트롤 목적인 MCU를 통하여 자동차와 연결하고 프로그래밍 과정 을 거침.
- 부분적인 테스트 과정을 거친 후 시리얼 프로그램을 이용하여 PDA와 MCU를 연결 하고 프로그래밍 테스트 실시.
- 현재 본 프로젝트에 대한 문제는 없으며, 프로젝트 발표일에 맞춰 구현할 예정.
2.3 프로그램 소개
- GUI 구성
- Open Port
- Close Port
2.4 Source Code 내역
// 명령 처리하는 함수
BOOL CALLBACK MonDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM lp)
{
hTermWnd=hDlg;
switch (msg) {
case WM_COMMAND:
switch (LOWORD(wp))
{
case IDC_BUTTON_OPEN:
OpenComPort();
return true;
~
case IDC_BUTTON_STOP:
WriteCommBlock("H", 1);
return true;
}
EndDialog(hDlg, IDOK);
return FALSE;
}
return FALSE;
}
BOOL OpenComPort() // 포트를 열어주는 함수
{
unsigned shortszPort[15];
BOOLfRetVal;
COMMTIMEOUTSCommTimeOuts;
// COMM device를 화일형식으로 연결
SetComPort(1, 19200, 8, 0, 0);
idComDev =
CreateFile(szPort,// LPCTSTR lpFileName,
GENERIC_READ|GENERIC_WRITE,// DWORD dwDesiredAccess,
0,// DWORD dwShareMode,
NULL,// LPSECURITY_ATTRIBUTES lpSecurityAttributes,
OPEN_EXISTING,// DWORD dwCreationDispostion,
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,//DWORD dwFlagsAndAttributes,
0);// HANDLE hTemplateFile
//컴포트에서 데이타를 교환하는 방법을 char단위를 기본으로 설정
SetCommMask( idComDev, EV_RXCHAR ) ;
SetupComm( idComDev, 4096, 4096 ) ;
PurgeComm( idComDev, PURGE_TXABORT | PURGE_RXABORT |
PURGE_TXCLEAR | PURGE_RXCLEAR ) ;
CommTimeOuts.ReadIntervalTimeout = 0xFFFFFFFF ;
CommTimeOuts.ReadTotalTimeoutMultiplier = 0 ;
CommTimeOuts.ReadTotalTimeoutConstant = 1000 ;
CommTimeOuts.WriteTotalTimeoutMultiplier = 0 ;
CommTimeOuts.WriteTotalTimeoutConstant = 1000 ;
SetCommTimeouts( idComDev, &CommTimeOuts ) ;
fRetVal = SetupConnection() ;
fConnected=TRUE;
//MessageBox(m_hwnd, "Connect!", "Error", MB_OK);
//CloseHandle(idComDev);
return (fRetVal);
}
BOOL SetupConnection() // 커넥트하는 함수
{
BOOL fRetVal ;
DCB dcb ;
dcb.DCBlength = sizeof( DCB ) ;
GetCommState( idComDev, &dcb ) ;//dcb의 기본값을 받는다.
dcb.BaudRate = dwBaudRate;//전송속도
dcb.ByteSize = bByteSize ;//데이타비트
dcb.Parity = bParity;//패리티 체크
dcb.StopBits = bStopBits;//스톱비튼
dcb.fOutxDsrFlow =0 ;//Dsr Flow
dcb.fDtrControl = DTR_CONTROL_ENABLE ;//Dtr Control
dcb.fOutxCtsFlow = 0 ;//Cts Flow
dcb.fRtsControl = RTS_CONTROL_ENABLE ; //Ctr Control
dcb.fInX = dcb.fOutX = 1 ; //XON/XOFF 관한것
dcb.XonChar = ASCII_XON ;
dcb.XoffChar = ASCII_XOFF ;
dcb.XonLim = 100 ;
dcb.XoffLim = 100 ;
dcb.fBinary = TRUE ;
dcb.fParity = TRUE ;
dcb.fBinary = TRUE ;
dcb.fParity = TRUE ;
fRetVal = SetCommState( idComDev, &dcb ) ; //변경된 Dcb 설정
return ( fRetVal ) ;
}
2.5 생산성 평가
- 개발 기간, 개발 비용 및 프로젝트의 목적에 맞추어 볼 때 2개월의 개발 기간과 적은 예산으로 과제용 프로젝트이므로 질적인 면에서나 양적인 면에서 생산성은 거의 없음.
2.6프로젝트 비용산정
- 기본형 COCOMO 방법 (PM: Person/Months, KDSI: 원시 명령어의 수)
Organic Project : PM = 2.4 * (KDSI) ** 1.05
3.673 = 2.4 * (1.5) ** 1.05
3.742 = 3.673 * 1.019 = 약 4(Person/Months)
- 개발 소요 기간
TDET = 2.5 * 4(PM) * 0.32 = 3.2 = 약 3개월
- 프로젝트 요원의 총 비용
4(PM) * 300,000원/월 = 1,200,000원
2.7 프로젝트 개발환경
- OS: Windows XP, Win CE
- Platform: Visual Studio 6.0, Embedded Visual C 4.0
- ETC: RC 카, RC 리모트 컨트롤러, PDA, 시리얼 모듈
3.관심분야
- C language, 시리얼 통신, 웹 프로그래밍
4.습득한 기술
- Embedded Visual C, C, 시리얼 통신, 웹 프로그래밍
- 부분적인 테스트 과정을 거친 후 시리얼 프로그램을 이용하여 PDA와 MCU를 연결 하고 프로그래밍 테스트 실시.
- 현재 본 프로젝트에 대한 문제는 없으며, 프로젝트 발표일에 맞춰 구현할 예정.
2.3 프로그램 소개
- GUI 구성
- Open Port
- Close Port
2.4 Source Code 내역
// 명령 처리하는 함수
BOOL CALLBACK MonDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM lp)
{
hTermWnd=hDlg;
switch (msg) {
case WM_COMMAND:
switch (LOWORD(wp))
{
case IDC_BUTTON_OPEN:
OpenComPort();
return true;
~
case IDC_BUTTON_STOP:
WriteCommBlock("H", 1);
return true;
}
EndDialog(hDlg, IDOK);
return FALSE;
}
return FALSE;
}
BOOL OpenComPort() // 포트를 열어주는 함수
{
unsigned shortszPort[15];
BOOLfRetVal;
COMMTIMEOUTSCommTimeOuts;
// COMM device를 화일형식으로 연결
SetComPort(1, 19200, 8, 0, 0);
idComDev =
CreateFile(szPort,// LPCTSTR lpFileName,
GENERIC_READ|GENERIC_WRITE,// DWORD dwDesiredAccess,
0,// DWORD dwShareMode,
NULL,// LPSECURITY_ATTRIBUTES lpSecurityAttributes,
OPEN_EXISTING,// DWORD dwCreationDispostion,
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,//DWORD dwFlagsAndAttributes,
0);// HANDLE hTemplateFile
//컴포트에서 데이타를 교환하는 방법을 char단위를 기본으로 설정
SetCommMask( idComDev, EV_RXCHAR ) ;
SetupComm( idComDev, 4096, 4096 ) ;
PurgeComm( idComDev, PURGE_TXABORT | PURGE_RXABORT |
PURGE_TXCLEAR | PURGE_RXCLEAR ) ;
CommTimeOuts.ReadIntervalTimeout = 0xFFFFFFFF ;
CommTimeOuts.ReadTotalTimeoutMultiplier = 0 ;
CommTimeOuts.ReadTotalTimeoutConstant = 1000 ;
CommTimeOuts.WriteTotalTimeoutMultiplier = 0 ;
CommTimeOuts.WriteTotalTimeoutConstant = 1000 ;
SetCommTimeouts( idComDev, &CommTimeOuts ) ;
fRetVal = SetupConnection() ;
fConnected=TRUE;
//MessageBox(m_hwnd, "Connect!", "Error", MB_OK);
//CloseHandle(idComDev);
return (fRetVal);
}
BOOL SetupConnection() // 커넥트하는 함수
{
BOOL fRetVal ;
DCB dcb ;
dcb.DCBlength = sizeof( DCB ) ;
GetCommState( idComDev, &dcb ) ;//dcb의 기본값을 받는다.
dcb.BaudRate = dwBaudRate;//전송속도
dcb.ByteSize = bByteSize ;//데이타비트
dcb.Parity = bParity;//패리티 체크
dcb.StopBits = bStopBits;//스톱비튼
dcb.fOutxDsrFlow =0 ;//Dsr Flow
dcb.fDtrControl = DTR_CONTROL_ENABLE ;//Dtr Control
dcb.fOutxCtsFlow = 0 ;//Cts Flow
dcb.fRtsControl = RTS_CONTROL_ENABLE ; //Ctr Control
dcb.fInX = dcb.fOutX = 1 ; //XON/XOFF 관한것
dcb.XonChar = ASCII_XON ;
dcb.XoffChar = ASCII_XOFF ;
dcb.XonLim = 100 ;
dcb.XoffLim = 100 ;
dcb.fBinary = TRUE ;
dcb.fParity = TRUE ;
dcb.fBinary = TRUE ;
dcb.fParity = TRUE ;
fRetVal = SetCommState( idComDev, &dcb ) ; //변경된 Dcb 설정
return ( fRetVal ) ;
}
2.5 생산성 평가
- 개발 기간, 개발 비용 및 프로젝트의 목적에 맞추어 볼 때 2개월의 개발 기간과 적은 예산으로 과제용 프로젝트이므로 질적인 면에서나 양적인 면에서 생산성은 거의 없음.
2.6프로젝트 비용산정
- 기본형 COCOMO 방법 (PM: Person/Months, KDSI: 원시 명령어의 수)
Organic Project : PM = 2.4 * (KDSI) ** 1.05
3.673 = 2.4 * (1.5) ** 1.05
3.742 = 3.673 * 1.019 = 약 4(Person/Months)
- 개발 소요 기간
TDET = 2.5 * 4(PM) * 0.32 = 3.2 = 약 3개월
- 프로젝트 요원의 총 비용
4(PM) * 300,000원/월 = 1,200,000원
2.7 프로젝트 개발환경
- OS: Windows XP, Win CE
- Platform: Visual Studio 6.0, Embedded Visual C 4.0
- ETC: RC 카, RC 리모트 컨트롤러, PDA, 시리얼 모듈
3.관심분야
- C language, 시리얼 통신, 웹 프로그래밍
4.습득한 기술
- Embedded Visual C, C, 시리얼 통신, 웹 프로그래밍
추천자료
공학 설계 과목 빛나는 키보드 최종보고서
[설계보고서] 디지털 공학 실습 과제 - EEPROM 실험
[실험보고서] 폐수처리공학 (SVI,DO UP TAKE 등등)
절단및 아크용접실험 보고서-기계공학과
[실험보고서] 전자공학 실험 - 미분, 적분회로 (미적분회로)
[기초공학실험] 점도 측정 보고서
[화학공학실험] 유출 결과보고서
전자공학 실험 - 다이오드 특성곡선 결과 보고서
화학공학 실험 - 단증류 결과 보고서, 결론 및 토의
정보통신공학부 디지털통신 시스템 설계 결과보고서 4
홍익대학교 기계공학실험 PSD센서 실험보고서
홍익대학교 기계공학실험 마찰계수측정 실험보고서
홍익대학교 기계공학실험 이중열교환기 실험보고서
홍익대학교 기계공학실험 증기압축식 열펌프 실험보고서
소개글