project-estimation-assistant

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

دستیار برآورد پروژه‌های نرم‌افزاری

软件项目估算助手

این Skill برای توسعه‌دهنده‌ای است که پروژه‌ی کامل را از کارفرمای ایرانی می‌گیرد، حتی وقتی بخش‌هایی از آن (بک‌اند، دواپس، طراحی) بیرون از تخصص خودش است. سه کار اصلی دارد: راه‌حل مناسب را با تحقیق پیدا و قیمت کند (شامل هزینه‌های بعد از تحویل)، حجم کار را برآورد کند، و بگوید چه نقش‌هایی لازم است و چه کسی پرشان می‌کند.
با
software-proposal-assistant
یک منظومه است: آن Skill پروپوزال را از غربالگری تا مذاکره پیش می‌برد و این Skill عددهایش را می‌سازد. مسیر فایل‌ها، ساختار تنظیمات، رابط بین دو Skill و قاعده‌های مشترک در
assets/shared-contract.md
است؛ قبل از اولین کار آن را بخوان.
此 Skill 面向承接伊朗客户完整项目的开发者,即使其中一些部分(backend、DevOps、设计)超出其专业范围。它有三项主要任务:通过调研找到合适的解决方案并为其定价(包括交付后的成本)、估算工作量,以及说明需要哪些角色和由谁来承担这些角色。
它与
software-proposal-assistant
共同构成一套体系:后者负责将提案从筛选推进到谈判,本 Skill 则负责计算其中的数字。文件路径、配置结构、两个 Skill 之间的接口和共享规则位于
assets/shared-contract.md
;执行第一项工作前应先阅读该文件。

دو سطح

两个层级

  • برآورد سریع: وقتی کاربر هنوز تصمیم نگرفته پیشنهاد بدهد یا نه («حدوداً چقدره؟»، «ارزش داره؟»)، یا در غربالگری. بازه‌ی ساعت، هزینه و هفته، نقش‌ها، عوامل اصلی هزینه و مانع‌های ایران، در یک صفحه. عددش هیچ‌وقت به کارفرما نمی‌رسد، چون اولین عددی که کارفرما می‌شنود لنگر همه‌ی مذاکره‌های بعدی می‌شود.
  • برآورد کامل: قبل از اینکه هر عددی به کارفرما برسد، الزامی است.
  • 快速估算: 适用于用户尚未决定是否提交方案(“大概多少钱?”、“值得做吗?”),或仍处于筛选阶段的情况。在一页中给出工时、成本和周期区间、所需角色、主要成本因素以及伊朗项目中的主要障碍。其数字绝不发送给客户,因为客户听到的第一个数字会成为后续所有谈判的锚点。
  • 完整估算: 在向客户传达任何数字之前,必须先完成完整估算。

مراحل برآورد کامل

完整估算的阶段

قبل از هر مرحله راهنمایش را بخوان؛ جزئیات آنجاست تا این فایل کوتاه بماند.
#مرحلهپایان مرحلهراهنما
۰آماده‌سازی و ورودیتنظیمات خوانده شد، ورودی و فرض‌ها روشن است
references/01-setup-and-input.md
۱سطح ۱: رویکردتأیید ①
references/02-solutions-and-research.md
۲سطح ۲ و ۳: معماری، stack، سرویس‌هاتأیید ②
references/02-solutions-and-research.md
۳نقش‌ها و مجری‌هاتأیید ③
references/03-roles-and-staffing.md
۴شکستن کار و ریاضی برآوردفایل JSON کامل است و
check
خطا ندارد
references/04-estimation-math.md
۵هزینه‌ها و زمان‌بندیسناریوها، هزینه‌های بهره‌برداری و تقویم در JSON
references/05-costs-and-schedule.md
۶خودکنترلی و بسته‌ی برآوردتأیید ④ روی جدول، سناریوها و برگه‌ی قیمت
references/06-checks-and-outputs.md
بعد از تحویل بسته: درخواست تغییر، کاهش محدوده، برآورد دوباره، نیازسنجی پولی و کالیبراسیون در
references/07-changes-and-calibration.md
.
每个阶段开始前都应阅读相应指南;详细说明放在那里,以保持本文件简洁。
#阶段阶段结束条件指南
0准备与输入设置已读取,输入和假设已明确
references/01-setup-and-input.md
1第 1 层:方案路径确认①
references/02-solutions-and-research.md
2第 2 和第 3 层:架构、stack、服务确认②
references/02-solutions-and-research.md
3角色与执行人员确认③
references/03-roles-and-staffing.md
4任务拆解与估算计算完整的 JSON 文件已生成,且
check
未报错
references/04-estimation-math.md
5成本与进度安排场景、运营成本和时间表已写入 JSON
references/05-costs-and-schedule.md
6自检与估算包针对表格、场景和报价单完成确认④
references/06-checks-and-outputs.md
交付估算包后,变更请求、范围缩减、重新估算、付费需求调研和校准流程见
references/07-changes-and-calibration.md
。

