تعریف و هدف:
دوره کارشناسی رشته علوم کامپیوتر یکی از دوره های آموزشی در نظام آموزش عالی است که به منظور تحقیق اهداف زیر ایجاد و فعالیت خود را آغاز می نماید.
الف)کسب آگاهی جامع از نظریه های علمی موجود در علوم کامپیوتر به نحوی که دانشجویان ، مفاهیم این علم را درک و نظرات عمیق آن را بالقوه کسب نمایند و همراه با برداشت های کاربردی، دیدگاه های پایه ای علمی نیز که از ضروریات خودکفایی علمی در این رشته می باشد در آنها به وجود آید.
ب)آماده سازی دانشجویان و فارغ التحصیلان برای به کارگیری دانش کامپیوتر در حل مسائل بنیادی علوم کامپیوتر از طریق ایجاد قابلیت برای شناخت و مطالعه مفاهیم و مسائل پایه ای علوم مربوط به کامپیوتر و کسب زمینه فکری و تحقیقی لازم جهت دستیاری تحقیقات در این علوم.
ج)ایجاد پایه های علمی و تخصصی لازم در تعریف دقیق مسائل و پی گیری حل و اجرا در مراحل طراحی، پیاده سازی و اثبات منطقی صحت آنها جهت کاربردهای کامپیوتر در زمینه علمی،فنی،اجتماعی،اقتصادی،مدیریت و برنامه ریزی.
د)انطباق با روند تحولات علمی،تکنولوژیکی و اجتماعی در رابطه با کامپیوتر
ه‍(ایجاد دیدگاه‌های کلی و وسیع در رابطه با مطالبی که امکان بررسی عمیق آن در دوره کارشناسی ممکن نمی‌باشد و لذا آماده‌سازی دانشجویان برای ادامه تحصیل در دوره‌های کارشناسی ارشد و دکتری این رشته، به منظور پیشبرد علوم کامپیوتر و انتقال این علم به نسل‌های بعدی.
 
علوم‌ کامپیوتر پل‌ ارتباطی‌ دانش‌ کامپیوتر و ریاضی‌ است‌ و مهمترین‌ هدف‌ آن‌ دست‌یابی‌ به‌ بهترین‌ الگوریتم‌های‌ موجود (روش‌های‌ حل‌ مسأله‌) در کمترین‌ زمان‌ و با کمترین‌ خطا و بیشترین‌ دقت‌ است. به‌ عبارت‌ دیگر هدف‌ این‌ رشته‌ تربیت‌ گروهی‌ متخصص‌ کامپیوتر است‌ که‌ با دید ریاضی‌تر و منطقی‌تر به‌ حل‌ مسائل‌ مطرح‌ شده‌ در علوم‌ کامپیوتر یا ریاضی‌ بپردازند. این‌ رشته‌ در مقطع‌ کارشناسی‌ دارای‌ 4 گرایش‌ محاسبات‌ علمی‌، نظریه‌ الگوریتم‌ها، سخت‌افزار‌ و سیستم‌های‌ اطلاعاتی‌ است‌. که دروس گرایش محاسبات علمی در زمینه برنامه‌ریزی خطی، غیرخطی، آنالیز عددی و نرم‌افزار در ریاضی است؛ یعنی در این گرایش کاربرد ریاضیات در کامپیوتر مطالعه می‌شود.گرایش نظریه الگوریتم‌ها به بررسی راه‌های مختلف حل مسئله به یاری روش‌های بهینه‌تر، سریع‌تر و بهتر می‌پردازد. به عبارت دیگر هدف این گرایش پیاده‌سازی و بهینه کردن الگوریتم است.در گرایش سخت‌افزار نیز معماری یا ساختار کامپیوتر مطالعه می‌شود و گرایش سیستم‌های اطلاعاتی نیز به مدیریت پروژه‌های نرم‌افزاری و سیستم‌های اطلاعاتی می‌پردازد. گفتنی‌ است‌ که‌ تفاوت‌ این‌ رشته‌ با مهندسی‌ کامپیوتر گرایش‌ نرم‌افزار در این‌ است‌ که‌ رشته‌ علوم‌ کامپیوتر برخلاف‌ مهندسی کامپیوتر فاقد دروس‌ آزمایشگاهی‌ و کارگاهی‌ است‌ و بیشتر جنبه‌ تحقیقات‌ نظری‌ دارد.
 
نقش و توانایی:
فارغ‌التحصیلان این دوره توانایی آن را می‌یابند تا در حل مسائل علمی کامپیوتر در مؤسسات و مراکز علمی  ـ تحقیقاتی، صنعتی، اجتماعی و اقتصادی نقش مؤثر و اساسی داشته باشند. مضافاً زمینه‌های لازم را جهت ادامه تحصیل، تدریس و تحقیق در مؤسسات آموزش عالی، مراکز صنعتی و خدماتی کسب می‌نمایند.
پی‌ریزی بنیادی و علمی سیستم‌های کامپیوتری مناسب، ارائه روش‌های صحیح و بهره‌گیری مؤثر و مفید از امکانات کامپیوتر، تشخیص مسائل در محیط کار، قابلیت حل، تعریف، مطالعه واختصاصی کردن علمی، طراحی، پیاده‌سازی، اثبات منطقی صحت حل و آزمون کارآیی آن‌ها از جمله دیگر توانایی‌های فارغ‌التحصیلان می‌باشد.
تسلط‌ و علاقه‌ به‌ ریاضیات‌ شرط‌ اول‌ موفقیت‌ در رشته‌ علوم‌ کامپیوتر است‌ و دانشجوی‌ این‌ رشته‌ باید بتواند با استدلال‌ ریاضی‌ با مسائل‌ برخورد نماید. در ضمن‌ باید اطلاعات‌ عمومی‌ خوبی‌ داشته‌ و حتی‌ پس‌ از فارغ‌التحصیلی‌ به‌ مطالعه‌ و تحقیق‌ پشت‌ نکند چون‌ در طی‌ تحصیل‌ تنها اطلاعات‌ پایه‌ای‌ و کلی‌ را فرا می‌گیرد و برای‌ حضور در بازار کار باید خود تلاش‌ کند و اهل‌ مطالعه‌ و تحقیق‌ باشد.
 
ضرورت و اهمیت:
پیشرفت سریع علوم کامپیوتر و گسترش روزافزون کاربرد آن در تحقیقات علمی، صنایع، اقتصاد، پزشکی، علوم اجتماعی، مدیریت، برنامه‌ریزی و غیره، ضرورت دستیابی و بهره‌برداری هر چه بیشتر از این علم را آشکار می‌سازد ایجاد چنین دوره‌ای در جهت پی‌ریزی علوم کامپیوتر و گسترش آن در جهت خودکفایی علمی و تکنولوژیکی کاملاً ضروری و مؤثر می‌باشد. با توجه به گستردگی و جوانی علوم کامپیوتر، توجهات لازم در ایجاد و گسترش این رشته مؤید آینده‌نگری به موقعی است مسلماً ثمرات پرباری به همراه خواهد داشت.
 
موقعیت‌ شغلی‌ در ایران :
  موقعیت‌های‌ شغلی‌ فارغ‌التحصیل‌ علوم‌ کامپیوتر شباهت‌ بسیاری‌ با مهندسی‌ کامپیوتر گرایش‌ نرم‌افزار دارد اما در کل‌ نقش‌ فارغ‌التحصیل‌ این‌ رشته‌ به‌ عنوان‌ مدیر و هماهنگ‌ کننده‌ بسیار مهم‌ و قابل‌ توجه‌ است‌. فردی‌ که‌ مسؤول‌ انتخاب‌ راه‌حل‌ مسائل‌ و حل‌ آنها همچنین‌ تقسیم‌ الگوریتم‌ها در بین‌ مهندسین‌ نرم‌افزار و در انتها جمع‌ کردن‌ قسمت‌های‌ توزیع‌ شده‌ می‌باشد.