실기 모의고사 1회

과정평가형 정보처리산업기사 실기 모의고사

항목

종목명

정보처리기사

과제명

매장 관리 프로그램

시험시간

4시간

비번호

00137524

◎ 특이사항

  • 2차 시험 평가는 전 과정을 응시하여야 합니다.

    • 1과제 : 매장 관리 프로그램

    • 2과제 : 면접

  • 정전에 대비하여 모든 데이터는 10분에 1회 이상 저장하도록 수험자에게 교육하셔야 합니다.

  • 시험 시작 전 하드디스크에서 부정행위에 이용될 수 있는 모든 정보를 삭제하고 수험자 상호간 네트워크를 필히 차단해야 합니다.

  • 채점은 반드시 감독위원 2명 이상이 공동으로 합니다.

1. 시행 시 유의사항

※ 공통사항

  1. 장비(PC) 및 수험용 설치 프로그램의 이상 유무를 반드시 확인하여야 합니다.

  2. 작업형 과제(1과제) 완료 후 면접은 별도로 시행되며, 면접(2과제)을 위한 격리된 수험자 대기 장소를 별도로 준비하여야 합니다.

  3. 시험시간 내에 요구사항을 완성하지 못한 경우에도 채점을 실시합니다.

  4. 시행 진행 과정

※ 평가시행 전 준비사항

  • 시 설 : 컴퓨터, 수험용 소프트웨어 등

  • 재 료 : 해당 없음

  • 시험방법 : 홈쇼핑 회원관리 프로그램 개발, 면접

  • 기 타 :

    • 시험 개시 전까지 해당 검정장에 설치된 PC에 수험용 프로그램이 정상적으로 설치 및 작동 되는지 확인합니다.

    • 본부요원은 수험자에게 사전에 비번호를 부여한 후 문제지에 모든 수험자 인적사항을 비번호에 의하여 기록하도록 합니다.

※ 평가시행 중 유의사항

  • 시 설 : 컴퓨터, 수험용 소프트웨어 등

  • 재 료 : 해당없음

  • 좌석배치 : 시험장 공간에 따라 진행상 무리가 없도록 배치합니다.

  • 진행방법 : 1과제 및 2과제를 하루 동안 주어진 시간 내에 진행합니다.

  • 기 타 :

    • 컴퓨터 등의 이상으로 시험 진행이 불가능하여 교체 시 발생하는 자체시간에 대하여 감독위원의 합의 하에 추가시간을 부여합니다.

    • [제 1과제] -수험자 PC가 오류 또는 기타 수험 환경에 의해 다운(Down)될 수 있으므로 주기적으로 저장할 수 있도록 교육합니다.

    • 시험 중에는 수험자가 부정행위를 할 수 없도록 네트워크 차단, 파일 공유 등을 할 수 없도록 합니다.

※ 평가시행 후 유의사항

  1. 시험 시간이 종료되면 수험자의 모든 행위를 중지시키고 문제지를 제출하도록 합니다.

  2. 감독위원은 수험자 PC에 작업한 결과물을 확인하고 채점을 실시합니다.

  3. 모든 수험자의 채점이 종료되면 지급된 USB를 사용하여 수험자가 작업한 내용을 저장한 후에 PC 내의 시험관련 자료는 삭제하여야 합니다.

2. 지급재료 목록(생략)

3. 수험자 지참공구 목록(생략)

4. 평가장소 시설 목록(생략)

제 1과제

1. 요구사항

※ 다음의 요구사항을 시험시간 내에 완성하시오.

  • 주어진 시간 내에 매장 관리 프로그램을 작성하시오.

