Автор работы: Пользователь скрыл имя, 05 Октября 2011 в 17:17, курсовая работа
На данный период времени разработка является актуальной и имеет перспективы для улучшения. Актуальность темы разработки обусловлена малым количеством аналогов данного проекта представленных в данный период времени.
Данный документ содержит следующую информацию:
в определении требований содержаться пункты, связанные с разработкой требований, сравнением аналогов, жизненным циклом, описанием технического задания;
в проектировании содержатся пункты, описывающие архитектуру и логическое устройство программы;
в разработке программного кода содержится краткий обзор разработанных функций;
в верификации и аттестации описывается, как будет выполняться тестирование проекта;
в программной документации содержатся такие подпункты как инструкция для пользователя и инструкция по установке.
ВВЕДЕНИЕ 4
1 ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ 4
1.1 Описание бизнес процесса 4
1.2 Сравнение аналогов 5
1.3 Моделирование требований 6
1.4 Выбор модели жизненного цикла 7
2 ПРОЕКТИРОВАНИЕ 9
2.1 Выбор модели системы 9
2.2 Проектирование структуры системы 9
2.3 Проектирование логики работы 10
2.4 Проектирование интерфейса 13
3 РАЗРАБОТКА ПРОГРАММНОГО КОДА 15
4 ВЕРИФИКАЦИЯ И АТТЕСТАЦИЯ 16
4.1 Выбор методов верификации и аттестации 16
4.2 Инспектирование 16
4.3 Тестирование 17
5 ПРОГРАММНАЯ ДОКУМЕНТАЦИЯ 18
5.1 Инструкция по установке 18
5.2 Инструкция пользователя 18
ЗАКЛЮЧЕНИЕ 19
СПИСОК ИСТОЧНИКОВ ИНФОРМАЦИИ 20
ПРИЛОЖЕНИЕ A ТЕХНИЧЕСКОЕ ЗАДАНИЕ 21
1НАЗНАЧЕНИЕ РАЗРАБОТКИ 21
2 ЦЕЛЬ И ЗАДАЧИ 21
3 ТРЕБОВАНИЯ К РАЗРАБОТКЕ 21
3.1Требованияк функциональным характеристикам 21
3.2 Описание входных и выходных данных 22
3.3 Модель работы продукта разработки 23
3.4 Требования к надежности 25
3.5 Эргономические и техникоэстетические требования 25
3.6 Требования к защите информации 26
3.7 Другие требования к разработке 26
3.8 Требования к аппаратно-программному комплексу. 26
3.9 Требования к технологиям разработки 26
3.10 Требования к составу технических средств при эксплуатации. 26
4 МЕТОДЫ ТЕСТИРОВАНИЯ СООТВЕТСТВИЯ РАЗРАБОТКИ ПРЕДЪЯВЛЕННЫМ ТРЕБОВАНИЯМ 26
ПРИЛОЖЕНИЕ Б ПРОГРАММНЫЙ КОД 27
privatefinal Rect ship4Rect = new Rect();
privatefinal Rect ship3Rect = new Rect();
privatefinal Rect ship2Rect = new Rect();
privatefinal Rect ship1Rect = new Rect();
privateintattack_
publicintattack_
public ViewBattle(Context context) {
super(
setFocusable(
this.oppRound = (OppRound) context;
setId(43);//
}
publicvoid onDraw(Canvas canvas) {
Paint background=newPaint();
background.
canvas.drawRect(0, 0, getWidth(), getHeight(), background);//рисуемсетку
Paint grid = newPaint();
grid.setColor(
for (int i = 0; i < 10; i++) {
canvas.drawLine(0, i * height, getWidth(), i * height,grid);//горизонатльные
canvas.drawLine(i * width, 0, i * width, getHeight(),grid); }//вертикальные
//
Paint selected=newPaint();
selected.setColor(
canvas.drawRect(selRect, selected);
Paint attacked=newPaint();
attacked.setColor(
Paint empty=newPaint();
empty.
Paint ship_4=newPaint();
ship_4.setColor(getResources()
Paint ship_3=newPaint();
ship_3.setColor(getResources()
Paint ship_2=newPaint();
ship_2.setColor(getResources()
Paint ship_1=newPaint();
ship_1.setColor(getResources()
for(int i=0;i<11;i++) {
for(int j=0;j<11;j++){
if(Battle.field_gamer[i][
attackedRect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
if(Battle.field_gamer[i][j]==
attackedRect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
if(Battle.field_gamer[i][j]==
ship4Rect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
if(Battle.field_gamer[i][j]==
ship3Rect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
if(Battle.field_gamer[i][j]==
ship2Rect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
if(Battle.field_gamer[i][j]==
ship1Rect.set(i*width,
j*height,i*width+50,j*height+
canvas.drawRect(
publicboolean onTouchEvent(MotionEvent event) {
if (event.getAction() != MotionEvent.ACTION_DOWN)
returnsuper.onTouchEvent(
attack_coord=Battle.autoAttack
select(attack_coord[0], attack_coord[1]);
if(attack_coord[2]==0) {//если промахнулся то завершаем активити
Toast.makeText( getContext(), "Промах", Toast.LENGTH_SHORT).show();
oppRound.
oppRound.
else {
Toast.makeText( getContext(), "Прямоепопадание!", Toast.LENGTH_SHORT).show(); }
invalidate();
returntrue; }
@Override
protectedvoid onSizeChanged(int w,int h,int oldw,int oldh) {
width = w /10;
height = h /10;
getRect(selX, selY, selRect);
getRect(selX,selY,
getRect(selX,selY,
getRect(selX,selY,
getRect(selX,selY,
getRect(selX,selY,
super.
privatevoid getRect(int x, int y, Rect rect) {
rect.set((int) (x * width), (int) (y * height), (int) (x
* width + width), (int) (y * height + height)); }
privatevoid select(int x, int y) {
invalidate(selRect)
selX = Math.min(Math.max(x, 0), 9);
selY = Math.min(Math.max(y, 0), 9);
if(Battle.field_
getRect(selX, selY, selRect);
invalidate(selRect)
}
}