پردو وب
pordo

روند توسعه نرم افزارهای موبایل

تعداد بازدید: 1726

روند توسعه نرم افزارهای موبایل

برای توسعه ی هر محصولی، نیاز به سه عنصر اساسی وجود دارد. مواد خام، فرایند ها یا روش فرآوری و سپس مشتری. با این توضیح میتوان دریافت که هر محصولی که باشد، نیاز به مواد خود، روش خاص خود و مشتریان خود دارد. بیاید فرض را بر این بگذاریم که شما هیچ اطلاعاتی در رابطه با ایجاد و ساخت موبایل اپلیکیشن ندارید و اکنون می خواهید که کار را از صفر شروع کنید. آنچه که در این مقاله بدان پرداخته خواهد شد، مختصری در مورد  چگونگی توسعه یک اپ موبایل از یک دید بسیار کلی می باشد. این اختصار بیشتر به صورت یک نقشه ی راه بوده  به حدی است که شما درک کلی از موضوع بدست بیاورید تا بعدا بتوانید راجع به مباحث ذکر شده بیشتر مطالعه کنید.

بهترین شخص برای طراحی اپلیکیشن موبایل کیست؟

طراحی اپلیکیشن موبایل

ایا شما صاحب یک شرکت توسعه نرم افزار های موبایل هستید؟ یا نه، یک شرکت توسعه وب سایت هستید؟  آیا شما با برنامه نویسی آشنایی دارید؟ یا نه  در بهترین حالت فقط 3 واحد کامپیوتر در دانشگاه پاس کرده ید؟ پاسخ به این سوالات ، سطح و درک شما از یک اپلیکیشن موبایل را مشخص می سازد، و سپس  این موضوع را برای شما مشخص خواهد کرد که کار ساخت را به چه کسانی بسپارید. بگذارید ساده تر بگوییم، چنانچه یک تیم برنامه نویسی موبایل در شرکت خود ندارید، بهترین گزینه برون سپاری یا استفاده از third party می باشد. استفاده از روش برون سپاری مزایای بسیار خوبی عاید مجموعه ی شما می کند. Ilan oshri در کتبی تحت عنوان برونسپاری جهانی[1]، به موضوع برونسپاری و مزایا و معایب آن پرداخته است. چکیده ی مزایای این برونسپاری همان فاکتور های آشنای سود در زمان و سود درهزینه است. یک فرمول نه چندان دقیق و ساده وجود دارد که تصمیم گیری را بر پایه ی دو عنصر زمان عرضه محصول و پیچیدگی فرایند های ساخت محصول برای شما مشخص می سازد. هرچه عمر عرضه محصول بیشتر باشد، بهتر است که توسعه در درون سازمان صورت بگیرد. از طرفی، پیچیدگی و سطح تکنولوژی توسعه، ریسک های توسعه در درون سازمان را افزایش می دهد. اما به صورت کلی برون سپاری در بسیاری از مواقع گزینه ی درستی است. امروزه شرکت های بزرگ دنیا حتی با وجود قدرت توسعه ی درون سازمانی، برون سپاری را در دستور کار خود دارند. شما می توانید مفهوم توسعه بین الملی یا internation production را  در بسیاری از لوازم اطرافتان مشاهده کنید. از وسایل الکترونیک گرفته تا منسوجات. در حقیقت توسعه محصول، در خارج از سازمان، این اطمینان را به سازمان شما می دهد که محصولی با کیفیت مناسب و در زمان تعیین شده و با هزینه ی معقول دریافت نمایید. تنها نکته ی باقیمانده از این بخش، این است که نرم افزار ها معمولا مانند دیگر محصولات، بدین گونه نیست که با یک تماس تلفنی انبوهی از آن به همراه یک وسیله ی حمل و نقل برای شما ارسال شود. شما در طی پروسه ی ساخت با آنها در ارتباط خواهید بود. این ارتباط بیشتر از نوع عنوان کردن خواسته ها و یا چک کردن محصول است.

چرخه توسعه نرم افزار