2. 수험자 유의사항

  1. 2차 평가는 작업형과 면접형 모두 응시하여야 합니다.

  2. 수험자는 지정된 장소에서, 지정된 시설과 장비만 사용하여 시험에 임해야 합니다.

  3. 수험자 PC에 설치된 개발환경을 확인합니다.

    1. 오라클(Oracle 11g XE 11.2)의 설치 및 동작 확인

    2. 자바(Java SE JDK 8)의 설치 및 동작 확인

    3. 톰캣(Apache-tomcat-8.0.26)의 설치 및 동작 확인

    4. 이클립스(eclipse)의 설치 확인

  4. 다음 패키지 별 특이 사항을 확인하고 문제 발생 시 수험자 스스로 오류를 해결하여 작업을 수행하시기 바랍니다.

    1. Apache Tomcat의 경우 Windows Service Installer 버전을 설치하는 경우 Eclipse-Tomcat 연동 시 포트 충돌 문제가 발생할 수 있음

    2. Oracle 11g XE 에서는 관리를 위해 8080 포트를 사용함으로 포트 충돌 문제가 발생할 수 있음

  5. 작업 내용을 수시로 저장하고 저장에 관계되는 일체의 책임은 수험자에게 있음을 유의하시기 바랍니다.

  6. 문제지를 포함한 모든 자료(시험문제지, 비번호 등)는 과제별 종료 후 반드시 제출합니다.

  7. 다음 각 항에 해당하는 경우에는 해당 과제를 0점으로 처리합니다.

    1. 기능 미숙으로 안전사고, 기자재 손상 등이 우려되는 경우

    2. 요구사항 또는 시험위원의 지시사항과 다른 작업을 하는 경우

    3. 요구사항을 이해하지 못하여 작업이 불가능한 경우

  8. 다음 각 항에 해당하는 경우(부정행위)에는 채점대상에서 제외합니다.

    1. 평가의 모든 과제에 응시하지 않은 경우

    2. 수험자 간에 대화를 하거나 타인의 답안을 보고 기록하거나 보여주는 경우

    3. 타인의 도움을 받거나 도움을 주는 경우

    4. 휴대폰 또는 기타 통신기기를 휴대하여 사용하는 경우

    5. 작업이 극히 미숙하여 본인 및 타인에게 위험한 상황을 유발할 수 있는 경우

    6. 지급된 재료 이외의 재료를 사용하여 작업 한 경우

    7. 기타 시험과 관련된 부정행위를 하는 경우

3. 과제 내용

1. 과제 개요

  1. 본 과제는 상품 관리, 직원 관리, 매출 관리를 위한 프로그램이다. 본 과제에서는 상품 등록, 상품 조회, 상품 수정, 직원 등록, 직원 조회, 매출 등록, 매출 내역 조회, 직원별 매출 현황 조회가 가능하도록 프로그램을 제작하시오.

  2. 프로그램 개발을 위해 개발 환경을 확인하고, 필요한 설정을 수행하시오.

2. 업무 요건

  1. 입력정보 요건에 따라 입력 테이블인 상품 테이블과 직원 테이블, 매출 테이블을 생성하여야 한다. 각 테이블의 데이터는 샘플데이터를 참조하여 테스트를 실시하여야 한다.

  2. 상품정보를 등록할 수 있어야 한다.

  3. 상품정보를 조회할 수 있어야 한다.

  4. 직원정보를 등록할 수 있어야 한다. 이 때 직원번호는 시퀀스 발생(자동증가) 처리된다.

  5. 직원정보를 조회할 수 있어야 한다. 직원정보 내역은 제시된 샘플 데이터를 참조하여 조회되어야 한다.

  6. 매출 정보를 등록할 수 있어야 한다.

  7. 매출 내역을 조회할 수 있어야 한다.

  8. 직원별 매출 현황을 조회할 수 있어야 한다.

3. 프로젝트 준비

  1. 접속에 사용할 오라클 계정은 ‘system' 이고, 암호는 'khacademy' 이다.

  2. 이클립스(eclipse)의 작업영역(workspace)은 ‘c:\kh'를 사용한다.

  3. 프로젝트를 생성하기 전에 java, jsp, html, css, text 파일의 기본 인코딩을 'UTF-8' 로 지정한다.(이클립스 Window - Preferences 메뉴)

  4. 이클립스에서 톰캣을 연동하여 실행하기 위한 설정을 수행해야 한다.

  5. 오라클 관리를 위해 8080 포트를 사용하고 있기 때문에 톰캣 서버는 8888 포트를 사용하도록 권장한다.

  6. 프로젝트 유형은 ‘Dynamic Web Project'를 생성하고, 프로젝트 이름은 ’HRD_비번호‘를 사용한다. (비번호는 수험자가 부여받은 번호를 사용한다.)

  7. 시험 후 이클립스 작업영역(workspace), 즉 ‘c:\kh' 디렉토리를 반드시 'hrd_비번.zip'으로 압축해서 제출하여야 한다.

[참고] 아래 소스는 Oracle Database Connection 함수이다.

package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

...
	public static Connection getConnection() throws Exception{
		Class.forName("oracle.jdbc.OracleDriver");
		Connection con = DriverManager.getConnection(
				"jdbc:oracle:thin:@//localhost:1521/xe", "system", "khacademy"
				);
		return con;
	}
