Оценка сроков проекта. Калькулятор сроков проекта. Как определить дедлайн проекта

Аналог данного калькулятора мы используем для оценки сроков этапа проекта. 

На входе мы имеем:

  • количество часов по смете
  • сколько часов в день мы можем уделять проекту 
  • сколько дней в неделю мы планируем работать над проектом
  • есть ли в этапе проблемные места, которые увеличивают неопределенность по этапу (например, интеграция нового API)
  • насколько долгой может быть приемка (тут много зависит от заказчика, задержек с его стороны). Для каждого проекта это будет своя величина, которую можно определить по историческим данным

На выходе - получаем количество рабочих дней, календарных дней и дату дедлайна (в нашем демо-случае считаем от текущей даты).

Примечание: калькулятор не учитывает праздничные дни.

Как реализовать калькулятор оценки сроков на Falcon Space

Колонки формы: 

GetItem формы: 

CREATE PROCEDURE [dbo].[fm_calcStageDeadline_getItem]
    @itemID int,	
	@username nvarchar(256)
AS
BEGIN
	-- SELECT 1
	select 320 hours, 4 dayLoading , 5 acceptDays, 7 acceptDays 
    -- SELECT 2
   	select 1 LineLabel, 'h4' headerTag
END

SaveItem формы: 

CREATE PROCEDURE [dbo].[fm_calcStageDeadline_saveItem]
   @username nvarchar(256), 
   @itemID int, 
   @parameters ExtendedDictionaryParameter READONLY	
AS
BEGIN
    declare @phours float
	select @phours = try_cast(Value2 as float) from @parameters where [key]='hours'
	declare @pdayLoading float
	select @pdayLoading = nullif(try_cast(Value2 as float), 0) from @parameters where [key]='dayLoading'
	declare @pdaysInWeek float
	select @pdaysInWeek = try_cast(Value2 as float) from @parameters where [key]='daysInWeek'
	declare @pacceptDays int
	select @pacceptDays = try_cast(Value2 as int) from @parameters where [key]='acceptDays'
	declare @phasProblemPoints bit
	select @phasProblemPoints = try_cast(Value2 as bit) from @parameters where [key]='hasProblemPoints'

	declare @workDays float =  @phours / @pdayLoading + @pacceptDays
    if(@phasProblemPoints = 1) set @workDays = @workDays * 1.2
    
    declare @allDays float  = 7 * @workDays  / @pdaysInWeek
    
    declare @msg nvarchar(max) = 'Рабочих дней - ' + cast(cast(@workDays as decimal(18,1)) as nvarchar) + '
'+ 
    	'Календарных дней - ' + cast(cast(@allDays as decimal(18,1)) as nvarchar) + '
' + 
        'Срок - '+ convert(nvarchar(10), dateadd(day, cast(@allDays as int)+1, getdate()), 104)

	-- SELECT 1 
	select 1 Result, @msg Msg, '' SuccessUrl, 0 HideFormAfterSubmit, '' RefreshContainer
END 

 

Насколько полезна эта возможность?

Последние обновления

Форма генерации счета

Файлы и документы 10.01.2025

Платформа Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки

Это быстрое внесение изменений

по ходу эксплуатации программы

Это современный интерфейс

полная адаптация под мобильные устройства

Сайт использует Cookie. Правила конфиденциальности OK