Computing Disciplines Revised Curriculum 2023 PDF
Document Details
Uploaded by RapidNephrite5737
University of Engineering and Technology, Lahore
2023
Tags
Summary
This document details the revised curriculum for various undergraduate computing disciplines, including Computer Science, Software Engineering, Artificial Intelligence, and more. Developed by the Higher Education Commission (HEC) of Pakistan, the document outlines the curriculum, course content, and associated study plans. It also includes information on the Associate Degree in Computing.
Full Transcript
Sector H-9 Islamabad, Pakistan Phone : +92-51-90402111 HIGHER EDUCATION COMMISSIO...
Sector H-9 Islamabad, Pakistan Phone : +92-51-90402111 HIGHER EDUCATION COMMISSION www.hec.gov.pk [email protected] Government of Pakistan, Islamabad Office of the No. 5-4/HEC/CURR/COMP/2023/4394 Deputy Director (Curriculum) February 16, 2023 SUBJECT: REVISED CURRICULUM - COMPUTING DISCIPLINES Dear Sir / Madam, Development and review of academic standards at tertiary level is one of the major functions of Higher Education Commission (HEC). HEC in collaboration with National Computing Education Accreditation Council (NCEAC) has developed/revised the curricula of following computing disciplines at undergraduate level; 1. BS in Computer Science 2. BS in Software Engineering 3. BS in Artificial Intelligence 4. BS in Data Science 5. BS in Cyber Security 6. BS in Bioinformatics 7. BS in Information Systems 8. BS in Multimedia and Gaming 9. BS in Information Technology 10. BS in Computer Engineering In addition, a standardized scheme of studies for Associate Degree in Computing in also included in the document. The same is shared for guidance and implementation by all universities offering programs in the mentioned disciplines. Encl: As above Vice Chancellors / Rectors / Heads All Public / Private Sector Universities / DAIs Copy for information to: i. ES to Chairman, Higher Education Commission, Islamabad ii. ES to Executive Director, Higher Education Commission, Islamabad iii. Chairperson National Computing Education Accreditation Council (NCEAC), Islamabad iv. Advisor (Curriculum, Academics and NAHE), Higher Education Commission, Islamabad v. DG (Attestation & Accreditation), Higher Education Commission, Islamabad vi. DG (Quality Assurance Division), Higher Education Commission, Islamabad vii. In-Charge HEC Regional Centers (Lahore, Peshawar, Karachi, Quetta) CURRICULUM OF UNDERGRADUATE DEGREE PROGRAMS COMPUTING DISCIPLINES (Revised 2023) HIGHER EDUCATION COMMISSION ISLAMABAD CURRICULUM DIVISION, HEC Contents PREFACE...................................................................................................................................................................... 1 NCEAC Chairman’s Message....................................................................................................................................... 2 Executive Summary....................................................................................................................................................... 3 1 Introduction........................................................................................................................................................... 4 1.1 Objectives......................................................................................................................................... 4 2 Curricula Consideration........................................................................................................................................ 6 2.1 Association of Computing Machinery (ACM) - Guidelines................................................................... 6 2.2 Knowledge Areas in ACM CS 2013 Curriculum.................................................................................. 7 2.3 Outcome Based Education (OBE) System and Seoul Accord:............................................................... 8 3 BS Computing Curriculum Model...................................................................................................................... 10 3.1 Essential Requirements for the Computing Degree:............................................................................ 11 3.2 General Layout and Courses:............................................................................................................ 11 3.3 Coding Scheme of Courses:.............................................................................................................. 11 4 Computing Degree Programs.............................................................................................................................. 13 4.1 BS Computer Science...................................................................................................................... 13 4.1.1 Curriculum Model for Bachelor of Science in Computer Science...................................................... 14 4.1.2 Suggested Semester/Study Plan for BSCS.......................................................................................... 15 4.2 Bachelor of Science Software Engineering - BSSE............................................................................ 17 4.2.1 Curriculum Model for BS Software Engineering................................................................................ 17 4.2.2 Suggested Semester/Study Plan for BSSE.......................................................................................... 19 4.3 Bachelor of Science in Artificial Intelligence - BSAI.......................................................................... 20 4.3.1 Curriculum Model for BS in Artificial Intelligence............................................................................ 20 4.3.2 Suggested Semester/Study Plan for BSAI........................................................................................... 21 4.4 Bachelor of Science in Data Science - BSDS..................................................................................... 23 4.4.1 Curriculum Model for BS in Data Science.......................................................................................... 23 4.4.2 Suggested– Semester/Study Plan for BSDS........................................................................................ 24 4.5 Bachelor of Science in Cyber Security – BSCySec:............................................................................ 26 4.5.1 Curriculum Model for BS in Cyber Security....................................................................................... 26 4.5.2 Suggested Semester/Study Plan for BSCySec..................................................................................... 27 4.6 Bachelor of Science in Bioinformatics - BSBI................................................................................... 29 4.6.1 Curriculum Model for BS in Bioinformatic........................................................................................ 29 4.6.2 Suggested Semester/Study Plan for BSBI........................................................................................... 30 4.7 Bachelor of Science in Information Systems - BSIS........................................................................... 32 4.7.1 Curriculum Model for BS in Information System............................................................................... 32 4.7.2 Suggested Semester/Study Plan BSIS................................................................................................. 33 4.8 Bachelor of Science in Multimedia & Gaming - BSMG...................................................................... 35 4.8.1 Curriculum Model for BS in Multimedia and Gaming........................................................................ 35 4.8.2 Suggested Semester/Study Plan for BSMG......................................................................................... 36 4.9 Bachelor of Science in Information Technology - BSIT...................................................................... 38 4.9.1 Curriculum Model for BS in Information Technology........................................................................ 38 4.9.2 Suggested Semester/Study Plan for BSIT........................................................................................... 39 4.10 Bachelor of Science in Computer Engineering – BSCE...................................................................... 41 4.10.1 Curriculum Model for BS in Computer Engineering.......................................................................... 41 4.10.2 Suggested Semester/Study Plan for BSCE.......................................................................................... 42 5 Associate Degree in Computer Science – ADCS............................................................................................... 44 5.1 Admission Requirement/Eligibility Criteria....................................................................................... 44 5.2 Degree Equivalency......................................................................................................................... 44 5.3 Title of Degree................................................................................................................................ 44 5.4 Grading System............................................................................................................................... 45 5.5 Curriculum Model for AD in Computer Science................................................................................ 45 5.5.1 Suggested Semester/Study Plan for ADCS......................................................................................... 46 6 List of Courses in BS Program........................................................................................................................... 47 7 Course Contents.................................................................................................................................................. 50 PREFACE The curriculum of a subject is said to be the throbbing pulse of a nation. By looking at the curriculum one can judge the state of intellectual development and the state of progress of a nation. The world has turned into a global village; new ideas and information are pouring in like a stream. It is, therefore, imperative to update the curricula of our degree programs regularly by introducing recent developments in the relevant fields of knowledge. In pursuance of this goal, the Higher Education Commission (HEC) is continually performing curricula revision in collaboration with universities. According to the decision of the special meeting of Vice-Chancellors Committee, curriculum of each subject must be reviewed after every 3 years. The curriculum, with varying definitions, is said to be a plan of the teaching-learning process that students of an academic program are required to undergo to achieve some specific objectives. It includes scheme of studies, objectives & learning outcomes, course contents, teaching methodologies and assessment/ evaluation. Since knowledge in all disciplines and fields is expanding at a fast pace and new disciplines are also emerging; it is imperative that curricula be developed and revised accordingly. In compliance with the above provisions, the Curriculum Division of HEC undertakes the revision of curricula regularly through respective National Curriculum Revision Committees (NCRCs) and Accreditation Councils that consist of eminent professors, researchers, and practitioners of the relevant fields from public and private sector universities, R&D organizations, councils, industry, and civil society by seeking nominations from their organizations. In this regard, HEC in collaboration with National Computing Education Accreditation Council (NCEAC) re-designed and combined all previous curricula of computing programs into a single document. It includes the curriculum of Computer Science and nine other sub-domains of computing. In order to impart quality education, which is at par with indigenous needs and international standards, HEC-NCEAC has developed a unified framework/template using international guidelines made by ACM/IEEE and Seoul Accord. It is hoped that this document would serve the purpose of meeting our national, social and economic needs, as well as provide the level of competency specified in Pakistan Qualification Framework to make it compatible with international educational standards. Executive Director HEC 1 NCEAC Chairman’s Message Recent expansion of Higher Education sector in Pakistan and internationally has necessitated the focus on quality of computing education. The quality and competence of graduates and their relevance is critical for socio-economic uplift and manpower required to meet the needs of the country. HEC’s National Computing Education Accreditation Council (NCEAC) is the Regulatory Body established by HEC to undertake multiple tasks to facilitate computing education in the country and devise steps to enhance its quality. The quality of computing programs is ensured through a comprehensive process that includes relevance of curricula, adaptation of international best practices, accreditation, trainings, and etc. Recently, a roundtable conference was held in Islamabad to discuss the impediments in IT/Computer Science curriculum and bringing it at par with international standards and to meet the industry/ employer needs. The conference was held on July 26, 2022, at P Block Pak Secretariat, Islamabad under the convenorship of Honorable Mr. Ahsan Iqbal, Federal Minister for Planning, Development, and Special Initiatives, whereas Chairperson/Executive Director of Higher Education Commission, Dr Shaista Sohail was the co-chair/moderator of the event. Eminent IT and Computer Science professionals of local and international industry, academia and government sector participated in the roundtable conference. The conference discussed the need of a comprehensive curriculum for the computing on urgent basis. The meeting was informed that a group of NCEAC experts are already working to develop a state-of-art-the-computing curriculum model to cater the needs of both local and international markets. NCEAC accelerated its efforts after the meeting to complete this task. This document presents the curriculum models for BS Computer Science and its nine sub-domains such as Software Engineering, Artificial Intelligence, Information Technology, Data Science, Bioinformatics, Cyber Security, Information Systems, Computer Engineering, and Gaming and Multimedia. The important aspect of these models is to incorporate the Outcome Based Education (OBE) concept for the first time into the computing curricula in Pakistan. The newly developed curricula for the above disciplines provide much more academic freedom and flexibility to the universities/DAIs to take advantage of their expertise to offer highly specialized degrees in sub-domains using electives courses stream. I would like to thank the team of NCEAC experts and Mr Muhammad Raza Chohan Advisor (Curriculum, Academics and NAHE) HEC for their outstanding efforts to come up with an integrated curriculum for computing subjects. Special thanks are also due for Prof Dr Jamil Sawar and Prof Dr Jamil Ahmad for their efforts to complete this task. NCEAC acknowledges the support and efforts of computing professionals and academics for their contributions, especially NCEAC Secretariat and composers & editors of this document. Prof Dr Syed Mansoor Sarwar Chairman, NCEAC January 2023 2 Executive Summary Computing is a dynamic, flexible, and an integrated large domain of scientific and engineering knowledge, technologies, and R&D with enormous applications. However, it may be characterized as a nucleus of all activities including technical, academic, professional and development practices relating to computers. Accordingly, it involves development of technologies and techniques via hardware, software, and communication. Moreover, innovative, and limitless applications of computing pertain to designing and building of hardware and software systems for a variety of purposes. Additionally, it deals with the automatic processing, protection, management and structuring of a whole range of information in different formats. Computing is not just a single discipline but is a family of disciplines. There may be dozens if not hundreds around the world. However, among them, the following appear to have some distinction today: 1. Computer Science 2. Software Engineering 3. Information Technology 4. Bioinformatics 5. Artificial Intelligence 6. Data Science 7. Cyber Security 8. Information Systems 9. Computer Engineering 10. Gaming and Multimedia After the COVID-19 Pandemic in particular, computing is reshaping in the way we live and work. In today’s world, nearly everyone uses computers as part of everyday life. This field offers a variety of jobs with flexibility. Because of the global demand for the computing-skills based workforce, a huge number of students have been attracted to field in recent years. For nearly two decades, the Higher Education Commission (HEC), Pakistan has been making sustained efforts to uplift standards in computing education through NCEAC. The National Curriculum Revision Committee (NCRC) also played its significant role in this regard. Like other international bodies for the development of computing curricula, NCEAC and NCRC have also produced commendable results in Pakistan in this respect. Starting from the first formal curriculum in 2001 (erstwhile UGC), this journey continues to produce excellent results in this regard. The phenomenal growth of the computing applications has created serious challenges for Government, HEC-NCEAC and universities to offer quality computing degree programs, so the graduates can compete at the international market. The overall progress of the computing discipline in terms of export and production of various local software products indicate that these challenges are being taken care of. In order to further enhance the quality and meet the international standards, the HEC-NCEAC revised computing curricula keeping in mind the ACM and Seoul Accord guidelines. Though the development of curricula is a time-consuming task but highly experienced and qualified HEC-NCEAC team made this task possible within a few months. NCEAC also arranged a few meetings with IT industry to get feedback about their requirements and expectations. This document also presents a comprehensive curriculum plan for the Associate Degree in Computing. The duration of the Associate Degree is two years with an option to upgrade it into a full- 3 fledged bachelor’s degree program. Associate degree is offered to students who complete FA/FSc or equivalent qualification after 12 years of schooling. Details of curriculum are given later in this document. In addition, students of the BS programs will also be allowed to take an exit with Associate Degree after two years subject to fulfillment of all the requirements of the Associate degree. 1 Introduction Computing (a nucleus of all activities including technical, academic, professional and development practices relating to computers) provides a wide range of choices on how an individual might focus his or her professional life. This document provides an overview of the different kinds of degree programs in Computing that are currently available and for which curriculum standards are now available. It is believed that this report may be an essential source for university faculty, administrators, students, parents and professionals who need to be aware of Computing as a broad based discipline that crosses the boundaries between science, engineering, and professional practice. In reality, computing consists of several disciplines. Various questions are naturally critical including: what are the different kinds of Computing degree programs or how are they similar and how are they different? The variety of degree programs in Computing presents prospective students, educators, and administrators with important choices where they may focus their efforts. The following part of this section introduces the objectives of the report, the basic concept of Computing and a brief overview of Computer Science, Software Engineering, Information Technology and other disciplines. Further, the following sections of the report also provide a complete detail of the proposed curricula pertaining to Computer Science, Software Engineering, Artificial Intelligence, Information Technology and other disciplines regarding BS program. For each discipline, all details regarding the scheme of study, common course content with CLOs, and overall structure of the degree programs are presented in this document. Computing is a dynamic field and accordingly a good care has been taken to design a flexible structure that will maintain currency with the latest scientific and technological advancements in the field. Moreover, it seems that Computing is a discipline that incorporates scientific, engineering, and creative features. A reasonable emphasis has been given to formal scientific and engineering areas to enhance the level of formalization in the degree programs. Technology can play an important role in the implementation of Computing programs. As a result, all programs are structured on essential dimensions including scientific knowledge, technology, and design skills. 1.1 Objectives Computing is one of the key factors driving the progress in 21st century — it will further transform the way we live, learn, work, and play. Advances in Computing and its technologies created new infrastructure for business, commerce, manufacturing, communication, scientific research, education, and social interaction. This expanding infrastructure provided us with new tools for communicating throughout the world and for acquiring knowledge and insight from information. It also provides a vehicle for economic growth. The following are the major objectives to considered while designing/developing new curricula. 1. Vigorous Computing education and research and development are essential for achieving our national aspirations of the 21st century. As we are advancing in the 21st century, the opportunities 4 for innovation in Computing are larger than they have ever been — and more important. The technical advances that led to today’s information tools, such as electronic computers and the Internet, are accessible with continuously decreasing cost. 2. The nation is in need of significant efforts on education and research in Computing and communication systems. If the results are to be available when needed, we must act now to reinvigorate the long-term Computing education and research endeavor and to revitalize the computing infrastructure at university campus level. We need to ensure that advances in Computing work should benefit us and that the majority of Pakistanis have the education and training needed to prosper in a world that will increasingly depend on Computing. The benefits of these transformations caused by Computing for our national future are extraordinary. A networked society can reach out to all its citizens, can bring us closer together and address many societal issues. 3. The proposed plan of Computing curricula directly supports the education and preparation of our young people for careers in Computing research, and the training of workers who need to upgrade their skills to keep pace with a changing marketplace. Trained people are a major product of publicly supported research. These trained professionals are critical national human resource, and will create and develop new ideas, form a talent pool for existing business, and launch new companies. 4. Now as the current world is considered a global village due to the rapid flow of information from one place to another, the one who can share and access this information is considered a part of the global village. The astronomical growth in Computing compels the whole professional world to reorient their efforts to maximize utilization of Computing in their professional activities. This enables all the educational institutes, which are primarily responsible to create trained manpower, for devising programs that will lead to an optimum utilization of Computing in different spheres of life. There is a tremendous challenge to create well-equipped Computing professionals who have the ability and expertise to respond adequately to growing needs of the industry. 5. Realizing the high market demands and shortage of quality in Computing education at different levels and enhancement in existing Computing programs is proposed. This report is based upon horizontal and vertical growth in those disciplines of Computing whereas high demand is recent, and it is well estimated that this will grow universally for the years to come. Thus, it is high time for our universities to focus their resources together to seize a maximum share from this exponentially growing market. 6. The report conceptually and philosophically provides two-dimensional model of the overall Computing Educational Infrastructure. The concept nicely reflects national and international frontiers on Computing education for the upcoming future. 7. Our universities have quality human and technological resources and an excellent infrastructure. The report provides new horizons, strategies and challenges to transform the existing infrastructure into leading Computing institutions. This document presents revised computing curricula which is to be known as ‘the Computing Curricula 2023’. All previous curricula have been combined into a single document. Though a separate curriculum model is given for each sub domain of computing, but these individuals models are integrated by common courses. The main purpose of these efforts is to summarize and synthesize the current state of curriculum guidelines for academic programs that grant bachelor degrees in 5 computing as well as offer flexibility for the universities/DAIs while implementing these guidelines. The curriculum models for the following computing discipline are presented in this document. 1. Bachelor of Science in Computer Science 2. Bachelor of Science in Software Engineering 3. Bachelor of Science in Artificial Intelligence 4. Bachelor of Science in Data Science 5. Bachelor of Science in Cyber Security 6. Bachelor of Science in Bioinformatics 7. Bachelor of Science in Information Systems 8. Bachelor of Science in Multimedia and Gaming 9. Bachelor of Science in Information Technology 10. Bachelor of Science in Computer Engineering 2 Curricula Consideration During the revision of the Computing Curricula two major guidelines have been considered (ACM and Seoul Accord). However, in some cases the main focus of these guidelines is mostly traditional Computer Science program. 2.1 Association of Computing Machinery (ACM) - Guidelines Association of Computing Machinery (ACM), USA is the largest body in the world for computer scientists. Its membership is spread over the entire globe. It has a pool of highly reputed professionals which meet after a few years to assess the directions being taken by the computing discipline. In view of its assessment, it identifies knowledge areas and also their relative importance in the years to come. Thus, ACM shows the path to follow to the computing academia and professionals all over the world. Computing curricula are designed keeping in view following identified knowledge areas of ACM [ref # ACM 2013 curriculum report]. It has been tried to reasonably cover all knowledge areas without compromising the flexibility needed for a national model curriculum. The mapping of these key knowledge areas with the courses are given in table below. AL - Algorithms and Complexity AR - Architecture and Organization CN - Computational Science DS - Discrete Structures GV - Graphics and Visual Computing HCI - Human-Computer Interaction IAS - Information Assurance and Security IM - Information Management IS - Intelligent Systems NC - Networking and Communications OS - Operating Systems PBD - Platform-based Development PD - Parallel and Distributed Computing PL - Programming Languages 6 SDF - Software Development Fundamentals SE - Software Engineering SF - Systems Fundamentals SP - Social Issues and Professional Issues The following knowledge areas have been addressed with the major computing courses. 2.2 Knowledge Areas in ACM CS 2013 Curriculum # Knowledge Area CS 2013 ACM 2013 Subjects NCEAC Revised 2023 Tier-1 Tier-2 Taught in Various Subjects in Core Universities 1 AL-Algorithms and 19 9 Algorithms; Data structures, Analysis of Complexity Algorithms and Data Algorithms, Theory of Structures; Automata Algorithm Design and Analysis 2 AR-Architecture and 0 16 Intro to Computer DLD, Computer Org & Organization Architecture; DLD; Assembly Language, Computer Computer Architecture Engineering 3 CN-Computational 1 0 eScience; Modeling HCI & Computer Graphics; Science and Simulation; (Elective: Numerical Computer Graphics Analysis) 4 DS-Discrete Structures 37 4 Discrete Discrete Structures, Mathematics; Probability & Statistics Mathematical Foundations of CS; Probability for CS; Discrete Structures 1; Discrete Str 2 5 GV-Graphics and 2 1 Computer Graphics; HCI & Computer Graphics; Visualization Computer Graphics (Elective: Computer Graphics) 6 HCI-Human-Computer 4 4 Human Computer HCI & Computer Graphics Interaction Interaction 7 IAS-Information 3 6 Computer Systems Information Security; Assurance and Security (Elective: Cyber Security) Security 8 IM-Information 1 9 Database Systems Database Systems; Adv Management Database Management Sys 9 IS-Intelligent Systems 0 10 Artificial Intelligence Artificial Intelligence Programming; Artificial Intelligence 10 NC-Networking and 3 7 Introduction to Computer Networks Communication Computer Networking; Computer Networks 7 11 OS-Operating Systems 4 11 Operating Systems Operating Systems 12 PBD-Platform-based 0 0 (Electives: Web Technology Development {ASP, Javascript}, Visual Prog {C#}, Mobile App Dev {React/Flutter/Kotlin/Swift}) 13 PD-Parallel and 5 10 Parallel Parallel & Distributed Distributed Computing Programming Computing Principle and Practice; 14 PL-Programming 8 20 Introduction to Programming Fundamentals, Languages Compilers; OOP, Compiler Construction Compilers; Introduction to Programming; Programming Languages 15 SDF-Software 43 0 Java Programming I; Programming Fundamental, Development Introduction to Object Oriented Fundamentals Program Design: Programming, Data Introduction to Structures Programming; OOP 16 SE-Software 6 22 Software Software Engineering Engineering Engineering 17 SF-Systems 18 9 Computer Systems DLD, Computer Networks, Fundamentals and Networks; Great Computer Architecture Ideas in Computer Architecture; System Programming 18 SP-Social Issues and 11 5 Ethics in Professional Practices Professional Practice Technology; Technology Consulting in the Community Total Core Hours 165 143 308 2.3 Outcome Based Education (OBE) System and Seoul Accord: Keeping in view the latest transformation from knowledge-based education philosophy to Outcome based education (OBE) system, the OBE model based on Seoul Accord has also been considered. Computing programs prepare students to attain educational objectives by ensuring that students demonstrate achievement of the following outcomes (derived from Graduate Attributes define by Seoul Accord www.seoulaccord.org ). 8 S# Program Learning Computing Professional Graduate Outcomes (PLOs) 1 Academic Education To prepare graduates as computing professionals 2 Knowledge for SolvingApply knowledge of computing fundamentals, knowledge Computing Problems of a computing specialization, and mathematics, science, and domain knowledge appropriate for the computing specialization to the abstraction and conceptualization of computing models from defined problems and requirements. 3 Problem Analysis Identify, formulate, research literature, and solve complex computing problems reaching substantiated conclusions using fundamental principles of mathematics, computing sciences, and relevant domain disciplines. 4 Design/ Design and evaluate solutions for complex computing Development of Solutions problems, and design and evaluate systems, components, or processes that meet specified needs with appropriate consideration for public health and safety, cultural, societal, and environmental considerations. 5 Modern Tool Usage Create, select, adapt and apply appropriate techniques, resources, and modern computing tools to complex computing activities, with an understanding of the limitations. 6 Individual and Team Work Function effectively as an individual and as a member or leader in diverse teams and in multi-disciplinary settings. 7 Communication Communicate effectively with the computing community and with society at large about complex computing activities by being able to comprehend and write effective reports, design documentation, make effective presentations, and give and understand clear instructions. 8 Computing Professionalism Understand and assess societal, health, safety, legal, and and Society cultural issues within local and global contexts, and the consequential responsibilities relevant to professional computing practice 9 Ethics Understand and commit to professional ethics, responsibilities, and norms of professional computing practice 10 Life-long Learning Recognize the need, and have the ability, to engage in independent learning for continual development as a computing professional 9 3 BS Computing Curriculum Model The combined structure of BS Degree Programs in Computing is proposed to meet the needs of students through theory and practical computing experience. The students are expected to learn theoretical and practical understanding of the respective field of Computing. The proposed structure is dynamic and provides basis for various options including Breadth-Based, Depth-Based, and Integrated Breadth & Depth- Based specializations. Students may choose a particular option, which is most appropriate to their planned future career. The General structure of the BS degree in any discipline of Computing is given in the table below. The whole degree program structure is divided into different categories/areas. Some of the categories are common and shall be covered by all degree programs of the computing discipline, for example Computing Core, General Education, etc. The domain elective provides high degree of flexibility to the program to excel in one or two areas. For example any program would like to make specialty in the area of database or computer architecture where 7 courses (see category no. 5) can be offered to do so. Table no. 3.1 Various Categories/Areas under Computing Discipline C# Category/Areas Credit Hours Courses Remarks 1 Computing Core 46 14 Common to all computing programs 2 Domain Core 18 6 Related to the domain and must be different from one computing degree program to another. 3 Domain Elective 21 7 These courses are electives and would be very useful to provide in depth special knowledge under a specific domain. For example – under the Computer Science – one can take 7 courses from database or Artificial intelligence, etc. 4 Mathematics & 12 4 Common to all computing degree Supporting Courses programs. 5 Elective Supporting 3 1 Common to all computing degree Courses programs. 6 General Education 30 12 Common to all computing degree Requirement program and to be offered as per the HEC Guidelines, details can be found at HEC url. www.hec.gov.pk Totals 130 44 10 3.1 Essential Requirements for the Computing Degree: The following are the fundamental requirements to get admission and complete Computing degrees in universities/DAIs of Pakistan, Eligibility Criteria, Duration of the Program and Award of Degree: Minimum 50% marks in Intermediate/12 years schooling/A- Level (HSSC) or Equivalent with Mathematics are required for admission in all BS Computing Programs other than BS Computing Engineering. *Equivalency certificate by IBCC will be required in case of education from some other country or system. Minimum 60% marks in Intermediate/12 years schooling/A- Level (HSSC) or Equivalent with Mathematics are required for admission in BS Computer Engineering Program. The students who have not studied Mathematics at intermediate level have to pass deficiency courses of Mathematics (06 credits) in first two semesters. At minimum 130 credit hours are required for award of BS degrees in any computing discipline mentioned in this document. The minimum duration for completion of BS Computing degrees is four years. The HEC allows maximum period of seven years to complete BS degree requirements. A minimum 2.0 CGPA (Cumulative Grade Point Average) on a scale of 4.0 is required for award of BS Computing Degree. The students after successful completion of 04 semesters in BS Computing Programs may exit with Associate Degree in Computing subject to completion of all requirements for the award of associate degree, i.e., Credit Hours, CGPA, and compulsory courses. 3.2 General Layout and Courses: In order to facilitate universities/DAIs who offer computing degree programs, this section present the general layout and courses details under various categories as mentioned above. There are ten different degree programs which can be offered under the computing discipline (see section 1). In order to make it flexible and easy for institutes to execute Computing degree program with desired quality, a common layout has been designed to make a similar layout and plan for each degree offered under the computing domain. The table below shows courses under different categories. Some of the categories are shown with generic course title such as Domain Core 1, 2 and so on. Actual titles and other details are given in the later sections of this document. This section also provides guidelines about the code scheme of courses. 3.3 Coding Scheme of Courses: The code of the courses can be designed by the university, but the following guidelines may be followed: Coding Scheme is based on the following principles: – Letter Code consists of two to four characters (three is preferred) to represents the title of the degree Such as CSC for Computer Science, SE for Software Engineering, DSC , Data Sciences MTH – Mathematics, PHY – Physics, etc. – Numerical code consists of three digits 11 1st digit represents the level of difficulty 2nd digit represents the area/specialization 3rd digit represents the sequence in the area/specialization For example: 101 (1 - difficult level, 0 normally fundamental area, 1 first course in the area) Other examples For example - a course code CSC332 o Level of Difficulty – 3 (could be offered in year 3), 3 – the course belongs to Databases, and 2 - this is 2nd course in the area of databases. For example a course code CSC212 o Level of Difficulty – 2 (could be offered in year 2), 1 – the course belongs to Programming, and 2 - this is 2nd course in the area of programming. However, it is up to the university where they can use different type and style. Table 3.2 : The Overall Degree Plan with Generic layout and Courses # Sem # Code Pre- Course Title Dom CrHr Reqs Computing Core (46/130) 14 Courses (common to all computing programs) 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 2 CS1xx PF Object Oriented Programming Core 4 (3-3) 3 2 CS1xx Database Systems Core 4 (3-3) 4 2 CS1xx Digital Logic Design Core 3 (2-3) 5 3 CS2xx OOP Data Structures Core 4 (3-3) 6 3 CS2xx Information Security Core 3 (2-3) 7 3 CS2xx Artificial Intelligence Core 3 (2-3) 8 3 CS2xx Computer Networks Core 3 (2-3) 9 3 CS2xx Software Engineering Core 3 (3-0) 10 4 CS2xx DLD Computer Organization & Assembly Language Core 3 (2-3) 11 5 CS3xx Operating Systems Core 3 (2-3) 12 7 CS4xx DS Analysis of Algorithms Core 3 (3-0) 13 7 CS4xx Final Year Project - I Core 2 (0-6) 14 8 CS4xx FYP-I Final Year Project - II Core 4 (0-12) Domain Core (18/130) 6 Courses – vary from program to program 15 -- CSxxx Domain Core 1 Domain Core 3 (2-3) 16 -- CSxxx Domain Core 2 Domain Core 3 (2-3) 17 -- CSxxx Domain Core 3 Domain Core 3 (2-3) 18 -- CSxxx Domain Core 4 Domain Core 3 (2-3) 19 -- CSxxx Domain Core 5 Domain Core 3 (2-3) 20 -- CSxxx Domain Core 6 Domain Core 3 (2-3) (code from Domain such Domain Elective (21/130) 7 Courses – specific to the degree program as CS, SE, AI etc. 21 -- DOMxxx Domain Elective 1 Domain Elective 3 (2-3) 22 -- DOMxxx Domain Elective 2 Domain Elective 3 (2-3) 23 -- DOMxxx Domain Elective 3 Domain Elective 3 (2-3) 24 -- DOMxxx Domain Elective 4 Domain Elective 3 (2-3) 25 -- DOMxxx Domain Elective 5 Domain Elective 3 (2-3) 26 -- DOMxxx Domain Elective 6 Domain Elective 3 (2-3) 27 -- DOMxxx Domain Elective 7 Domain Elective 3 (2-3) Mathematics Supporting Courses Common to all degree programs (12/130) 4 Courses 28 2 MT1xx CAG Multivariable Calculus Maths 3 (3-0) 29 2 MT1xx CAG Linear Algebra Maths 3 (3-0) 30 3 MT2xx Probability & Statistics Maths 3 (3-0) 31 7 EW4xx CPS Technical & Business Writing EW 3 (3-0) Elective Supporting Courses (3/130) 1 Course 32 7 SS1xx Social Science (Example: Introduction to Marketing) SS 3 (3-0) General Education Requirement as per HEC UG Education Policy (30/130) 12 Courses 33 1 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 12 34 1 GE1xx Functional English GER 3 (3-0) 35 2 GE1xx ECC Expository Writing GER 3 (3-0) 36 1 GE1xx Quantitative Reasoning – 1 (Discrete Structures) GER 3 (3-0) 37 1 GE1xx Quantitative Reasoning – 2 (Calculus and Analytic Geometry) GER 3 (3-0) 38 4 GE2xx Islamic Studies GER 2 (2-0) 39 8 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 40 4 GE2xx Social Sciences (Example: Introduction to Management) GER 2 (2-0) 41 4 GE2xx Natural Sciences (Applied Physics) GER 3 (2-3) 42 8 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 43 8 GE4xx Civics and Community Engagement GER 2 (2-0) 44 7 GE4xx Entrepreneurship GER 2 (2-0) The following pages present each degree program along with its introduction and details of courses. 4 Computing Degree Programs As mentioned before that there are ten different degree programs which can be offered under the Computing discipline. All these programs are presented in the following sections. 4.1 BS Computer Science Computer science is the study of the theory, experimentation, and engineering that form the basis for the design and use of computers. It is the scientific and practical approach to computation and its applications and the systematic study of the feasibility, structure, expression, and mechanization of the methodical procedures (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information [ref WordNet Princeton definition]. Computer Science is the application of a systematic, disciplined and quantifiable approach to the design, development, operation, and maintenance of software systems. It is in fact the practice of designing and implementing large, reliable, efficient and economical software by applying the principles and practices of engineering. The program aims to train students in all aspects of software life cycle from specification through analysis and design to testing, maintenance and evaluation of software product. Computer Science spans a wide range, from its theoretical and algorithmic foundations to cutting- edge developments in robotics, computer vision, intelligent systems, bioinformatics, and other exciting areas. The overall scope of Computer Science may be viewed into the following three categories: To develop effective ways to solve computing problems. For example, Computer Science develops the best possible ways to store information in databases, send data over networks, and display complex images. The theoretical background offered by Computer Science allows determining the best performance possible, and their study of algorithms. It enables to develop new problem-solving approaches that provide better performance. It devises new ways to use computers intelligently and effectively. Progress in the areas of networking, database, and human-computer-interface came together as a result of the world-wide- web, which changed the entire world. Now, researchers are working to make robots that are practical aides and demonstrate intelligence, databases that create new knowledge and, in general, use computers to do new things. It deals with the design and implementation of software systems. Computer Science provides training and skills for the successful implementation of software systems that solve challenging 13 programming jobs. Computer Science spans the range from theory to models, design and programming. Computer Science offers a comprehensive foundation that permits graduates to adapt to new technologies and new ideas. 4.1.1 Curriculum Model for Bachelor of Science in Computer Science The generic structure for computing degree program given before is mapped with the BSCS program in the following tables. Generic Structure for Computing Disciplines: Areas Credit Hours Courses Computing Core 46 14 Domain Core 18 6 Domain Elective 21 7 Mathematics & Supporting Courses 12 4 Elective Supporting Courses 3 1 General Education Requirement 30 12 Totals 130 44 Mapping of BSCS Program on the Generic Structure: # Sem Code Pre- Course Title Dom Cr Hr # Reqs Computing Core (46/130) 14 Courses 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 2 CS1xx PF Object Oriented Programming Core 4 (3-3) 3 2 CS1xx Database Systems Core 4 (3-3) 4 2 CS1xx Digital Logic Design Core 3 (2-3) 5 3 CS2xx OOP Data Structures Core 4 (3-3) 6 3 CS2xx Information Security Core 3 (2-3) 7 3 CS2xx Artificial Intelligence Core 3 (2-3) 8 3 CS2xx Computer Networks Core 3 (2-3) 9 3 CS2xx Software Engineering Core 3 (3-0) 10 4 CS2xx DLD Computer Organization & Assembly Language Core 3 (2-3) 11 5 CS3xx Operating Systems Core 3 (2-3) 12 7 CS4xx DS Analysis of Algorithms Core 3 (3-0) 13 7 CS4xx Final Year Project - I Core 2 (0-6) 14 8 CS4xx FYP-I Final Year Project - II Core 4 (0-12) Domain Core (18/130) 6 Courses 15 4 CS2xx Theory of Automata Domain Core 3 (3-0) 16 4 CS2xx DB Advance Database Management Systems Domain Core 3 (2-3) 17 5 CS3xx HCI & Computer Graphics Domain Core 3 (2-3) 18 5 CS3xx COAL Computer Architecture Domain Core 3 (2-3) 19 6 CS3xx TA Compiler Construction Domain Core 3 (2-3) 20 6 CS3xx OS Parallel & Distributed Computing Domain Core 3 (2-3) Domain Elective (21/130) 7 Courses 21 5 CS3xx Web Technologies Domain Elective 3 (2-3) 22 5 CS3xx Mobile Application Development 1 Domain Elective 3 (2-3) 23 6 CS3xx OOP Advanced Programming (Old Name: Visual Programming) Domain Elective 3 (2-3) 24 6 CS3xx Numerical Analysis Domain Elective 3 (2-3) 25 6 CS3xx WT Web Engineering Domain Elective 3 (2-3) 26 6 CS3xx IS Cyber Security Domain Elective 3 (2-3) 27 7 CS4xx Software Testing & Quality Assurance Domain Elective 3 (2-3). Mobile Application Development 2 Domain Elective 3 (2-3). Cloud Computing Domain Elective 3 (2-3). Computer Graphics Domain Elective 3 (2-3) 14. Object Oriented Analysis & Design Domain Elective 3 (2-3) Mathematics & Supporting Courses (12/130) 4 Courses 28 2 MT1xx CAG Multivariable Calculus Maths 3 (3-0) 29 2 MT1xx CAG Linear Algebra Maths 3 (3-0) 30 3 MT2xx Probability & Statistics Maths 3 (3-0) 31 7 EW4xx ECC Technical & Business Writing EW 3 (3-0) Elective Supporting Courses (3/130) 1 Course 32 7 SS1xx Social Science (Example: Introduction to Marketing) SS 3 (3-0) SS1xx Social Science (Example: Financial Accounting) SS 3 (3-0) General Education Requirement as per HEC UG Education Policy (30/130) 12 Courses 33 1 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 34 1 GE1xx Functional English GER 3 (3-0) 35 2 GE1xx ECC Expository Writing GER 3 (3-0) 36 1 GE1xx Quantitative Reasoning – 1 (Discrete Structures) GER 3 (3-0) 37 1 GE1xx Quantitative Reasoning – 2 (Calculus and Analytic Geometry) GER 3 (3-0) 38 4 GE2xx Islamic Studies GER 2 (2-0) 39 8 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 40 4 GE2xx Social Sciences (Example: Introduction to Management) GER 2 (2-0) 41 4 GE2xx Natural Sciences (Applied Physics) GER 3 (2-3) 42 8 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 43 8 GE4xx Civics and Community Engagement GER 2 (2-0) 44 7 GE4xx Entrepreneurship GER 2 (2-0) 4.1.2 Suggested Semester/Study Plan for BSCS Sem 1 + Sem 3 + Sem 5 + Sem 7 = Theory 54 hours + Lab 42 hours Sem 2 + Sem 4 + Sem 6 + Sem 8 = Theory 46 hours + Lab 36 hours + Project Lab 12 hours # Code Pre-Reqs Course Title Domain Cr hr (Cont hr) Semester 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 3 GE1xx QR 1 (Discrete Structures) GER 3 (3-0) 4 GE1xx QR 2 (Calculus and Analytic Geometry) GER 3 (3-0) 5 GE1xx Functional English GER 3 (3-0) Total Cr Hrs 16 (14-6) Semester 2 6 CS1xx Object Oriented Programming Core 4 (3-3) 7 CS1xx Database Systems Core 4 (3-3) 8 CS1xx Digital Logic Design Core 3 (2-3) 9 MT1xx Multivariable Calculus Maths 3 (3-0) 10 MT1xx Linear Algebra Maths 3 (3-0) Total Cr Hrs 17 (14-9) Semester 3 11 CS2xx Data Structures Core 4 (3-3) 12 CS2xx Information Security Core 3 (2-3) 13 CS2xx Artificial Intelligence Core 3 (2-3) 14 CS2xx Computer Networks Core 3 (2-3) 15 CS2xx Software Engineering Core 3 (3-0) 16 MT2xx Probability & Statistics Maths 3 (3-0) Total Cr Hrs 19 (15-12) Semester 4 17 CS2xx Computer Organization & Assembly Language Core 3 (2-3) 18 CS2xx Domain Core 1 (Theory of Automata) Domain Core 3 (3-0) 19 CS2xx Domain Core 2 (Advance Database Management Systems) Domain Core 3 (2-3) 20 GE2xx Natural Science (Applied Physics *Should be offered in 3rd Sem for GER 3 (2-3) CE) 21 GE1xx Expository Writing GER 3 (3-0) 22 GE2xx Islamic Studies GER 2 (2-0) Total Cr Hrs 17 (14-9) Semester 5 23 CS3xx Operating Systems Core 3 (2-3) 15 24 CS3xx Domain Core 3 (HCI & Computer Graphics) Domain Core 3 (2-3) 25 CS3xx Domain Core 4 (Computer Architecture) Domain Core 3 (2-3) 26 CS3xx Domain Elective 1 (Example: Web Technologies) Domain Elective 3 (2-3) 27 CS3xx Domain Elective 2 (Example: Mobile Application Development 1) Domain Elective 3 (2-3) 28 GE2xx Social Science (Example: Introduction to Management) GER 2 (2-0) Total Cr Hrs 17 (12-15) Semester 6 29 CS3xx Domain Core 5 (Compiler Construction) Domain Core 3 (2-3) 30 CS3xx Domain Core 6 (Parallel & Distributed Computing) Domain Core 3 (2-3) 31 CS3xx Domain Elective 3 (Example: Advanced Programming – Visual Domain Elective 3 (2-3) Prog) 32 CS3xx Domain Elective 4 (Example: Numerical Analysis) Domain Elective 3 (2-3) 33 CS3xx Domain Elective 5 (Example: Web Engineering) Domain Elective 3 (2-3) 34 CS3xx Domain Elective 6 (Example: Cyber Security) Domain Elective 3 (2-3) Total Cr Hrs 18 (12-18) Semester 7 35 CS4xx Final Year Project - I Core 2 (0-6) 36 CS4xx Analysis of Algorithms Core 3 (3-0) 37 CS4xx Domain Elective 7 (Example: Software Testing & Quality Domain Elective 3 (2-3) Assurance) 38 SS1xx Elective Supporting Course (Example: Introduction to Marketing) SS 3 (3-0) 39 EN4xx Technical & Business Writing EN 3 (3-0) 40 GE4xx Entrepreneurship GER 2 (2-0) Total Cr Hrs 16 (13-9) Semester 8 41 CS4xx Final Year Project - II Core 4 (0-12) 42 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 43 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 44 GE4xx Civics and Community Engagement GER 2 (2-0) Total Cr Hrs 10 (6-12) 16 4.2 Bachelor of Science Software Engineering - BSSE Software Engineering is the discipline of developing and maintaining software systems that behave reliably and efficiently, and are affordable to develop and maintain. However, more recently it has evolved in response to the increased importance of software in safety-critical applications and to the growing impact of large and expensive software systems in a wide range of situations. The following describes an overview of Software Engineering. To provide software development practices requires more than just the under lying principles of computer science; it offers the rigor that the engineering disciplines bring to the reliability and trust worthiness of the artefacts. Software Engineering is different in character from other engineering disciplines, due to both the in tangible nature of software and to the discontinuous nature of software operation. It seeks to integrate the science of Computer Science with the engineering principles developed for tangible and physical phenomena. Software plays a central and underpinning role in almost all aspects of daily life: communications, government, manufacturing, banking and finance, education, transportation, entertainment, medicine, agriculture, and law. The number, size, and application domains of computer programs have grown dramatically; as a result, huge sums are being spent on software development. Most people’s lives and livelihoods depend on this development’s effectiveness. Software products help us to be more efficient and productive. They provide information, make us more effective problem solvers, and provide us with safer, flexible, and less confining work, entertainment, and recreation environments. Software Engineering is the application of a systematic, disciplined, and quantifiable approach to the design, development, operation, and maintenance of software systems. It is in fact the practice of designing and implementing large, reliable, efficient, and economical software by applying the principles and practices of engineering. The department aims to train students in all aspects of software life cycle from specification through analysis and design to testing, maintenance and evolution of software product. 4.2.1 Curriculum Model for BS Software Engineering The generic structure for computing degree program given before is mapped with the BSSE program in the following tables. Generic Structure for Computing Disciplines: Areas Credit Hours Courses Computing Core 46 14 Domain Core 18 6 Domain Elective 21 7 Mathematics & Supporting Courses 12 4 Elective Supporting Courses 3 1 General Education Requirement 30 12 Totals 130 44 17 Mapping of BSSE Program on the Generic Structure: # Sem Code Pre- Course Title Dom Cr Hr # Reqs Computing Core (46/130) 14 Courses 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 2 CS1xx PF Object Oriented Programming Core 4 (3-3) 3 2 CS1xx Database Systems Core 4 (3-3) 4 2 CS1xx Digital Logic Design Core 3 (2-3) 5 3 CS2xx OOP Data Structures Core 4 (3-3) 6 3 CS2xx Information Security Core 3 (2-3) 7 3 CS2xx Artificial Intelligence Core 3 (2-3) 8 3 CS2xx Computer Networks Core 3 (2-3) 9 3 CS2xx Software Engineering Core 3 (3-0) 10 4 CS2xx DLD Computer Organization & Assembly Language Core 3 (2-3) 11 5 CS3xx Operating Systems Core 3 (2-3) 12 7 CS4xx DS Analysis of Algorithms Core 3 (3-0) 13 7 CS4xx Final Year Project - I Core 2 (0-6) 14 8 CS4xx FYP-I Final Year Project - II Core 4 (0-12) Domain Core (18/130) 6 Courses 15 4 CS2xx Software Design & Architecture Domain Core 3 (3-0) 16 4 CS2xx Software Construction & Development Domain Core 3 (2-3) 17 5 CS3xx Software Project Management Domain Core 3 (2-3) 18 5 CS3xx Software Quality Engineering Domain Core 3 (2-3) 19 6 CS3xx Software Requirement Engineering Domain Core 3 (2-3) 20 6 CS3xx Parallel & Distributed Computing Domain Core 3 (2-3) Domain Elective (21/130) 7 Courses 21 5 CS3xx Software Verification and Validation (Testing & QA) Domain Elective 3 (2-3) 22 5 CS3xx Object Oriented Analysis & Design Domain Elective 3 (2-3) 23 6 CS3xx Computer Architecture Domain Elective 3 (2-3) 24 6 CS3xx Theory of Automata Domain Elective 3 (3-0) 25 6 CS3xx HCI & Computer Graphics Domain Elective 3 (2-3) 26 6 CS3xx Web Technologies Domain Elective 3 (2-3) 27 7 CS4xx Advanced Database Management Domain Elective 3 (3-0). Web Engineering Domain Elective 3 (2-3). Data Science Domain Elective 3 (2-3). Software Re-Engineering Domain Elective 3 (2-3). Mobile Application Development 1 Domain Elective 3 (2-3) Mathematics & Supporting Courses (12/130) 4 Courses 28 2 MT1xx CAG Multivariable Calculus Maths 3 (3-0) 29 2 MT1xx CAG Linear Algebra Maths 3 (3-0) 30 3 MT2xx Probability & Statistics Maths 3 (3-0) 31 7 EW4xx ECC Technical & Business Writing EW 3 (3-0) Elective Supporting Courses (3/130) 1 Course 32 7 SS1xx Social Science (Example: Introduction to Marketing) SS 3 (3-0). SS1xx Social Science (Example: Financial Accounting) SS 3 (3-0) General Education Requirement as per HEC UG Education Policy (30/130) 12 Courses 33 1 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 34 1 GE1xx Functional English GER 3 (3-0) 35 2 GE1xx ECC Expository Writing GER 3 (3-0) 36 1 GE1xx Quantitative Reasoning – 1 (Discrete Structures) GER 3 (3-0) 37 1 GE1xx Quantitative Reasoning – 2 (Calculus and Analytic Geometry) GER 3 (3-0) 38 4 GE2xx Islamic Studies GER 2 (2-0) 39 8 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 40 4 GE2xx Social Sciences (Example: Introduction to Management) GER 2 (2-0) 41 4 GE2xx Natural Sciences (Applied Physics) GER 3 (2-3) 42 8 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 43 8 GE4xx Civics and Community Engagement GER 2 (2-0) 44 7 GE4xx Entrepreneurship GER 2 (2-0) 18 4.2.2 Suggested Semester/Study Plan for BSSE # Code Pre-Reqs Course Title Domain Cr hr (Cont hr) Semester 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 3 GE1xx QR 1 (Discrete Structures) GER 3 (3-0) 4 GE1xx QR 2 (Calculus and Analytic Geometry) GER 3 (3-0) 5 GE1xx Functional English GER 3 (3-0) Total Cr Hrs 16 (14-6) Semester 2 6 CS1xx Object Oriented Programming Core 4 (3-3) 7 CS1xx Database Systems Core 4 (3-3) 8 CS1xx Digital Logic Design Core 3 (2-3) 9 MT1xx Multivariable Calculus Maths 3 (3-0) 10 MT1xx Linear Algebra Maths 3 (3-0) Total Cr Hrs 17 (14-9) Semester 3 11 CS2xx Data Structures Core 4 (3-3) 12 CS2xx Information Security Core 3 (2-3) 13 CS2xx Artificial Intelligence Core 3 (2-3) 14 CS2xx Computer Networks Core 3 (2-3) 15 CS2xx Software Engineering Core 3 (3-0) 16 MT2xx Probability & Statistics Maths 3 (3-0) Total Cr Hrs 19 (15-12) Semester 4 17 CS2xx Computer Organization & Assembly Language Core 3 (2-3) 18 CS2xx Domain Core 1 (Software Design & Architecture) Domain Core 3 (3-0) 19 CS2xx Domain Core 2 (Software Construction & Development) Domain Core 3 (2-3) 20 GE2xx Natural Science (Applied Physics) GER 3 (2-3) 21 GE1xx Expository Writing GER 3 (3-0) 22 GE2xx Islamic Studies GER 2 (2-0) Total Cr Hrs 17 (14-9) Semester 5 23 CS3xx Operating Systems Core 3 (2-3) 24 CS3xx Domain Core 3 (Software Quality Engineering) Domain Core 3 (2-3) 25 CS3xx Domain Core 4 (Software Requirement Engineering) Domain Core 3 (2-3) 26 CS3xx Domain Elective 1 Domain Elective 3 (2-3) 27 CS3xx Domain Elective 2 Domain Elective 3 (2-3) 28 GE2xx Social Science (Example: Introduction to Management) GER 2 (2-0) Total Cr Hrs 17 (12-15) Semester 6 29 CS3xx Domain Core 5 (Software Project Management) Domain Core 3 (2-3) 30 CS3xx Domain Core 6 (Parallel & Distributed Computing) Domain Core 3 (2-3) 31 CS3xx Domain Elective 3 Domain Elective 3 (2-3) 32 CS3xx Domain Elective 4 Domain Elective 3 (2-3) 33 CS3xx Domain Elective 5 Domain Elective 3 (2-3) 34 CS3xx Domain Elective 6 Domain Elective 3 (2-3) Total Cr Hrs 18 (12-18) Semester 7 35 CS4xx Final Year Project - I Core 2 (0-6) 36 CS4xx Analysis of Algorithms Core 3 (3-0) 37 CS4xx Domain Elective 7 Domain Elective 3 (2-3) 38 SS1xx Elective Supporting Course (Example: Introduction to Marketing) SS 3 (3-0) 39 EN4xx Technical & Business Writing EN 3 (3-0) 40 GE4xx Entrepreneurship GER 2 (2-0) Total Cr Hrs 16 (13-9) Semester 8 41 CS4xx Final Year Project - II Core 4 (0-12) 42 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 43 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 44 GE4xx Civics and Community Engagement GER 2 (2-0) Total Cr Hrs 10 (6-12) 19 4.3 Bachelor of Science in Artificial Intelligence - BSAI The BS (AI) program gives the students an in-depth knowledge they need to transform large and complex scenarios into actionable decisions. The program and its curriculum focus on how complex inputs — such as knowledge, vision, language and huge databases — can be used to make decisions to enhance human capabilities. The curriculum of the BS (AI) program includes coursework in computing, mathematics, automated reasoning, statistics, computational modeling, introduction to classical artificial intelligence languages and case studies, knowledge representation and reasoning, artificial neural networks, machine learning, natural language processing, vision and symbolic computation. The program also encourages students to take courses in ethics and social responsibility, with the opportunity to participate in long term projects in which artificial intelligence can be applied to solve problems that can change the world for the better — in areas like agriculture, defense, healthcare, governance, transportation, e-commerce, finance and education. 4.3.1 Curriculum Model for BS in Artificial Intelligence The generic structure for computing degree program given before is mapped with the BSAI program in the following tables. Generic Structure for Computing Disciplines: Areas Credit Hours Courses Computing Core 46 14 Domain Core 18 6 Domain Electives 21 7 Mathematics & Supporting Courses 12 4 Elective Supporting Courses 3 1 General Education Requirement 30 12 Totals 130 44 Mapping of BSAI Program on the Generic Structure: # Sem Code Pre- Course Title Dom Cr Hr # Reqs Computing Core (46/130) 14 Courses 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 2 CS1xx PF Object Oriented Programming Core 4 (3-3) 3 2 CS1xx Database Systems Core 4 (3-3) 4 2 CS1xx Digital Logic Design Core 3 (2-3) 5 3 CS2xx OOP Data Structures Core 4 (3-3) 6 3 CS2xx Information Security Core 3 (2-3) 7 3 CS2xx Artificial Intelligence Core 3 (2-3) 8 3 CS2xx Computer Networks Core 3 (2-3) 9 3 CS2xx Software Engineering Core 3 (3-0) 10 4 CS2xx DLD Computer Organization & Assembly Language Core 3 (2-3) 11 5 CS3xx Operating Systems Core 3 (2-3) 12 7 CS4xx DS Analysis of Algorithms Core 3 (3-0) 13 7 CS4xx Final Year Project - I Core 2 (0-6) 14 8 CS4xx FYP-I Final Year Project - II Core 4 (0-12) Domain Core (18/130) 6 Courses 15 4 CS2xx Programming for AI Domain Core 3 (2-3) 20 16 4 CS2xx Machine Learning Domain Core 3 (2-3) 17 5 CS3xx Artificial Neural Networks & Deep Learning Domain Core 3 (2-3) 18 5 CS3xx Knowledge Representation & Reasoning Domain Core 3 (2-3) 19 6 CS3xx Computer Vision Domain Core 3 (2-3) 20 6 CS3xx Parallel & Distributed Computing Domain Core 3 (2-3) Domain Elective (21/130) 7 Courses 21 5 CS3xx Natural Language Processing Domain Elective 3 (2-3) 22 5 CS3xx Speech Processing Domain Elective 3 (2-3) 23 6 CS3xx Data Mining Domain Elective 3 (2-3) 24 6 CS3xx Advanced Statistics Domain Elective 3 (2-3) 25 6 CS3xx Reinforcement Learning Domain Elective 3 (2-3) 26 6 CS3xx Theory of Automata Domain Elective 3 (3-0) 27 7 CS4xx HCI & Computer Graphics Domain Elective 3 (2-3). Fuzzy Systems Domain Elective 3 (2-3). Swarm Intelligence Domain Elective 3 (2-3). Agent Based Modeling Domain Elective 3 (2-3). Knowledge Based Systems Domain Elective 3 (2-3) Mathematics & Supporting Courses (12/130) 4 Courses 28 2 MT1xx CAG Multivariable Calculus Maths 3 (3-0) 29 2 MT1xx CAG Linear Algebra Maths 3 (3-0) 30 3 MT2xx Probability & Statistics Maths 3 (3-0) 31 7 EW4xx ECC Technical & Business Writing EW 3 (3-0) Elective Supporting Courses (3/130) 1 Course 32 7 SS1xx Social Science (Example: Introduction to Marketing) SS 3 (3-0). SS1xx Social Science (Example: Financial Accounting) SS 3 (3-0) General Education Requirement as per HEC UG Education Policy (30/130) 12 Courses 33 1 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 34 1 GE1xx Functional English GER 3 (3-0) 35 2 GE1xx ECC Expository Writing GER 3 (3-0) 36 1 GE1xx Quantitative Reasoning – 1 (Discrete Structures) GER 3 (3-0) 37 1 GE1xx Quantitative Reasoning – 2 (Calculus and Analytic Geometry) GER 3 (3-0) 38 4 GE2xx Islamic Studies GER 2 (2-0) 39 8 GE4xx Ideology and Constitution of Pakistan GER 2 (2-0) 40 4 GE2xx Social Sciences (Example: Introduction to Management) GER 2 (2-0) 41 4 GE2xx Natural Sciences (Applied Physics) GER 3 (2-3) 42 8 GE4xx Arts & Humanities (Professional Practices) GER 2 (2-0) 43 8 GE4xx Civics and Community Engagement GER 2 (2-0) 44 7 GE4xx Entrepreneurship GER 2 (2-0) 4.3.2 Suggested Semester/Study Plan for BSAI # Code Pre-Reqs Course Title Domain Cr Hr (Cont Hr) Semester 1 1 CS1xx Programming Fundamentals Core 4 (3-3) 2 GE1xx Application of Information & Communication Technologies GER 3 (2-3) 3 GE1xx QR 1 (Discrete Structures) GER 3 (3-0) 4 GE1xx QR 2 (Calculus and Analytic Geometry) GER 3 (3-0) 5 GE1xx Functional English GER 3 (3-0) Total Cr Hrs 16 (14-6) Semester 2 6 CS1xx Object Oriented Programming Core 4 (3-3) 7 CS1xx Database Systems Core 4 (3-3) 8 CS1xx Digital Logic Design Core 3 (2-3) 9 MT1xx Multivariable Calculus Maths 3 (3-0) 10 MT1xx Linear Algebra Maths 3 (3-0) Total Cr Hrs 17 (14-9) Semester 3 11 CS2xx Data Structures Core 4 (3-3) 12 CS2xx Information Security Core 3 (2-3) 13 CS2xx Artificial Intelligence Core