...

4. 수행 작업

  • 메인화면(index.jsp)은 다음과 같은 디자인을 참고하여 작성하시오.

  • 데이터 입출력 요건에 맞게 직원, 상품, 매출 테이블을 생성하시오.

직원 테이블(emp_tbl)

순서컬럼ID컬럼명형태길이NULL비고

1

empno

직원번호

number

5

NOT NULL

Primary Key

2

empname

직원이름

varchar2

21

NOT NULL

-

3

empphone

전화번호

varchar2

11

- 제외

4

empdate

입사일

date

-

-

-

직원 샘플 데이터

직원번호직원이름전화번호입사일

10001

정우성

01012122323

20141008

10002

김태희

01023233434

20150109

10003

한가인

01034344545

20200402

10004

이나영

01045455656

20200105

10005

원빈

01056566767

20101122

10006

장동건

01067677878

20050302

상품 테이블(product_tbl)

순서컬럼ID컬럼명형태길이NULL비고

1

productno

상품번호

char

5

NOT NULL

Primary Key

2

productname

상품이름

varchar2

60

NOT NULL

3

productprice

상품가격

number

4

producttype

상품분류

char

1

5

productstock

상품재고수량

number

상품 샘플 데이터

상품번호상품이름상품가격상품분류상품재고수량

A0001

나이키 에어맥스 95

169000

1

150

A0002

나이키 에어맥스 98

149000

1

170

A0003

나이키 윈드러너

95000

2

80

A0004

나이키 드라이핏

79000

2

75

B0001

프레쉬폼x

139000

1

200

B0002

서밋 언노운

129000

1

155

매출 테이블(sell_tbl)

순서컬럼ID컬럼명형태길이NULL비고

1

empno

직원번호

number

5

NOT NULL

Primary Key

2

productno

상품번호

char

5

NOT NULL

Primary Key

3

selldate

판매일자

date

NOT NULL

Primary Key

4

selltime

판매시각

char

4

NOT NULL

Primary Key

5

sellcount

판매수량

number

매출 샘플 데이터

직원번호상품번호판매일자판매시각판매수량

10001

A0001

2020-04-08

1200

1

10002

A0002

2020-04-08

1250

5

10001

B0001

2020-04-08

1305

2

10003

A0004

2020-04-09

0920

2

10003

B0001

2020-04-09

0925

3

10004

B0002

2020-04-09

1130

1

10005

B0001

2020-04-09

1145

2

10006

A0002

2020-04-09

1240

4

10006

A0002

2020-04-09

1325

3

10006

B0002

2020-04-09

1400

5

  • 직원, 상품, 매출 샘플 데이터를 SQL 문장을 사용하여 각각 생성된 테이블에 추가 입력하시오.

  • 화면별 업무 요구사항 및 화면 구성 요건에 맞게 화면을 구현하시오.

참고 사항

  • 화면의 구성요소는 필수 사항이다

  • 화면의 색상, 폰트 등 스타일 구성요소는 선택사항이다

시작화면(index.jsp)

  • 시작화면은 헤더, 메뉴, 섹션으로 구성된다.

  • 메뉴는 홈으로 이동할 수 있는 메뉴와 모든 페이지로 이동할 수 있는 메뉴가 화면과 같이 존재해야 한다.

  • 해당 메뉴를 클릭하면 각각의 페이지로 이동할 수 있어야 한다.

직원등록 화면

  • ‘직원등록’ 화면은 직원번호, 직원이름, 전화번호, 입사일자를 입력하도록 되어 있다.

  • 모든 항목의 정보를 채우고 ‘등록’ 버튼을 클릭하면 직원정보가 ‘직원 테이블’에 저장된다.

  • ‘등록’ 버튼을 눌렀을 때 입력되지 않은 항목이 있을 경우 ‘모든 항목을 입력하세요.’ 라는 알림창이 화면에 나타나고 포커스가 해당하는 항목으로 이동한다.

  • 등록이 성공적으로 이루어진 경우 ‘직원 등록이 완료되었습니다.’ 라는 알림창이 화면에 나타나고 비어있는 등록 페이지가 표시된다.

  • ‘직원등록’ 화면에도 ‘시작화면’에 있는 메뉴가 동일하게 출력되어야 한다.

  • ‘목록’ 버튼을 누르면 ‘직원조회 화면’으로 이동해야 한다.

