|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
vdimas Ну что тебя мама, в детстве вежливости не учила - это понятно. А вот что жизнь еще рога не обломала - уже удивительно. Ты или слишком молод, или просто неисправим. В любом случае, эту тему, с тобой обсуждать было бы глупо. А вот, насчет ‘не видя ни кода, ни задачи’ – выложи постановку, а народ выводы сам сделает. Или слабо? Кроме того - выучи русский язык, пригодится. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 15:06 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2Дмитрий Мыльников: а вы я смотрю - оптимист. Лично я в наследовании панацеи не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 15:41 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
А я разве говорил, что наследование есть панацея? Да и от чего? Но при написании больших проектов жизнь существенно облегчает, это факт. А на счёт "виртуального наследования"... Эх-хе-хе. Если искать к чему придраться, то можно всопнить анекдот про прапорщика и столб. При этом в ваших сообщениях, уважаемые господа критики, я никакой полезной информации не увидел, в отличии от vdimas'а. Так что он может быть и не круче. чем все остальные варёные яйца на этом форуме, но общатся с ним как-то интереснее. ИМХО ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 19:18 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 AISOFT хм... взаимные упреки в "пустой" болтовне. (я первый начал :), и было от чего) Постановку в студию! Всего лишь парочка из множества задач в последнем проекте. ---------- 1. Необходимо на С++ (дано свыше, что именно С++) реализовать систему учета времени жизни объектов (наподобие Java, С#, VB). Цель - повышение надежности программы, упрощение подхода к написанию программ в рамках языка C++, сокращение времени на отладку, сокращение размера исходного кода, повышение читабельности и обслуживаемости. COM не предлагать. (тысячи причин, кому интересно - в отдельный топ). Хотя, в решении предусмотрена некая совместимость с COM. (Полно готовых COM-компонентов используется в проекте). При этом необходимо обеспечить "прозрачность" этого механизма для программистов, использующих технологию, а так же сохранить возможность для множественного наследования реализации объектов, использующих данную технологию (в противовес технологиям Java, С#, VB, где множественно наследовать можно только интерфейсы). Решение? Потом выложу свое с исходниками и докой (просто охота перед этим хотя бы пару ответов услышать). 2 funikovyuri Именно виртуальное именно наследование (а не только виртуальные функции-члены) использовано зело широко как основа технологии. ---------------- 2. Необходимо разработать удобную потоковую библиотеку в целях упрощения работы с потоками разной природы (файлы, память, строки) и инвариантной сериализации объектов в разных форматах (текстовом, бинарном). Предусмотреть возможность использовать библиотеки в семействе алгоритмов STL. Решение? (и во сколько строк?) Применение виртуального наследования сэкономило размер исходного кода примерно вдвое. (В доках есть диаграммы наследования) -------------- 3. Необходимо разработать гибкую событийную модель, не уступающую возможностям C#. Разработана - превосходящая по возможностям. (Событийная модель Java, к примеру, причина моего прохладного к ней отношения... топОрно...) 2 AISOFT again А обломать мне рога очень легко - дай мне реальную задачку из области программирования, заведомо имеющую решение (в рамках языка С++ для чистоты эксперимента), но которую я не смог бы решить. Да и для чего людям "рога ломать"? - превращать их в серости всякие? Мне рога обломать трудно хотя бы из-за некоторых черт характера, 12-ти летнего успешного опыта и высокой трудоспособности. ЛЮБЫЕ задачи, принципиально имеющие решение можно решить , big deal. К тому же их можно еще и НЕПЛОХО решить. Удивительно желание отдельных индивидумов безосновательно "попускать" коллег - взгляни на свой первый пост в этом топе. С ЧЕГО ЭТО ТЫ ВСЕ ЭТО ВЗЯЛ, умник ? (вполне вежливое обращение, по сравнению с другими топами). На свой жизненный "опыт" опираемся? Да на "сломанные рога"? Или у нас только идиоты программы пишут, а все гении - там? А насчет русского языка - ты прав, тщательнее надо! Только вот времени на проверку своих постов маловато и пишу их зело быстро, порой мимо клавиш. Да и пользуюсь русским языком в последнее время нечасто, так что практики не хватает. ЗЫ Дайте кто-нить FTP, куда бросить, - если на FTP фирмы выложу и народ туда ломанется - мне мало не покажется. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 22:41 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
vdimas Хм, приведу несколько цитат: 1) 'Предметная область - бизнесс-приложение. Т.е. учет документов, денег, материальных ценностей, людских ресурсов, и т.д. и т.п. ' 2) 'На клиентской части работало 2 чел. Клиентская прога, LineCounter показывает: lines=257473, code=174520, comments=45857, ...' 3)'Постановку в студию! Всего лишь парочка из множества задач в последнем проекте. ---------- 1. Необходимо на С++ (дано свыше, что именно С++) реализовать систему учета времени жизни объектов (наподобие Java, С#, VB). Цель - повышение надежности программы, упрощение подхода к написанию программ в рамках языка C++, сокращение времени на отладку, сокращение размера исходного кода, повышение читабельности и обслуживаемости. COM не предлагать. (тысячи причин, кому интересно - в отдельный топ). ' А теперь вопросы: 1) Как пункт 1, связан с пунктом 3 и, причем здесь пункт 2? 2) А не проще, было бы, C# использовать? 3) Какой SQL SERVER использовался в проекте? 4) Какие проблемы решает, в данном проекте, использование трехуровневого приложения? Вдогонку - 12 лет стажа, это не стаж - это детство, которое и объясняет твое хамство и самоуверенность. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2003, 23:36 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
А теперь вопросы: 1) Как пункт 1, связан с пунктом 3 и, причем здесь пункт 2? Чьи пункты, мои или ваши? После уточнения обязательно отвечу. 2) А не проще, было бы, C# использовать? Как интерфейс к Java-сереверу приложений используется CORBA . CORBA генерирует гораздо меньший траффик чем .NET Remoting . Клиенты работают с системой через интернет. Клиентское приложение, целиком написанное на C++, одинаково хорошо чуствует себя как на P133 32M, так и на P4 512М. Клиентская часть предназначена для повсеместной установки в госпиталях, техника там разная. .NET будет там порой еле "пыхать". 3) Какой SQL SERVER использовался в проекте? В данном - ORACLE. 4) Какие проблемы решает, в данном проекте, использование трехуровневого приложения? Довольно сложная (рутинная) бизнесс-логика, и, к тому же, заведомо будет дополняться (количество инструкций на обслуживание медицинского оборудования разных классов просто поражает воображение, каждый год выходит очередной дополнительный "талмуд", это все в штатах). Сердце приложения - на Java, это middle-tier. Клиент получает довольно "тонкое" приложение, которое работает весьма шустро через обычный Dial-UP, система оптимизирована для работы даже на медленных соединениях. Первоначальный вариант проекта был на JSP (функциональный аналог нынешнего ASP.NET), но быстродействие загрузки JSP страниц совершенно не устраивало при Dial-UP соединении. Сейчас клиент работает "мгновенно", т.к. передаются только "голые" данные, да еще и в бинарном представлении. (камешек в сторону Web-Services) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2003, 01:46 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 AISOFT Вдогонку - 12 лет стажа, это не стаж - это детство, которое и объясняет твое хамство и самоуверенность. А нечего заочно (не глядя) оценки выставлять да попускать - плохая привычка. Всегда рискуешь нарваться на хамство. Тщательнее, доказательнее... :) С этих вопросов (см. предыдущий пост) и стоило начинать, и только потом ставить оценки. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2003, 01:52 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2vdimas: при всем уважении - такого термина не существует ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 08:06 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2vdimas: Ты называешь виртуальным наследованием - процесс использования virtual base classes - интересно с чего? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 08:33 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 funikovyuri google:Виртуальное наследование Это оно и есть. Мне кажется, что это, все-таки, термин... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 11:15 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
забей - мы ведь друг друга поняли. Я с таким термином, по крайней мере часто, не встречался. У корефеев оно вроде тоже не фигурирует. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 11:27 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
vdimas Я привел три цитаты и задал вопрос - Как цитата 1, связана с цитатой 3 и, как цитата 1 и 3 связаны с цитатой 2? Уточняю, цитаты я привел я, взяты они из твоих писем и все письма по одной теме. Надеюсь, что я ничего не путаю? Так что, отвечать будешь или опять что-то не понятно? А насчет 'тонкого клиента' - Клиентская прога, LineCounter показывает: lines=257473, code=174520, comments=45857, ...- это как? Кроме того, расскажи народу, сколько времени у тебя заняло решение твоей проблемы, и какой там объем кода (в строках)? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 14:38 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
Обстановка у вас тут напряженная, как я погляжу... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 14:50 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
AISOFT vs vdimas Это просто антагонизм между разработчиком/проектировщиком (прикладным программистом) и системным программистом/кодером. Достаточно прочитать только "...Писание бизнес приложений - мера вынужденная, потому как кормит, хотя и скучноватая область...." В свое время, при проверке аудиторами/рейтинговой компанией, от нас тоже потребовалось сообщить кол-во строк кода. Впрочем, ясно, что цифры нужны были формально. Встал, однако вопрос - как их считать? Как учитывать напр., dfm (пишем на Delphi), а как хранимые пр-ры и пр. Позднее выяснилось, что на западе существ. устоявшаяся классификация. Точно не помню, но большим считается проект примерно от 200-300 тыщ строк. Хотя оценки эти, повторюсь, формальные. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2003, 19:23 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 aag Да, я системщик, потому что имею опыт проектирования систем, и потому что в основном применяю системный подход. :) (и недолюбливаю XP-стиль). А попробуй разработать сетевой протокол или компилятор, или распределенную информационную систему без системного подхода (это то, чем я занимался в "прошлой" жизни). Да, бизнес-приложения - скучноватая область. Это опускает меня в чьих-то глазах? Или позволяет называть меня "кодером"? В проекте, о котором идет речь, мне на "откуп" дано проектированиие с 0-ля клиентской части системы. Люди, которые так решили, знали, что архитектуру приложения я спроектирую как никто другой. И "закодю" соответственно. :) Или что, хорошо "кодить" – уже стало стыдно? А покажите мне живого человека, который на С++ хорошо кодит (я таких только изредка разве что в и-нете встречаю). Такие люди попадаются гораздо реже архитекторов (которых развелось как собак нерезанных, дармоедов). Или качество программного продукта уже никого не интересует? А внешний вид? А функциональность и дружественность интерфейса? Может ли заказчик, в большинстве не специалист, предъявить достаточно подробное ТЗ? Дай бог, что бы он внятно смог сформулировать общие цели, и ему в этом еще помогать и помогать. Про удобство ввода и представлении информации заказчик вообще никогда ничего внятного сказать не может, т.е. это на совети разработчиков. (а совести обычно немного). И дальше начинается самое интересное кино. Того, что в ТЗ нет, МЫ НЕ ДЕЛАЕМ! Ха-ха-ха. И плодятся серые, безликие, неудобные в обращении программы, которые, прочем, соответствуют своей спецификации. А спор начался на самом деле из-за декларируемых цифр по производительности труда программиста С++. AISOFT утверждает, что задекларированные 200 строк в день в среднем возможны только методом copy&paste. И я ведь его понимаю. На фирме, в которой он занимет некоторую должность ( может даже самую высокую) все происходит "стандартным" для последних нескольких лет способом: кто-то проектирует проект (обычно это 1-2 единственных грамотных человека на фирме, но большую часть своей жизни они теперь проводят за бумагами или их электронным аналогом, так что реальной пользы от них немного). Затем всякие team-lider-ы задают работу "кодерам" самого низкого звена, планируют и координируют их труд. На каждого такого кодера приходится 0.5-1.5 тестера - именно таким образом может достигаться некая надежность программ. Дай бог, чтобы в его фирме приходилось 30-40 строк в день на человека при такой организации труда. Это уродство происходит от наивной веры в то, что количество (кодеров + тестеров) может перерасти в качество. НИКОГДА! Программный продукт или качественный изначально, или характеризуется лишь отношением отловленных ошибок к их общему числу. Никто не пишет без ошибок, речь может идти лишь о вероятности их возникновения. Но эта вероятность может отличаться на порядки. Я как-то работал в подобной фирме. Для выполнения своей работы мне достаточно было “поковыряться” 1 час в день. Качество проекта, над которым работали было УЖАСАЮЩЕЕ (для авторов, разумеется, это было само совершенство). (Кстати – очень известная фирма, делающая очень серьезные вещи). На многие участки кода без слез смотреть было невозможно. Быстродействие – на уровне VB (а это C++). С первого дня я стал засыпать team-lider-ов тонной предложений по реальному упрощению и переделке многих моментов в программе, настаивал на рефакторинге. ВСЕ НАПРАСНО! На этот «отлаженный» код боялись «дунуть». (Это же сколько получится зарплаты напрасно выдали тестерам, если взять, да переделать) Обещали, что вот когда начнем разрабатывать следующую версию, тогда, мол, подключим тебя к проектированию, заодно сразу, по-типу, за качеством кода будешь следить... Я не «дожил» до следующей версии, потому как уже на второй месяц почуствовал, что деградирую... Да и Unreal с Tactical Operation поднадоел. И ушел. В маленькую, но очень динамичную команду. Времени в обрез. Но я крайне доволен. (AISOFT опять скажет, что я мальшишка, вместо того, чтобы заняться карьерой, раз фирма известная, занимаюсь, видите ли "интересными" вещами. Ответ: когда надоест работать - займусь карьерой, пока предложений о работе в серьезных фирмах хватает. Денег, кстати, тоже.) Дальше, насчет copy&paste. Если кто имеет опыт написания клиентских прог на С++, скажите, во сколько строк примерно обходится форма, на которой около 50-ти дата-контролов? Форма выполняет поиск, редактирование, ввод и первичную валидацию данных, корректное реагирование на ошибочные ситуации с выводом всяких сообщений. Так сколько в среднем? Форма для таких операций у меня занимает в среднем - 100 строк! Все! Куда меньше? Из них 50 – объявление переменных, и еще 50 – спецификация data-bindings. Остальное работает посредством механизма, реализованного в базовых классах, оперируещего мета-информацией. Для приведенных операций этого достаточно. Я свой код практически не отлаживаю (слово "практически" - ключевое). Я предпочитаю его пр о думывать. И на момент механической “выкладки” кода в исходник, он уже прилично отлажен в голове или схемах на бумаге. Это – кодирование? Ну конечно кодирование. Любой алгоритм перед исполнением на ЦП должен быть закодирован. (В студенческие годы я увлекался поиском оптимальных способов кодирования состояний конечных автоматов). И если сейчас, имея шикарные вижуал студии со всякими вижуал ассистами, с удобной навигацией, с утилитами для авто-документирования кода и реверс-енженирингом UML диаграмм (…вписать еще 50 фишек ...), если используя все это, кто-то умудряется писать так, что на одного программиста требуется один тестер – нафиг из отрасли! НА-ФИГ! Хватит дискредитировать интересную и почетную профессию. А то жалуемся – к программистам отношение в последнее время, как к слесарям... Сами дураки! Нефиг «слесарно» работать. (ни к кому лично, но все же ...) Сейчас идет бета-тестирование, через пару недель дам ссылку на свою последнюю программку. Тонкий такой клиент, форм на 300... Всем сорри за дурацкое настроение. Да, чуть не забыл: Если программист не знает предметной области и методов проектирования Предметной области чего? Клиент достаточно «тупой», т.е. я на клиенте не учитываю деньги ресурсы и пр. Я отображаю и позволяю вводить ДАННЫЕ, в самом широком смысле этого слова. Боюсь, что именно в плане понимания всех тонкостей работы с данными, и методов проектирования систем обработки данных (причем, на всех уровнях, а не только на уровне кружочков и стрелочек) уважаемый AISOFT далеко в форватере. Я имел ввиду, что не очень лезу именно в тонкости и правила учета медицинского оборудования, потому как существуют четкие спецификации, не оставляющии простора для двоякого толкования. Предпочитаю спроектировать систему так, чтобы эти тонкости легко можно было настраивать, а не вбивать их в код (тогда уж точно пришлось бы досконально изучить прикладную область, но я предпочитаю оставлять это право специалистам, и в руки им давать инструмент ) 1) Как пункт 1, связан с пунктом 3 и, причем здесь пункт 2? П.1. – это декларация того, что нет ничего необычного в бизнес-приложении. П.3. это ответ на предложения применить С#, и + реальный способ уменьшить число строк в программе (из-за этого собственно сыр-бор). Если бы не п.3. программа была бы примерно на 25% больше, примерно вдвое больше времени потребовала бы на отладку. П.2. – собственно ответ автору топика (а не AISOFT-у). И какого лешего эти пункты из совершенно разных моих постов понадерганы и в кучу свалены??? В топах я отвечал на совершенно различные вопросы, а не выписывал единый художественный рассказ. Вообще спор у нас о чем? Что 200 строк в день не бывает при качественном подходе? Бывают разные качественные подходы ! Вопрос закрыт. 2 aag again У меня в качестве шаблонов диалогов HTML страницы используются - порой там тоже немало строк. При подсчете я это не учитывал. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 07:30 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
Приветствую всех! Внесу и я свои 3 копейки :о)\\r \\r 2 n: \\r Есть ли у кого статистика скоко уходит времени на разработку "больших" \\r ..желательно со ссылками на источник информации. \\r \\r да определение больших проектов какое-то не четкое. согласен. \\r \\r Так что вам хотелось узнать: что такое сложный проект или/и сколько на сложный проект должно и обычно тратится времени?\\r Если исходить из определения сложных проектов от Уокера Ройса (W.Royce), то это проекты со своей экономической инфраструктурой. Поэтому такие "плоские" или бесструктурные меры в виде трудозатрат или sloc (кол-во строк кода) и их оценки, например, 100 человеколет или 1 млн.строк ни о чем не говорят, а только пугают новорожденных разработчиков. Как уже говорили "Серега" и "Дмитрий Мыльников" - все относительно и зависит от конкретной организации проекта. Теперь сколько должно тратиться. По поводу влияния организации на исход проекта загляните в топик Все мы чего-то автоматизируем (стр.2) (пост Дата: 25 июн 03, 00:08). Там я писал о тех "П"-составляющих (проект, персонал и процесс), к-рые определяют успех и просто жизнеспособность проекта. Теперь исходите из того, что в той же России у большинства софтверных компаний как минимум только процесс организован через Ж. Стоит ли говорить об эффективности их работы и ориентироваться на их оценки тех же "больших" проектов? Стоит, если у вас процесс также организован через Ж. В упомянутом топике (пост Дата: 27 июн 03, 00:13) я также писал, что в РФ вообще традиционно (видимо наследие Совка) исследованием эффективности бизнеса мало где занимаются, а в ИТ-бизнесе и подавно, т.к там в основном управленцы - это неграмотная молодежь из вчерашних программистов или маразматики-староверы с совковым типом мышления (с) А.Болдин) поскольку ИТ-бизнес непривлекательный для прогрессивного и ориентированного на Запад менеджмента, т.к как низкоприбыльный по сравнению, например, с тем же нефтегазом, торговлей или финансами.\\r Также исходите из того, что в России часто проект намеренно затягивается и делается большим и даже очень большим, чтобы получше "подоить" заказчика\\r \\r 2 AISOFT: \\r Если программист не знает предметной области и методов проектирования, то кто он, если не машинистка, со знанием языка? \\r \\r Нет, он именно программист . Да, с методами проектирования и архитектурой программист должен быть знаком, но у программиста помимо проектирования и так полно работы, если, конечно, работа правильно организована. Даже кодирование по готовой спецификации требует знаний, опыта и зачастую мастерства, а тем более если используются различные среды разработки (Delphi, VB, Java) и платформы (Net, J2EE, MSSQL, Oracle). А если программисту иногда делать нечего, то у него закономерно возникает желание изучить предметную область или попроектировать, чтобы занять или как-то проявить себя. Однако, когда программист - это все в одном (аналитик, проектировщик, тестер и т.д.), то такой подход в организации неэффективен поскольку он идет в разрез со специализацией и профессиональным совершенствованием. В США, Канаде, Европе или в той же Индии многие компании давно осознали преимущества специализации и инженерного подхода . При таком подходе ничего уже не зависит от одного конкретного человека, к-рый знает все. В России же ПО как правило создается по старинке и кустарно-творчески - "каменный век" по части процесса, когда успех проекта завязан на конкретных людей и масса существенной информации сидит в головах или в неформальной документации типа самостийных ТЗ и программных комментариев. Если хотите, то могу дать ссылки на топики, где уже все это основательно обсуждалось, чтобы не повторяться\\r \\r Ага, при наличии детальной пошаговой спецификации и предварительного проекта можно кодировать и 500 строк в день. Вот только кто-то же должен и спецификацию написать и проект выполнить и тесты провести. Или здесь только одни писатели (машинистки) собрались? \\r \\r Да, собственно для этого и нужны аналитики-проектировщики, чтобы серьезные программисты не отвлекались на всякое проектирование с тестированием. Хотя если программист стоит < 500$/мес., то можно его и в магазины за канцтоварами посылать или заставить тестировать программу методом ручной задницы даже если от такого его тестирования толку как в дырке от бублика :о)\\r \\r 2 vdimas: \\r 1. Необходимо на С++ (дано свыше, что именно С++) реализовать систему учета времени жизни объектов (наподобие Java, С#, VB). \\r Цель - повышение надежности программы, упрощение подхода к написанию программ в рамках языка C++, сокращение времени на отладку, сокращение размера исходного кода, повышение читабельности и обслуживаемости. \\r \\r Это, конечно, здорово - "встроенные" механизмы по уничтожению ненужных объектов, но как это скажется на "размере исходного кода", читабельности и обслуживаемости"? Это я к тому, что архитектура все равно должна быть корректной и только дополнительные средства языка не решат проблему\\r \\r Потом выложу свое с исходниками и докой (просто охота перед этим хотя бы пару ответов услышать). \\r \\r Если не секрет, а что именно планируется выкладывать кроме частичных исходников и докуметации пользователя? Моей скромной персоне, например, реализация на С++ мало что скажет, если там туча даже хорошо комментированного кода. Вот UML-модели SUC, анализа и проектирования (статические/динамические) я бы мог как-то оценить, их корректность по отношению к требованиям и трассировке хотя бы\\r \\r Дайте кто-нить FTP, куда бросить, - если на FTP фирмы выложу и народ туда ломанется - мне мало не покажется. \\r \\r IIS вообще позволяет ограничивать число соединений для конкретного ftp-сайта. IMHO любой приличный ftp-сервер под Unix тоже должен позволять\\r \\r 2 aag: \\r Встал, однако вопрос - как их считать? Как учитывать напр., dfm (пишем на Delphi), а как хранимые пр-ры и пр. \\r Позднее выяснилось, что на западе существ. устоявшаяся классификация. Точно не помню, но большим считается проект примерно от 200-300 тыщ строк. \\r Хотя оценки эти, повторюсь, формальные. \\r \\r Да уж, заформалинили своим формализмом всем мозги, что они у многих уже не работают. Вообще подобные т.н "оценки" высосаны из пальца и в стиле ИТ-болтологов из ЭСМИ, а вовсе не от серьезных экспертов из SEI или ISO. Действительно почему не считаются другие программные ресурсы, также требующие значительных трудозатрат, например, та же документация пользователя? А как насчет сложности предметной области и соответственно качества ее модели? Что насчет требований к надежности и производительности ? Значит получается, что большой (300 тыс.sloc) проект, например, для Web-app, к-рое падает под нагрузкой "круче" и закономерно должен стоить дороже, чем маленький (100 тыс.sloc) проектик для приложения, но к-рое надежно работает :о) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 08:35 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 vdimas Не понимаю как связаны "функциональность и дружественность интерфейса" с разработкой сетевого протокола или компилятора. И кстати, архитектор для разработки хорошего компилятора нужен не меньше, чем для бизнес-приложения. А бизнес-приложения бывают - вы не поверите - даже более сложные, чем компиляторы. То что вы усматриваете "скучноватость" бизнес-приложений, в моих глазах вас не опускает. Но - вкупе с определенной скороспелостью и максимализмом др. ваших высказываний выдает в вас скорее Художника :), творца более, чем инженера. Ибо инженер не будет "мы разработали потоковую супербиблиотеку, в 10 раз круче, чем такая-то..." и пр. Он скажет "Мы разрабатывали такую-то (бизнес) систему, для реализации таких-то ф-ций по таким-то причинам нам пришлось написать свою потоковую библиотеку. Кстати, ваше убеждение, что архитекторов как собак нерезанных, весьма ошибочно. Гораздо больше как раз тех, кто может придумать новый сетевой протокол. 2 Репликант Конечно, млн. строк ничего не говорит о сложности проекта. Но я же и писал -это формальная оценка. Смысл в том, что как правило, все-таки, проект в млн. строк кода является вовсе не одной длиинннннной программой, без начала и конца, это Система и она - как правило, опять же, - сложнее чем проект в 100 тыщ строк. Проекты же в 300 и в 100 тыс. относятся к одной категории величины (это отностительно вашего последнего примера). В любом случае, разумеется кол-во строк никак не служит показателем сложности/успешности/надежности и пр. проекта. Это - просто некий формальный показатель величины, который иногда используют на западе. Впрочем, согласен с тем, что излишне формальный и высосанный. Лично мне для оценки сложности проекта, наверно, удобнее узнать о его функционале. "...успех проекта завязан на конкретных людей..." Это может быть и специализации и инженерного подходе - когда все завязано на одном руководителе проекта. Жесткое разделение на аналитиков/кодеров/тестеров/юзабилистов/далее-по-вкусу-еще-штук-десять-специализаций далеко не всегда выгодно - напр. оно явно не выгодно для небольших проектов. И в подходе с позиций ХП-программирования, совмещение аналитика, тестера и программиста вполне возможно - если! - если это опытный разработчик. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 14:47 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
vdimas 1) Насчет карьеры, я тоже всю жизнь занимаюсь, тем, что мне интересно, все остальное приложение к этому. 2) У нас на человека приходится в среднем порядка 130-150 строк в день. 3) 200 строк - это 200*22*11=48400, пускай 50000 строк в год, но никак не 100000 строк и даже не 85000. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 16:02 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 AISOFT\r \r на клиентской части работало 2 человека. \r 174520/12/26/2=280\r \r 130-150 ваших - неплохо, лучше, чем в той конторе, которую я упоминал.\r \r 2 aag\r Он скажет "Мы разрабатывали такую-то (бизнес) систему, для реализации таких-то ф-ций по таким-то причинам нам пришлось написать свою потоковую библиотеку. \r Разумеется именно так все и было, в условиях маленькой команды необходимость каждого "ответвления" в процессе разработки тщательно обосновывается.\r А разговоры про круче относились к вопросу "почему именно на с++?". Т.к. только такой язык позволил решить эту задачу весьма элегантно и смешным количеством строк (для потоковой библиотеки).\r \r см мой пост ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 16:53 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
Visual Modflow три человека за 5 лет 40 мегобайт текста на С++ ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2003, 21:08 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
vdimas> ... "почему именно на с++?" Т.к. только такой язык позволил решить эту задачу весьма элегантно и смешным количеством строк ... А какие еще языки тестировались и как? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2003, 01:07 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 c127 А какие еще языки тестировались и как? шутник, однако... тестирование языков... :) в течении последних 12 лет "тестировались" следующие языки: Asm: z80, x48, x51, x80, x86, PIC, Fortran, Forth, Lisp, Prolog, M(Matlab), C, C++, Pascal, Delphi, VB, VBA, VBScript, JavaScript, Perl, Java, C#, VB.NET, MC++ Тестировались по-всякому. Например в 1994-м на Forth-е был написан полноценный assembler x51 за 3 дня и занял он 600 строк. Я уверен, что на С++ это заняло бы минимум 2 месяца и минимум 10000 строк. Но конкретно для этого случая (потоковая библиотека) - более минимального решения из перечисленных технологий нет, т.к. ни одна из них помимо С++ не поддерживает множественного наследование имплементаций. Вопрос был по-приколу? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2003, 05:59 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 aag: \r 2 vdimas\r Кстати, ваше убеждение, что архитекторов как собак нерезанных, весьма ошибочно. Гораздо больше как раз тех, кто может придумать новый сетевой протокол. \r \r Золотые слова... :о)\r \r В любом случае, разумеется кол-во строк никак не служит показателем сложности/успешности/надежности и пр. проекта. Это - просто некий формальный показатель величины, который иногда используют на западе. Впрочем, согласен с тем, что излишне формальный и высосанный. \r \r А для чего, например, на Западе или в России sloc используется? Я слышал что-то такое невнятное, но просто интересно узнать точки зрения людей, к-рые не поверхностно, а зрят в корень :о)\r \r Лично мне для оценки сложности проекта, наверно, удобнее узнать о его функционале. \r \r Да, именно так и надо оценивать, отталкиваясь от функционала (в самом общем смысле), но только не сложность проекта , а сложность функционала . Хотя существует неоднозначная связь между первым и вторым, как и между первым и сложностью архитектуры . Это я к тому, что, например, проект 1 человека в течение 100 лет по реализации системы с очень сложным функционалом/архитектурой не будет сам по себе сложным. И тот же очень сложный функционал можно реализовать как сложной так и не очень архитектурой. То есть проект все-таки надо оценивать именно как проект , т.е по характеристикам проекта, а не по характеристикам того, что в этом проекте создается\r \r "...успех проекта завязан на конкретных людей..."\r Это может быть и специализации и инженерного подходе - когда все завязано на одном руководителе проекта. \r \r Да, но если сразу появляется такое лицо, на к-ром все завязано не в смысле того, что не хватает людей, а в смысле того, что есть некто, кто владеет критичной информацией - это уже плохо. Конечно, сюда не входят исключительные случаи, когда в проекте есть люди, например, эксклюзивно владеющие какой-то технологией или знаниями. Инжерный подход позволяет уменьшить число таких людей, формализовав технологические процессы и артефакты в проекте. Кстати, за процессы управленцев и прочих руководителей инженерный подход не отвечает, т.к это вопрос из области менеджемента \r \r .. Жесткое разделение на аналитиков/кодеров/тестеров/юзабилистов/далее-по-вкусу-еще-штук-десять-специализаций далеко не всегда выгодно - напр. оно явно не выгодно для небольших проектов. \r \r Согласен, что невыгодно! Однако, в этом плане эффективность небольших проектов, где люди достаточно часто переключаются между разными видами деятельностей (ролями) меньше , чем в проектах, где такого "переключения" нет и люди оттачивают свои навыки (анализ, проектирование, программирование, тестирование и т.д). Т.е, как говорится, экономим на одном, но теряем на другом\r \r .. И в подходе с позиций ХП-программирования, совмещение аналитика, тестера и программиста вполне возможно - если! - если это опытный разработчик. \r \r Кстати, это также является одним из недостатков XP. (Другие недостатки XP обсуждались в топике XP or ^XP?)\r \r \r 2 Lepsik: \r три человека за 5 лет 40 мегобайт текста на С++ \r \r Мда-а.. 40 мег на С++ - этот объем заслуживает уважения. Интересно, а как они в своем проекте ориентировались и развивали в плане требований или архитектуры? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2003, 08:23 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 vdimas Лично мне немного непонятно, почему говоря о бизнес-приложениях , вы все время переключаетесь на потоковые библиотеки, протоколы и пр. чисто технические, системные вещи. Ибо для бизнес-приложений , по-моему, смехотворно утверждать, что "только на с++" (или только на Delphi, или ...). 2 Репликант А для чего, например, на Западе или в России sloc используется? Я слышал что-то такое невнятное, но просто интересно узнать точки зрения людей, к-рые не поверхностно, а зрят в корень :о) Понятия не имею - я простой разработчик. Я дяденька, не сварщик, я маску на стройке нашел :). Однако, в этом плане эффективность небольших проектов, где люди достаточно часто переключаются между разными видами деятельностей (ролями) меньше, чем в проектах, где такого "переключения" нет и люди оттачивают свои навыки (анализ, проектирование, программирование, тестирование и т.д). А как определить эффективность проекта? Это тоже самое что его успешность или нет? По-моему, чаще всего успешность зависит в значительной мере от вещей, совершенно не связанных с техн. реализацией проекта. К тому же, мне известна одна действительно крупная софтверная компания, в которой аналитики действительно отделены от кодеров. И известно о провале по-крайней мере одного проекта, причем это разделение косвенно также сыграло свою роль - аналитакам наплевать, какая будет реализация, а программистам наплевать, что думаю аналитики (что еще хуже), - у семи нянек, как известно... Я думаю, проблема в том, что разработка крупных проектов, на мой взгляд, по-прежнему остается Искусством (а не наукой). И применение того или иного подхода, не гарантирует успеха. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2003, 13:17 |
|
Есть ли у кого статистика скоко уходит времени на разработку "больших"
|
|||
---|---|---|---|
#18+
2 aag Я думаю, проблема в том, что разработка крупных проектов, на мой взгляд, по-прежнему остается Искусством (а не наукой). И применение того или иного подхода, не гарантирует успеха. Сказал вслух то, что многие про себя думают. Репликант с одной стороны сторонник того мнения, что "правильные" подходы - несомненный залог успеха, с другой строны неоднократно подчеркивает необходимость сверх-высокого профессионализма, требуемого от специалиста одного с ним рода деятельности (системные аналитики и проектировщики, я, в свою очередь, настаиваю, что профессионализм должен быть на всех уровнях). Если учесть, что сверх-высокого профессионализма (причем неважно в какой области) достигают немногие, а только заведомо предрасположенные к этому личночти (читай - способные, талантливые и т.д.), то роль влияния личности на судьбу проектов (больших или маленьких) преуменьшать не стоит. Проектировшик может "обезопасить" себя от неожиданности потери грамотного программиста, ограничив его полномочия (влияние, ценность и т.д.). Но кто спасет проект если случиться потеря грамотного проектировщика? (кто будет сторожить сторожей?) Т.е., применяя "правильные" подходы, мы можем увеличивать вероятность успеха только до определенного уровня. Начиная с некоторого уровня, хотим мы этого или не хотим, успех - это "птица цвета ультрамарин". RUP - это всего лишь один из проверенных и обкатанных "алгоритмов". Не сомневаюсь, что существуют другие неплохие "алгоритмы". Вопрос надо ставить так, что лучше всего все же придерживаться некоего "алгоритма" при разработке, желательно проверенного, напр. RUP. В основе проектов должны, в первую очередь, лежать ИДЕИ (я не беру достаточно стандартные проекты, колторые легко решаются на той же 1С, превращая спор о достоинствах С++ и Дельфи в пустопорожнюю болтовню), а алгоритм может разве что "подсказать" нам как не просрать хорошую идею. Я думаю, что два этих понятия (идея - реализация) паритетны. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2003, 16:45 |
|
|
start [/forum/search_topic.php?author=Bandito1&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
160ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
70ms |
get tp. blocked users: |
1ms |
others: | 23879ms |
total: | 24180ms |
0 / 0 |