Russian Qt Forum
Ноябрь 23, 2024, 14:00
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Этапы разработки ПО. Научите, как работает профессионал.
Страниц:
1
[
2
]
3
4
...
6
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Этапы разработки ПО. Научите, как работает профессионал. (Прочитано 39382 раз)
Bepec
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #15 :
Апрель 19, 2014, 14:57 »
Угум. У вас дробление задачи идет. Тоже необходимая вещь
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #16 :
Апрель 19, 2014, 15:05 »
Верес, вы даже не дергайтесь. То, что я здесь описываю - европейский стандарт ведения проектов. Я учусь в Баварском техническом университете на факультете общей информатики. Поэтому, советую вам не придерживаться ваших личных стандартов, а прислушаться к этой системе. На практике я уже отработал - все было в точности, как нас учили в теории.
Записан
8Observer8
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #17 :
Апрель 19, 2014, 15:08 »
Цитата: Hrundel от Апрель 19, 2014, 14:55
Например в карточной игре проблемой является вероятность выигрыша и проигрыша. То есть - задача из математики - теория вероятности.
Здесь же извечная проблема случайных чисел. И т.д.
То есть - разработчик, еще в самом начале проекта, должен точно представлять с каким кругом проблем он сталкнется.
В моей задаче этой проблемы у разработчика нет, так как заказчику нужна сетевая игра. Ботов в ТЗ нет
А вот какие будут проблемы - это с опытом приходит. Как я могу предвидеть с какими проблемами столкнусь в данном проекте?
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #18 :
Апрель 19, 2014, 15:13 »
Уже одно то, что это сетевая игра - это уже комплекс проблем.
Как будет осуществляться сетевая поддержка?
Какие протоколы имеет смысл использовать?
В случае если игра на деньги или материальный выигрышь - надежная передача данных.
Правила отправки и получения пакетов, и пауз.
и прочее, прочее.
Все это нужно протоколировать в логе проекта, спецификациях и в UseCases.
Цитата: 8Observer8 от Апрель 19, 2014, 15:08
Как я могу предвидеть с какими проблемами столкнусь в данном проекте?
Если не можете предвидеть - значит не сможете составить спецификацию. Без нее серьезный заказчик не будет с вами продолжать проект.
Цитата: 8Observer8 от Апрель 19, 2014, 15:08
А вот какие будут проблемы - это с опытом приходит.
У заказчика нет времени ждать, когда у вас появится опыт. Иначе он предпочтет вас тому, у кого уже есть опыт. Он хочет все уже сейчас. Поэтому вы должны быть так подготовленны, чтобы могли взяться за исполнение любой задачи.
«
Последнее редактирование: Апрель 19, 2014, 15:29 от Hrundel
»
Записан
Bepec
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #19 :
Апрель 19, 2014, 15:29 »
to Hrundel - дёргался, дёргаюсь и буду дёргаться. Увы, так устроен человек
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #20 :
Апрель 19, 2014, 15:31 »
Цитата: Bepec от Апрель 19, 2014, 15:29
to Hrundel - дёргался, дёргаюсь и буду дёргаться. Увы, так устроен человек
Да я понимаю - сам такой
Записан
Bepec
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #21 :
Апрель 19, 2014, 15:32 »
Ссылочку приведите аль ещё как направьте меня на путь изучения данной методике. И чтоб именно баварского университета
PS я серьёзно ^.^ Полезно знать много.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #22 :
Апрель 19, 2014, 15:34 »
Цитата: 8Observer8 от Апрель 19, 2014, 15:08
В моей задаче этой проблемы у разработчика нет, так как заказчику нужна сетевая игра. Ботов в ТЗ нет
А вот какие будут проблемы - это с опытом приходит. Как я могу предвидеть с какими проблемами столкнусь в данном проекте?
Что-то я не понял, как/куда Вы "проецируетесь"
Вы сами себе разработали и утвердили ТЗ? Такой вариант возможен, но это другая модель: "выпуск продукта в надежде что его купят", к работе с конкретным заказчиком это отношения не имеет. И до этого варианта далеко как до небес.
Заказчик - это я (не Вы). И вот я выдвигаю требование (позицию ТЗ). Разумно ли оно? Безусловно, да еще и подчеркивает хилость начального замысла - что это за игра возможная лишь при наличии партнера? Наоборот, живой партнер - всего лишь хорошее (пусть отличное) приложение к игре, но не более. Но так ли уж четко сформулированы мои требования? Вовсе нет, наверняка это будет предметом будущих конфликтов. Ваши действия?
С этой точки зрения Вы избираете наихудший вариант - заявляете что "ботов в игре нет". Ну на нет и суда нет, заказчику (мне) остается только удалиться. На мне Вы ничего не заработали.
«
Последнее редактирование: Апрель 19, 2014, 15:36 от Igors
»
Записан
8Observer8
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #23 :
Апрель 19, 2014, 17:01 »
Цитата: Igors от Апрель 19, 2014, 15:34
Что-то я не понял, как/куда Вы "проецируетесь"
Вы сами себе разработали и утвердили ТЗ? Такой вариант возможен, но это другая модель: "выпуск продукта в надежде что его купят", к работе с конкретным заказчиком это отношения не имеет. И до этого варианта далеко как до небес.
Хочу смоделировать ситуацию взаимодействия заказчика и разработчика. В конечном итоге довести до автоматизма процесс разработки ПО, то есть отработать этапы, которые будут универсальны и не зависеть от конкретного заказчика\проекта.
Цитата: Igors от Апрель 19, 2014, 15:34
Вы сами себе разработали и утвердили ТЗ?
Я сделал только набросок (см. Ответ #9)
Цитата: Igors от Апрель 19, 2014, 15:34
Заказчик - это я (не Вы). И вот я выдвигаю требование (позицию ТЗ). Разумно ли оно? Безусловно, да еще и подчеркивает хилость начального замысла - что это за игра возможная лишь при наличии партнера? Наоборот, живой партнер - всего лишь хорошее (пусть отличное) приложение к игре, но не более. Но так ли уж четко сформулированы мои требования? Вовсе нет, наверняка это будет предметом будущих конфликтов. Ваши действия?
С этой точки зрения Вы избираете наихудший вариант - заявляете что "ботов в игре нет". Ну на нет и суда нет, заказчику (мне) остается только удалиться. На мне Вы ничего не заработали.
Этот пример - всего лишь фикция. Для упрощения - не буду углубляться в разработку бота и красивого интерфейса. Если мне удастся сформировать чёткие требования для этого упрощённого примера, то я смогу продвинуться дальше. Если я буду усложнять задачу, то не смогу довести её до конца. Пусть мой заказчик получает промежуточные версии, которыми он сразу начнёт пользоваться. За каждый этап он будет платить. Он может сам не знает, что на самом деле хочет? А я не знаю, что он на самом деле захочет в будущем. Бот возможно появится в следующих версиях продукта. А может заказчик бота не захочет. Первая версия продукта будет консольной и без бота. Заказчик сможет получить свой продукт в короткий срок и оплатить его. Дальше, возможно, у него появятся дополнительные требования (или скорректируются имеющиеся). Буду планировать только на ближайшие пару недель. ТЗ будет меняться. Я не вижу способа написания ТЗ, которое опишет детально все аспекты системы.
P.S. Это всего лишь мои фантазии. Я, на самом деле, не знаю, как это в реальности.
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #24 :
Апрель 19, 2014, 17:07 »
Что значит без бота? Уже одно то, что програма пользуется некиим генератором для случайной раздачи карт - это уже бот.
Кроме того, ваша програма обязана следить за правилами в игре. То есть некиий искусственный интелект должен присутствовать обязательно. Ходы, конечно, будут делать игроки, но это не значит, что ваша програма должна остаться без AI.
А сделать виртуального игрока, там будет, уже, не проблема. Просто, ему нужно будет включить алгоритм анализа лучшего хода. Вот вам и весь бот.
Опять таки, а что если в сети никого нет. Например, два дня. Сайт, допустим, еще не раскручен. Что делать? Не играть? Значит, заказчик потерял деньги. Клиент не играл и ушел. А мог бы сыграть на доллар другой.
«
Последнее редактирование: Апрель 19, 2014, 17:14 от Hrundel
»
Записан
8Observer8
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #25 :
Апрель 19, 2014, 17:15 »
В программе используется shuffle для deque<card> deck
А вот про правила я не подумал
Спасибо! Будем считать, что "разработчик" и "заказчик" взяли таймаут
В самом первом моём сообщении этой темы есть пример, файл play.h В этом файле располагаются три класса: Card (Карта), Deck (Колода) и Player (Игрок). Как Вы думаете, оставить эти классы в файле play.h или раскидать по разным файлам?
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #26 :
Апрель 19, 2014, 17:21 »
Наверное в зависимости от того сколько в них методов. Если обозримость не потеряете - оставляйте в одном файле. Это уже дело вкуса и внутренней организации.
Записан
8Observer8
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #27 :
Апрель 19, 2014, 17:28 »
Спасибо! Пока оставлю в одном файле
Цитата: Hrundel от Апрель 19, 2014, 17:07
А сделать виртуального игрока, там будет, уже, не проблема. Просто, ему нужно будет включить алгоритм анализа лучшего хода. Вот вам и весь бот.
Опять таки, а что если в сети никого нет. Например, два дня. Сайт, допустим, еще не раскручен. Что делать? Не играть? Значит, заказчик потерял деньги. Клиент не играл и ушел. А мог бы сыграть на доллар другой.
Вполне логично
Я думаю, что разработчику и заказчику надо работать очень тесно, чтобы требования можно было вносить в проект. То что Вы написали, для меня было совсем неочевидно. Да, может и для заказчика тоже. Заказчики же так же бывают мало опытные
Проект уже начался и вдруг заказчику пришла отличная мысль! При тесном взаимодействии (обратной связи) все новые требования будут вноситься с наименьшими затратами для обоих
P.S. Опять же, не знаю, как на практике общаются заказчик и разбработчик. В типичной ситуации, возможно ли взаимодействие с обратной связью? Или они общаются только в начале и в конце проекта? Принята же какая-то культура? Я про фриланс.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #28 :
Апрель 19, 2014, 17:37 »
Цитата: 8Observer8 от Апрель 19, 2014, 17:01
Хочу смоделировать ситуацию взаимодействия заказчика и разработчика.
Ага, значит я все-таки отвечаю в тему
Цитата: 8Observer8 от Апрель 19, 2014, 17:01
Этот пример - всего лишь фикция. Для упрощения - не буду углубляться в разработку бота и красивого интерфейса. Если мне удастся сформировать чёткие требования для этого упрощённого примера, то я смогу продвинуться дальше. Если я буду усложнять задачу, то не смогу довести её до конца. Пусть мой заказчик получает промежуточные версии, которыми он сразу начнёт пользоваться.
Конечно было бы прекрасно, просто замечательно если бы заказчик удовольствовался именно и только тем что Вы предложили. Но у меня года так с 1995-го такого еще не случалось. Выдвигает (ах паразит) свои требования - и приходится потеть их выполняя. А другими способами зарабатывания денег я не владею.
Цитата: 8Observer8 от Апрель 19, 2014, 17:01
Если я буду усложнять задачу, то не смогу довести её до конца.
Вот этим и отличается любитель (пусть безумно талантливый) от профи (пусть явно тупого). Один делает "что хочет", другой "за что платят".
Записан
Hrundel
Гость
Re: Этапы разработки ПО. Научите, как работает профессионал.
«
Ответ #29 :
Апрель 19, 2014, 17:59 »
Цитата: 8Observer8 от Апрель 19, 2014, 17:28
P.S. Опять же, не знаю, как на практике общаются заказчик и разбработчик. В типичной ситуации, возможно ли взаимодействие с обратной связью? Или они общаются только в начале и в конце проекта? Принята же какая-то культура? Я про фриланс.
Безконечные звонки друг - другу и емайлы. А иногда и по нескольку раз на день. В игрушках наверное не так интенсивно. Там фазы чуть длиннее, а в остальных проектах очень интенсивное общение с заказчиком.
Записан
Страниц:
1
[
2
]
3
4
...
6
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...