شرکتها، دولتها، سازمانهای غیرانتفاعی یا تیمهای کوچک، فارغ از اندازه یا نوعشان، در فعالیتهای سازمانی مشارکت میکنند.
فعالیتهای سازمانی از چندین فرآیند کسب و کار تشکیل شدهاند.
فرآیندهای کسب و کار را میتوان به وظایف تقسیم کرد. هنگامی که بخشها و افراد درون یک سازمان، وظایف محول شده به نقشهای مربوطه خود را انجام میدهند، فرآیند کسب و کار کار میکند.
به این ترتیب، با کارکرد فرآیندهای کسب و کار فردی، فعالیت سازمانی کلی نیز کار میکند.
نرمافزار شیءگرا
در دنیای توسعه نرمافزار، مفهوم نرمافزار شیءگرا، به همراه روشهای طراحی و زبانهای برنامهنویسی مبتنی بر آن، توسعه یافته است.
پیش از این، نرمافزار با جداسازی دادهها و پردازش طراحی میشد و در داخل برنامهها، تعریف دادهها و پردازش مستقل از یکدیگر بودند.
این امر امکان قرار دادن تعاریف دادهها و پردازشهای مرتبط را در نزدیکی یکدیگر یا در مکانهای کاملاً جداگانه در داخل برنامه فراهم میکرد.
صرف نظر از محل قرارگیری آنها، در نحوه پردازش برنامه توسط کامپیوتر تفاوتی ایجاد نمیشد.
اما، هنگام اصلاح یا افزودن ویژگیها به برنامههای توسعهیافته، کیفیت چیدمان آنها به طور قابل توجهی بر کارایی کار و احتمال بروز خطاها تأثیر میگذاشت.
اگر تعاریف دادهها و پردازشهای مرتبط در دهها یا صدها هزار خط کد پراکنده بودند، ایجاد تغییرات به طرز چشمگیری دشوار میشد.
نرمافزار شیءگرا رویکردی بنیادی برای حل چنین مشکلاتی ارائه میدهد.
یعنی، این رویکرد ایده تقسیمبندی واضح دادهها و پردازشهای مرتبط در داخل برنامه و نگه داشتن آنها در یک بخش مشترک را در پیش میگیرد تا در هنگام اصلاح برنامه در آینده، درک آن آسانتر شود.
این بخش که دادهها و پردازشها را در خود جای میدهد، مفهومی است که شیء نامیده میشود.
همچنین، طراحی نرمافزار از ابتدا با محوریت واحد شیء بسیار مهم است.
علاوه بر این، ما معمولاً به درک چیزهای مختلف به عنوان اشیاء عادت داریم.
به عنوان مثال، وقتی یک ساعت زنگدار را برای زمان بیدارباش تنظیم میکنیم، زنگ در آن زمان به صدا در میآید. ما این درک را داریم که یک ساعت زنگدار، به عنوان یک شیء، دارای دادههای زمان بیدارباش و فرآیند به صدا درآوردن زنگ است.
طراحی و پیادهسازی نرمافزار به گونهای که با این ادراک مشترک انسانی همسو باشد، منطقی است. به همین دلیل نرمافزار شیءگرا تا این حد رایج شد.
نرمافزار فرآیند کسب و کار محور
من یک نمای کلی از فعالیتهای سازمانی و نرمافزار شیءگرا ارائه دادم.
اکنون، مایلم نرمافزار فرآیند کسب و کار محور را به عنوان رویکردی جدید برای توسعه نرمافزار پیشنهاد کنم.
همانطور که در بحث نرمافزار شیءگرا توضیح داده شد، طراحی نرمافزار به گونهای که با ادراک انسان همسو باشد، مزایای قابل توجهی هنگام اصلاح یا افزودن ویژگیها به نرمافزار ارائه میدهد.
هنگام استفاده از نرمافزار در فعالیتهای سازمانی، قرار دادن اطلاعات و عملکردهای مرتبط در بخش مفهومی یک فرآیند کسب و کار، که واحد بنیادی آن است، باید اصلاحات و افزودن ویژگیها را تسهیل کند.
این مفهوم اساسی نرمافزار فرآیند کسب و کار محور است.
دستورالعملها و اطلاعات ورودی
در سازمانهای نسبتاً بزرگ، فرآیندهای کسب و کار معمولاً به صورت دستورالعملمند (manualized) هستند. فرآیندهای کسب و کاری که به اندازه کافی واضح تعریف شدهاند که بتوان آنها را دستورالعملمند کرد، جریان کار (workflow) نیز نامیده میشوند.
سیستمهای کسب و کار که توسط نرمافزارهای عمومی پیادهسازی میشوند، ساماندهی این جریانهای کاری هستند. با ورود اطلاعات توسط هر فرد یا دپارتمان مسئول به سیستم کسب و کار طبق جریان کار، فرآیند کسب و کار محقق میشود.
در اینجا، دستورالعملهای کسب و کار، سیستمهای کسب و کار و اطلاعات ورودی ارتباط بسیار نزدیکی با هم دارند.
با این حال، در مکانیزم توضیح داده شده در اینجا، این سه عنصر ارتباط نزدیک، پراکنده هستند.
مفهوم نرمافزار فرآیند کسب و کار محور این موضع را اتخاذ میکند که اینها باید یک موجودیت واحد باشند.
سندی را در یک فایل واحد تصور کنید که حاوی یک دستورالعمل کسب و کار و همچنین فیلدهایی برای ورود اطلاعات توسط هر فرد یا دپارتمان مسئول است.
علاوه بر این، فرض کنید اطلاعات تماس مسئول بعدی هر وظیفه نیز به طور خاص نوشته شده باشد.
سپس، خواهید دید که تمام عناصر فرآیند کسب و کار در این فایل ورود اطلاعات با دستورالعمل کسب و کار گنجانده شدهاند.
اگر این فایل ایجاد شده و به مسئول وظیفه اول تحویل داده شود، فرآیند کسب و کار طبق دستورالعمل ارائه شده پیش خواهد رفت. در نهایت، هنگامی که تمام اطلاعات لازم وارد شد، یک فرآیند کسب و کار تکمیل خواهد شد.
این فایل، خود نرمافزار فرآیند کسب و کار محور است که مفهوم نرمافزار فرآیند کسب و کار محور را به کار میگیرد.
و با عملکرد نرمافزارهای مختلف فرآیند کسب و کار محور، کل فعالیت سازمانی نیز کار خواهد کرد.
خودِ نرمافزار
پیشتر، من فایل ورود اطلاعات با دستورالعمل کسب و کار را به عنوان خودِ نرمافزار فرآیند کسب و کار محور توصیف کردم.
ممکن است برخی تصور کرده باشند که این امر منجر به بحث در مورد توسعه برنامهها یا سیستمها خواهد شد.
اما، اینطور نیست.
صرف نظر از برنامهها یا سیستمها، این فایل به خودی خود به عنوان نرمافزار فرآیند کسب و کار محور عمل میکند.
همانطور که قبلاً توضیح داده شد، اگر این فایل ایجاد و برای اولین فرد مسئول ارسال شود، سپس به فرد مسئول هر وظیفه بعدی منتقل خواهد شد و فرآیند کسب و کار توصیف شده در آن اجرا خواهد گشت.
البته، امکان توسعه برنامهها و سیستمها بر اساس این فایل برای پیادهسازی جریان کار نوشته شده در آن وجود دارد.
اما، چقدر تفاوت بین استفاده از چنین سیستمی و صرفاً رد و بدل کردن خود فایل بین طرفهای مسئول وجود دارد؟
در اینجا، نکته قابل توجه این است که توسعه یک برنامه یا سیستم، دستورالعمل را از پردازش جدا میکند.
این جداسازی با رویکرد فرآیند کسب و کار محور در تضاد است. به عبارت دیگر، بهبود فرآیندهای کسب و کار و افزودن ویژگیها را دشوار میکند.
اگر اصلاح یک دستورالعمل کسب و کار را تصور کنید، این موضوع بلافاصله آشکار میشود.
هر بار که رویه یک فرآیند کسب و کار تغییر میکند، برنامه یا سیستم باید مطابق با آن اصلاح شود.
به همین دلیل، دستورالعملهای کسب و کار باید از ابتدا به طور کامل تدوین شوند و مستندسازی زمانبر است. علاوه بر این، حتی اگر یک دستورالعمل تغییر کند، بلافاصله در برنامه یا سیستم منعکس نمیشود.
علاوه بر مشکل زمان مورد نیاز، هزینههای اصلاح نیز وجود دارد.
این به معنای آن است که فرآیندهای کسب و کار و دستورالعملها را نمیتوان به راحتی تغییر داد.
از سوی دیگر، اگر برنامهها یا سیستمها توسعه نیابند، و به جای آن، فایلهای ورود اطلاعات با دستورالعملهای کسب و کار به سادگی بین طرفهای مسئول مبادله شوند، آنگاه دوره توسعه و هزینههای نگهداری برای برنامهها و سیستمها حذف میشوند.
نرمافزار قابل اجرا
برخی ممکن است بپرسند، پس چرا این فایل «نرمافزار» نامیده میشود؟
دلیل این است که این فایل یک فایل اجرایی است. اما، این نرمافزاری نیست که توسط رایانه به عنوان یک برنامه اجرا شود، بلکه نرمافزاری است که توسط انسانها اجرا میشود.
یک دستورالعمل کسب و کار مانند یک برنامه برای انسانها است. و فیلدهای اطلاعات ورودی مانند مکانهای ذخیرهسازی داده در حافظه یا پایگاه داده هستند.
با این دیدگاه، اشتباه نیست که این فایل را نرمافزاری در نظر بگیریم که توسط انسانها اجرا میشود.
اجراکننده
وظایف نوشتهشده در نرمافزار فرآیند کسب و کار محور میتوانند توسط انسانها یا هوش مصنوعی اجرا شوند.
حتی برای یک وظیفه واحد، ممکن است مواردی وجود داشته باشد که هوش مصنوعی و انسانها برای اجرای آن همکاری کنند، یا وظایفی که صرفاً توسط انسانها یا صرفاً توسط هوش مصنوعی اجرا شوند.
هوش مصنوعی نیز میتواند دستورالعمل کسب و کار را در این فایل بخواند و پردازش مناسب را انجام دهد.
این بدان معناست که این فایل یک نرمافزار اجرایی هم برای انسانها و هم برای هوش مصنوعی است.
کمک هوش مصنوعی
ابتدا، هوش مصنوعی فایل را اجرا میکند. در این فرآیند، دستورالعمل کسب و کار نوشته شده در فایل را میخواند و محتوای قابل پردازش را درک میکند.
برخی از بخشهای فرآیند میتوانند مستقیماً توسط هوش مصنوعی اجرا شوند، یا اطلاعات میتوانند در فیلدهای ورودی وارد شوند.
از سوی دیگر، بخشهایی نیز وجود دارند که نیازمند پردازش یا ورود اطلاعات توسط انسان هستند.
برای این بخشها، هوش مصنوعی به انسان اطلاع میدهد و او را برای پردازش یا ورود اطلاعات ترغیب میکند.
در این حالت، هوش مصنوعی میتواند نحوه ارائه اطلاعات به انسان را، بسته به محتوای پردازش انسان و اطلاعات ورودی، تغییر دهد.
روشهای اساسی ارائه به انسان ممکن است شامل انتقال وظایف لازم از طریق چت متنی یا صوتی، یا استخراج اطلاعات مورد نیاز باشد.
همچنین گزینه باز کردن مستقیم خود فایل وجود دارد. برای مثال، اگر فایل متنی باشد، یک ویرایشگر متن باز میشود.
یک روش کمی پیشرفتهتر شامل استخراج وظایف لازم و اطلاعات ورودی است، و سپس، بر اساس محتوای آنها، تولید یک فایل موقت برای برنامهای که کار با آن برای انسان آسان است، و سپس اجرای آن فایل.
به عنوان مثال، اگر ورود اطلاعات به صورت جدولی مورد نیاز باشد، یک فایل صفحه گسترده برای انسانها تولید میشود تا اطلاعات را در آن وارد کنند. اطلاعات وارد شده در فایل موقت سپس توسط هوش مصنوعی به فیلدهای ورودی فایل اصلی رونویسی میشود.
یک روش حتی پیشرفتهتر شامل برنامهنویسی بر اساس تقاضا برای یک برنامه با رابط کاربری است که با فایل و وظایف یا ورودیهای مورد نیاز از انسان مطابقت دارد.
به این ترتیب، هنگامی که هوش مصنوعی به طور خودکار پردازش میکند یا به کار و ورود اطلاعات انسانی برای تکمیل یک وظیفه کمک میکند، فایل را به فرد تماس برای وظیفه بعدی، طبق آنچه در دستورالعمل کسب و کار نوشته شده است، منتقل میکند.
با کمک هوش مصنوعی به انسانها به این شیوه، مکانیزمی میتواند تحقق یابد که در آن انسانها تنها نیاز دارند حداقل وظایف لازم را به طور کارآمد از طریق یک رابط کاربری دوستانه انجام دهند.
فایل سازگار با هوش مصنوعی
اساساً، نرمافزار فرآیند کسب و کار محور میتواند در هر فرمت فایلی باشد.
با این حال، با توجه به کمک هوش مصنوعی، یک فرمت فایل پایه که برای هوش مصنوعی آسان باشد، مناسب است. یک نمونه بارز، یک فایل متنی با فرمت مارکداون است.
همچنین، تعریف قوانین اساسی برای توصیف محتوا مفید خواهد بود. از آنجایی که هوش مصنوعی کمک میکند، این قوانین توصیف پایه میتوانند به طور انعطافپذیر اصلاح یا گسترش یابند.
انباشت دانش و بهبود فرآیند کسب و کار
نرمافزار فرآیند کسب و کار محور به سازمانها این امکان را میدهد که فرآیندهای کسب و کار جدیدی را اضافه کنند یا موارد موجود را صرفاً با ایجاد یا تغییر خود فایل، که ترکیبی از دستورالعملها و فیلدهای ورودی است، بدون نیاز به توسعه برنامهها یا سیستمها، اصلاح کنند.
علاوه بر این، گنجاندن اطلاعات تماس برای یک کانال ارتباطی در دستورالعمل کسب و کار برای پرسشها یا درخواستهای بهبود مربوط به آن فرآیند کسب و کار، از اهمیت بالایی برخوردار است.
این امر به طور قابل توجهی زمان و تلاش هوش مصنوعی و انسانها را که صرف دست و پنجه نرم کردن با ابهامات یا انجام تحقیقات میکنند، کاهش میدهد. علاوه بر این، از آنجایی که پرسشها، پاسخها و درخواستهای بهبود در یک نقطه تماس واحد متمرکز میشوند، دانش فرآیند کسب و کار به طور طبیعی انباشته میشود و فرآیندهای کسب و کار میتوانند به طور مکرر بهبود یابند.
وظایفی مانند نظاممند کردن و سازماندهی دانش انباشته شده، یا اصلاح نرمافزار فرآیند کسب و کار محور در پاسخ به درخواستهای بهبود، نیز میتوانند به طور خودکار توسط هوش مصنوعی یا با کمک آن به انسانها انجام شوند.
علاوه بر این، در صورت لزوم، نرمافزار فرآیند کسب و کار محور جدیدی میتواند ایجاد شود تا فرآیندهای کسب و کار جدیدی به سازمان اضافه شود.
سازمان یادگیرنده سریع
به این ترتیب، از طریق مفهوم نرمافزار فرآیند کسب و کار محور و اتوماسیون و کمک هوش مصنوعی، یک سازمان به طور کلی میتواند به طور طبیعی دانش را انباشته کرده و به طور مداوم خود را بهبود بخشد.
این را میتوان یک سازمان یادگیرنده سریع توصیف کرد.
این امر فعالیتهای سازمانی را بسیار کارآمدتر از سازمانهای سنتی امکانپذیر میسازد.
در همین حال، با کمک هوش مصنوعی برای وظایف فردی، انسانها فقط باید حداقل کار لازم را از طریق رابطهای کاربرپسند انجام دهند.
بنابراین، انسانها نیازی به یادگیری حجم زیادی از اطلاعات یا درک هر فرآیند کسب و کار که به طور مکرر تغییر میکند، ندارند.
برخلاف انسانها، هوش مصنوعی میتواند تمام دستورالعملهای کسب و کار جدید را در یک لحظه بدون زحمت بازخوانی کند. علاوه بر این، نیازی به زمان برای عادت کردن به فرآیندهای کسب و کار جدید ندارد و به فرآیندهای قبلی نیز پایبند نیست.
به همین دلیل، هوش مصنوعی بخشهایی را که انسانها در آن چالش دارند، مانند یادگیری دستورالعملهای گسترده و سازگاری با تغییرات در فرآیندهای کسب و کار، جذب میکند.
بنابراین، یک سازمان یادگیرنده سریع میتواند تحقق یابد.