از بخش قبل، هر انتخابی که صورت گرفته باشد، این یک امتیاز مثبت حساب می شود که شما یک کلیتی از طراحی اپلیکیشن موبایل داشته باشید. به صورت کلی و در بازه زمانی، یک نرم افزار 5 مرحله اساسی را طی می کند. این 5 مراحل عبارتند از: مشخص شدن نیازمندی ها(چه چیزی می خواهید بسازید)، طراحی نرم افزار (چکونه آنرا بسازیم؟) پیاده سازی (ساخت نرم افزار) تست (آیا درست ساخته شده است؟) و پیاده سازی و نگهداری (نصب و رفع عیوب متعاقب). برای توسعه ی یک اپ موبایل خوب، شما باید برای هر یک از قسمت برنامه داشته باشید. اکثر عوام و افرادی که تازه در صنعت نرم افزار گام نهاده اند، دچار این تصور اشتباه هستند که کد زدن و پیاده سازی، مهمترین بخش توسعه و راه اندازی یک اپ موبایل می باشد. اما تجربه نشان داده که کدنویسی تنها بخشی از کار است و مسائل مهمتری هستند که موفقیت کار را رغم می زنند. برای ساختن یک ساختمان زیبا، نیاز به یک نقشه ی خوب است و هیچ نقشه ای خوب نخوهاد شد مگر اینکه از قبل دقیقا مشخص شده باشد که ساکنین آینده ی آن عمارت، خواستار چه چیزی هستند. یک افسانه  معروفی در رشته ی مهندسی نرم در این رابطه وجود دارد و آن از این قرار است که  مشتری و کسانی که می خواهند نرم افزار را توسعه بدهند، در یک جلسه مشترک، بر سر یک میز نشسته، به یکدیگر لبخند می زنند، چای می نوشند، صحبت از مبلغ قرار داد می کنند و مدتی بعد نرم افزار را تحویل می گیرند. مشتری فکر می کند که همه چیز را به توسعه دهندگان توضیح داده و توسعه دهنده می داند که مشتری چه چیزی می خواهد. این واقعا یک افسانه است و هنوز تحقق نیافته است. به سایت http://calleam.com/WTPF/?page_id=1445 مراجعه کنید. مجموعه از تحقیقات آماری در رابطه با پروژه های نرم افزاری در آن گرد آوری شده است. برای مثال طبق تحقیقات مشترک مککینزی و دانشگاه آکسفورد که در سال 2012 آنرا اعلام کردند، 17 درصد پروژهای نرم افزاری به گونه ای با شکست مواجه می شود که موجوذیت سازمان را به تهدید می کشاند، 45 درصد آنها با بدجه ای بیش از پیش بینی و 7 درصد آن ها با تاخیر  عرضه می گردد و از مجموع دو مورد اخیر، 56 درصد سود کمتری خاصل شده است. به گفته بسیاری از مقالات، این زیان ها عمدتا ناشی از بیان نشدن خواست دقیق مشتری در گام ابتدایی است. فرقی نمی کند که نرم افزار در داخل سازمان توسعه یافته یا خارج، در هر صورت نیاز ها باید در اولین گام مشخص شده باشد. بهتر است بی پرده بگویم که ابتدا مشخص کنید که چه چیزی از جان خود می خواهید ! ماجرا همان خشت اول دیوار است.

آخرین روز پشتیبانی، اولین روز مرگ

پشتیبانی اپلیکیشن موبایل

این جمله ای آشنا در علم نرم افزار که حاکی از اهمیت مسئله پشتیبانی است. در علوم دیگر می توان مشابه آن را پیدا کرد. برای مثال، در بازار یابی، ارائه ی نخستین، بخش کوچکی از کار است، و موفقیت اصلی را following یا پیگیری به بار می آورد. در کشاورزی، کاشت اولین قدم تا رسیدن به محصول است. در حقیقت شما با ساخت یک نرم افزار، کودکی را متولد کرده اید که در ابتدای کودکی خود قرار دارد، زمانی را باید صرف رشد آن کنید. خطاهایی که این کودک انجام می دهد، رفع کنید و در دوران بلوغ نیز باید مراغبت های خاص خودش را ادامه دهید. این تصور که در یک دوره نسبتا کوتاه، کار تمام می شود و شما عواید آنرا برای همیشه بدست خواهید آورد، یک تصور بسیار اشتباه است. این تصور یک اپیزود از داستان هری پاتر نیست، کسانی که دستی در کار دارند، نمونه های بسیاری از این قبیل مشتریان را دیده اند. اصلا این سوال پیش می آید که چه چیزی در این دنیا برای یک بار ایجاد، همیشه به شما بدون دردسر سرویس می دهد؟ اصولا هرچه سیستم ها پیچیده تر می شوند، تعمیر و  بروزرسانی آن نیاز به هزینه بیشتری دارد. این هزینه ی زمانی و پولی رابطه ی مستقیمی با نرم افزاری که خریداری و یا توسعه می دهید دارد. پیچیدگی محصول یک فاکتور مهم در این باره است. خیلی از همکاران ما، شاید با شنیدن و یا خواندن این مقاله، معترض شوند که شما حس بدبینی را ترویج می دهدید. حقیقت ماجرا همین است که خدمتتان عارض شدم اما این گفته ها نباید شما را از ایده ای که دارید منع کند، و مقصود معقول این است که شما باید از همان ابتدا،  میزان و حجم انرژی مورد نیاز کار را برآورد کنید. بگذارید جنبه مثبت داستان را بگوییم. طبق آماری که موسسه ی گارتنر هرساله آنرا اعلام می کند، پیش بینی شده که درآمد موبایل اپ ها در سال 2017 برابر 76.5 میلیارد دلار خواهد بود. جدول زیر روند این رشد را به شما نشان می دهد:

پس یک پتانسیل بسیار قوی وجود دارد. این شما هستید که باید سهم خود را از این بازار بدست بیاورید.

 

[1] - https://books.google.com/books?hl=en&lr=&id=3NAaBgAAQBAJ&oi=fnd&pg=PP1&dq=advantages+outsourcing+software+development&ots=wqb7d4kFtF&sig=CNaqfQc-1zfSWb1gYeHr17A0Po8#v=onepage&q=advantages%20outsourcing%20software%20development&f=false

نظر شما برای بهبود کیفیت این بحث چیست؟ چه مطالبی اضافه و کم شود؟