직원조회 화면

  • ‘직원조회’ 메뉴를 클릭하면 직원정보가 목록으로 조회된다.

  • 입사일은 날짜 형식(YYYY-MM-DD)으로 화면에 나타나도록 한다.

  • 조회 결과는 최근에 입사한 직원부터 출력되어야 한다.

상품 등록 화면

  • ‘상품 등록’ 화면은 상품번호, 상품이름, 상품가격, 상품분류, 상품재고수량을 입력하도록 되어 있다.

  • 모든 항목의 정보를 채우고 ‘등록’ 버튼을 클릭하면 상품 정보가 ‘상품 테이블’에 저장된다.

  • ‘등록’ 버튼을 눌렀을 때 입력되지 않은 항목이 있을 경우 ‘모든 항목을 입력하세요.’ 라는 알림창이 화면에 나타나고 포커스가 해당하는 항목으로 이동한다.

  • 등록이 성공적으로 이루어진 경우 ‘상품 등록이 완료되었습니다.’ 라는 알림창이 화면에 나타나고 비어있는 등록 페이지가 표시된다.

  • 상품분류는 다음의 의미를 가진다.

분류

1

신발

2

기능성 의류

3

일반 의류

  • 상품 분류는 select 태그로 등록할 수 있도록 구현한다.

  • ‘목록’ 버튼을 누르면 ‘상품 목록 조회’로 이동해야 한다.

상품 목록 조회 화면

  • ‘상품 목록 조회’ 메뉴를 클릭하면 상품 목록 조회 페이지로 이동한다.

  • 해당 페이지에서는 상품 정보가 목록으로 조회된다.

  • 상품가격과 상품재고수량은 3자리단위로 콤마(,)를 추가하여 출력한다.

  • 조회 순서는 상품 번호 오름차순이다.

상품 수정 화면

  • ‘상품 목록 조회’ 화면에서 상품 번호를 누르면 ‘상품 수정’ 화면으로 이동한다.

  • ‘상품 수정’ 화면에서는 수정할 상품의 정보가 입력되어 있으며, 상품 번호를 제외한 다른 정보들을 수정할 수 있다.

  • 모든 항목에 대해서 유효성 검사를 실시하여, 미 입력 항목이 있을 경우 ‘수정’ 버튼을 누르면 알림 메시지와 포커스 이동을 수행한다.

  • 정보를 모두 변경 입력한 뒤 ‘수정’ 버튼을 누르면 ‘상품정보가 수정되었습니다’ 라는 메시지가 출력되고 ‘상품 목록 조회’ 화면으로 이동한다.

판매 등록 화면

  • ‘판매 등록’ 메뉴를 클릭하면 ‘판매 등록’ 화면으로 이동한다.

  • ‘판매 등록’ 화면은 직원번호, 상품번호, 판매일자, 판매시각, 판매수량을 입력한다.

  • 직원과 상품은 데이터베이스에 있는 내용을 토대로 select box로 구현한다.

  • 모든 항목의 정보를 채우고 ‘등록’ 버튼을 클릭하면 판매 정보가 ‘판매 테이블’에 저장된다.

  • ‘등록’ 버튼을 눌렀을 때 입력되지 않은 항목이 있을 경우 ‘모든 항목을 입력하세요.’ 라는 알림창이 화면에 나타나고 포커스가 해당하는 항목으로 이동한다.

  • 등록이 성공적으로 이루어진 경우 ‘판매 정보 등록이 완료되었습니다.’ 라는 알림창이 화면에 나타나고 비어있는 등록 페이지가 표시된다.

  • ‘목록’ 버튼을 누르면 ‘판매 내역 조회 화면’으로 이동한다.

판매 내역 조회 화면

  • ‘판매 내역 조회’ 메뉴를 클릭하면 판매 내역 조회 화면으로 이동한다.

  • 판매 내역은 가장 최근에 판매한 것부터 출력되어야 한다.

  • 판매 내역에는 판매일자, 판매시각, 직원이름, 상품이름, 상품수량, 판매금액이 출력되어야 한다.

  • 판매금액은 세 자리 단위로 콤마(,) 가 출력되어야 한다.

직원별 판매 현황 화면

  • ‘직원별 판매 현황’ 메뉴를 클릭하면 직원별 판매 현황 화면으로 이동한다.

  • 직원별 판매 현황은 판매 개수가 많은 직원 순으로 출력되어야 한다.

  • 직원별 판매 현황에는 직원이름, 누적판매금액이 출력되어야 한다.

Last updated