شاید جمع آوری requirement ها به نظر کار سختی باشه، مگر اینکه ابزار مناسبی در دست داشته باشی. در این پست چندین تکنیک جمع آوری requirement ها را که می توانید در طول برنامه ریزی و توسعه نرم افزار استفاده کنید، میگم.
جمع آوری الزامات یک قسمت مهم در هر پروژه، بزرگ یا کوچیک هست. برای درک و برآوری نیازهای مشتریان لازمه.
روند جمع آوری requirement ها شامل شناسایی و مستند سازی نیازهای لازم مشتریان، کاربران و ذینفعان مربوط به پروژه است. این دانش برای توسعه سولوشن هایی به شکل محصولات، خدمات، نرم افزار و غیره استفاده خواهد شد.
روش های معمول برای جمع آوری requirement ها:
یه مشته ابزار برای ساده سازی جمع آوری requirement ها (همونایی که در بالا ذکر شده) وجود داره:
تکنیکی برای شناسایی و درک نیاز کاربران نهایی. این تکنیک به دولوپر کمک می کنه تا کار خود را بر اساس آنچه که به ایجاد یک UX عالی کمک می کنه، اولویت بندی کنه. با استفاده از User Story Mapping، می توانید نحوه تعامل کاربر با نرم افزار (محصول، خدمات، وب سایت و ...) یا کار هایی که کاربر قرار هست توی محصول انجام بده رو مشخص کنید.
با این کار تشخیص میدی که کدوم مرحله بیشتر به نفع کاربره و ساخت کدوم ویژگی ارزش بیشتری به UX میده و بعدش همونو تو اولویت قرار میدی.
مرحله ۱: جمع کردن تیم درگیر در تولید محصول
مرحله ۲: شناسایی کاربران، اهدافشون، نیازهاشون و ... . تجزیه و تحلیل داده های جمع آوری شده مشکلات کاربر را نمایش می دهد. حالا ببین محصول شما چگونه می تواند این مشکلا رو حل کنه.
مرحله ۳: مشخص کردن فعالیت هایی که برای کاربر، هنگام استفاده از محصول مهم هست. جای اینا بالای user story map هست. حالا این فعالیت ها باید به user story های کوچکتر خورد بشه. این story ها را به صورت عمودی روی map قرار میگیرن و مهمترین آنها را در بالای همه میاد.
مرحله ۴: مشخص کردن چگونگی جریان یافتن کاربر توی محصول از چپ به راست روی user story map. اگر چندین کاربر وجود دارد ، سناریوهای مختلفی برای هر یک ایجاد کنید.
مرحله ۵: story های مهم برای ایجاد UX خوب رو برجسته کن. حالا dependency ها، الزامات تکنیکال، گلوگاه هایی که ممکنه روی کاری که باید انجام بدی تأثیر بزاره رو مشخص کن. قبل از برنامه ریزی، مطمئن شو که برای غلبه بر این مسائل راه حلی دارید.
البته میشه از یه دیدگاه دیگه هم بهش نگاه کرد. اونم اینه که توسعه محصول رو داری به سبک iterative ای که release base هست پیش میبری.
همونطوری که توی تصویر بالا و تصویر بعد مشاهده میشه ممکنه task ای برای یه activity (فعالیت) توی release های بعدی نداشته باشیم.
مثلا توی تصویر زیر شما میتونی فرآیند خرید رو ببینی
گرافیکی نمایش دادن تعامل کاربر با سیستم/action های کاربر و پاسخ های سیستم. کمک این دیاگرام به ما اینه که روی requirement های کاربر در حین توسعه نرم افزار تمرکز کنیم.
نمایش دهنده اینه که چجوری بخش های مختلف یک سیستم با هم کار می کنن تا یک قابلیت رو پیاده بکنن. ترتیب رو هم توی use case های مختلف مشخص می کنن. وبسایتی برای رسم sequence diagram
مثلا توی مثال زیر اومدیم سیستم سفارش مک دونالد رو رسم کردیم.
یه طرح اولیه از رابط کاربری وب سایت یا برنامه هست که به شما کمک می کند نحوه کار برنامه یا وب سایت را بفهمید و هرگونه خطا در طراحی شناسایی میشه. با استفاده از wireframe نحوه کار سیستم خود را درک می کنید.
یه ورژن گرافیکی تر و پرطرفدار از وایرفریم، UI Mockup هست. کمک می کنه تا در مورد نحوه کارکرد برنامه ایده بگیرید و ظاهرش رو هم ببینید.
ساده سازی یک فرآیند/فرآیندهای کسب و کار، flow های کاربر یا حتی روند جمع آوری requirements های سیستم. مثلا این نمودار پایین فرآیند خرید رو براتون نمایش میده.
هنگام جمع آوری requirement ها، جلسات brainstorming فردی و گروهی به طور مکرر انجام می شود. از نقشه های ذهنی برای به یاد سپردن ایده ها، سازماندهی، دسته بندی و توسعه بیشتر آن ها استفاده کنید.
نمایی از بالای سیستم و اینکه چطور با موجودیت های خارجی مثل کاربر و ... تعامل میکنه.
شکستن سیستم به قطعات کوچکتر و ساده تر. نگاهی از نزدیک به نحوه عملکرد سیستم. با شکستن سیستم یا فرآیند، requirement ها رو راحت تر می شناسید.