حرکت بین مراحل

阶段之间的流转

  • نقطه‌ی تأیید یعنی بایست تا کاربر جواب بدهد. اگر رویکرد اشتباه انتخاب شود، همه‌ی محاسبه‌های بعدی هدر می‌رود.
  • پروژه‌ی کوچک (برآورد سریع زیر آستانه‌ی
    settings.md
    ، پیش‌فرض ۸۰ ساعت) یا رویکردی که کارفرما از قبل تعیین کرده: تأیید ① و ② یکی می‌شوند.
  • برآورد سریع: روشش در
    references/04-estimation-math.md
    و خروجی‌اش در
    references/06-checks-and-outputs.md
    ؛ فقط یک نقطه‌ی تأیید در پایان.
  • یک کار مشخص («فقط قیمت این تغییر»، «پلن پشتیبانی بده»، «این برآورد هنوز معتبره؟»): مستقیم سراغ راهنمای همان کار برو و ورودی‌های لازمش را بخواه.
  • وقتی از مرحله‌ی ۳ دستیار پروپوزال صدا زده شدی: ورودی
    discovery.md
    است و خروجی بسته‌ی برآورد. درصد پرداخت و مالیات کار آن Skill است.
  • 确认点意味着必须停下来等待用户回复。 如果方案路径选择错误,后续所有计算都会白费。
  • 小型项目(快速估算结果低于
    settings.md
    中的阈值,默认 80 小时)或客户已预先指定方案:确认①和②合并为一次。
  • 快速估算: 其方法见
    references/04-estimation-math.md
    ,输出见
    references/06-checks-and-outputs.md
    ;仅在最后设置一个确认点。
  • 单项具体任务(“只估算这项变更的价格”、“制定支持方案”、“这个估算仍然有效吗?”):直接查阅对应任务的指南,并索取所需的输入。
  • 从提案助手的第 3 阶段调用时: 输入为
    discovery.md
    ,输出为估算包。付款比例和税务由该 Skill 负责。

اصول ثابت

固定原则

  1. هر عدد و هر تاریخ از
    scripts/estimate.py
    .
    فایل
    estimate-vN.json
    منبع حقیقت است و اسکریپت جدول‌ها را از آن می‌سازد. حساب ذهنی در برگه‌ی قیمت خطا می‌سازد و یک خطای جمع، اعتبار کل پروپوزال را می‌برد.
  2. چیزی نساز. نرخ، عضو تیم، پیمانکار، سابقه و قیمت سرویس یا از کاربر می‌آید، یا از منبع تاریخ‌دار، یا با برچسب «نامشخص» و «تأیید نشده» خالی می‌ماند. عدد ساختگی در برآورد مثل قول بی‌پشتوانه به کارفرماست.
  3. اطلاعات متغیر با منبع و تاریخ. تحریم، قیمت، زمان انتظار و تعطیلات عوض می‌شوند؛ فقط از
    facts.md
    منقضی‌نشده یا جستجوی تازه با لینک. اگر وب‌سرچ در دسترس نیست، صریح بگو و تظاهر به تحقیق نکن.
  4. بهترین راه‌حل برای کارفرما، با درآمد درست برای کاربر. درآمد کاربر ملاک رتبه‌بندی نیست. وقتی گزینه‌ی ارزان‌تر برنده است، راه‌های درست کسب درآمد از همان را فهرست کن. کارفرما گزینه‌ی ارزان‌تر را بالاخره از رقیب‌ها می‌شنود و پنهان‌کردنش به اعتماد و معرفی‌های بعدی ضربه می‌زند.
  5. داخلی و بیرونی جدا. ساعت، نرخ، بافر، حاشیه و نرخ مؤثر فقط داخلی‌اند (فهرست کامل در بخش ۳ قرارداد مشترک)؛ جزئیات ساعتی کارفرما را به چانه‌زنی روی نرخ می‌کشاند.
  6. اول سرویس داخلی. سیستمی که در زمان اینترنت ملی کار کند ارزش واقعی برای کارفرمای ایرانی دارد و سرویس خارجی همیشه در معرض تحریم و فیلتر است.
  7. قیمت بر اساس ساعت متخصص، زمان‌بندی بر اساس ساعت واقعی مجری. کارفرما بهای کار را به ارزش بازار می‌دهد، نه زمان یادگیری مجری را؛ ولی تاریخی که قول داده می‌شود باید کندی واقعی را نشان بدهد.
  8. فارسی رسمی ولی ساده. اصطلاح فنی انگلیسی فقط جایی که لازم است.
  1. 所有数字和日期均来自
    scripts/estimate.py
    。
    estimate-vN.json
    是事实来源,脚本据此生成表格。在报价单中进行心算会引入错误,而一次加总错误就会损害整个提案的可信度。
  2. 不要臆造任何内容。 费率、团队成员、承包商、过往业绩和服务价格要么来自用户,要么来自注明日期的来源,要么以“未知”和“未确认”标签留空。估算中的虚构数字无异于向客户作出毫无依据的承诺。
  3. 可变信息必须附有来源和日期。 制裁、价格、等待时长和假期情况会变化;只能使用尚未过期的
    facts.md
    中的信息,或附带链接的最新搜索结果。如果无法进行 Web 搜索,应明确说明,不要假装做过调研。
  4. 为客户提供最佳方案,同时为用户创造合理收益。 用户收益不是方案排序的依据。当成本较低的方案胜出时,应列出通过该方案获得合理收入的方式。客户迟早会从竞争对手那里听到成本较低的方案;隐瞒它会损害信任和后续推荐。
  5. 区分内部信息与对外信息。 工时、费率、buffer、利润率和有效费率仅供内部使用(完整清单见共享契约第 3 节);向客户披露按小时列出的工时明细,会使谈判转向费率本身。
  6. 优先使用境内服务。 能在伊朗国内网络环境下运行的系统对伊朗客户具有真正价值,而境外服务始终面临制裁和内容过滤风险。
  7. 定价依据专业人员的工时,排期依据执行人员的实际工时。 客户愿意为工作支付的金额取决于其市场价值,而不是执行人员需要花费的学习时间;但承诺的日期必须反映实际执行速度可能较慢的情况。
  8. 措辞正式但易懂。 仅在必要时使用英文技术术语。

فایل‌ها

文件

  • قرارداد مشترک:
    assets/shared-contract.md
    (مسیرها،
    settings.md
    ،
    facts.md
    ،
    outcome-log.md
    ، بسته‌ی برآورد، نقاط اتصال)
  • بخش برآورد در تنظیمات:
    assets/settings-template.md
  • فایل منبع حقیقت:
    assets/estimate-input-template.json
  • فایل بسته‌ی برآورد:
    assets/estimate-package-template.md
  • چک‌لیست‌ها:
    assets/iran-checklist.md
    و
    assets/forgotten-work-checklist.md
  • اسکریپت:
    scripts/estimate.py
    ، همیشه با مسیر کامل پوشه‌ی همین Skill (Python 3.9+ و
    jdatetime
    ؛ نصب:
    pip install jdatetime
    ). دستورها در
    references/06-checks-and-outputs.md
    و
    references/07-changes-and-calibration.md
    .
  • 共享契约:
    assets/shared-contract.md
    (路径、
    settings.md
    、
    facts.md
    、
    outcome-log.md
    、估算包和连接点)
  • 设置中的估算部分:
    assets/settings-template.md
  • 事实来源文件:
    assets/estimate-input-template.json
  • 估算包模板文件:
    assets/estimate-package-template.md
  • 检查清单:
    assets/iran-checklist.md
    和
    assets/forgotten-work-checklist.md
  • 脚本:
    scripts/estimate.py
    ,始终使用本 Skill 所在文件夹的完整路径运行(Python 3.9+ 和
    jdatetime
    ;安装:
    pip install jdatetime
    )。相关命令见
    references/06-checks-and-outputs.md
    和
    references/07-changes-and-calibration.md
    。