06.07.2013 Views

Undergraduate Handbook - School of Computing and Informatics ...

Undergraduate Handbook - School of Computing and Informatics ...

Undergraduate Handbook - School of Computing and Informatics ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Contacts<br />

CIT Management<br />

Dean<br />

Pr<strong>of</strong>. Venansius Baryamureeba<br />

Email: barya@cit.mak.ac.ug<br />

Deputy Dean (Academic Affairs)<br />

Dr. Idris Rai<br />

Email: rai@cit.mak.ac.ug<br />

Deputy Dean (Graduate Studies & Research)<br />

Dr. Jude Lubega<br />

Email: jlubega@cit.mak.ac.ug<br />

Head, Department <strong>of</strong> Computer Science<br />

Dr. John Ngubiri<br />

Email: ngubiri@cit.mak.ac.ug<br />

Head, Department <strong>of</strong> Information Systems<br />

Dr. Agnes Rwashana Semwanga<br />

Email: asemwanga@cit.mak.ac.ug<br />

Head, Department <strong>of</strong> Information Technology<br />

Dr. Josephine Nabukenya<br />

Email: josephine@cit.mak.ac.ug<br />

Head, Department <strong>of</strong> Networks<br />

Dr. Benjamin Kanagwa<br />

Email: bkanagwa@cit.mak.ac.ug<br />

Dept <strong>of</strong> Innovation & S<strong>of</strong>tware Development<br />

Paul Bagyenda<br />

Email: Bagyenda@cit.mak.ac.ug<br />

E-Learning Coordinator<br />

Joseph .M. Ssemwogerere<br />

Email: joseph@cit.mak.ac.ug<br />

University General Contact<br />

P.O. Box 7062 Kampala, Ug<strong>and</strong>a<br />

Tel: (256-414) 532631-4/540436<br />

Telegragh “Makunika”<br />

Faculty Accountant<br />

Consolate Komugisha<br />

Email: accountant@cit.mak.ac.ug<br />

Faculty Registrar<br />

Peace B. Tumuheki<br />

Email: ptumuheki@cit.mak.ac.ug<br />

Head, Corporate Relations Office<br />

Michael Niyitegeka<br />

Email: mniyitegeka@cit.mak.ac.ug<br />

Head, Department <strong>of</strong> ICT Support Services<br />

Johnson Mwebaze<br />

Email: jmwebaze@cit.mak.ac.ug<br />

Head, Human Resources Office<br />

Rosette Birungi<br />

Email: rbirungi@cit.mak.ac.ug<br />

University Administration<br />

Vice Chancellor<br />

Email: vc@admin.mak.ac.ug<br />

Deputy Vice Chancellor (Academic Affairs)<br />

Email: dvaa@acadreg.mak.ac.ug<br />

Deputy Vice Chancellor (Finance & Administration)<br />

Email: dvcfa@admin.mak.ac.ug<br />

University Secretary<br />

Email: unisec@admin.mak.ac.ug<br />

The Academic Registrar<br />

Email: acadreg@acadreg.mak.ac.ug<br />

The Dean <strong>of</strong> Students<br />

Email: dos@makdos.mak.ac.ug<br />

The University Bursar<br />

Email: unibursar@nance.mak.ac.ug<br />

The University Library<br />

Email: mmusoke@mulib.mak.ac.ug<br />

Directorate for ICT Support (DICTS)<br />

Email: helpme@dicts.mak.ac.ug<br />

University General Contact<br />

P.O. Box 7062 Kampala, Ug<strong>and</strong>a<br />

Tel: (256-414) 532631-4/540436<br />

CIT General Contact<br />

Postal Address:<br />

Makerere University Faculty <strong>of</strong> <strong>Computing</strong> & IT,<br />

P.O. Box 7062 Kampala, Ug<strong>and</strong>a<br />

Physical Address:<br />

Plot 56, Makerere University Pool Road,<br />

W<strong>and</strong>egeya Kampala<br />

Tel: +256 414 540628<br />

Fax: +256 414 540620<br />

Email: info@cit.mak.ac.ug<br />

Website: www.cit.mak.ac.ug<br />

Physical Address:<br />

Plot 56, Makerere University Pool Road,<br />

W<strong>and</strong>egeya Kampala


List <strong>of</strong> Acronyms<br />

BIS Bachelor <strong>of</strong> Information Systems<br />

BIT Bachelor <strong>of</strong> Information Technology<br />

BSc Bachelor <strong>of</strong> Science<br />

BSc CS Bachelor <strong>of</strong> Science in Computer Science<br />

BSc.SE Bachelor <strong>of</strong> Science in S<strong>of</strong>tware Engineering<br />

CCA Certificate in Computer Applications<br />

CCNA Cisco Certified Network Associate<br />

CCNP Cisco Certified Network Pr<strong>of</strong>essional<br />

CGPA Cumulative Grade Point Average<br />

CIT Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology<br />

CU Course Unit<br />

CS Computer Science<br />

DCSE Data Communications <strong>and</strong> S<strong>of</strong>tware Engineering<br />

DCSIT Diploma in Computer Science & Information Technology<br />

EUTP End User Training Programme<br />

GMAT Graduate Management Admission Test<br />

ICDL International Computer Driving License<br />

ICT Information Communication Technology<br />

IT Information Technology<br />

MAK Makerere University<br />

MCDBA Micros<strong>of</strong>t Certified Database Administrator<br />

MCSA Micros<strong>of</strong>t Certified Systems Administrator<br />

MCSD Micros<strong>of</strong>t Certified Solutions Developer<br />

MCSE Micros<strong>of</strong>t Certified Systems Engineer<br />

MCT Micros<strong>of</strong>t Certified Trainers<br />

MOS Micros<strong>of</strong>t Office User Specialist<br />

MSc Master <strong>of</strong> Science<br />

OCA Oracle Certified Associate<br />

OCP Oracle Certified Pr<strong>of</strong>essional<br />

PGD Postgraduate Diploma<br />

PhD Doctor <strong>of</strong> Philosophy<br />

3


MAKERERE UNIVERSITY<br />

FACULTY OF COMPUTING AND INFORMATICS TECHNOLOGY<br />

CIT Value Statement:<br />

Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology is an innovative <strong>and</strong> industry oriented<br />

Faculty, pursuing excellence in teaching, learning, cutting edge value-added research <strong>and</strong> consultancy, community<br />

outreach, as well as providing a vibrant student life.<br />

CIT Vision Statement<br />

To be a leader in <strong>Computing</strong> <strong>and</strong> ICT training, research <strong>and</strong> consultancy services on the African continent:<br />

Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology is an innovative <strong>and</strong> market-oriented<br />

institution, pursuing inquiry, discovery <strong>and</strong> application through excellence in teaching <strong>and</strong> learning, value-added<br />

research, cutting edge consultancy <strong>and</strong> vibrant student life.<br />

CIT Mission Statement<br />

To provide first class teaching, research <strong>and</strong> services in <strong>Computing</strong> <strong>and</strong> ICT responsive to national <strong>and</strong> international<br />

needs.<br />

About the <strong>H<strong>and</strong>book</strong><br />

This h<strong>and</strong>book describes the range <strong>of</strong> undergraduate programmes <strong>of</strong>fered by the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong><br />

<strong>Informatics</strong> Technology together with the information to assist the students in planning for their degree<br />

programmes. The h<strong>and</strong> book also describes the various short/certification courses <strong>of</strong>fered at the same Faculty.<br />

The h<strong>and</strong>book gives the details <strong>of</strong> qualifications/pre-requisite for the courses, students’ regulations as well<br />

as the details <strong>of</strong> the fees structure. Therefore, it is <strong>of</strong> great importance that Continuing <strong>and</strong> prospective students<br />

study this book with care for the purposes <strong>of</strong> mastering the University regulations <strong>and</strong> other issues pertaining to the<br />

programmes <strong>of</strong>fered. The Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology takes pride in <strong>of</strong>fering the best<br />

<strong>Computing</strong> <strong>and</strong> ICT services, quality teaching <strong>and</strong> research <strong>and</strong> it is within our joy that you find this h<strong>and</strong>book<br />

helpful as far as studying at CIT is concerned.<br />

4


Table <strong>of</strong> Contents<br />

Contacts ......................................................................................................................................................................... 2<br />

A Message from the Dean ............................................................................................................................................. 7<br />

1.0 INTRODUCTION ................................................................................................................................................... 9<br />

1.1 ABOUT CIT ............................................................................................................................................................ 9<br />

1.2 Academic Programmes Per Academic Department Taught at CIT ......................................................................... 9<br />

1.3 Short Courses Offered at The Faculty ................................................................................................................... 10<br />

1.4 Online Courses ...................................................................................................................................................... 11<br />

1.5 Physical Infrastructure <strong>and</strong> Facilities ..................................................................................................................... 11<br />

2.0 GENERAL INFORMATION FOR THE STUDENTS ......................................................................................... 12<br />

2.1 Application procedures .......................................................................................................................................... 12<br />

2.2 Registration ............................................................................................................................................................ 12<br />

2.3 Accepting or Declining a Place <strong>of</strong> Offer................................................................................................................ 12<br />

2.4 Withdrawal ............................................................................................................................................................ 13<br />

2.5 Fees <strong>and</strong> Other Requirements ................................................................................................................................ 13<br />

2.6 Refund <strong>of</strong> Tuition fees when a student has withdrawn from studies ..................................................................... 14<br />

2.7 University Fees structure ....................................................................................................................................... 14<br />

2.8 CIT Finance Department-Revenue Section ........................................................................................................... 15<br />

3.0 CONDUCT OF PROGRAMMES/COURSES ...................................................................................................... 16<br />

3.1 Definition <strong>of</strong> an Academic Programme <strong>and</strong> a Course ........................................................................................... 16<br />

3.2 Categorizing Courses ............................................................................................................................................. 16<br />

3.3 Semester Course Load ........................................................................................................................................... 17<br />

3.4 Assessment <strong>of</strong> Courses .......................................................................................................................................... 17<br />

3.5 Certificate <strong>of</strong> Due Performance ............................................................................................................................. 17<br />

3.6 Progression <strong>of</strong> Students ......................................................................................................................................... 17<br />

3.7 Discontinuation ...................................................................................................................................................... 18<br />

3.8 Re-taking a course ................................................................................................................................................. 18<br />

3.9 Change <strong>of</strong> Course .................................................................................................................................................. 18<br />

3.10 Change <strong>of</strong> Programme ......................................................................................................................................... 19<br />

4.0 CONDUCT OF EXAMINATION ......................................................................................................................... 20<br />

4.1 Sitting Semester Examinations .............................................................................................................................. 20<br />

4.2 Absence from Examination ................................................................................................................................... 20<br />

4.3 Deferred Examination ............................................................................................................................................ 20<br />

4.4 Grading <strong>of</strong> Marks ................................................................................................................................................... 20<br />

4.5 Calculation <strong>of</strong> the Cumulative Grade Point Average (CGPA) .............................................................................. 21<br />

4.6 Classification <strong>of</strong> a Degree/Diploma ....................................................................................................................... 21<br />

4.7 Approval <strong>of</strong> Examination Results .......................................................................................................................... 21<br />

4.8 Appeals .................................................................................................................................................................. 21<br />

4.9 Publication <strong>of</strong> results ............................................................................................................................................. 21<br />

4.10 Moderation <strong>and</strong> External Examiners ................................................................................................................... 22<br />

4.11 Malpractices in the conduct <strong>of</strong> Examinations ...................................................................................................... 22<br />

5.0 Accommodation <strong>of</strong> Religious Creed ...................................................................................................................... 23<br />

6.0 DEPARTMENT OF COMPUTER SCIENCE ...................................................................................................... 24<br />

6.1 Introduction ........................................................................................................................................................... 24<br />

6.2 Bachelor <strong>of</strong> Science in Computer Science (BSc CS) Programme ......................................................................... 24<br />

6.2.1 Overview ............................................................................................................................................................ 24<br />

6.2.2 Programme Structure .......................................................................................................................................... 26<br />

6.2.3 Course Unit Description ..................................................................................................................................... 27<br />

6.3 Computer Science Subject for BSc Programme .................................................................................................... 42<br />

6.4 Diploma in Computer Science <strong>and</strong> Information Technology Programme (DSCIT) .............................................. 52<br />

5


7.0 DEPARTMENT OF INFORMATION TECHNOLOGY ..................................................................................... 65<br />

7.1 Introduction ........................................................................................................................................................... 65<br />

7.2 Bachelor <strong>of</strong> Information Technology (BIT) Degree Programme........................................................................... 65<br />

8.0 DEPARTMENT OF INFORMATION SYSTEMS ............................................................................................... 84<br />

8.1 Introduction ........................................................................................................................................................... 84<br />

8.2 Bachelor <strong>of</strong> Information Systems (BIS) Programme ............................................................................................. 84<br />

9.0 DEPARTMENT OF NETWORKS ..................................................................................................................... 101<br />

9.1 Introduction ......................................................................................................................................................... 101<br />

9.2 Bachelor <strong>of</strong> Science in S<strong>of</strong>tware Engineering Degree (BSc SE) Programme ..................................................... 101<br />

9.2.1 Overview .......................................................................................................................................................... 101<br />

9.2.2 Programme Structure ........................................................................................................................................ 103<br />

9.2.3 Course Unit Description ................................................................................................................................... 104<br />

10.0 SHORT COURSES ........................................................................................................................................... 124<br />

10.1 Short Courses taught at CIT .............................................................................................................................. 124<br />

10.2 Certificate in Computer Applications (CCA) .................................................................................................... 124<br />

10.3 International Computer Driving License (ICDL) .............................................................................................. 125<br />

10.4 Micros<strong>of</strong>t Academy Programmes ...................................................................................................................... 125<br />

10.5 Staff Development Programmes ........................................................................................................................ 130<br />

10.6 Multimedia Certificate Courses: ........................................................................................................................ 130<br />

10.7 Oracle Programmes ........................................................................................................................................... 130<br />

10.8 Geographical Information Systems (GIS) ......................................................................................................... 131<br />

10.9 Cisco Academy Programmes ............................................................................................................................. 132<br />

10.10 Computer Systems Engineering ....................................................................................................................... 134<br />

11.0 Summary <strong>of</strong> the Duration/Time <strong>of</strong> Study/Training Fees for Short Courses ...................................................... 134<br />

12.0 Intake for Short Courses .................................................................................................................................... 135<br />

13.0 Application Forms ............................................................................................................................................. 136<br />

14.0 Registration Procedure....................................................................................................................................... 136<br />

6


A Message from the Dean<br />

Pr<strong>of</strong>. Venansius Baryamureeba<br />

Congratulations on your decision to undertake undergraduate studies at Makerere University Faculty <strong>of</strong> <strong>Computing</strong><br />

<strong>and</strong> <strong>Informatics</strong> Technology (CIT), <strong>and</strong> welcome to the CIT community. I hope you find your time at CIT<br />

rewarding, challenging <strong>and</strong> exciting.<br />

CIT is recognized internationally as an excellent teaching <strong>and</strong> research institution, providing a broad <strong>and</strong> balanced<br />

coverage <strong>of</strong> disciplines in <strong>Computing</strong>, Information <strong>and</strong> Technology. The high st<strong>and</strong>ing the Faculty enjoys is a result<br />

<strong>of</strong> a commitment to quality <strong>and</strong> excellence, reflecting the high st<strong>and</strong>ard <strong>of</strong> our students, staff <strong>and</strong> graduates. CIT is<br />

<strong>and</strong> has always been committed to excellent teaching, staff development, research, <strong>and</strong> consultancy <strong>and</strong> community<br />

enrichment among others.<br />

The rapid development <strong>of</strong> computing <strong>and</strong> information technology has led to a new era <strong>of</strong> learning <strong>and</strong> knowledge.<br />

The latest advancement in ICT has not only innovated our communication technology but has also exp<strong>and</strong>ed the<br />

new possibilities <strong>of</strong> which knowledge transfer can take place. We are in the midst <strong>of</strong> witnessing a sudden change in<br />

global economy <strong>and</strong>, in particular, in its sector that is closely associated with computing <strong>and</strong> <strong>Informatics</strong><br />

Technology. It is clear that people across the globe will continue to be influenced tremendously by the technology<br />

that is evolving, the science that still needs to be understood <strong>and</strong> revealed, <strong>and</strong> the systems that are still being<br />

created.<br />

CIT <strong>of</strong>fers Programmes in computing disciplines at all degree levels. In this h<strong>and</strong>book, you will find detailed<br />

descriptions for our programs at undergraduate level, <strong>and</strong> short courses in various fields that we <strong>of</strong>fer at the faculty.<br />

Our curricula are revised every 3 years so as to catch up with the rapid changes <strong>of</strong> computing disciplines, <strong>and</strong> foster<br />

for quality education with a global perspective. In addition, our Programmes have been carefully designed to ensure<br />

that each CIT student is well prepared for the working environment <strong>of</strong> the 21 st century. CIT courses help students<br />

become specialists in fields like Computer Networking, S<strong>of</strong>tware Engineering, Web Development, System Analysis<br />

& Design, System Management <strong>and</strong> Administration, IT entrepreneurship to mention but a few.<br />

As you may well know, CIT is the only place in Makerere University that is open 24/7/365 so at any time <strong>of</strong> the day<br />

or night you will find life at CIT. This is aimed at narrowing the ICT gap in the region by <strong>of</strong>fering additional<br />

education opportunities <strong>and</strong> support to many young people each year.<br />

The Faculty is devoted to providing its students with a high quality experience that is distinctive within the higher<br />

education sector. It is committed to listening to what students ‘customers’ want from their time at CIT. The<br />

academic staff, many <strong>of</strong> whom are international authorities in their specializations, provide invaluable input in terms<br />

<strong>of</strong> course content <strong>and</strong> delivery - equipping the graduates with enterprising, creative <strong>and</strong> innovative skills necessary<br />

for the global markets <strong>and</strong> that can respond to the ever changing global society needs.<br />

CIT has excellent facilities to enable teaching <strong>and</strong> learning. Examples include state-<strong>of</strong>-art computer labs that<br />

accommodate all students in the Faculty, wireless Internet connectivity across the faculty, etc. Last but not least, we<br />

have strong collaborations with internationally renowned IT companies such as IBM, Micros<strong>of</strong>t, Google, HP, Dell,<br />

etc who support our students <strong>and</strong> staff to attain various IT skills.<br />

7<br />

Dean


I wish you all the very best for your time at CIT.<br />

Pr<strong>of</strong>essor Venansius Baryamureeba<br />

DEAN<br />

8


1.0 INTRODUCTION<br />

1.1 ABOUT CIT<br />

Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> Information Technology (CIT) was established by the University<br />

Council on December 15, 2004 by upgrading the Institute <strong>of</strong> Computer Science (founded in 1985) into a Faculty <strong>of</strong><br />

<strong>Computing</strong> & IT. It is the largest computing <strong>and</strong> ICT training, research <strong>and</strong> consultancy centre in Africa. CIT has<br />

attained a reputable status as a model faculty on the African continent with its achievements attained through its<br />

commitment to delivering excellent services in the area <strong>of</strong> computing <strong>and</strong> ICT education.<br />

The Faculty has 18 academic programmes at both undergraduate <strong>and</strong> graduate levels. As per 2009/2010 Academic<br />

year, the Faculty has a total number <strong>of</strong> 3589 undergraduate <strong>and</strong> 236 graduate students distributed in four academic<br />

departments. PhD enrollment st<strong>and</strong>s at 60 students.<br />

In addition, the faculty trains over 5000 students per year in short courses <strong>of</strong> which approximately 850 are<br />

undergraduate students.<br />

CIT has a big number <strong>of</strong> International students <strong>and</strong> this signifies that the programmes <strong>of</strong>fered at CIT are <strong>of</strong><br />

international repute. As per 2009/2010 Academic year, the numbers <strong>of</strong> international students registered at the<br />

Faculty were 593 undergraduate <strong>and</strong> 14 at graduate levels. However, this number does not include the number <strong>of</strong><br />

students at CIT who are undertaking the Short courses.<br />

Human Resource: The established academic staff strength <strong>of</strong> the Faculty st<strong>and</strong>s at 250 teaching staff including 30<br />

visiting <strong>and</strong> local pr<strong>of</strong>essors. The Faculty is also supported by 32 Administrative Staff, 31 support staff <strong>and</strong> 35 In-<br />

Service staff.<br />

Service/Support Units: In a bid to facilitate a first class student environment, the faculty has several service<br />

departments that focus on the following: ICT Support Services; S<strong>of</strong>tware Development <strong>and</strong> Innovations; Finance;<br />

Registration & day today concerns <strong>of</strong> students; Research; Human Resource; Corporate/Public Relations; <strong>and</strong> Quality<br />

Assurance.<br />

1.2 Academic Programmes Per Academic Department Taught at CIT<br />

Department Programmes Offered<br />

Computer Science PhD Computer Science (PhD.CS)<br />

M.Sc. Computer Science (M.Sc. CS)<br />

PGD Computer Science (PGDCS)<br />

B.Sc. Computer Science (B.Sc.CS)<br />

Information<br />

Technology<br />

Information<br />

Systems<br />

Diploma in Computer Science & IT (DCSIT)<br />

PhD Information Technology (PhD. IT)<br />

Master <strong>of</strong> Information Technology (MIT)<br />

PGD Information Technology (PGDIT)<br />

Bachelor <strong>of</strong> Information Technology (BIT)<br />

PhD Information Systems (PhD. IS)<br />

M.Sc. Information Systems (M.Sc.IS)<br />

PGD Information Systems (PGDIS)<br />

Bachelor <strong>of</strong> Information Systems (BIS)<br />

Networks PhD S<strong>of</strong>tware Engineering (PhD SE)<br />

M.Sc. Data Communication <strong>and</strong> S<strong>of</strong>tware Engineering (M.Sc. DCSE)<br />

PGD in Data Communication & S<strong>of</strong>tware Engineering (PGDDCSE)<br />

PGD ICT Policy & Regulations ( PGD ICT PR)<br />

B.Sc. S<strong>of</strong>tware Engineering (B.Sc. SE)<br />

B.Sc. Computer Engineering (B.Sc. CE) (Proposed)<br />

9


1.3 Short Courses Offered at The Faculty<br />

• Certificate in Computer Application (CCA)<br />

• CIT CISCO Academy Programmes<br />

o Cisco Certified Network Associate (CCNA)<br />

o Cisco Certified Network Pr<strong>of</strong>essional (CCNP)<br />

o IT Essentials I & II<br />

o International Computer Driving License (ICDL)<br />

• Multimedia Certified Courses<br />

o Certificate in Graphics <strong>and</strong> Image Editing<br />

o Certificate in Video Editing <strong>and</strong> Animation<br />

o Certificate in Dynamic Website Development<br />

• Micros<strong>of</strong>t Academy Programmes<br />

o Micros<strong>of</strong>t Certified Database Administrators (MCDBA)<br />

o Micros<strong>of</strong>t Certified Systems Engineers (MCSA)<br />

o Micros<strong>of</strong>t Certified Systems Administrators (MCSE)<br />

o Micros<strong>of</strong>t Office User Specialists (MOS)<br />

o Micros<strong>of</strong>t Certified Solutions Developer (MCSD)<br />

• Oracle Programmes<br />

o Oracle Certified Associate (OCA)<br />

o Oracle Certified Pr<strong>of</strong>essional (OCP)- Proposed<br />

• Staff Development Programme (Advanced End –User Training Programme in ICT Skills)<br />

• Geographical Information Systems(GIS)<br />

• Computer Systems Engineering Course<br />

a. Midnight University<br />

Because <strong>of</strong> the popular dem<strong>and</strong> for short courses <strong>and</strong> in a bid to meet the national needs <strong>and</strong> various needs <strong>of</strong> its<br />

clientele, CIT instituted the popularly termed Midnight Programme. Its basic aim is to support ICT led socioeconomic<br />

development through providing ‘ICT Education for All’. This programme mainly caters for those who may<br />

not find time during the day <strong>and</strong> evening hours <strong>and</strong> also caters for those financially constrained since its rates are<br />

subsidized (50% discount). Under the midnight programme, courses run from midnight up to 6:00 am. Courses run<br />

under this programme are CCNA <strong>and</strong> CCA.<br />

b. Testing center<br />

CIT is an authorized Prometric testing <strong>and</strong> Pearson VUE Testing Centre. Through these Testing Centers, different<br />

IT certification exams are delivered including Micros<strong>of</strong>t exams leading to Micros<strong>of</strong>t Systems Engineer<br />

(MCSE), Micros<strong>of</strong>t Database Administrator (MCDBA), Micros<strong>of</strong>t Systems Administrator (MCSA), Micros<strong>of</strong>t<br />

Solution Developer (MCSD) <strong>and</strong> ORACLE exams through Pearson VUE. Some none IT exams like GMAT are also<br />

delivered. The centre also delivers International Computer Driving License (ICDL) exams.<br />

10


1.4 Online Courses<br />

Amity University <strong>of</strong>fers programmes under the Pan-African e-Network through Tele-Education mode. The<br />

programmes are <strong>of</strong>fered under the Pan-African E-Network Project coordinated by the Ministry <strong>of</strong> ICT <strong>of</strong> the<br />

Republic <strong>of</strong> Ug<strong>and</strong>a, <strong>and</strong> the National Tele-Education Learning Centre set up at CIT<br />

(http://cit.mak.ac.ug/pan_african.php). NB: Application fee is 100,000/= for all the courses.<br />

Programme Duration Operational Fees per Semester<br />

Master in Financial Control 2 years 500,000/=<br />

MBA in International Business 2 years 500,000/=<br />

Post graduate Diploma in IT 1 year 400,000/=<br />

Bachelor <strong>of</strong> Science in IT 3 Years 350,000/=<br />

1.5 Physical Infrastructure <strong>and</strong> Facilities<br />

CIT has the largest computing facility in Africa housed in 15,000 sq meters <strong>of</strong> space worth over $20million. Its two<br />

buildings can accommodate up to 10,000 students in one sitting.<br />

Block A building was donated by the Royal Kingdom <strong>of</strong> Norway to then Institute <strong>of</strong> Computer Science. The<br />

building has <strong>of</strong>fices, 9 fully furnished labs <strong>and</strong> a conference room.<br />

Block B was funded from internally generated funds was completed in December 2008, <strong>and</strong> was <strong>of</strong>ficially<br />

commissioned by H.E the President <strong>of</strong> the Republic <strong>of</strong> Ug<strong>and</strong>a on January 28, 2009. It has: 6 computer labs each<br />

accommodating 700 students <strong>of</strong> which one is fully equipped; 4 smaller computer labs each accommodating 120<br />

students <strong>of</strong> which two are fully equipped; <strong>and</strong> 8 small <strong>and</strong> 6 big lecture theatres.<br />

CIT established a wide range <strong>of</strong> specialized labs which include: Computer Engineering Lab; Advanced<br />

Geographical Information Systems [GIS] Lab; Advanced Multimedia Lab; Mobile <strong>Computing</strong> Lab; Pan African E-<br />

Network Tele-Education Labs; Network Systems Lab; National S<strong>of</strong>tware Incubation Centre/Lab; E-Learning Lab;<br />

Online Networking Laboratory (iNetLab); Cisco Academy Training Labs; <strong>and</strong> Teaching Labs equipped with 2,000<br />

computers.<br />

Makerere University Main Library supports teaching, research <strong>and</strong> project activities <strong>of</strong> Makerere University. The<br />

Library provides access to books, print journals, e-journals, a well stocked reference section <strong>and</strong> connections to<br />

many remote databases. www.mulib.mak.ac.ug.<br />

Library Services: Makerere University Main Library supports teaching, research <strong>and</strong> project activities <strong>of</strong> Makerere<br />

University. The Library provides access to books, print journals, e-journals, a well stocked reference section <strong>and</strong><br />

connections to many remote databases. The library has a substantial collection <strong>of</strong> report material much <strong>of</strong> it "grey"<br />

literature. The University has subscribed to a number <strong>of</strong> online journals <strong>and</strong> continues to consult Faculties to update<br />

the online journal lists. The Online Journals provide a range <strong>of</strong> products from abstracts to full text papers. The<br />

University Library has also acquired a wide range <strong>of</strong> online books which are to access <strong>and</strong> this is in line with<br />

promoting e-learning. For more details: www.mulib.mak.ac.ug. Makerere University Library supports a book bank<br />

system which is operated at the Faculty level (Block B Building). The book bank is stocked with update literature.<br />

The books in the book bank have been acquired through supplies from the Makerere University Library <strong>and</strong><br />

purchases by the Faculty for books that are difficult to purchase by the main library.<br />

11


2.0 GENERAL INFORMATION FOR THE STUDENTS<br />

Studies <strong>and</strong> examinations for undergraduate Programmes in the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> IT shall be governed by<br />

the general regulations statutes <strong>of</strong> Makerere University <strong>and</strong> in addition by the regulations <strong>of</strong> the Faculty <strong>of</strong><br />

<strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology.<br />

2.1 Application procedures<br />

(a) Information for Prospective Students<br />

Application forms <strong>and</strong> other relevant information may be obtained from undergraduate Admissions Office<br />

level 3, Senate building, Makerere University. Application fee <strong>of</strong> 20,000/= (Ug<strong>and</strong>an Applicant) <strong>and</strong> bank<br />

charge <strong>of</strong> 2,500 <strong>and</strong> 101,000/= for International Applicants. This fee should be paid in any DFCU bank<br />

<strong>and</strong> Stanbic Bank branches using Makerere University pay-in slip/ bank slips. Applicants fill in four copies <strong>of</strong><br />

pay-in slips <strong>and</strong> after paying they are expected to present a copy when they are submitting the completed<br />

application forms to the admissions <strong>of</strong>fice, Makerere University. All applications for diplomas have to satisfy<br />

the requirements <strong>of</strong> the relevant courses <strong>and</strong> the University regulations. Application forms can<br />

be downloaded from (http://www.mak.ac.ug). International applicants should contact Makerere University<br />

Academic Registrar’s for application forms <strong>and</strong> more information. Please provide your e-mail <strong>and</strong> fax<br />

addresses for ease <strong>of</strong> transmission <strong>of</strong> these forms where applicable.<br />

(b) Direct Entry/ Diploma Holders/ Mature Age Entry Scheme<br />

Unless otherwise stated, all applications from private sponsorships are made in May <strong>of</strong> each academic year. The<br />

closing date for receiving applications is normally late the same month <strong>of</strong> the year in which the admission is<br />

sought. All completed application forms must be accompanied by relevant copies <strong>of</strong> certificates.<br />

(c) Application forms from International students are received from 1st April to 30th April <strong>of</strong> each year.<br />

2.2 Registration<br />

For a c<strong>and</strong>idate to be a full student <strong>of</strong> the University he/she must be registered. Registration is a m<strong>and</strong>atory function<br />

<strong>of</strong> the Faculty as well as the University which must be done within six (6) weeks from the beginning <strong>of</strong> the semester<br />

by every student. Registration center is under the supervision <strong>of</strong> the Faculty Registrar at the Faculty premises who<br />

produces <strong>and</strong> displays detailed registration programmes. Students are advised to use names that appear on their<br />

admissions letters, <strong>and</strong> these should be the names that appear on O’ Level <strong>and</strong> A’ Level results slips, Diploma<br />

Transcripts etc. All undergraduate students are expected to be registered on the Academic Registrar’s Information<br />

System (ARIS) for their programmes <strong>and</strong> respective courses so as to be availed with Examination permits. All<br />

undergraduate Students are urged to fill the bio-data form as soon as possible to provide the necessary<br />

information required by the system.<br />

2.3 Accepting or Declining a Place <strong>of</strong> Offer<br />

a) Any first year student who will not have registered with in the first six (6) weeks <strong>of</strong> the beginning <strong>of</strong><br />

the academic year shall be deemed to have declined the <strong>of</strong>fer <strong>of</strong> a place at the University as well as the<br />

faculty. His/her place shall accordingly be <strong>of</strong>fered to another student through the change<br />

<strong>of</strong> programme/subject exercise.<br />

b) Any students in the first year <strong>of</strong> studies, who for some reasons are unable to register or take up his /her<br />

place in the University by the end <strong>of</strong> the registration period, are advised to re-apply again for the<br />

admission <strong>of</strong> the following academic year by following the same application procedures. Please note that<br />

you need to re-apply for admission <strong>and</strong> complete afresh with the applicants for that academic year.<br />

12


2.4 Withdrawal<br />

a) A registered student must apply to the Board <strong>of</strong> the Faculty for permission to withdraw from studies at<br />

anytime <strong>of</strong> the semester. Reasons for withdrawal should be given in the letter <strong>of</strong> application. A student will<br />

be allowed only a maximum <strong>of</strong> two (2) withdrawals in an academic Programme <strong>and</strong> each withdrawal shall<br />

be a maximum <strong>of</strong> one academic year only.<br />

b) Permission to withdraw shall be granted by the Faculty Board only on compassionate grounds or in cases <strong>of</strong><br />

illness or financial constraints serious social or domestic difficulties or exceptional pr<strong>of</strong>essional<br />

commitment which can be demonstrated to have adversely affected the c<strong>and</strong>idate.<br />

c) A student who had withdrawn from studies shall apply to his/her respective Faculty Board to resume<br />

studies <strong>and</strong> shall indicate that the circumstances that made him/her withdraw can no longer affect his/her<br />

studies.<br />

2.5 Fees <strong>and</strong> Other Requirements<br />

Before applying, applicants are advised to make sure that they have adequate financial support to cover tuition <strong>and</strong><br />

functional fees as well as other requirements. Fees do not cover research <strong>and</strong> accommodation expenses. An<br />

acceptable guarantee <strong>of</strong> financial support throughout the proposed course is necessary<br />

2.5.1 Payment <strong>of</strong> Fees<br />

a) Tuition <strong>and</strong> other University fees are due on the first day <strong>of</strong> the Academic year. Privately –sponsored students<br />

who cannot pay full fees at the beginning <strong>of</strong> the academic year are required to pay at least 60% <strong>of</strong> the Course<br />

Load, if they wish, by the set deadline <strong>and</strong> register for <strong>and</strong> attend lectures for <strong>and</strong> sit examinations for only those<br />

courses.<br />

b) A first year Privately-sponsored student who fails to pay the entire Functional Fees (Registration Fee,<br />

Examination Fees, Research Fees, Library Fees, Development fee, Technology fee) shall forfeit his/her place<br />

in the University.<br />

c) Only registered students will be allowed to use University facilities, to attend lecturers, do Coursework <strong>and</strong> sit<br />

for University End <strong>of</strong> Semester Examinations.<br />

d) A privately-sponsored student who shall not have paid at least 60% <strong>of</strong> the fees by the end <strong>of</strong> the 6 th week shall be<br />

de-registered.<br />

e) A privately-sponsored student who shall not have completed paying fees by the end <strong>of</strong> the 6 th week will not be<br />

allowed to sit for University tests <strong>and</strong> examinations.<br />

f) Fees for Residence, Application, Faculty Requirements, Registration, Examinations, Identity Cards, Library, <strong>and</strong><br />

Guild Charges are not refunded.<br />

g) The University Council reserves the right to vary fees chargeable anytime with or without prior notice.<br />

h) International Students are advised to pay fees in Ug<strong>and</strong>a Shillings.<br />

Other requirements like books, stationery, <strong>and</strong> materials, accommodation, food, research expenses, etc, the sponsor<br />

should pay it directly to the student.<br />

2.5.2 Mode <strong>of</strong> payment<br />

a) University fees MUST be paid to DFCU Bank Makerere or any Stanbic Bank Ltd Branch <strong>and</strong> using payin/Deposit<br />

slips, <strong>and</strong> clearly marking the item(s) being paid for. It is, therefore advisable that students open<br />

Accounts with any <strong>of</strong> the above banks to ease transaction. Pay-in/Deposit slips are obtainable from the<br />

University Bursar’s <strong>of</strong>fice or Senate Building; Room 202. Students’ numbers <strong>and</strong> registration numbers must be<br />

used in all payments <strong>of</strong> the University fees.<br />

b) Fees can also be paid by Electronic Funds Transfer (EFT) money transfer to Makerere University Council<br />

13


Account Number – 0140018673101 Stanbic Bank Makerere Branch.<br />

c) University fees (i.e. Registration, Administration, Library, Research, Internship, Development, Technology <strong>and</strong><br />

Examination, others like Caution, undergraduate gowns <strong>and</strong> Tuition) MUST be paid to the University before<br />

registration. Graduation, Certificate, Convocation <strong>and</strong> Academic Transcript fees will be paid on completion <strong>of</strong> the<br />

course.<br />

d) Payment <strong>of</strong> fees may be made in Lump Sum on arrival or in installments (per Semester) by using the student<br />

numbers to pay in the Bank.<br />

e) Payments can also be made by Bank Drafts in the names <strong>of</strong> Makerere University council.<br />

f) Students are required to present copies <strong>of</strong> the pay-in slips to CIT Revenue Office (2 nd Floor room 203) to get their<br />

financial statements.<br />

g) Sponsors/Parents/Guardians are advised to avoid giving lots <strong>of</strong> money to students but to pay fees directly to the banks<br />

indicated under (i) <strong>and</strong> (ii) above.<br />

h) Enquiries on payment <strong>of</strong> fees should be done from the <strong>of</strong>fice <strong>of</strong> the University Bursar in the Main administration<br />

Building or from CIT revenue Office (2 nd Floor room 203).<br />

2.6 Refund <strong>of</strong> Tuition fees when a student has withdrawn from studies<br />

A registered student who has been permitted to withdraw from studies shall be refunded the Tuition fees for the<br />

semester paid according to the following schedules:<br />

The time at which a student has withdrawn in a Semester Percentage <strong>of</strong> paid Tuition to be Refunded<br />

(a) By the end <strong>of</strong> the First week <strong>of</strong> a Semester 100%<br />

(b) By the end <strong>of</strong> the Second week <strong>of</strong> a Semester 80%<br />

(c) By the end <strong>of</strong> the Third week <strong>of</strong> a Semester 60%<br />

(d) By the end <strong>of</strong> the Fourth week <strong>of</strong> a semester 40%<br />

(e) By the end <strong>of</strong> the Fifth week <strong>of</strong> a semester 20%<br />

(f) After the fifth week 0%<br />

Note: Fees application, residence, Faculty requirements, registration, examinations, Identity card, Library <strong>and</strong> Guild<br />

charges are not refunded since services will have been rendered.<br />

2.7 University Fees structure<br />

a. Functional fees (payable to the University)<br />

Item Ug<strong>and</strong>ans Non-Ug<strong>and</strong>ans Period<br />

(UGX) (UGX)<br />

Application Fee 20,000 101,000 Payable at the time <strong>of</strong> Application<br />

Registration Fee 100,000 202,000 Per year<br />

Examination Fee 100,000 303,000 Per year<br />

Library Fee 20,000 40,400 Per year<br />

Development Fee 123,500 222,200 Per year<br />

Contribution towards Research Fund 20,000 40,400 Per year<br />

Technology Fee 50,000 101,000 Per year<br />

Internship Fee 100,000 100,000 Per semester<br />

University Identity card 15,000 40,400<br />

Rules <strong>and</strong> Caution 2,000 2,000<br />

Academic Gown 16,000 16,000<br />

Late Registration (surcharge)Fee 50,000 101,000<br />

Accommodation<br />

i. Fee per semester<br />

ii. Recess term<br />

220,000 600,000 Per semester<br />

14


Certification fee 3,000 20,200 Per copy<br />

Re-Examination Fee 20,000 40,400 Per course<br />

Graduation Fee 30,000 101,000 On graduation<br />

Convocation Fee 10,000 20,200 On graduation<br />

Certificate Fee 20,000 101,000 On graduation<br />

Transcript fee 20,000 101,000 On graduation<br />

b. Tuition Fees per Semester<br />

Course Ug<strong>and</strong>an (UGX) Non-Ug<strong>and</strong>ans (UGX)<br />

Bachelor <strong>of</strong> Science in Computer Science 1,260,000 1,890,000<br />

Bachelor <strong>of</strong> Information Technology 1,260,000 1,890,000<br />

Bachelor <strong>of</strong> Information System 1,300,000 2,525,000<br />

Bachelor <strong>of</strong> Science in S<strong>of</strong>tware Engineering 1,300,000 2,525,000<br />

Diploma in Computer Science <strong>and</strong> Information Technology 1,050,000 1,260,000<br />

2.8 CIT Finance Department-Revenue Section<br />

This Section is part <strong>of</strong> Finance Department in CIT <strong>and</strong> the services <strong>of</strong>fered to the students are: Answering all<br />

Students' queries concerning fees payments; assisting Students in interpreting Students’ Financial statements<br />

generated from Financial Integrated Information System (FINIS ); guiding students on payment procedures <strong>and</strong><br />

terms; assisting students in getting their certificates through issuance <strong>of</strong> clearance forms; in case a student gets a<br />

retake, revenue section helps students in computing the required fees to be paid; advising Students to meet fees<br />

payment deadlines; Financial information dissemination from University Bursar's <strong>of</strong>fice to Students <strong>and</strong> the overall<br />

matters concerning Students fees. For more information write to revenue@cit.mak.ac.ug<br />

15


3.0 CONDUCT OF PROGRAMMES/COURSES<br />

3.1 Definition <strong>of</strong> an Academic Programme <strong>and</strong> a Course<br />

3.1.1 Academic Programmes<br />

Each Academic Programme shall be defined by Courses. An Academic Programme shall be composed <strong>of</strong> a set <strong>of</strong><br />

prescribed Courses that shall be registered for by a student in order for him/her to qualify for the Award <strong>of</strong> a<br />

particular Degree/Diploma/Certificate.<br />

3.1.2 A Course<br />

A Course is a unit <strong>of</strong> work in a particular Field/area <strong>of</strong> a study normally extending through one Semester the<br />

completion <strong>of</strong> which normally carries credit towards the fulfillment <strong>of</strong> the requirements <strong>of</strong> certain Degrees,<br />

Diploma, or certificates.<br />

3.1.3 A Contact Hour<br />

A contact hour is equivalent to One (1) hour <strong>of</strong> lecture/Clinical or Two (2) Hours <strong>of</strong> Tutorial/Practical or four (4)<br />

hours Fieldwork.<br />

3.1.4 A Credit or Credit Unit<br />

A Credit or Credit Unit is the measure used to reflect the relevant weight <strong>of</strong> a given Course towards the fulfillment<br />

<strong>of</strong> appropriate Degree, Diploma, Certificate or other programmes required. One (1) Credit Unit shall be One (1)<br />

Contact Hour per Week per Semester or a series <strong>of</strong> fifteen (15) Contact Hours.<br />

3.2 Categorizing Courses<br />

Courses are categorized as Core, Elective, Pre-requisite or Audited. Not all Courses in an Academic programme are<br />

made Core. The Courses <strong>of</strong> the first year studies are called pre-requisite or introductory courses. The number <strong>of</strong><br />

elective Courses that each student shall be required to register for in every undergraduate Academic Programme<br />

shall always be stated so as to guide the students when they are choosing them from a particular Elective Course.<br />

Courses in the Programmes shall be categorized as follows:-<br />

a) A Core Course<br />

This is one which is essential to an Academic Programme <strong>and</strong> gives the Academic programme its unique<br />

feature. Everyone <strong>of</strong>fering that particular academic programme must pass that Course. Core Courses shall<br />

be <strong>of</strong>fered in all the Semesters.<br />

b) An Elective Course<br />

This is one which is <strong>of</strong>fered in order to broaden an Academic Programme or to allow for specialization. It<br />

is chosen from a given group <strong>of</strong> courses largely at the convenience <strong>of</strong> the student. Another Elective<br />

Course may be substituted for a failed Elective course.<br />

c) An Audited Course<br />

This is one which is <strong>of</strong>fered by a student for which a credit/credit Unit shall not be awarded.<br />

d) A Pre-requisite Course<br />

A pre-requisite is a condition (either Course <strong>of</strong> Classification), which has to be satisfied prior to enrolling<br />

for the course in question.<br />

A pre-requisite course therefore is a Course <strong>of</strong>fered in preparation for a higher level Course in the same<br />

area <strong>of</strong> study.<br />

16


3.3 Semester Course Load<br />

Semester Load shall be the total number <strong>of</strong> Courses for a particular Academic Programme <strong>of</strong>fered in a Semester.<br />

The Courses to be Retaken <strong>and</strong> those to be Audited shall be within the Maximum semester Load <strong>of</strong> every student.<br />

3.3.1 Normal Semester Load<br />

The normal semester Load for undergraduate academic programmes range from Fifteen (15) Credit units to Twenty-<br />

One (21) Credit Units. A full time student shall not carry less than 15 Credit Units <strong>and</strong> not more than 21 Credit Units<br />

per semester.<br />

3.3.2 Maximum Semester Load<br />

The maximum Semester Load for <strong>Undergraduate</strong> Academic Programmes is Twenty-eight (28) Credit Units so as to<br />

cater for students who have Courses to retake or those who would be able to complete the requirements for their<br />

respective Academic Awards in less than the stipulated minimum duration.<br />

3.4 Assessment <strong>of</strong> Courses<br />

Each course shall be assessed in two (2) parts as follows:<br />

a) The Coursework (Progressive/ Continuous Assessment), for the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong><br />

Technology shall contribute 40% <strong>of</strong> the Total Marks.<br />

b) The Coursework (Progressive/Continuous Assessment) Component shall consist <strong>of</strong> at least One (1) test<br />

<strong>and</strong> One (1) Homework/Take-Home Assignment OR Two (2) Tests per Course.<br />

c) A minimum <strong>of</strong> two coursework assignments/tests shall be required per course.<br />

d) The University Examinations for the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology shall contribute a<br />

maximum <strong>of</strong> 60% <strong>of</strong> the Total Marks.<br />

e) For practical courses (industrial/field training) assessment shall be by assignment <strong>and</strong> or a report form.<br />

Note: Coursework is also a University examination, copying <strong>and</strong> /h<strong>and</strong>ing in coursework similar to another<br />

student’s work, or hiring another person to do one’s coursework is an examination malpractice that will lead to<br />

dismissal from the University.<br />

3.5 Certificate <strong>of</strong> Due Performance<br />

i. A student who fails to honor the deadline set for h<strong>and</strong>ing in assignment without justifiable cause(s) shall receive<br />

a score <strong>of</strong> a zero or fail grade in that assignment.<br />

ii. A student who does not have coursework marks shall be denied Certificate <strong>of</strong> Due performance <strong>and</strong> will not be<br />

allowed to sit the University Examinations.<br />

3.6 Progression <strong>of</strong> Students<br />

Progression <strong>of</strong> a student shall be classified as Normal, Probationary or Discontinuation<br />

3.6.1 Normal Progress<br />

Normal Progress shall occur when a student has passed assessments in all the Courses he/she had registered for in a<br />

particular semester <strong>and</strong> not when he/she passed the Assessments in the Core Courses only.<br />

17


3.6.2 Probationary Progress<br />

A student who has obtained the Cumulative Grade Point Average (CGPA) <strong>of</strong> less than 2.0 shall be placed on<br />

probation. Such a student shall be allowed to progress to the next Semester/Academic Year but shall still retake the<br />

Course(s) he/she had failed the Assessments in later on <strong>and</strong> obtain at least the Pass mark (50%) in the Course(s).<br />

3.7 Discontinuation<br />

a) When a student accumulates three consecutive probations based on CGPA he/she shall be discontinued.<br />

b) A student who has failed to obtain at least the Pass Mark (50%) during the Third Assessment in the same<br />

Course or Courses he/she had retaken shall be discontinued from his/her studies at the University;<br />

c) A student who has overstayed in an Academic programme by more than Two (2) Years shall be discontinued<br />

from his/her studies at the University.<br />

3.8 Re-taking a course<br />

a) A student shall retake a Course when he/she is given another <strong>of</strong>fer in order to obtain at least the Pass Mark<br />

(50%) if he/she had failed during the first Assessment in the Course or Courses. A student who has failed to<br />

obtain at least the Pass Mark (50%) during the Second Assessment in the same Course he/she has retaken shall<br />

receive a warning.<br />

b) A student may retake a Course or Courses when next <strong>of</strong>fered again in order to improve his/her Pass Grade(s) if<br />

the Pass Grade(s) for at the first Assessment in the Course or Courses were low. A student who fails to attain<br />

higher marks after retaking to improve, the examination results <strong>of</strong> the first sitting are recorded as Retake.<br />

c) Where a student misses to sit examinations for justified reasons; the grades obtained after sitting examination<br />

shall not be recorded as a retake because the c<strong>and</strong>idate is sitting the examinations for the first attempt.<br />

d) While retaking a course or Courses, a student shall; attend all the prescribed lectures/tutorials/ practical in the<br />

course; satisfy all the requirements for the Coursework Component in the Course; <strong>and</strong> sit for the University<br />

Examinations in the Course<br />

e) A student shall not be allowed to accumulate more than five (5) Retake Courses at a time. Students are required<br />

to register for retake course(s) first before registering for new courses <strong>of</strong>fered in that semester <strong>and</strong> the retake<br />

courses should fit into the approved normal load to avoid time table clash.<br />

f) A final year student whose final examination Results have already been classified by the relevant Faculty Board<br />

<strong>and</strong> has qualified for the Award <strong>of</strong> a degree/Diploma/Certificate, shall not be permitted to retake any course.<br />

g) When a student has retaken a course, the better <strong>of</strong> the two Grades he/she has obtained in that Courses shall be<br />

used in the computation <strong>of</strong> his/her Cumulative Grade Average (CGPA). Whenever a Course has been retaken,<br />

the Academic Transcript shall indicate it accordingly.<br />

h) Students who have a course(s) to retake <strong>and</strong> these Course(s) fall beyond the set normal semester load for their<br />

Academic programmes shall pay tuition fees for any Course/Courses to be retaken. Besides, such students also<br />

pay the reexamination fees per Course retaken as well as the registration fees.<br />

3.9 Change <strong>of</strong> Course<br />

A student may be permitted to change course(s) in an Academic Programme in order to substitute the<br />

Course(s) failed. The Substitute Course(s) should be within the specified Course(s) for that Academic<br />

Programme.<br />

18


3.10 Change <strong>of</strong> Programme<br />

a) A student may be permitted to change from one academic Programme to another on condition that:<br />

i. He/She had satisfied the admission requirements for the Academic Programme applied for;<br />

ii. He/She should not have been attending lectures/tutorials <strong>and</strong> other academic activities <strong>of</strong> the Academic<br />

programme he/she would want to change from for more than one-half <strong>of</strong> the duration <strong>of</strong> the<br />

programme.<br />

iii. He/She had not been previously dismissed on displinary grounds from the University.<br />

b) A student permitted to change his/her Programme may be allowed to transfer the Credits from the previous<br />

Academic programme to the new Academic Programme, provided that the Credits being transferred are relevant<br />

to the new Academic Programme.<br />

19


4.0 CONDUCT OF EXAMINATION<br />

4.1 Sitting Semester Examinations<br />

Only registered students are permitted to sit University examinations. A student who does not pay all the required<br />

University fees will not be permitted to sit the University examinations. The examination results <strong>of</strong> any student<br />

who has sat the examinations without being registered shall be nullified. Students are strongly warned against this.<br />

4.2 Absence from Examination<br />

a) If the Board <strong>of</strong> the Faculty found out that a student has no justifiable reason for having been absent from a<br />

particular examination, such a student shall receive a fail (F) Grade for the Course (s) he/she had not sat the<br />

examination in. The Course(s) in which the Fail (F) Grade was/were awarded shall also account in the<br />

calculation <strong>of</strong> the CGPA.<br />

b) If the board <strong>of</strong> a Faculty is satisfied that a student was absent from coursework assessment <strong>and</strong> or a final<br />

examination due to justifiable reason(s) such as sickness or loss o a parent/guardian, then a Course Grade<br />

<strong>of</strong> ABS shall be assigned to that course(s).<br />

NOTE: First Years that are not yet registered with the Faculty/University are not eligible for the above opportunity<br />

4.3 Deferred Examination<br />

a) A student who provides credible reason for failure to complete coursework assessment or to attend an<br />

examination based on 4.2 (b) above may be permitted to ‘sit’ the deferred examination or coursework<br />

assignment when the course(s) is being <strong>of</strong>fered again.<br />

b) Students needing a deferred exam must submit application to their respective Dean’s or Director’s Office.<br />

The application <strong>and</strong> supporting documentation pertaining to the absence must be presented as soon as the<br />

student is able, having regard to the circumstances underlying the absence but not later than the beginning<br />

<strong>of</strong> the Semester in which the examination is scheduled. Where the cause is incapacitating illness, a student<br />

must present a University Hospital Medical Statement Form. In other cases, including severe domestic<br />

affliction, adequate documentation must be provided to substantiate the reason for an absence.<br />

4.4 Grading <strong>of</strong> Marks<br />

The overall Marks a c<strong>and</strong>idate obtains in each Course he/she <strong>of</strong>fered is graded out <strong>of</strong> a maximum <strong>of</strong> One<br />

hundred (100) Marks <strong>and</strong> assigned appropriate Letter Grades <strong>and</strong> Grade Points as follows:<br />

MARKS LETTER GRADE GRADE POINT INTERPRETATION<br />

90 - 100 A+ 5 Exceptional<br />

80 - 89 A 5 Excellent<br />

75 - 79 B+ 4.5 Very Good<br />

70 - 74 B 4 Good<br />

65 - 69 C+ 3.5 Fairly good<br />

60 - 64 C 3 Fair<br />

55 - 59 D+ 2.5 Pass<br />

50 - 54 D 2 Marginal Pass<br />

45 - 49 E+ 1.5 Marginal Fail<br />

40 - 44 E- 1 Clear Fail<br />

0 - 39 F 0 Bad Fail<br />

A student with a grade point greater or equal to 2 (Letter Grade D) is considered to have passed the course unit.<br />

20


Note: The above Grading System is for the intake <strong>of</strong> 2008/2009 Academic Year on wards.<br />

4.5 Calculation <strong>of</strong> the Cumulative Grade Point Average (CGPA)<br />

The cumulative grade point average at a given time shall be obtained by:<br />

a) Multiplying the grade point obtained in each course by the Credit Units (CU) assigned to the Course to<br />

arrive at the Weighted Score for the Course.<br />

b) Adding together the Weighted Scores for all Courses taken up to that time to obtain total Weighted Score.<br />

c) Dividing the total Weighted Score by the total number <strong>of</strong> Credit Units taken (attempted) up to that time.<br />

Example:<br />

Courses CU Grade points Weighted Score<br />

CSC 1100 4 3.0 C 3.0 x 4 = 12<br />

CSK 1101 4 4.0 B 4.0 x 4 = 16<br />

BIT 1100 3 4.0 B 4.0 x 3 = 12<br />

CSC 1104 4 5.0 A+ 5.0 x 4 = 20<br />

CSC 1106 3 2.0 C- 2.0 x 3 = 6<br />

Total 18 Total = 66<br />

(66 divided by 18 i.e. 66/18 = 3.66 CGPA)<br />

4.6 Classification <strong>of</strong> a Degree/Diploma<br />

The degree obtained in the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology shall be classified according to the CGPA<br />

as follows;<br />

CLASS CGPA<br />

First 4.40 – 5.00<br />

Second Upper Division 3.60 – 4.39<br />

Second Lower Division 2.80 – 3.59<br />

Pass 2.00 – 2.79<br />

4.7 Approval <strong>of</strong> Examination Results<br />

The Senate has delegated the power to approve all examination results to the Board <strong>of</strong> the Faculty. But the results<br />

shall not be regarded as final until they are confirmed by Senate on submission <strong>of</strong> Appropriate Pass Lists to Senate<br />

by the relevant Board. The Appropriate Pass lists to Senate should be accompanied with Faculty Board Minutes.<br />

Students shall be provided with examination results using the approved testimonial format.<br />

4.8 Appeals<br />

Any student or c<strong>and</strong>idate aggrieved by a decision <strong>of</strong> the Board <strong>of</strong> the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong><br />

Technology may appeal to the Senate Examinations Committee for reversal or Moderation <strong>of</strong> the decision <strong>of</strong> the<br />

Board.<br />

4.9 Publication <strong>of</strong> results<br />

The relevant department shall publish provisional Examination Results <strong>of</strong> C<strong>and</strong>idates in every examination son after<br />

the meeting <strong>of</strong> departmental Examination Committee; the Examination Results shall be arranged <strong>and</strong> published in a<br />

manner as prescribed by Senate.<br />

21


4.10 Moderation <strong>and</strong> External Examiners<br />

All question papers shall be moderated internally <strong>and</strong> where need be externally moderated by the external examiner.<br />

In addition external examiners shall participate in vetting <strong>of</strong> questions <strong>and</strong> making <strong>of</strong> scripts for all final<br />

examinations. They shall participate in overall results <strong>and</strong> classification <strong>of</strong> degrees.<br />

4.10.1 Board <strong>of</strong> Examiners<br />

There shall be a Faculty Board <strong>of</strong> Examiners composed <strong>of</strong> external <strong>and</strong> internal examiners appointed by senate on<br />

the recommendation <strong>of</strong> the board <strong>of</strong> the Faculty <strong>of</strong> CIT. The Board shall be chaired by the Dean <strong>of</strong> the Faculty. The<br />

Board <strong>of</strong> Examiners shall receive, consider <strong>and</strong> recommend to the faculty Board the examination results <strong>of</strong> each<br />

c<strong>and</strong>idate.<br />

4.11 Malpractices in the conduct <strong>of</strong> Examinations<br />

It shall be an <strong>of</strong>fence for a student/c<strong>and</strong>idate involved in an examination/test to:<br />

(a) Sit or attempt to sit the examination without valid documentation.<br />

(b) Enter the examination hall/room later than half an hour after the examination/test has commenced.<br />

(c) Leave the examination hall/room earlier than half an hour after the examination has commenced except in<br />

emergencies with the express permission <strong>of</strong> the invigilator.<br />

(d) Carry out a conversation or any other communication with another student/c<strong>and</strong>idate once the examination<br />

has commenced.<br />

(e) Indulge in any disruptive conduct including, but not limited to, shouting assault <strong>of</strong> another<br />

student/c<strong>and</strong>idate, using abusive <strong>and</strong> /or threatening language, destruction <strong>of</strong> university property or the<br />

property <strong>of</strong> another student/c<strong>and</strong>idate.<br />

(f) Take out <strong>of</strong> the examination room/hall answer booklet(s), used or unused.<br />

(g) Neglect, omit or in any other way fail to follow lawful instructions or orders issued by the invigilator.<br />

(h) Physically assault or insult an Invigilator or any University Official involved in the conduct <strong>of</strong> the<br />

examination.<br />

4.11.1 Cheating in Examinations<br />

Cheating is defined as any illegitimate behavior designed to deceive those setting, administering <strong>and</strong> marking the<br />

assessment. Cheating in a University assessment is a very serious academic <strong>of</strong>fence, which may lead ultimately to<br />

expulsion from the University. Cheating can take one <strong>of</strong> a number <strong>of</strong> forms, including:<br />

(a) Taking into the exam venue, or possessing whilst in that room, any books, notes or other material which<br />

has/have not been authorized. Writing notes on any part <strong>of</strong> your body, recording apparatus, mobile phones<br />

or any other unauthorized electronic equipment. Having notes written in your identity documents or<br />

authorized examination materials e.g. logarithm table<br />

(b) Copying from another student in an examination. Aiding or attempting to aid another c<strong>and</strong>idate, or<br />

obtaining or attempting to obtain aid from another c<strong>and</strong>idate.<br />

(c) Involve oneself in Plagiarism, that is:<br />

• Pass <strong>of</strong>f the words or ideas <strong>of</strong> someone else as his/her own without proper acknowledge or<br />

crediting the original source.<br />

• Replicate one’s own work which one has presented elsewhere for assessment.<br />

(d) Obtaining an examination paper ahead <strong>of</strong> its authorized release.<br />

(e) Sit or attempt to sit the examination without valid documentation<br />

22


4.11.2 Fraud in Examinations<br />

It shall be an <strong>of</strong>fence for a student/c<strong>and</strong>idate involved in an examination to:<br />

(a) Import into the examination hall/room, in person or by agent, a pre-prepared answer script/booklet.<br />

(b) Substitute an answer script/booklet prepared outside the examination room/hall for the one already<br />

submitted to the invigilator/Examiner.<br />

(c) Falsify or alter marks awarded on an examination script/book.<br />

(d) Impersonate another student/c<strong>and</strong>idate.<br />

(e) Procure or induce another person to sit for him/her.<br />

4.11.3 Penalty<br />

Any student/c<strong>and</strong>idate found guilty <strong>of</strong> contravening the above shall be liable to:<br />

(a) Caution <strong>and</strong> cancellation <strong>of</strong> the relevant examination, or<br />

(b) Cancellation <strong>of</strong> the relevant examination <strong>and</strong> suspension from the University for a period not exceeding<br />

two years, or<br />

(c) Cancellation <strong>of</strong> the relevant examinations <strong>and</strong> dismissal from the University.<br />

(d) A Government-sponsored student/c<strong>and</strong>idate found guilty <strong>of</strong> contravening the above, may have the<br />

Government sponsorship cancelled besides any other punishment taking into account the gravity <strong>of</strong> the<br />

<strong>of</strong>fence except in cases where the student/c<strong>and</strong>idate is dismissed from the University.<br />

(e) Any student/c<strong>and</strong>idate found guilty <strong>of</strong> contravening the above by physically assaulting an Invigilator or a<br />

University <strong>of</strong>ficial shall be dismissed from the University.<br />

5.0 Accommodation <strong>of</strong> Religious Creed<br />

(a) Makerere University is a secular institution. It is the <strong>of</strong>ficial policy <strong>of</strong> the University that all days in a week<br />

are considered working days. Staff <strong>and</strong> students are expected to conduct or attend lectures <strong>and</strong><br />

examinations at scheduled time <strong>and</strong> say.<br />

(b) Requests to accommodate a student’s religious creed by scheduling tests or examinations at alternative<br />

times may not be entertained.<br />

(c) Students who miss exams or test based on religious creed should inform their respective Deans/directors as<br />

soon as the timetable is published preferably two weeks before categorized as being absent without<br />

justifiable cause <strong>and</strong> a Course Grade <strong>of</strong> ABS shall be assigned to that Course(s).<br />

23


6.0 DEPARTMENT OF COMPUTER SCIENCE<br />

6.1 Introduction<br />

The Department <strong>of</strong> Computer Science, together with the Departments <strong>of</strong> Networks, Information Technology <strong>and</strong><br />

Information Systems form the academic departments <strong>of</strong> the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology. The<br />

department aims at being a world class center <strong>of</strong> teaching <strong>and</strong> research in the general field <strong>of</strong> Computer Science.<br />

The Department runs the Diploma in Computer Science <strong>and</strong> Information Technology, The Bachelor <strong>of</strong> Science in<br />

Computer Science, The Postgraduate Diploma in Computer Science, Master <strong>of</strong> Science in Computer Science <strong>and</strong> a<br />

Doctor <strong>of</strong> Philosophy in Computer Science.<br />

All our Programmes are carefully designed to; (i) provide students with the needed h<strong>and</strong>s on skills (ii) allow<br />

students explore their creativity to the limits <strong>and</strong> (iii) challenge students dig deeper in the enormous body <strong>of</strong><br />

knowledge. The programmes are conducted by highly trained <strong>and</strong> well motivated team <strong>of</strong> academic <strong>and</strong> technical<br />

staff using state <strong>of</strong> the art equipments <strong>and</strong> methodologies.<br />

The department is a very active center <strong>of</strong> research. Currently, our research is mainly based in;<br />

(i) Foundations <strong>of</strong> <strong>Computing</strong><br />

(ii) Computer Security<br />

(iii) Computer Vision <strong>and</strong><br />

(iv) Image processing.<br />

The department is a beneficially <strong>of</strong> the Makerere wide policy forging collaborations with other research institutes all<br />

over the world. The department has strong research corroborations with several universities especially in America<br />

<strong>and</strong> Europe. Several <strong>of</strong> its members <strong>of</strong> staff are undertaking doctoral studies in these universities. The departmental<br />

strategy in research is to carry out research directly linked to the current technological <strong>and</strong> operational status <strong>of</strong><br />

Ug<strong>and</strong>a <strong>and</strong> Africa as a whole.<br />

As a means <strong>of</strong> ensuring <strong>and</strong> upholding quality in all the departmental programmes (academic <strong>and</strong> research), the<br />

department does periodic review <strong>and</strong> evaluations <strong>of</strong> its progress <strong>and</strong> quality <strong>of</strong> delivery. Stake holders can send<br />

comments <strong>and</strong> complements any time to the Head <strong>of</strong> Department <strong>of</strong> the Departmental Senior administrative<br />

Assistant – as we build for the future.<br />

The Department <strong>of</strong> Computer Science runs three (3) programmes namely;<br />

• Bachelor <strong>of</strong> Science in Computer Science (BSc CS) Degree Programme<br />

• Computer Science Subject for BSc Degree Programme<br />

• Diploma in Computer Science <strong>and</strong> Information Technology (DCSIT) Programme<br />

6.2 Bachelor <strong>of</strong> Science in Computer Science (BSc CS) Programme<br />

6.2.1 Overview<br />

The Bachelor <strong>of</strong> Science in Computer Science is the oldest undergraduate degree Programme in Makerere University<br />

Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology. The revised curriculum took effect in the 2009/2010 Academic<br />

Year. The objectives <strong>of</strong> the Programme are to:<br />

24<br />

Dr. John Ngubiri<br />

Head <strong>of</strong> Department


a) Develop pr<strong>of</strong>essionals with theoretical <strong>and</strong> practical skills in Computer Science;<br />

b) Strengthen capacity <strong>and</strong> institutional building in Computer Science in tertiary institutions, the private <strong>and</strong> public<br />

sector;<br />

c) Build capacity with a practical orientation needed to link up the Computer Science sector with Government <strong>and</strong><br />

Industry under the broader perspective <strong>of</strong> information <strong>and</strong> Communication Technology (ICT) <strong>and</strong> ;<br />

d) Provide most <strong>of</strong> the ICT pr<strong>of</strong>essionals needed in Ug<strong>and</strong>a <strong>and</strong> neighboring countries.<br />

1. Target Group<br />

The revised Programme targets two categories <strong>of</strong> People. These are A-level leavers <strong>and</strong> diploma holders in relevant<br />

disciplines.<br />

2. Minimum Admission Requirements<br />

To be admitted to the BSc (Computer Science) Programme, a c<strong>and</strong>idate must satisfy the general admission requirements<br />

for Makerere University. In addition, the following regulations shall hold:<br />

a) Direct Entry<br />

C<strong>and</strong>idates seeking admission through this avenue must have obtained:<br />

i. At least a subsidiary pass in Mathematics in the Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE) or<br />

its equivalent.<br />

ii. At least two principal passes at the same sitting in Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE)<br />

in any <strong>of</strong> the following subjects: - Mathematics, Economics, Entrepreneurship, Geography, Physics,<br />

Chemistry, Biology, Agriculture, Technical Drawing <strong>and</strong> Food <strong>and</strong> Nutrition.<br />

iii. A minimum weighted points set by the Makerere University Admissions Board.<br />

For purposes <strong>of</strong> computing weighted points, the A- level subjects shall be grouped <strong>and</strong> weighted as follows:<br />

b) Diploma Holders<br />

Group Weight Subjects<br />

Essential 3 Any two best done <strong>of</strong> the above subjects<br />

Relevant 2 The third best done <strong>of</strong> the above subjects<br />

Desirable 1 General Paper, Sub-Mathematics<br />

Others 0.5 All others.<br />

For a c<strong>and</strong>idate to be admitted via the diploma scheme, he/she must:<br />

i. Have at least 5 passes got at the same sitting <strong>of</strong> Ug<strong>and</strong>a Certificate <strong>of</strong> Education or its equivalent<br />

ii. Have at least 1 Principle pass <strong>and</strong> 2 subsidiary passes from the same sitting <strong>of</strong> the Ug<strong>and</strong>a Advanced<br />

Certificate <strong>of</strong> Education (UACE) or its equivalent<br />

iii. Have a Diploma in Computer Science <strong>and</strong> Information Technology <strong>of</strong> Makerere University or have at least a<br />

Second class (lower division) diploma in Computer Science, Engineering, Business Studies, <strong>and</strong> Information<br />

Technology, Statistics or any other diploma with Mathematics, Computer Science, or Information<br />

Technology as one <strong>of</strong> the subjects. The diploma must be from an Institution recognized by the National<br />

Council for Higher Education (<strong>of</strong> Ug<strong>and</strong>a).<br />

3. Nature <strong>of</strong> the Programme<br />

The day Programme has both government <strong>and</strong> privately sponsored students. The evening Programme has privately<br />

sponsored students only.<br />

4. Duration<br />

The duration <strong>of</strong> the Programme is six (6) semesters which are three (3) Academic Years <strong>and</strong> two (2) recess terms. Each<br />

semester lasts seventeen (17) weeks two <strong>of</strong> which are for examinations.<br />

5. Tuition Fees<br />

25


Tuition fees for privately sponsored students shall be 2,520,000 Ug<strong>and</strong>a Shillings per year for Ug<strong>and</strong>ans <strong>and</strong><br />

3,780,000 Ug<strong>and</strong>a Shillings per year for non Ug<strong>and</strong>ans. This is the same tuition fees for the existing curriculum.<br />

6. Semester Load <strong>and</strong> Minimum Graduation Load<br />

The normal semester load is between 15 <strong>and</strong> 21 credit units. The minimum graduation load is 127 credit units<br />

<strong>of</strong> which 111 credit units are from core course units. The remaining 16 credit units are to be got from elective<br />

course units in semesters where elective courses are <strong>of</strong>fered.<br />

6.2.2 Programme Structure<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSK 1101 Communication Skills 4 45 30 -- 60<br />

CSC 1104 Computer Organization & Architecture 4 60 -- -- 60<br />

CSC 1105 Numerical Methods 3 45 -- -- 45<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

Semester 2<br />

CSC 1204 Research Methodology 3 30 -- 30 45<br />

CSC 1206 Computational Mathematics 4 30 60 -- 60<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

CSC 1208 Individual Project I 4 15 90 -- 60<br />

CSC 1209 Logic Programming 3 30 30 -- 45<br />

Year I: Recess term<br />

CSC 1301 Practical Skills Development 4 -- 120 -- 60<br />

CSC 1303 Cisco Certified Network Associate (Audited) 5 150 100 -- 200<br />

Semester 3<br />

CSC 2100 Data Structures <strong>and</strong> Algorithms 4 45 -- 30 60<br />

BSE 2105 Formal Methods 4 45 -- 30 60<br />

CSC 2109 Discrete Mathematics 3 30 -- 30 45<br />

CSC 2111 Database Management Systems I 3 30 30 -- 45<br />

CSC 2113 S<strong>of</strong>tware Engineering 4 45 -- 30 60<br />

CSC 2114 Artificial Intelligence 3 30 -- 30 45<br />

Semester 4<br />

CSC 2200 Operating Systems 4 45 -- 30 35<br />

BSE 2203 Computer Networks & Data Communication 4 45 30 -- 60<br />

CSC 2209 Systems Programming 4 45 -- 30 60<br />

CSC 2210 Automata, Complexity & Computability 3 45 -- -- 45<br />

CSC 2212 Individual Project II 3 -- 90 -- 45<br />

1 Elective<br />

BSE 2201 Network Applications Development 3 30 30 -- 45<br />

CSC 2214 Cryptology <strong>and</strong> Coding Theory 3 45 -- -- 45<br />

Year 2: Recess Term<br />

CSC 2301 Industrial Training 4 -- 120 -- 60<br />

Semester 5<br />

CSC 3103 User Interface Design 4 30 -- 60 60<br />

BIT 3102 Entrepreneurship <strong>and</strong> Business 3 30 -- 30 45<br />

CSC 3116 Operations Research 3 30 -- 30 45<br />

26


CSC 3112 Principles <strong>of</strong> Programming Languages 3 45 -- -- 45<br />

CSC 3117 Emerging Trends in Computer Science 4 15 90 -- 60<br />

2 Electives<br />

CSC 3110 Database Management Systems II 3 45 -- -- 45<br />

BIS 3100 Modeling <strong>and</strong> Simulation 4 45 -- 30 60<br />

CSC 3105 Computer Graphics 3 30 -- 30 45<br />

CSC 3114 Selected Topics in Computer Science 3 45 -- -- 45<br />

CSC 3115 Advanced Programming 3 30 -- 30 45<br />

Semester 6<br />

BIT 3204 Enterprise Network Management 4 45 -- 30 60<br />

CSC 3205 Compiler Design 3 45 -- -- 45<br />

CSC 3206 Group Project 5 -- 135 -- 60<br />

2 Electives<br />

CSC 3207 Computer Security 3 45 -- -- 45<br />

BIT 3200 Business Intelligence & Data Warehousing 4 45 30 -- 60<br />

BSE 3202 Distributed Systems Development 4 45 30 -- 60<br />

6.2.3 Course Unit Description<br />

CSC 1100: Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; Equip students with skills <strong>of</strong> using common <strong>of</strong>fice<br />

applications; Expose students to different operating systems; Equip students with skills <strong>of</strong> how to use the Internet;<br />

<strong>and</strong> equip students with knowledge about common text editors in different operating systems. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Describe the different parts <strong>of</strong> a computer; describe the historical evolution<br />

<strong>of</strong> computers; competently use the common <strong>of</strong>fice applications in at least two operating systems <strong>and</strong> competently<br />

use common text editor in at least two operating systems.<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

CSK 1101 Communication Skills (4 CU)<br />

Course Description: This course provides students with skills <strong>of</strong> effective communication. These include verbal,<br />

written, <strong>and</strong> gesture. The course aims at facilitating students appropriately <strong>and</strong> clearly communicate with others. The<br />

aims <strong>of</strong> the course unit are to: Improve the communication competencies <strong>of</strong> the student; Improve problem solving<br />

strategies <strong>of</strong> students; improve the art <strong>of</strong> critical thinking within the student; improve the student’s ability to collect<br />

<strong>and</strong> synthesize information; provide students with knowledge to utilize the library <strong>and</strong> other educational resources.<br />

Indicative Content:<br />

• Writing Skills: Thinking critically/selectively before the writing process; selecting the relevant details;<br />

organizing the relevant details logically; writing the reports essays, letters <strong>and</strong> taking notes in appropriate<br />

register; avoiding ambiguities, fallacies, irrationalities; providing supportive evidence; editing documents,<br />

pro<strong>of</strong> reading; writing <strong>and</strong> exp<strong>and</strong>ing information; Quoting <strong>and</strong> citing references; writing a curriculum<br />

vitae.<br />

27


• Reading Skills: The use <strong>of</strong> skimming; scanning inference <strong>and</strong> prediction in reading; Intensive <strong>and</strong> critical<br />

reading; Acquisition <strong>of</strong> specific reading skills; Interpretation <strong>of</strong> non linear texts; Locating information <strong>and</strong><br />

comprehension.<br />

• Speaking <strong>and</strong> Listening Skills to Enhance Effective Public Relations: The art <strong>of</strong> persuasion in effective<br />

speaking; Conducting interviews; Conducting meetings; Participating in group discussions <strong>and</strong> tutorials;<br />

Non verbal communication clues; Presentation seminars, seeking clarification etc.; Expression <strong>of</strong><br />

politeness; Public speaking; Proper listening skills.<br />

• Examination Skills; Preparing for examinations: How much one gets from group discussions; Proper<br />

revision; Underst<strong>and</strong>ing examination rubric; Budgeting time during examination process; Writing<br />

examinations <strong>and</strong> following instructions<br />

Reference Books:<br />

i. B. Bough, 101 ways to improve your communication skills instantly, 4th edition, 2005.<br />

ii. P. Klavs, The hard Truth About s<strong>of</strong>t skills: Work Place Lessons Smart People wish they had learned sooner,<br />

2008.<br />

CSC 1104: Computer Organization & Architecture (4 CU)<br />

Course Description: This course introduces the logical architecture <strong>and</strong> organization <strong>of</strong> computer systems. It<br />

highlights the lower end operations in a typical computer as well as the way computers manage their resources<br />

during operation. The course opens up a student to be an informed user <strong>of</strong> the computer rather than a passive<br />

recipient <strong>of</strong> the computer services. Teaching will be in terms <strong>of</strong> lectures as well as tutorials. The aims <strong>of</strong> the course<br />

are: To introduce to students the concepts <strong>of</strong> computer organization; to highlight to students the way computers<br />

process <strong>and</strong> store the data; to highlight internal management issues in computer systems. By the end <strong>of</strong> the course,<br />

the student will be able to know the organization, processing <strong>and</strong> storage mechanisms <strong>of</strong> computer systems.<br />

Indicative Content: Data Representation; Integer Formats, Binary, Octal <strong>and</strong> Hexadecimal Systems, Negative<br />

integers <strong>and</strong> 2’s Complement, Floating Point Formats, BCD, Formats, Alphanumeric Codes; Basic Digital Circuits:<br />

Logic gates, Karnaugh maps, Combinatorial Circuits, Binary Adders, Multiplexers <strong>and</strong> Demultiplexers,<br />

Comparators, Decoders <strong>and</strong> Encoders, Code Converters, ROMS <strong>and</strong> PLA’s, Sequential Circuits, Flip Flops <strong>and</strong><br />

Latches, R-S flip flops, J-K flip flops, T flip Flops, D flip flops, Registers, Shift Registers <strong>and</strong> Data Transmission,<br />

Sequential Network Design. Micro Computer Architecture: CPU, Memory, I/O Devices <strong>and</strong> Interfaces, System Bus,<br />

Examples <strong>of</strong> CPU Structures, The Intel / Pentium CPU, The Z-80 or Motorola, Machine Language Instructions,<br />

Instruction Formats <strong>and</strong> Addressing Modes; The Processing Elements: Macroinstruction execution, Internal Bus<br />

Transfers, Detailed Internal Architecture, Micro control, Hardwired; Control, Micro-programmed Control, Reduced<br />

Instruction Set Computers; I/O Programming: Programmed I/O, Interrupt I/O, Polling, Priority Interrupt System,<br />

Direct Memory Access, I/O processors; Memory Systems <strong>and</strong> Memory Management: Memory Hierarchy, Main<br />

Memory, Auxiliary Memory, Associative Memory, Cache Memory, Virtual Memory, Memory Management<br />

Hardware.<br />

Reference Books:<br />

i. M. M. Mano, Computer Systems Architecture, Prentice Hall, 1993.<br />

ii. A. S. Tanebaum , Structured Computer Organization , Prentice Hall ,1984.<br />

iii. G. B. Gibson, Computer Systems Concepts <strong>and</strong> Design, Prentice Hall, 1991.<br />

iv. W. Stallings, Computer Organization <strong>and</strong> Architecture, Prentice Hall, 2003.<br />

CSC 1105: Numerical Methods (3 CU)<br />

Course Description: The course is to sharpen the students’ skills in using numerical approaches to solve<br />

mathematical/real life problems. The focus will be on the ability to correctly formulate numerical problems <strong>and</strong><br />

schemes that solve them. Emphasis will be put on the precision <strong>and</strong> robustness <strong>of</strong> the schemes. The course will be<br />

taught theoretically. The developed schemes can be implemented <strong>and</strong> run in any programming language. The aims<br />

<strong>of</strong> the course are; to provide a solid basis on the numerical approaches to computational problem solving; To<br />

provide students with problem analysis <strong>and</strong> solving skills to be able to h<strong>and</strong>le typical computational problems in<br />

28


practice. By the end <strong>of</strong> the course, the student should be able to; Derive schemes for different set ups <strong>of</strong> numerical<br />

problems; Test for convergence <strong>of</strong> different schemes; correctly use the schemes to generate solutions to the<br />

numerical problems to the required precision.<br />

Indicative Content: Numerical solutions to non linear equations; Numerical solutions for systems <strong>of</strong> linear<br />

equations; Fast - Fourier transforms; Numerical differentiation; Numerical integration; Numerical solutions for<br />

differential <strong>and</strong> difference equations.<br />

Reference Books:<br />

i. R. L. Burden <strong>and</strong> J. D. Faires, Numerical Analysis, Wardsworth, 1993.<br />

ii. K. Kaw, E. E. Kalu <strong>and</strong> D. Nguyen, Numerical Methods with Applications, 2008.<br />

CSC 1106 Programming Methodology I (3 CU)<br />

Course Description: The course is to create a strong base in the principles <strong>and</strong> practice <strong>of</strong> functional programming.<br />

A high level programming language lie C is to be used. The students are to cover both theoretical principles <strong>and</strong><br />

h<strong>and</strong>s on practical skills. The main concepts to cover include Programme structure, data structures, syntactical <strong>and</strong><br />

semantic correctness, planning <strong>and</strong> segmentation in programming as well as working with data files. The aims <strong>of</strong> the<br />

course are to provide the student with: Comprehensive knowledge about structured oriented programming;<br />

Knowledge in planning <strong>and</strong> organization <strong>of</strong> programming projects; Knowledge <strong>and</strong> techniques <strong>of</strong> evaluating<br />

syntactic <strong>and</strong> semantic correctness <strong>of</strong> a computer Programme <strong>and</strong>; Strong practical basis in programming.<br />

Indicative Content: Programme structure; Variables <strong>and</strong> Operators; Conditional statements; Looping statements;<br />

Arrays <strong>and</strong> strings; Functions; Advanced data types; Pointers; Dynamic memory allocation <strong>and</strong> dynamic structures;<br />

Working with files <strong>and</strong> GUI.<br />

Reference Books:<br />

i. B. W. Kernighan, D. M. Ritchie, C Programming Language, 2nd edition, 1989.<br />

ii. S. P. Harbison, A Reference Manual , 5th edition, 2004.<br />

CSC 1204 Research Methodology (3 CU)<br />

Course Description: The purpose <strong>of</strong> this course is to acquaint students with types <strong>of</strong> scientific research relevant for<br />

anyone working in the field <strong>of</strong> computer science. It will enable students to develop capacity to conduct small, simple<br />

research projects while at the university. The aims <strong>of</strong> the course are to provide the student with: Enable students<br />

become competent in underst<strong>and</strong>ing the research process. Provide skills that will enable students undertake<br />

independent research using a variety <strong>of</strong> appropriate methods, using primary <strong>and</strong> secondary data, as well as<br />

qualitative <strong>and</strong> quantitative techniques. Provide students with skills to produce a research proposal <strong>and</strong> highlight<br />

ethical research practices to students.<br />

Indicative Content: Introduction to scientific research; Formulating <strong>and</strong> clarifying the research topic <strong>and</strong> research<br />

problem; Conducting a literature review; Different research approaches; Ethics in research; Sampling; Use <strong>of</strong><br />

secondary data; Collection methods for primary data; Analyzing qualitative data; Analyzing quantitative data <strong>and</strong><br />

writing a research proposal <strong>and</strong> project report.<br />

Reference Books:<br />

i. H. Cooper, Synthesizing Research: A Guide for Literature Reviews, Thous<strong>and</strong> Oaks California: Sage<br />

Publications, 1998.<br />

ii. M. Sounders, P. Lewis & A. Thornhill, Research Methods for Students, 3rd edition, UK, Financial times,<br />

Prentice hall, 2003.<br />

CSC 1206: Computational Mathematics (4 CU)<br />

Course Description: The course gives the students a strong mathematical base to be able to tackle other computer<br />

problems. The course brings together mathematical topics which are commonly used in the general area <strong>of</strong> computer<br />

science. It builds a foundation for other courses that need special mathematical backgrounds. The teaching will<br />

largely involve lectures, together with tutorials <strong>and</strong> take home assignments The aims <strong>of</strong> the course are: To provide<br />

29


students with a mathematical base that is to be used to solve computer science problems; To improve the problem<br />

solving skills <strong>of</strong> students.<br />

Indicative Content:<br />

• Calculus; Sequences <strong>and</strong> limits; Limits <strong>of</strong> functions & continuity Advanced differential calculus<br />

• Statistics; Discrete R<strong>and</strong>om variables <strong>and</strong> distributions; Continuous distributions; Basics <strong>of</strong> Monte Carlo<br />

simulations<br />

• Further topics; Mathematics for image processing; Mathematics for signal processing<br />

Reference Books:<br />

i. G. B. Thomas <strong>and</strong> R. L. Finney, Calculus <strong>and</strong> Analytic Geometry, 9th edition, Addison Wesley, 1995.<br />

ii. R. E. Walpole, Introduction to Statistics, 3 rd edition, Prentice Hall, 1982.<br />

CSC 1207 Programming Methodology II (3 CU)<br />

Course Description: The course is to give an in depth underst<strong>and</strong>ing <strong>of</strong> Object Oriented programming. It is to cater<br />

for Object Oriented Programming practices like inheritance, interfaces, exception h<strong>and</strong>ling, action h<strong>and</strong>ling,<br />

security, s<strong>of</strong>tware reuse <strong>and</strong> robustness. The aim <strong>of</strong> the course is to: Move the students’ programming skills from<br />

basic to advanced; Avail students with skills to h<strong>and</strong>le non functional Programme aspects like robustness <strong>and</strong><br />

security <strong>and</strong> train students to develop complete computer applications.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference Books:<br />

i. J. Lewis <strong>and</strong> W. L<strong>of</strong>tus, Java S<strong>of</strong>tware Solution: Foundations <strong>of</strong> Programme Design, 4th edition, 2008.<br />

ii. K. A. Mughal <strong>and</strong> R. W. Rasmussen, A Programmer’s Guide to Java TM Certification: A comprehensive<br />

Primer, 3rd edition, 2008.<br />

CSC 1208: Individual Project I (4 CU)<br />

Course Description: This course is to give students an experience <strong>of</strong> developing simple but complete applications.<br />

Focus will be put on programming <strong>and</strong> Programme documentations as well as realization <strong>of</strong> the objectives. The aims<br />

<strong>of</strong> the course are: To practically give students skills <strong>of</strong> integrating different concepts <strong>of</strong> programming into a single<br />

application; To introduce the student to h<strong>and</strong>s on aspects <strong>of</strong> s<strong>of</strong>tware development; To nurture the student’s ability<br />

to independently read different sources <strong>of</strong> literature so as to identify what (s)he can use to develop his/her<br />

application.<br />

Indicative Content: The main content in the course is translation <strong>of</strong> a real life problem into a working computer<br />

Programme.<br />

References: Students can read any literature like books <strong>and</strong> online tutorials that can help in addressing the problem<br />

in the project at h<strong>and</strong>.<br />

CSC 1209 Logic Programming (3 CU)<br />

Course Description: This course introduces a paradigm where computation arises from pro<strong>of</strong> search in logic<br />

according to a fixed, predictable strategy. It thereby unifies logical specification <strong>and</strong> implementation in a way that is<br />

quite different from functional or imperative programming. This course provides a thorough, modern introduction to<br />

logic programming. It introduces the basic concepts <strong>and</strong> techniques <strong>of</strong> logic programming followed by successive<br />

refinement towards more efficient implementations or extensions to richer logical concepts. It covers a variety <strong>of</strong><br />

logics <strong>and</strong> operational interpretations. The aim <strong>of</strong> the course is to provide a basic introduction to the logic<br />

Programming language <strong>and</strong> Prolog. It aims at introducing a number <strong>of</strong> logical systems <strong>of</strong> importance in computer<br />

science.<br />

30


Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference Books:<br />

i. M. R. Huth <strong>and</strong> M. D. Ryan, Logic in Computer Science, Modelling <strong>and</strong> Reasoning about Systems,<br />

Cambridge University Press, 2000.<br />

ii. SWI Prolog Home page, http://www.swi-prolog.org/<br />

CSC 1301: Practical Skills Development (4 CU)<br />

Course Content: The course aims at imparting practical skills in areas chosen by the faculty. The students are to be<br />

supervised by staff with in the faculty. Areas <strong>of</strong> practical skills development include; Implementation <strong>of</strong> projects;<br />

Network <strong>and</strong> system administration; Hardware maintenance <strong>and</strong> Computer assembly.<br />

This can be done within the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology or any other unit in Makerere<br />

University. Students will write a report at the end <strong>of</strong> the course.<br />

CSC 1303: Cisco Certified Network Associate (Audited) (5 CU)<br />

Course Content: In this course, students will cover the course content <strong>of</strong> the CCNA international curriculum.<br />

CSC 2100: Data Structures <strong>and</strong> Algorithms (4 CU)<br />

Course Description: Upon successful completion the students should be able to: Demonstrate factual knowledge<br />

including the mathematical notation, syntax <strong>and</strong> terminology used in the course; describe the fundamental principles<br />

including the laws <strong>and</strong> theorems arising from the concepts covered in this course; Apply course material along with<br />

techniques <strong>and</strong> procedures covered in this course to solve practical problems; Design simple algorithms <strong>and</strong> data<br />

structures in C <strong>and</strong> use theories <strong>and</strong> concepts covered in the course to approximate the complexities <strong>of</strong> algorithms.<br />

Indicative Content: Methods for modularizing, documenting <strong>and</strong> constructing Programmes (abstract data types/<br />

object orientation), <strong>and</strong> an introduction to classical data structures <strong>and</strong> algorithms with complexity analysis.<br />

Application <strong>and</strong> implementation <strong>of</strong> strings, arrays, stacks queues, lists, trees <strong>and</strong> graphs; Abstract data types; storage<br />

management; Sorting, searching, merging, reference <strong>and</strong> cross-referencing files; Design <strong>and</strong> analysis <strong>of</strong> algorithms,<br />

complexity <strong>of</strong> algorithms, big-O <strong>and</strong> small-O notation. Binary trees, B-trees, B*-trees, <strong>and</strong> AVL-trees; Study <strong>of</strong> disk<br />

<strong>and</strong> tape file organizations; Creation <strong>of</strong> sequential, direct, <strong>and</strong> indexed sequential files; Hashing techniques <strong>and</strong><br />

address overflows; Primary <strong>and</strong> secondary key usage, inverted <strong>and</strong> linked-list files; Semantic Nets, frames.<br />

Reference Books:<br />

i. A. V. Aho, J. D. Ullman, J. E. Hopcr<strong>of</strong>t, Data Structures <strong>and</strong> Algorithms, Addison-Wesley, 1983.<br />

ii. A. V. Aho, The Design <strong>and</strong> Analysis <strong>of</strong> Computer Algorithms, Addison-Wesley, Longman, 1974.<br />

iii. T. H. Cormen, C. E. Leiserson, R. L. Rivest, <strong>and</strong> C. Stein, Introduction to Algorithms, 2nd edition,<br />

McGraw-Hill, 2008.<br />

BSE 2105 Formal Methods (4 CU)<br />

Course Description: The course provides students with skills <strong>of</strong> solving generic formal problems in science. It<br />

covers the intellectual <strong>and</strong> practical skills necessary for problem formalization.<br />

Students will be provided with factual knowledge including the mathematical notations <strong>and</strong> terminologies used in<br />

formalizing scientific problems; fundamental principles including the laws <strong>and</strong> theorems arising from the concepts<br />

covered in this course; They will be able to apply course material along with techniques <strong>and</strong> procedures to solve<br />

practical problems; The course will provide them programming skills by writing numerical Programmes like Matlab<br />

Programmes, to solve numerical problems.<br />

31


Indicative Content:<br />

• Predicate Logic Specification: Foundations; Basic concepts; Verification; Z; Tools <strong>and</strong> systems; Z<br />

animation Mir<strong>and</strong>a <strong>and</strong> ZANS; Nitpick <strong>and</strong> the Z Notation.<br />

• Algebraic Specification: Foundations; Basic concepts; Verification; Tools <strong>and</strong> systems; Mir<strong>and</strong>a; The OBJ<br />

family <strong>of</strong> languages; LARCH<br />

Reference Books:<br />

i. A. Diller, Z: an Introduction to Formal Methods, 2nd edition, Wiley, 1994.<br />

ii. M. Huth <strong>and</strong> M. Ryan, Logic in Computer Science: Modelling <strong>and</strong> Reasoning about Systems, Cambridge<br />

University Press; 2nd edition, 2004.<br />

iii. R. Gupta, L. Guernic, P. S .K. Shukla, <strong>and</strong> J. P. Talpin,, Formal Methods <strong>and</strong> Models for System Design:<br />

A System Level Perspective, 2004.<br />

CSC 2109: Discrete Mathematics (3 CU)<br />

Course Description: The course applies mathematics to finite or discontinuous quantities in order to master the<br />

process <strong>of</strong> problem-solving, communication, reasoning, <strong>and</strong> modeling. It gives a basic underst<strong>and</strong>ing <strong>of</strong><br />

mathematical structures that are fundamentally discrete. Objects studied in discrete mathematics are largely<br />

countable sets such as integers, finite graphs, <strong>and</strong> formal languages. Applications <strong>of</strong> such concepts to computer<br />

science are to be studied. Concepts <strong>and</strong> notations from discrete mathematics are useful in studying <strong>and</strong> describing<br />

objects <strong>and</strong> problems in computer algorithms <strong>and</strong> programming languages. The aim <strong>of</strong> this course is to provide the<br />

student with: - a basic underst<strong>and</strong>ing <strong>of</strong> mathematical objects that assume only distinct, separate values, rather than<br />

values on a continuum; the main ideas studied in the broad area <strong>of</strong> Discrete Mathematics especially clear algorithmic<br />

aspects; an underst<strong>and</strong>ing <strong>of</strong> what the relation between problems is.<br />

Indicative Content: Logics <strong>and</strong> set theory; Number theory; Relations <strong>and</strong> functions; Languages; Finite state<br />

machines (<strong>and</strong> optionally Finite state automata); Groups <strong>and</strong> Modulo Arithmetic; Number <strong>of</strong> solutions <strong>of</strong> a linear<br />

equation; Recurrence relations; Searching algorithms.<br />

Reference Books:<br />

i. L. S. Bobrow, <strong>and</strong> M. A. Arbib, Discrete Mathematics: Applied Algebra for Computer <strong>and</strong> Information<br />

Science Philadelphia, PA: Saunders, 1974.<br />

ii. J. A. Dossey, A. D. Otto, L. Spence, <strong>and</strong> C. V. Eynden, Discrete Mathematics, 3rd edition. Reading, MA:<br />

Addison-Wesley, 1997.<br />

iii. V. K. Balakrishnan, Introductory Discrete Mathematics, New York: Dover, 1997.<br />

CSC 2111: Database Management Systems I (3 CU)<br />

Course Description: This course is to provide students with a strong foundation in systematic approaches to design<br />

<strong>and</strong> implementing <strong>of</strong> database applications. Preliminarily, operations like requirements gathering <strong>and</strong> database<br />

planning will be covered. The course will also introduce students to developing <strong>of</strong> application Programmes that talk<br />

to the database. These applications may be online or <strong>of</strong>fline. The aims <strong>of</strong> the course are to: Provide a background for<br />

the evolution <strong>of</strong> database (management) systems; Provide the students with the steps one has to go through when<br />

developing good database applications; Give h<strong>and</strong> on experience <strong>and</strong> knowledge in developing database (driven)<br />

applications<br />

Indicative content: Background to databases; Evolution <strong>of</strong> database systems; Database organization <strong>and</strong><br />

architecture; Data base models; Over view <strong>of</strong> database application development; The database development life<br />

cycle; Database design; Conceptual design; Logical design; Physical Design; Querying databases; SQL/PL SQL<br />

<strong>and</strong> Scripting.<br />

32


Reference Books:<br />

i. T. Connolly <strong>and</strong> C. Begg, Database Systems: A Practical Approach to Design, Implementation <strong>and</strong><br />

Management, 2nd edition, Addison-Wesley, 2004.<br />

CSC 2113: S<strong>of</strong>tware Engineering (4 CU)<br />

Course Description: This course introduces students to the foundations <strong>of</strong> s<strong>of</strong>tware engineering as a discipline.<br />

Students are introduced to the evolving role <strong>of</strong> s<strong>of</strong>tware engineering, especially with emphasis on s<strong>of</strong>tware<br />

engineering process <strong>and</strong> process models. Key topics covered include S<strong>of</strong>tware configuration management,<br />

Requirement analysis, S<strong>of</strong>tware Specification, Design methods, S<strong>of</strong>tware testing, S<strong>of</strong>tware project management<br />

techniques; S<strong>of</strong>tware project planning, Risk management; S<strong>of</strong>tware Quality Assurance; S<strong>of</strong>tware reuse; <strong>and</strong><br />

Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

Indicative Content<br />

• Evolving role <strong>of</strong> s<strong>of</strong>tware, s<strong>of</strong>tware characteristics; Systems <strong>and</strong> environment; system engineering<br />

hierarchy, information <strong>and</strong> knowledge engineering; Information strategy; Business Area analysis, modeling<br />

enterprise <strong>and</strong> business-level data modeling, system architecture <strong>and</strong> associated information flow; writing<br />

system specification.<br />

• S<strong>of</strong>tware Engineering as a layered technology: S<strong>of</strong>tware process, s<strong>of</strong>tware process models. S<strong>of</strong>tware<br />

configuration management: the SCM process, Identification <strong>of</strong> objects in s<strong>of</strong>tware configuration, version<br />

control, change control, configuration audit, SCM st<strong>and</strong>ards.<br />

• Requirement analysis: Communication techniques, Information gathering tools; organizing <strong>and</strong> structuring<br />

information; analysis principles; Analysis modeling.<br />

• S<strong>of</strong>tware Specification: Design process, principles <strong>and</strong> concepts: Abstraction, refinement, modularity,<br />

control hierarchy, structural partitioning, information hiding, functional independence, cohesion, coupling,<br />

design heuristics;<br />

• Design methods: data design, architectural design, transform mapping, design optimization, human<br />

computer interface design, procedural design <strong>and</strong> tools; Design documentation.<br />

• S<strong>of</strong>tware testing: Testing objectives, Testing principles, Testability, test case designing, white box testing;<br />

Basis path testing: Condition testing, data flow testing, loop testing; Black box testing: graph based testing<br />

methods, equivalence partitioning, Boundary value analysis, comparison testing; Testing documentation<br />

<strong>and</strong> help facilities; S<strong>of</strong>tware testing strategy: unit testing, integration testing, validation testing, system<br />

testing.<br />

• S<strong>of</strong>tware project management techniques: project metrics, s<strong>of</strong>tware measurement <strong>and</strong> metrics, s<strong>of</strong>tware<br />

quality metrics;<br />

• S<strong>of</strong>tware project planning: objectives <strong>of</strong> planning, resources, project estimation <strong>and</strong> estimation models,<br />

project decomposition techniques, make-buy decisions; automated estimation tools.<br />

• Risk management: s<strong>of</strong>tware risks, risk identification, risk projection, risk mitigation, monitoring <strong>and</strong><br />

management; Project Scheduling: people <strong>and</strong> effort relationships, defining tasks, defining task network,<br />

scheduling techniques; S<strong>of</strong>tware teams <strong>and</strong> intra-team relationships; role <strong>of</strong> project manager.<br />

• S<strong>of</strong>tware Quality Assurance: Concept <strong>of</strong> quality, quality control vs. quality assurance, cost <strong>of</strong> quality,<br />

factors that affect quality, quantitative view <strong>of</strong> quality, quality metrics, defect removal efficiency SQA<br />

activities, ISO st<strong>and</strong>ards <strong>and</strong> CMM practices, SEI levels, S<strong>of</strong>tware reviews, Formal approaches to SQA,<br />

Statistical Quality Assurance. S<strong>of</strong>tware reliability, reliability metrics, reliability models, meeting reliability<br />

requirements.<br />

• Effective metrics for s<strong>of</strong>tware process: Measurement principles, attributes <strong>of</strong> s<strong>of</strong>tware metrics, metrics for<br />

analysis model, metrics for design model, metrics for source code, metrics for maintenance.<br />

• S<strong>of</strong>tware reuse: difficulties in reuse, hardware reuse vs. s<strong>of</strong>tware reuse, reusable artifacts, domain<br />

33


engineering approach, analysis design <strong>and</strong> construction <strong>of</strong> reusable components, classification <strong>and</strong> retrieval<br />

<strong>of</strong> components, economic impact <strong>of</strong> reuse <strong>and</strong> reuse metrics.<br />

• Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

Reference Books:<br />

i. J. F. Peters, W. Pedrycz, S<strong>of</strong>tware Engineering: An Engineering approach, John Wiley, 2000.<br />

ii. R. S. Pressman, S<strong>of</strong>tware Engineering: A Practitioners Approach, 5th edition, McGraw Hill, 2005.<br />

iii. I. Sommerville, S<strong>of</strong>tware engineering, 8th edition, Addison Wesley, 2008.<br />

iv. D. Ghezzi, M. Jazayeri, D. M<strong>and</strong>rioli, Fundamentals <strong>of</strong> S<strong>of</strong>tware Engineering, Prentice Hall <strong>of</strong> India, 2004.<br />

CSC 2114 Artificial Intelligence (3 CU)<br />

Course Description: This course examines the concepts, techniques, applications, <strong>and</strong> theories <strong>of</strong> Artificial<br />

Intelligence. The focus <strong>of</strong> the course is on the theory <strong>and</strong> application <strong>of</strong> artificial intelligence. Topics include logic,<br />

search, <strong>and</strong> reasoning with an emphasis on fundamentals <strong>and</strong> recent advances in AI. Given the broad range <strong>of</strong> topics<br />

addressed by the AI field, topics for discussion must, necessarily, be limited. Therefore, this course will focus on<br />

issues <strong>of</strong> search, knowledge representation, <strong>and</strong> reasoning, decision making <strong>and</strong> learning from the perspective <strong>of</strong> an<br />

intelligent agent.<br />

Indicative Content:<br />

• Introduction to Artificial Intelligence: Simulation <strong>of</strong> Intelligence behavior, in different areas;<br />

• Problem solving: games, natural language question answering, visual perception, learning; Aim-oriented<br />

(heuristic) algorithms versus solution-guaranteed algorithms.<br />

• Underst<strong>and</strong>ing Natural Languages: Parsing techniques, context free <strong>and</strong> transformational grammars,<br />

transition nets, augmented transition nets, grammar-free analyzers, sentence generation.<br />

• Knowledge Representation: First-order predicate calculus; PROLOG <strong>and</strong> LISP languages; Semantic nets;<br />

partitioned nets; Production rules; knowledge base, the inference system, forward <strong>and</strong> backward deduction.<br />

• Expert System: Existing systems (DENDRAL, MYCIN), Domain exploration; Meta-knowledge, expertise<br />

transfer, self explaining systems.<br />

• Pattern Recognition Structured Descriptions: Symbolic description, m<br />

• Machine perception, line finding, interpretation, semantics <strong>and</strong> models, object identification <strong>and</strong> speech<br />

recognition.<br />

Reference Books:<br />

i. R. Duda, P. Hart, Pattern Classification <strong>and</strong> Scene Analysis, Wiley, 1973.<br />

ii. E. A. Feigenbaum, J. Feldman; Computers <strong>and</strong> Thoughts, AAAI Press, 1995.<br />

iii. N. J. Jilsson, Problem Solving Methods in Artificial Intelligence, McGraw-Hill, 1971.<br />

iv. J. Lloyd, Foundation <strong>of</strong> Logic Programming, Springer-Verlag, 1993<br />

CSC 2200: Operating Systems (4 CU)<br />

Course Description: Operating Systems course introduces students to s<strong>of</strong>tware that controls hardware <strong>and</strong> makes<br />

the hardware usable. Its interaction with other computer devises <strong>and</strong> how it controls other computer processes is<br />

explored. The Course aims at providing students with a detailed underst<strong>and</strong>ing <strong>of</strong> how operating systems work;<br />

skills to write basic Programmes to utilize underlying operating system infrastructures. At the end <strong>of</strong> the course,<br />

students are able to know the dominant categories <strong>of</strong> operating systems are Windows <strong>and</strong> UNIX (Linux, Mac OS,<br />

Solaris, etc). Students <strong>of</strong> operating systems are expected to have a proper underst<strong>and</strong>ing <strong>of</strong> the differences between<br />

these two. Students should be able to underst<strong>and</strong> different design principles for operating systems <strong>and</strong> various<br />

s<strong>of</strong>tware tools that make operating systems usable.<br />

34


Indicative Content; Operating Systems Structures; Processes <strong>and</strong> threads; Thread creation, manipulation <strong>and</strong><br />

synchronization; Deadlock; Implementing Synchronization operations; CPU scheduling; Memory management;<br />

File systems <strong>and</strong> file system implementation; Monitors; Segments; Disk Scheduling; Networking; UDP <strong>and</strong> TCP.<br />

Reference Book:<br />

i. W. Stallings, Operating Systems: Internals <strong>and</strong> Design Principles, 5th edition, Prentice Hall, 2005.<br />

BSE 2203 Computer Networks & Data Communication (4 CU)<br />

Course Description: This course examines principles, design, implementation, <strong>and</strong> performance <strong>of</strong> computer<br />

networks <strong>and</strong> data communication. The aim is to sharpen student’s underst<strong>and</strong>ing <strong>and</strong> skills in computer networking<br />

<strong>and</strong> data communication. Subjects for discussion include: Internet protocols <strong>and</strong> routing, local area networks, wide<br />

area networking, wireless communications <strong>and</strong> networking, performance analysis, congestion control, TCP, network<br />

address translation, multimedia over IP, switching <strong>and</strong> routing, mobile IP, peer-to-peer networking, network<br />

security, <strong>and</strong> other current research topics <strong>and</strong> technologies.<br />

Indicative Content: Network services <strong>and</strong> applications: DNS, HTTP, SMTP, peer-to-peer systems; Network<br />

transport architectures, TCP, UDP, TCP congestion control; Routing <strong>and</strong> forwarding, intra-domain, inter-domain<br />

routing algorithms<br />

<strong>and</strong> Mobile IP; Link layers <strong>and</strong> local area networks, Ethernet, WiFi, <strong>and</strong> mobility; Multimedia communications <strong>and</strong><br />

quality <strong>of</strong> service; Network measurement, inference, <strong>and</strong> management; Network security (ACL, IPSec, etc);<br />

Network programming Network experimentation <strong>and</strong> performance analysis; Protocol verification.<br />

Reference Books;<br />

i. J. F. Kurose <strong>and</strong> K. W. Ross, Computer Networking – A Top Down Approach Featuring the Internet, 3rd<br />

edition, Addison- Wesley, 2004.<br />

ii. L. Peterson <strong>and</strong> B. Davie, Computer Networks: A Systems Approach. Morgan Kaufmann Publishers, 1999.<br />

CSC 2209: Systems Programming (4 CU)<br />

Course Description: Systems programming is aimed at teaching students how to write Programmes using system<br />

level services. The system <strong>of</strong> instruction is UNIX due to availability <strong>of</strong> free system tools that have been largely<br />

developed by <strong>and</strong> for the academia. The course is aimed at giving students skills in tools provided by systems, their<br />

comm<strong>and</strong>s, system calls <strong>and</strong> underst<strong>and</strong>ing for model <strong>of</strong> computation.<br />

Indicative Content: Introduction <strong>and</strong> Unix St<strong>and</strong>ardization; File input <strong>and</strong> output; St<strong>and</strong>ard I/O Library; Files <strong>and</strong><br />

Directories; System Data Files <strong>and</strong> Information; Process Environment; Process Control; Process Relationships;<br />

Signals; Threads; Advanced I/O <strong>and</strong> Inter process Communication<br />

Reference Book:<br />

i. W. R. Stevens, Advanced programming in the Unix Environment, Addison-Wesley, 2008.<br />

CSC 2210 Automata, Complexity <strong>and</strong> Computability (3 CU)<br />

Course Description: The course introduces students to the concept <strong>of</strong> automata <strong>and</strong> complexity. It sets a<br />

background for more advanced studies like compiler construction <strong>and</strong> principles <strong>of</strong> programming languages. The<br />

aims <strong>of</strong> the course are: To introduce students to the concepts <strong>of</strong> complexity, automata <strong>and</strong> computability; to prepare<br />

students for advanced studies in compiler construction <strong>and</strong> principle <strong>of</strong> programming languages;<br />

Indicative content: Finite state machines <strong>and</strong> regular languages: Deterministic <strong>and</strong> non deterministic machines;<br />

Equivalence <strong>and</strong> minimization; Regular expressions <strong>and</strong> regular grammars; Kleene’s theorem. Push-down automata<br />

<strong>and</strong> context free grammars; Normal forms <strong>of</strong> grammars; Top-down <strong>and</strong> bottom-up parsing; Turing machines <strong>and</strong><br />

computability; Church’s thesis; NP-Computable problems.<br />

35


Reading Books:<br />

i. J. E. Hopcr<strong>of</strong>t, R. Motwani, J. D. Ullman, Introduction to Automata Theory, Languages, <strong>and</strong><br />

Computation; Addison Wesley, 2000.<br />

ii. I. A. D. Cohen, Introduction to Computer Theory; John Wiley <strong>and</strong> Sons, Inc, 1996.<br />

CSC 2212 Individual Project II (3 CU)<br />

Course Description: The course is to strengthen the students’ h<strong>and</strong> on skills on integration <strong>of</strong> the different skills<br />

into a programming project. Students are expected to develop a running computer application bigger in size <strong>and</strong><br />

more polished than in CSC 1208 Individual Project I. More emphasis will be put on creativity, robustness, data<br />

validation, security <strong>and</strong> completeness. The aims <strong>of</strong> the course are: To provide an avenue for students to integrate<br />

different subject areas into a single application; To sharpen the students problem solving skills; To improve<br />

student’s ability to read on his/her own as an avenue for solving a certain real life problem.<br />

Indicative Content: The content <strong>of</strong> this course is to be determined by the problem the student intends to address.<br />

Reference: Students will be required to read any literature related to the project at h<strong>and</strong>.<br />

BSE 2201 Network Applications Development (3 CU)<br />

Course Description: This course gives students theoretical principles <strong>and</strong> h<strong>and</strong>s on experience <strong>of</strong> developing<br />

network applications. It caters for functional <strong>and</strong> non functional issues peculiar to network applications. These<br />

include security, robustness <strong>and</strong> performance. The aim <strong>of</strong> the course is to: Give students’ theoretical <strong>and</strong> practical<br />

skills <strong>of</strong> developing network applications; Equip students with security <strong>and</strong> performance aspects <strong>of</strong> network based<br />

applications; exp<strong>and</strong> the applications <strong>of</strong> students programming skills.<br />

Indicative Content: Design principles for network-based applications; Design <strong>and</strong> development <strong>of</strong> Java Servlets,<br />

JSP, Web services <strong>and</strong> NET; Principles <strong>of</strong> information security in network-based applications; http <strong>and</strong> https<br />

protocols.<br />

Reference Book:<br />

i. M. Hall, Core Servlets <strong>and</strong> Java Server Pages, Volume 1: Core Technologies, 2nd Edition, Prentice Hall,<br />

2000.<br />

CSC 2214 Cryptology <strong>and</strong> Coding Theory (3 CU)<br />

Course Description: This course provides a foundation for further studies in information security. The course<br />

introduces students to the exciting fields <strong>of</strong> cryptology <strong>and</strong> coding theory. Fundamentally, it deals with the<br />

mathematics that underlies modern cryptology. Cryptology combines the studies <strong>of</strong> cryptography, the creating <strong>of</strong><br />

masked messages, <strong>and</strong> cryptanalysis, the unraveling <strong>of</strong> masked messages. Coding theory is the study <strong>of</strong> coding<br />

schemes used to detect <strong>and</strong> correct errors that occur during the data transmission. The aims <strong>of</strong> this course are; To<br />

underst<strong>and</strong> the building blocks <strong>of</strong> crypto systems <strong>and</strong> error correction; To gain historical underst<strong>and</strong>ing <strong>of</strong> the<br />

evolution <strong>of</strong> crypto systems; To develop tools necessary to crypto analyze crypto systems; To gain insights in the<br />

practical application <strong>of</strong> cryptology <strong>and</strong> error correction in the modern information age; To underst<strong>and</strong> the goals <strong>and</strong><br />

trade-<strong>of</strong>fs associated with encryption <strong>and</strong> error-control coding systems.<br />

Indicative Content: History <strong>of</strong> cryptology <strong>and</strong> coding theory; Shift registers Classical crypto-systems; Stream<br />

ciphers; Block ciphers; Information theory; Crypto analysis techniques; Introduction to Elliptic curve cryptography;<br />

Basic Algebra; Coding theory fundamentals; Linear codes; Hamming codes; Secret sharing schemes; Introduction<br />

to Complexity; Hash functions; PGP & PKI Deffie-hellman key exchange protocol.<br />

36


Reference Books:<br />

i. A. Menezes, P. V. Oorschot, <strong>and</strong> S. Vanstone, <strong>H<strong>and</strong>book</strong> <strong>of</strong> Applied Cryptography, CRC Press, Trappe &<br />

Washington, 1996.<br />

ii. Trappe <strong>and</strong> Washington, Introduction to Cryptography with Coding Theory, 2nd edition, Prentice Hall,<br />

2006.<br />

iii. S. Singh, The Code Book, Doubleday, 1999.<br />

iv. S. S. Adams, Introduction to Algebraic Coding Theory with Gap, 2005.<br />

CSC 2301 Industrial Training (4 CU)<br />

Course Description: During Industrial training, students are to go <strong>and</strong> work in an organization with an IT<br />

department. The student is to be under the supervision <strong>of</strong> one <strong>of</strong> the workers in the organization. The student is<br />

assigned duties in line with the operations <strong>of</strong> the organization. Staff from Makerere University will make visits to<br />

get the students’ view <strong>of</strong> the organization as well as the organization’s view about the student. The supervisor will<br />

be given a form to evaluate the students <strong>and</strong> the student will make a report about his experience. The two reports<br />

will be used to evaluate the student.<br />

CSC 3103: User Interface Design (4 CU)<br />

Course Description The course introduces the principles <strong>of</strong> user interface development, focusing on design,<br />

implementation <strong>and</strong> evaluation. The course aims at providing different skills to students, such as: Developing<br />

efficient, flexible <strong>and</strong> interactive User Interfaces (UI); Provide ability to identifying system users, the tasks they<br />

want to carry out <strong>and</strong> the environment in which they will be working; Creating a conceptual designs; Designing<br />

various kinds <strong>of</strong> UI, in particular graphical user interfaces (GUIs) <strong>and</strong> websites; evaluating UIs; Appreciation <strong>of</strong><br />

realities <strong>of</strong> developing usable UIs in an organization.<br />

Indicative Content: Usability; User-Centered Design; UI S<strong>of</strong>tware Architecture; Human Capabilities; Output<br />

Models; Conceptual Models <strong>and</strong> Metaphors; Input Models; Design Principles; Paper Prototyping; Constraints <strong>and</strong><br />

Layouts; Graphic Design; Computer Prototyping; Heuristic Evaluation; User Testing; Experiment Design <strong>and</strong><br />

Experiment Analysis.<br />

Reference Books:<br />

i. D. A. Norman, The Design <strong>of</strong> Everyday Things, New York, NY: Doubleday, 1990.<br />

ii. J. Nielsen, Usability Engineering, Burlington, MA: Academic Press, 1994.<br />

iii. K, Mullet, <strong>and</strong> D. Sano, Designing Visual Interfaces: Communication Oriented Techniques. Prentice Hall,<br />

1994.<br />

CSC 3110 Database Management Systems II (3 CU)<br />

Course Description: The course gives students advanced knowledge in the operation <strong>of</strong> database management<br />

systems. Operational aspects like speed <strong>and</strong> security are to be extensively addressed. Internal operations <strong>of</strong> database<br />

management systems like indexing, query processing <strong>and</strong> transactions are to be covered. These are to create a strong<br />

basis for future advanced studies/research. The course is to equip students with fundamental knowledge <strong>of</strong> the<br />

operation <strong>of</strong> database systems <strong>and</strong> how they interact with the operating system.<br />

Indicative Content: Enhanced ER modeling, Tuning (operational) systems to improve performance, advanced<br />

scripting, Data validation, Relational algebra <strong>and</strong> Relational calculus, Low level output representation using<br />

relational calculus, Query processing, Transactions management, Indexing <strong>and</strong> hashing.<br />

Reference Book:<br />

i. R. Elmasri, <strong>and</strong> S. B. Navathe, Fundamentals <strong>of</strong> Database Systems, 4th edition, Benjamin/Cummings,<br />

2003.<br />

37


CSC 3116 Operations Research (3 CU)<br />

Course Description: The course is to introduce students to the broad concepts <strong>of</strong> operations research. Students will<br />

learn how to interpret <strong>and</strong> analyze problems, formulate them as problems <strong>and</strong> use existing techniques to solve them.<br />

The course will improve students’ problem solving skills by subjecting them to real life problems <strong>and</strong> guide them<br />

through formulation <strong>of</strong> their solutions. The choice <strong>of</strong> the cases chosen depends on their applicability in real life<br />

computing environment. By the end <strong>of</strong> the course, the student should be able to; Correctly formalize real life<br />

problems into OR problems, Adequately solve typical OR problems, Make post optimality analysis on OR solutions,<br />

Teaching <strong>and</strong> Learning Pattern Teaching will be in form <strong>of</strong> lectures <strong>and</strong> Tutorials<br />

Indicative Content; Linear programming; Network Analysis; Decision trees <strong>and</strong> Markov processes<br />

Reference Books:<br />

i. M. S. Bazaraa, J. J. Jarvis <strong>and</strong> H. D. Sherali, Linear Programming <strong>and</strong> Network Flows, John Wiley,<br />

2005.<br />

ii. W. L. Winston, Operations Research: Applications <strong>and</strong> Algorithms, Wadsworth Publishing Company,<br />

1997.<br />

CSC 3112: Principles <strong>of</strong> Programming Languages (3 CU)<br />

Course Description: The course introduces students to the low level organization <strong>and</strong> operation <strong>of</strong> programming<br />

languages. It covers semantic <strong>and</strong> syntactic as well as operational issues in programming languages. The building<br />

blocks <strong>of</strong> programming languages are explored. The course gives students fundamental knowledge in the<br />

organization <strong>and</strong> operation <strong>of</strong> programming languages. Students learn to appreciate the possible future evolutions <strong>of</strong><br />

programming languages. It exposes students to causes <strong>of</strong> operational (like performance, security, etc) characteristics<br />

<strong>of</strong> programming languages. By the end <strong>of</strong> the course, students will be able to underst<strong>and</strong> common language<br />

paradigms; know the different building blocks <strong>of</strong> a programming language; know how the different blocks <strong>of</strong> a<br />

programming language interact<br />

Indicative Content:<br />

• Overview over programming language paradigms; Common principles: syntax, syntax trees, formal<br />

semantics (denotation <strong>and</strong> operational), variables <strong>and</strong> binding<br />

• Types: role <strong>of</strong> types in programming <strong>and</strong> programming languages, types <strong>and</strong> their operations: products,<br />

sums, functions, recursive types, reference <strong>and</strong> array types<br />

• Primarily imperative issues: control flow, arrays, pointers <strong>and</strong> references, parameter-passing mechanisms,<br />

scoping<br />

• Type systems: strongly typed languages type checking (static vs. dynamic), type equivalence (by name vs.<br />

structural), overloading, coercion, polymorphism, type inference<br />

• Binding: declarations <strong>and</strong> environments. Block structure: scope <strong>and</strong> visibility, stack discipline. Bound<br />

occurrences: static vs. dynamic binding.<br />

• Encapsulation: information hiding, modules, abstract data types, classes<br />

• Language implementation: parsing, code generation, garbage collection.<br />

Reference Books:<br />

i. D. P. Friedman, M. W<strong>and</strong>, <strong>and</strong> C. T. Haynes, Essentials <strong>of</strong> Programming Languages, MIT Press, 2001.<br />

CSC 3117 Emerging Trends in Computer Science (4 CU)<br />

Course Description: The course is to expose provide students with an opportunity to search for knowledge in an<br />

area <strong>of</strong> interest. It is to allow a student do lightweight research <strong>and</strong> explore the current trends in a certain computer<br />

science area. The course will aid a student get an in depth underst<strong>and</strong>ing <strong>of</strong> the developments in one area <strong>of</strong><br />

computer science, improve the student’s research skills <strong>and</strong> develop confidence in the students on the ability to<br />

search for knowledge with little guidance.<br />

38


Indicative Content:<br />

The content is not specific but will be dependent on the area the student chooses to pursue.<br />

BIS 3100: Modeling <strong>and</strong> Simulation (4 CU)<br />

Course Description: The course gives students theoretical <strong>and</strong> practical skills in modeling <strong>and</strong> simulation <strong>of</strong><br />

dynamic systems with a view <strong>of</strong> learning their behavior <strong>and</strong> the sensitivity <strong>of</strong> that behavior to certain parameters.<br />

The course will familiarize students with modeling <strong>and</strong> simulation techniques that are applicable under varying<br />

circumstances equip students with practical experiences <strong>of</strong> composing models <strong>and</strong> running simulations under<br />

varying circumstances, equip students with skills <strong>of</strong> correctly representing simulation results<br />

Indicative Content: Simulation <strong>of</strong> operational systems, Simulation as a decision making methodology, Model<br />

development <strong>and</strong> validation, Design <strong>of</strong> simulation experiments, Generation <strong>of</strong> appropriate values <strong>of</strong> r<strong>and</strong>om<br />

variables, Interactive procedures <strong>and</strong> interpretation <strong>of</strong> results.<br />

Reference Books:<br />

i. L. Oakshott, Business Modelling <strong>and</strong> Simulation, Trans- Atlantic Publications, 1997.<br />

ii. R. G. Coyle, System dynamics modeling a practical approach, Chapman & Hall/CRC, 1996.<br />

CSC 3105 Computer Graphics (3 CU)<br />

Course Description: The course covers general purpose graphics systems <strong>and</strong> their use. It gives an in-depth<br />

knowledge <strong>of</strong> computer graphics <strong>and</strong> graphical user interfaces. The course introduces students to the concepts <strong>of</strong><br />

graphical representation on computers, teaches students the design <strong>of</strong> good graphical user interfaces.<br />

Indicative Content: Students are exposed to Graphics hardware, Geometrical transformations, Surface <strong>and</strong> volume<br />

visualization, Design <strong>and</strong> implementation <strong>of</strong> graphical user interfaces, Two dimensional imaging processes,<br />

Computer graphics applications, Display system organization; Display devices <strong>and</strong> modes; Display file construction<br />

<strong>and</strong> its structure; Graphic primitive - device initialization, view porting <strong>and</strong> windowing; Line drawing, simple <strong>and</strong><br />

symmetrical Digital Differential Analysis (DDA); Arch <strong>and</strong> circle generating DDA Line; <strong>and</strong> polygon clipping<br />

algorithms; Curve plotting; Transformations- projections <strong>and</strong> perspective views; Picture segmentation: Graphics<br />

st<strong>and</strong>ards - PHIGS <strong>and</strong> GKS.<br />

Reference Books:<br />

i. D. Foley, A. Van Dam, S. K. Feiner, J. F. Hughes <strong>and</strong> R. L. Phillips, Introduction to Computer<br />

Graphics, James, Addison Wesley, 2003.<br />

ii. P. Shirley, Fundamentals <strong>of</strong> Computer Graphics, AK Peters, 2002.<br />

CSC 3114: Selected Topics in Computer Science (3 CU)<br />

Course Description: The course is to give an avenue for visiting or local staff to design content for an area that they<br />

are researching in but not covered in the curriculum. This could be an upcoming field yet to be incorporated in the<br />

curriculum or some outst<strong>and</strong>ing state <strong>of</strong> practice in a certain computer science area.<br />

This course aims at providing an avenue for exposing students to new interesting areas <strong>of</strong> computer science which<br />

are not (yet) incorporated into the curriculum.<br />

CSC 3115 Advanced Programming (3 CU)<br />

Course Description: This course highlights programming practices that are vital in the day today work <strong>of</strong> a<br />

programming pr<strong>of</strong>essional. While many systems are described by functionalities, some important aspects like<br />

security, robustness, <strong>and</strong> maintainability are ignored. Students are to get an in-depth underst<strong>and</strong>ing <strong>of</strong> these concepts<br />

as well as exploring the current trends in the programming environment. This course will concretize the student’s<br />

past programming experience as well as highlighting critical practices in programming that are necessary for a<br />

pr<strong>of</strong>essional programmer. Therefore, after this course, the student should be able to implement non functional but<br />

critical aspects <strong>of</strong> programming like robustness <strong>and</strong> security, develop well documented <strong>and</strong> well structured s<strong>of</strong>tware<br />

39


that can easily be maintained, be knowledgeable in other programming practices like mobile programming, be aware<br />

<strong>of</strong> newer programming paradigms like service oriented <strong>and</strong> cloud computing.<br />

Indicative Content: Programming for Security: Programming for Robustness; Programming for Maintainability;<br />

Trends in Programming Paradigms<br />

Reference Book:<br />

i. W. R. Stevens <strong>and</strong> S. A. Rago, Advanced Programming in the UNIX Environment, Addison Wesley,<br />

1992.<br />

BIT 3102 Entrepreneurship <strong>and</strong> Business (3 CU)<br />

Course Description: This course <strong>of</strong>fers an overview <strong>of</strong> the entrepreneurial process. Students will develop a<br />

business plan using their own business idea. They will learn skills <strong>and</strong> characteristics <strong>of</strong> successful entrepreneurs,<br />

techniques for evaluating business opportunities, planning tools, selling <strong>and</strong> marketing basics, financial analysis,<br />

record keeping, laws <strong>and</strong> regulations <strong>of</strong> Ug<strong>and</strong>a, <strong>and</strong> step by step procedures for starting a small business.<br />

Indicative Content:<br />

• Identification <strong>of</strong> talents <strong>and</strong> skills required to be a successful entrepreneur; Personal talents; Technical<br />

skills; Educational background<br />

• Overview <strong>of</strong> business opportunities: Trade association reports; Government reports; Demographic<br />

information <strong>and</strong> Surveys.<br />

• Business entry strategies: Steps in starting a business; Purpose <strong>of</strong> business; Description <strong>of</strong> business;<br />

Starting a business versus buying a business<br />

• Planning: Setting goals; Operational approach.<br />

• Laws <strong>and</strong> regulations affecting a small business in Ug<strong>and</strong>a: CAP <strong>and</strong> Local bye laws<br />

• Sources <strong>of</strong> information <strong>and</strong> assistance; Trade association <strong>and</strong> other non-governmental sources; Local, state,<br />

<strong>and</strong> federal governmental sources; Small business analysis<br />

• Description <strong>of</strong> a comprehensive business plan; Reason for preparing a business plan; Types <strong>of</strong> business<br />

plans; Form <strong>of</strong> business plan; Contents <strong>of</strong> a successful business plan.<br />

• Outline <strong>of</strong> a business plan: Preparation <strong>of</strong> an executive summary; Establishment <strong>of</strong> company strategy;<br />

Development <strong>of</strong> a marketing plan; Sales strategy; financial plan.<br />

• Completion <strong>of</strong> the business plan; Writing the plan; Outside review <strong>of</strong> the plan.<br />

• Social <strong>and</strong> Ethical Responsibility<br />

Reference Books:<br />

i. B. R. Barringer & R. D. Irel<strong>and</strong>, Entrepreneurship: Successfully Launching New ventures. Published by<br />

Pearson-Prentice Hall. 1st edition, 2006.<br />

ii. T. W. Zimmerer <strong>and</strong> N. M. Scarborough, Essentials <strong>of</strong> Entrepreneurship <strong>and</strong> Small Business Management,<br />

4th edition, 2005.<br />

BIT 3204 Enterprise Network Management (4 CU)<br />

Course Description: The course is to equip students with knowledge <strong>of</strong> managing enterprise computer/data<br />

networks. This caters for enterprise critical aspects like reliability, security <strong>and</strong> user management.<br />

The course aims at equipping students with skills to plan, manage <strong>and</strong> monitor large computer networks.<br />

Indicative Content: The infrastructure for network management, the internet <strong>and</strong> ISO models, SNMP, ASN.1,<br />

Structure <strong>of</strong> management information <strong>and</strong> MIB, Events <strong>and</strong> managed objects. EMS vs. NMS NOC; Remote <strong>and</strong><br />

Web-based management tool; OAM&P Focus, Operation, maintenance, performance monitoring <strong>and</strong> Introduction <strong>of</strong><br />

traffic engineering <strong>and</strong> load balancing.<br />

40


Reference Book:<br />

i. K. Terplan, Effective Management <strong>of</strong> Local Area Networks, McGeaw-Hill, 1992.<br />

CSC 3205 Compiler Design (3 CU)<br />

Course Description: In this course unit, students shall underst<strong>and</strong> the complete process <strong>of</strong> translating a Programme<br />

in a high-level language to machine language. The course gives an introduction to the design <strong>and</strong> implementation <strong>of</strong><br />

a compiler with emphasis on principles <strong>and</strong> techniques for program analysis <strong>and</strong> translation. It also gives an<br />

overview <strong>of</strong> the tools for compiler construction, Lexical analysis, token selection, transition diagrams, <strong>and</strong> finite<br />

automata. The use <strong>of</strong> context-free grammars to describe syntax, derivations <strong>of</strong> parse trees, <strong>and</strong> construction <strong>of</strong><br />

parsers, Syntax directed translation schemes; Intermediate code; Symbol table; Code generation; Detection,<br />

reporting, recovery <strong>and</strong> correction <strong>of</strong> errors.<br />

Indicative Content: Language translators: Introduction to compilers <strong>and</strong> interpreters; The structure <strong>of</strong> a compiler:<br />

lexical analysis, parsing, semantic analysis; Intermediate code generation, register allocation, global optimization;<br />

Lexical scanning; Parsing; Automatic parser construction. FIRST <strong>and</strong> FOLLOW functions; LL(1) parsers; LR<br />

parsers. Conflicts in LR grammars <strong>and</strong> how to resolve them; Semantic analysis: Attributes <strong>and</strong> their computation,<br />

tree-traversals, visibility <strong>and</strong> name resolution; inherited attributes <strong>and</strong> symbol tables. Name resolution in blockstructured<br />

languages; Type checking: Type systems, varieties <strong>of</strong> strong typing, overload resolution, polymorphism<br />

<strong>and</strong> dynamic dispatching. Type checking <strong>and</strong> type inference, unification; Run-time or Run-time organization:<br />

storage allocation, non-local references, parameter passing, dynamic storage allocation. Exception h<strong>and</strong>ling,<br />

debugging information; Intermediate code generation: control structures, expressions, simple register allocation.<br />

Aggregates <strong>and</strong> other high-level constructs; Global optimization<br />

Reference Book:<br />

i. W. M. Waite <strong>and</strong> G. Goos, Compiler Construction, Springer Verlag, 1994.<br />

CSC 3206 Group Project (5 CU)<br />

Course Description: The course is to allow students, in groups, to integrate the knowledge acquired over the<br />

previous five semesters into solving a non trivial problem through a computer application. Emphasis will be put on<br />

the systematic development methodology, the documentation <strong>of</strong> the development process, <strong>and</strong> how well the<br />

developed system addresses the problem to be solved. Non functional attributes like robustness, usability, security<br />

<strong>and</strong> reliability will also be tested. The course will give students experience in Group <strong>and</strong> collaborative work, Proper<br />

procedures in development <strong>of</strong> computer systems, Proper documentation <strong>of</strong> the s<strong>of</strong>tware development process,<br />

Development <strong>of</strong> big not trivial computer projects. The content is to be determined by the students under the<br />

guidance <strong>of</strong> the supervisor.<br />

CSC 3207 Computer Security (3 CU)<br />

Course Description: Computer security is a branch <strong>of</strong> technology concerned with digital security or information<br />

security applied to computers. Since the largest part <strong>of</strong> the computer that users interact with is s<strong>of</strong>tware, computer<br />

security pays big attention to development <strong>of</strong> secure s<strong>of</strong>tware. Students will be conversant with threats faced by<br />

computers in the connected digital world, techniques that are used to protect computers against various threats.<br />

Indicative Content: Digital security principles, Hardware based security mechanisms, Secure operating systems,<br />

Security architecture, Security by design, Secure coding (S<strong>of</strong>tware Security), Access Control Lists <strong>and</strong> Security<br />

Applications.<br />

Reference Books:<br />

i. R. J. Anderson, Security Engineering: A Guide to Building Dependable Distributed Systems, Willey<br />

2001.<br />

ii. R. C. Seacord, Secure Coding in C <strong>and</strong> C++, Addison Wesley, 2005.<br />

41


BIT 3200 Business Intelligence <strong>and</strong> Data Warehousing (4 CU)<br />

Course Description: This course covers techniques <strong>and</strong> s<strong>of</strong>tware tools that can assist management that deals with<br />

large amounts <strong>of</strong> data in management <strong>and</strong> business decision making. The course covers the fundamental differences<br />

between databases <strong>and</strong> data warehouses, the techniques <strong>of</strong> developing data warehouses as well as manipulating them<br />

to generate business strategic decisions. Students will be able to underst<strong>and</strong> the role <strong>and</strong> operation <strong>of</strong> data<br />

warehouses, be equipped with skills <strong>of</strong> developing, maintaining, <strong>and</strong> manipulating data warehouses to generate<br />

information for business decision making.<br />

Indicative Content: Data warehouse concepts: partitioning, granularity, record <strong>of</strong> source, <strong>and</strong> metadata; Building<br />

viable decision support environments; Architect development, Data migration <strong>and</strong> integration, Use <strong>of</strong> operational<br />

data stores, <strong>and</strong> transactional systems.<br />

Reference Book:<br />

i. P. Ponniah, Data Warehousing Fundamentals, Wiley, 2001.<br />

BSE 3202: Distributed Systems Development (4 CU)<br />

Course Description: This course gives students theoretical <strong>and</strong> practical skills on development <strong>of</strong> distributed<br />

systems <strong>and</strong> applications. This includes distributed system-specific challenges like reliability <strong>and</strong> robustness.<br />

Students will be equipped with skills <strong>of</strong> developing distributed systems.<br />

Indicative Content; Event-driven s<strong>of</strong>tware architectures, Distributed object computing, Development,<br />

documentation <strong>and</strong> testing <strong>of</strong> distributed applications, Techniques for reusable, extensible <strong>and</strong> efficient s<strong>of</strong>tware<br />

systems, Maintainability <strong>and</strong> concurrence in distributed systems, Abstraction based on patterns <strong>and</strong> object-oriented<br />

techniques<br />

Reference Books:<br />

i. S. Tanenbaum <strong>and</strong> M. V. Steen, Distributed Systems: Principles <strong>and</strong> Paradigms, 2nd edition, Prentice<br />

Hall, 2006.<br />

ii. R. Anderson, Security Engineering: A Guide to Building Dependable Distributed Systems, John Wiley &<br />

Sons, 2001.<br />

6.3 Computer Science Subject for BSc Programme<br />

6.3.1 Overview<br />

The BSC Programme is housed in the Faculty <strong>of</strong> Science. It is a broad Programme that explores a wide range <strong>of</strong><br />

knowledge in Natural Sciences <strong>and</strong> other related disciplines. The Programme is subject based. Some <strong>of</strong> the subjects<br />

like Botany, Mathematics, Physics, Zoology, <strong>and</strong> Biochemistry are housed in the Faculty its self. However, some<br />

subjects like Computer Science, Geography, Statistics <strong>and</strong> Economics are housed in other faculties. The Faculty <strong>of</strong><br />

<strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology houses the Computer Science subject. The department <strong>of</strong> Computer Science<br />

is responsible over the day today running <strong>of</strong> the subject. All administrative <strong>and</strong> academic decisions on the subject<br />

are done in consultation with the Faculty <strong>of</strong> Science.<br />

6.3.2 The Computer Science Subject<br />

It has been an aspiration <strong>of</strong> Makerere University to be a mover in the information age. This is done by training<br />

highly skilled computer pr<strong>of</strong>essionals. As a starting point, Computer Science as a subject was started in the Faculty<br />

<strong>of</strong> Science in the early 1990’s. Its teaching was later transferred to the Institute <strong>of</strong> Computer Science (now Faculty<br />

<strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology). The subject is <strong>of</strong>fered by students on the Bachelor <strong>of</strong> Science<br />

Programme <strong>and</strong> is done with other subjects in the Faculty <strong>of</strong> Science. This includes teaching as well as devising<br />

ways the contents can be enriched further to match the current ICT trends. Students have an option <strong>of</strong> taking<br />

Computer Science as a Major or a Minor as a subject.<br />

42


1. Subject Combinations<br />

Computer science subject forms part <strong>of</strong> the Bachelor <strong>of</strong> Science Programme. It has to be done with two other<br />

subjects at enrollment. Due to the nature <strong>of</strong> Computer Science, it shares a lot with Mathematics. Therefore a<br />

c<strong>and</strong>idate have to demonstrate a strong mathematics background (for example good grades from A-Level) to be<br />

<strong>of</strong>fered the subject.<br />

2. Admission Requirements<br />

A student has to satisfy the general university admission requirements as well as those specific ones on the BSC<br />

Programme. Particularly for Computer Science, a student must have a principle pass in Mathematics at A’ level<br />

3. Graduation Load<br />

Computer Science forms a portion <strong>of</strong> the overall load on the BSC Programme. The minimum graduation load for<br />

BSC is 108 Credit units. Consultation with Faculty <strong>of</strong> Science showed that a majoring student needs between 66 <strong>and</strong><br />

72 credit units while a minor student needs between 30 <strong>and</strong> 36 CU for graduation.<br />

6.3.4 Programme Structure<br />

A.) Computer Science Major<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

Semester 2<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

CSC 1209 Logic Programming 3 30 30 -- 45<br />

Semester 3<br />

CSC 2100 Algorithms <strong>and</strong> Data Structures 4 45 -- 30 60<br />

CSC 2111 Database Management Systems I 3 30 30 -- 45<br />

CSC 2113 S<strong>of</strong>tware Engineering 4 45 -- 30 60<br />

Semester 4 (Core)<br />

CSC 2200 Operating Systems 4 45 -- 30 60<br />

Semester 4 (2 electives)<br />

CSC 2209 Systems Programming 4 45 -- 30 60<br />

CSC 2210 Automata, Complexity & Computability 3 45 -- -- 45<br />

CSC 2214 Cryptology <strong>and</strong> Coding Theory 3 45 -- -- 45<br />

Semester 5 (Core)<br />

CSC 3103 User Interface Design 4 45 -- 30 60<br />

Semester 5 (2 electives)<br />

CSC 3112 Principles <strong>of</strong> Programming Languages 3 45 -- -- 45<br />

BIS 3100 Modeling <strong>and</strong> Simulation 4 45 -- 30 60<br />

CSC 3105 Computer Graphics 3 30 -- 30 45<br />

CSC 3115 Advanced Programming 3 30 -- 30 45<br />

Semester 6 (Core)<br />

CSC 3206 Group Project 5 -- 135 -- 60<br />

Semester 6 (2 electives)<br />

CSC 3205 Compiler Design 3 45 -- -- 45<br />

CSC 3207 Computer Security 3 45 -- -- 45<br />

BIT 3200 Business Intelligence & Data Warehousing 4 45 30 -- 60<br />

43


BSE 3202 Distributed Systems Development 4 45 30 -- 60<br />

B.) Computer Science Minor<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

Semester 2<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

CSC 1209 Logic Programming 3 30 30 -- 45<br />

Semester 3<br />

CSC 2111 Database Management Systems I 3 30 30 -- 45<br />

CSC 2113 S<strong>of</strong>tware Engineering 4 45 -- 30 60<br />

Semester 4 (Core)<br />

CSC 2200 Operating Systems 4 45 -- 30 60<br />

Semester 4 (1 elective)<br />

CSC 2210 Automata, Complexity & Computability 3 45 -- -- 45<br />

CSC 2214 Cryptology <strong>and</strong> Coding Theory 3 45 -- -- 45<br />

Semester 5 (Core)<br />

CSC 3103 User Interface Design 4 45 -- 30 60<br />

Semester 5 (1 elective)<br />

CSC 3112 Principles <strong>of</strong> Programming Languages 3 45 -- -- 45<br />

CSC 3105 Computer Graphics 3 30 -- 30 45<br />

Semester 6<br />

CSC 3205 Compiler Design 3 45 -- -- 45<br />

CSC 3207 Computer Security 3 45 -- -- 45<br />

BIT 3200 Business Intelligence & Data Warehousing 4 45 30 -- 60<br />

BSE 3202 Distributed Systems Development 4 45 30 -- 60<br />

6.3.4 Course Unit Description<br />

CSC 1100: Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; <strong>of</strong>fice applications; expose students to different<br />

operating systems <strong>and</strong> equip students with skills <strong>of</strong> how to use the Internet. By the end <strong>of</strong> the course unit, the student<br />

should be able to: Describe the different parts <strong>of</strong> a computer; the historical evolution <strong>of</strong> computers; competently use<br />

the common <strong>of</strong>fice applications in at least two operating systems;<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

44


Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

CSC 1106: Programming Methodology I (3 CU)<br />

Course Description: The course is to create a strong base in the principles <strong>and</strong> practice <strong>of</strong> functional programming.<br />

A high level programming language like C is to be used. Students are to cover both theoretical principles <strong>and</strong> h<strong>and</strong>s<br />

on practical skills. The main concepts to cover include program structure, data structures, syntactical <strong>and</strong> semantic<br />

correctness, planning <strong>and</strong> segmentation in programming as well as working with files. The aims <strong>of</strong> the course are to<br />

provide the student with: Comprehensive knowledge about structured oriented programming; Knowledge in<br />

planning <strong>and</strong> organization <strong>of</strong> programming projects; Knowledge <strong>and</strong> techniques <strong>of</strong> evaluating syntactic <strong>and</strong> semantic<br />

correctness <strong>of</strong> a computer program <strong>and</strong> strong practical basis in programming.<br />

Indicative Content: Programme structure; Variables <strong>and</strong> Operators; Conditional statements; Looping statements;<br />

Arrays <strong>and</strong> strings; Functions; Advanced data types; Pointers; Dynamic memory allocation <strong>and</strong> dynamic structures;<br />

Working with files <strong>and</strong> GUI.<br />

Reference Books:<br />

i. B. W. Kernighan, D. M. Ritchie, C Programming Language, 2nd edition, 1989.<br />

ii. S. P. Harbison, C: A Reference Manual, 5th edition, 2004.<br />

CSC 1207 Programming Methodology II (3 CU)<br />

Course Description: The course is to give an in depth underst<strong>and</strong>ing <strong>of</strong> Object Oriented programming. It is to cater<br />

for Object Oriented Programming practices like inheritance, interfaces, exception h<strong>and</strong>ling, action h<strong>and</strong>ling,<br />

security, s<strong>of</strong>tware reuse <strong>and</strong> robustness. The aim <strong>of</strong> the course is to: Move the students’ programming skills from<br />

basic to advanced; Avail students with skills to h<strong>and</strong>le non functional Programme aspects like robustness <strong>and</strong><br />

security <strong>and</strong> train students to develop complete computer applications.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference Books:<br />

i. J. Lewis <strong>and</strong> W. L<strong>of</strong>tus, Java S<strong>of</strong>tware Solution: Foundations <strong>of</strong> Programme Design, 4th edition, 2008.<br />

ii. K. A. Mughal <strong>and</strong> R. W. Rasmussen, A Programmer’s Guide to JavaTM Certification: A comprehensive<br />

Primer, 3rd edition, 2008<br />

CSC 1209 Logic Programming (3 CU)<br />

Course Description: This course introduces a paradigm where computation arises from pro<strong>of</strong> search in logic<br />

according to a fixed, predictable strategy. It thereby unifies logical specification <strong>and</strong> implementation in a way that is<br />

quite different from functional or imperative programming. This course provides a thorough, modern introduction to<br />

logic programming. It introduces the basic concepts <strong>and</strong> techniques <strong>of</strong> logic programming followed by successive<br />

refinement towards more efficient implementations or extensions to richer logical concepts. It covers a variety <strong>of</strong><br />

logics <strong>and</strong> operational interpretations. The aim <strong>of</strong> the course is to provide a basic introduction to the logic<br />

Programming language <strong>and</strong> Prolog. It aims at introducing a number <strong>of</strong> logical systems <strong>of</strong> importance in computer<br />

science.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

45


Reference Books:<br />

i. M. R. Huth <strong>and</strong> M. D. Ryan, Logic in Computer Science, Modeling <strong>and</strong> Reasoning about Systems,<br />

Cambridge University Press, 2000.<br />

ii. SWI Prolog Home Page, http://www.swi-prolog.org/<br />

CSC 2100: Data Structures <strong>and</strong> Algorithms (4 CU)<br />

Course Description: The course gives students a firm foundation <strong>of</strong> data structures <strong>and</strong> algorithms. The course<br />

trains students on systematic development <strong>and</strong> analysis <strong>of</strong> algorithms. The importance <strong>of</strong> algorithm complexity on<br />

computer performance is emphasized. Typical computational problems <strong>and</strong> their solutions/analysis are to be<br />

covered. The aims <strong>of</strong> the course are to; Make students appreciate the role <strong>of</strong> data structures <strong>and</strong> algorithms in<br />

computer Programmes; Improve students’ problem solving skills by subjecting them to step by step analysis <strong>and</strong><br />

design <strong>of</strong> computer algorithms; Introduce students to concepts Data structures; Introduce students to concepts <strong>of</strong><br />

algorithm analysis <strong>and</strong> to expose students generic algorithmic problems <strong>and</strong> apply them to other computational<br />

scenarios.<br />

Indicative Content: Complexity analysis (Big-O notation, orders <strong>of</strong> growth, worst case, average case <strong>and</strong> amortized<br />

analysis); NP-complete problems; Greedy algorithms; Dynamic programming; Design patterns for data structures;<br />

Graphical representation <strong>of</strong> optimization problems; Parallel algorithms; Sorting <strong>and</strong> searching; Divide-<strong>and</strong>-conquer<br />

algorithms; Elementary data structures; Recursive data structures (stacks, queues, linked lists, trees); Storing <strong>and</strong><br />

searching (hash tables, search trees); Graph algorithms on graphs (shortest path, spanning trees).<br />

Reference Books:<br />

i. A. V. Aho, J. D. Ullman, J. E. Hopcr<strong>of</strong>t, Data Structures <strong>and</strong> Algorithms, Addison-Wesley, 1983.<br />

ii. A. V. Aho,The Design <strong>and</strong> Analysis <strong>of</strong> Computer Algorithms, Addison-Wesley Longman, 1974.<br />

iii. T. H. Cormen, C. E. Leiserson, R. L. Rivest, <strong>and</strong> C. Stein, Introduction to Algorithms 2nd edition,<br />

McGraw Hill, 2008.<br />

CSC 2111: Database Management Systems I (3 CU)<br />

Course Description: This course is to provide students with a strong foundation in systematic approaches to design<br />

<strong>and</strong> implementing <strong>of</strong> database applications. Preliminarily, operations like requirements gathering <strong>and</strong> database<br />

planning will be covered. The course will also introduce students to developing <strong>of</strong> application programs that talk to<br />

the database. These applications may be online or <strong>of</strong>fline. The aims <strong>of</strong> the course are to: Provide a background for<br />

the evolution <strong>of</strong> database (management) systems; Provide the students with the steps one has to go through when<br />

developing good database applications; Give h<strong>and</strong> on experience <strong>and</strong> knowledge in developing database (driven)<br />

applications<br />

Indicative Content: Background to databases; Evolution <strong>of</strong> database systems; Database organization <strong>and</strong><br />

architecture; Data base models; Over view <strong>of</strong> database application development; The database development life<br />

cycle; Database design; Conceptual design; Logical design; Physical Design; Querying databases; SQL/PL SQL<br />

<strong>and</strong> Scripting.<br />

Reference Books:<br />

i. T. Connolly <strong>and</strong> C. Begg: Database Solutions, 2nd edition, 2003.<br />

CSC 2108: S<strong>of</strong>tware Engineering (4 CU)<br />

Course Description: This course introduces students to the foundations <strong>of</strong> s<strong>of</strong>tware engineering as a discipline.<br />

Students are introduced to the evolving role <strong>of</strong> s<strong>of</strong>tware engineering, especially with emphasis on s<strong>of</strong>tware<br />

engineering process <strong>and</strong> process models. Key topics covered include S<strong>of</strong>tware configuration management,<br />

Requirement analysis, S<strong>of</strong>tware Specification, Design methods, S<strong>of</strong>tware testing, S<strong>of</strong>tware project management<br />

techniques; S<strong>of</strong>tware project planning, Risk management; S<strong>of</strong>tware Quality Assurance; S<strong>of</strong>tware reuse; <strong>and</strong><br />

Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

46


Indicative Content;<br />

• Evolving role <strong>of</strong> s<strong>of</strong>tware, s<strong>of</strong>tware characteristics; Systems <strong>and</strong> environment; system engineering<br />

hierarchy, information <strong>and</strong> knowledge engineering; Information strategy; Business Area analysis, modeling<br />

enterprise <strong>and</strong> business-level data modeling, system architecture <strong>and</strong> associated information flow; writing<br />

system specification.<br />

• S<strong>of</strong>tware Engineering as a layered technology: S<strong>of</strong>tware process, s<strong>of</strong>tware process models. S<strong>of</strong>tware<br />

configuration management: the SCM process, Identification <strong>of</strong> objects in s<strong>of</strong>tware configuration, version<br />

control, change control, configuration audit, SCM st<strong>and</strong>ards.<br />

• Requirement analysis: Communication techniques, Information gathering tools; organizing <strong>and</strong> structuring<br />

information; analysis principles; Analysis modeling.<br />

• S<strong>of</strong>tware Specification: Design process, principles <strong>and</strong> concepts: Abstraction, refinement, modularity,<br />

control hierarchy, structural partitioning, information hiding, functional independence, cohesion, coupling,<br />

design heuristics;<br />

• Design methods: data design, architectural design, transform mapping, design optimization, human<br />

computer interface design, procedural design <strong>and</strong> tools; Design documentation.<br />

• S<strong>of</strong>tware testing: Testing objectives, Testing principles, Testability, test case designing, white box testing;<br />

Basis path testing: Condition testing, data flow testing, loop testing; Black box testing: graph based testing<br />

methods, equivalence partitioning, Boundary value analysis, comparison testing; Testing documentation<br />

<strong>and</strong> help facilities; S<strong>of</strong>tware testing strategy: unit testing, integration testing, validation testing, system<br />

testing.<br />

• S<strong>of</strong>tware project management techniques: project metrics, s<strong>of</strong>tware measurement <strong>and</strong> metrics, s<strong>of</strong>tware<br />

quality metrics;<br />

• S<strong>of</strong>tware project planning: objectives <strong>of</strong> planning, resources, project estimation <strong>and</strong> estimation models,<br />

project decomposition techniques, make-buy decisions; automated estimation tools.<br />

• Risk management: s<strong>of</strong>tware risks, risk identification, risk projection, risk mitigation, monitoring <strong>and</strong><br />

management; Project Scheduling: people <strong>and</strong> effort relationships, defining tasks, defining task network,<br />

scheduling techniques; S<strong>of</strong>tware teams <strong>and</strong> intra-team relationships; role <strong>of</strong> project manager.<br />

• S<strong>of</strong>tware Quality Assurance: Concept <strong>of</strong> quality, quality control vs. quality assurance, cost <strong>of</strong> quality,<br />

factors that affect quality, quantitative view <strong>of</strong> quality, quality metrics, defect removal efficiency SQA<br />

activities, ISO st<strong>and</strong>ards <strong>and</strong> CMM practices, SEI levels, S<strong>of</strong>tware reviews, Formal approaches to SQA,<br />

Statistical Quality Assurance. S<strong>of</strong>tware reliability, reliability metrics, reliability models, meeting reliability<br />

requirements.<br />

• Effective metrics for s<strong>of</strong>tware process: Measurement principles, attributes <strong>of</strong> s<strong>of</strong>tware metrics, metrics for<br />

analysis model, metrics for design model, metrics for source code, metrics for maintenance.<br />

• S<strong>of</strong>tware reuse: difficulties in reuse, hardware reuse vs. s<strong>of</strong>tware reuse, reusable artifacts, domain<br />

engineering approach, analysis design <strong>and</strong> construction <strong>of</strong> reusable components, classification <strong>and</strong> retrieval<br />

<strong>of</strong> components, economic impact <strong>of</strong> reuse <strong>and</strong> reuse metrics.<br />

• Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

Reference Books:<br />

i. J. F. Peters, W. Pedrycz, S<strong>of</strong>tware Engineering: An Engineering Approach, John Wiley, 2000.<br />

ii. R. S. Pressman, S<strong>of</strong>tware Engineering: A Practitioners Approach, 5th edition, McGraw Hill, 2005.<br />

iii. I. Sommerville, S<strong>of</strong>tware Engineering, 8th edition, Addison Wesley, 2008.<br />

iv. D. Ghezzi, M. Jazayeri, D. M<strong>and</strong>rioli, Fundamentals <strong>of</strong> S<strong>of</strong>tware Engineering, Prentice Hall <strong>of</strong> India,<br />

2004.<br />

47


CSC 2200: Operating Systems (4 CU)<br />

Course Description: Operating Systems course introduces students to s<strong>of</strong>tware that controls hardware <strong>and</strong> makes<br />

the hardware usable. Its interaction with other computer devises <strong>and</strong> how it controls other computer processes is<br />

explored. The Course aims at providing students with a detailed underst<strong>and</strong>ing <strong>of</strong> how operating systems work;<br />

skills to write basic Programmes to utilize underlying operating system infrastructures. At the end <strong>of</strong> the course,<br />

students are able to know the dominant categories <strong>of</strong> operating systems are Windows <strong>and</strong> UNIX (Linux, Mac OS,<br />

Solaris, etc). Students <strong>of</strong> operating systems are expected to have a proper underst<strong>and</strong>ing <strong>of</strong> the differences between<br />

these two. Students should be able to underst<strong>and</strong> different design principles for operating systems <strong>and</strong> various<br />

s<strong>of</strong>tware tools that make operating systems usable.<br />

Indicative Content; Operating Systems Structures; Processes <strong>and</strong> threads; Thread creation, manipulation <strong>and</strong><br />

synchronization; Deadlock; Implementing Synchronization operations; CPU scheduling; Memory management;<br />

File systems <strong>and</strong> file system implementation; Monitors; Segments; Disk Scheduling; Networking; UDP <strong>and</strong> TCP.<br />

Reference Book:<br />

i. W. Stallings, Operating Systems: Internals <strong>and</strong> Design Principles 5th edition, Prentice Hall, 2005.<br />

CSC 2209: Systems Programming (4 CU)<br />

Course Description: Systems programming is aimed at teaching students how to write Programmes using system<br />

level services. The system <strong>of</strong> instruction is UNIX due to availability <strong>of</strong> free system tools that have been largely<br />

developed by <strong>and</strong> for the academia. The course is aimed at giving students skills in tools provided by systems, their<br />

comm<strong>and</strong>s, system calls <strong>and</strong> underst<strong>and</strong>ing for model <strong>of</strong> computation.<br />

Indicative Content; Introduction <strong>and</strong> Unix St<strong>and</strong>ardization; File input <strong>and</strong> output; St<strong>and</strong>ard I/O Library; Files <strong>and</strong><br />

Directories; System Data Files <strong>and</strong> Information; Process Environment; Process Control; Process Relationships;<br />

Signals; Threads; Advanced I/O <strong>and</strong> Inter process Communication<br />

Reference Book:<br />

i. W. R. Stevens, Advanced programming in the Unix Environment, Addison-Wesley, 2008.<br />

CSC 2210 Automata, Complexity <strong>and</strong> Computability (3 CU)<br />

Course Description: The course introduces students to the concept <strong>of</strong> automata <strong>and</strong> complexity. It sets a<br />

background for more advanced studies like compiler construction <strong>and</strong> principles <strong>of</strong> programming languages. The<br />

aims <strong>of</strong> the course are: To introduce students to the concepts <strong>of</strong> complexity, automata <strong>and</strong> computability; To prepare<br />

students for advanced studies in compiler construction <strong>and</strong> principle <strong>of</strong> programming languages;<br />

Indicative content: Finite state machines <strong>and</strong> regular languages: Deterministic <strong>and</strong> non deterministic machines;<br />

Equivalence <strong>and</strong> minimization; Regular expressions <strong>and</strong> regular grammars; Kleene’s theorem. Push-down automata<br />

<strong>and</strong> context free grammars; Normal forms <strong>of</strong> grammars; Top-down <strong>and</strong> bottom-up parsing; Turing machines <strong>and</strong><br />

computability; Church’s thesis; NP-Computable problems.<br />

Reading Books:<br />

i. J. E. Hopcr<strong>of</strong>t, R. Motwani, J. D. Ullman, Introduction to Automata Theory, Languages, <strong>and</strong><br />

Computation; Addison Wesley, 2000.<br />

ii. D. I. A. Cohen, Introduction to Computer Theory; John Wiley <strong>and</strong> Sons, Inc, 1996.<br />

CSC 2214 Cryptology <strong>and</strong> Coding Theory (3 CU)<br />

Course Description: This course provides a foundation for further studies in information security. The course<br />

introduces students to the exciting fields <strong>of</strong> cryptology <strong>and</strong> coding theory. Fundamentally, it deals with the<br />

mathematics that underlies modern cryptology. Cryptology combines the studies <strong>of</strong> cryptography, the creating <strong>of</strong><br />

masked messages, <strong>and</strong> cryptanalysis, the unraveling <strong>of</strong> masked messages. Coding theory is the study <strong>of</strong> coding<br />

schemes used to detect <strong>and</strong> correct errors that occur during the data transmission. The aims <strong>of</strong> this course are; To<br />

underst<strong>and</strong> the building blocks <strong>of</strong> crypto systems <strong>and</strong> error correction; To gain historical underst<strong>and</strong>ing <strong>of</strong> the<br />

48


evolution <strong>of</strong> crypto systems; To develop tools necessary to crypto analyze crypto systems; To gain insights in the<br />

practical application <strong>of</strong> cryptology <strong>and</strong> error correction in the modern information age; To underst<strong>and</strong> the goals <strong>and</strong><br />

trade-<strong>of</strong>fs associated with encryption <strong>and</strong> error-control coding systems.<br />

Indicative Content; History <strong>of</strong> cryptology <strong>and</strong> coding theory; Shift registers Classical crypto-systems; Stream<br />

ciphers; Block ciphers; Information theory; Crypto analysis techniques; Introduction to Elliptic curve cryptography;<br />

Basic Algebra; Coding theory fundamentals; Linear codes; Hamming codes; Secret sharing schemes; Introduction<br />

to Complexity; Hash functions; PGP & PKI Deffie-hellman key exchange protocol.<br />

Reference Books:<br />

i. A. Menezes, P. van Oorschot, <strong>and</strong> S. Vanstone, <strong>H<strong>and</strong>book</strong> <strong>of</strong> Applied Cryptography, CRC Press, 1996.<br />

ii. W. Trappe <strong>and</strong> C. Washington, Introduction to Cryptography with Coding Theory, 2nd edition, Prentice<br />

Hall, 2006.<br />

iii. S. Singh, The Code Book, Doubleday, 1999.<br />

iv. S. S. Adams, Introduction to Algebraic Coding Theory with Gap, 2005.<br />

CSC 3103: User Interface Design (4 CU)<br />

Course Description The course introduces the principles <strong>of</strong> user interface development, focusing on design,<br />

implementation <strong>and</strong> evaluation. The course aims at providing different skills to students, such as: Developing<br />

efficient, flexible <strong>and</strong> interactive User Interfaces (UI); Provide ability to identifying system users, the tasks they<br />

want to carry out <strong>and</strong> the environment in which they will be working; Creating a conceptual designs; Designing<br />

various kinds <strong>of</strong> UI, in particular graphical user interfaces (GUIs) <strong>and</strong> websites; evaluating UIs; Appreciation <strong>of</strong><br />

realities <strong>of</strong> developing usable UIs in an organization.<br />

Indicative Content: Usability; User-Centered Design; UI S<strong>of</strong>tware Architecture; Human Capabilities; Output<br />

Models; Conceptual Models <strong>and</strong> Metaphors; Input Models; Design Principles; Paper Prototyping; Constraints <strong>and</strong><br />

Layouts; Graphic Design; Computer Prototyping; Heuristic Evaluation; User Testing; Experiment Design <strong>and</strong><br />

Experiment Analysis.<br />

Reference Books:<br />

i. D. A. Norman, The Design <strong>of</strong> Everyday Things. New York, NY: Doubleday, 1990.<br />

ii. J. Nielsen, Usability Engineering. Burlington, MA: Academic Press, 1994.<br />

iii. K. Mullet <strong>and</strong> D. Sano, Designing Visual Interfaces: Communication oriented techniques. Prentice Hall,<br />

1994.<br />

CSC 3112: Principles <strong>of</strong> Programming Languages (3 CU)<br />

Course Description: The course introduces students to the low level organization <strong>and</strong> operation <strong>of</strong> programming<br />

languages. It covers semantic <strong>and</strong> syntactic as well as operational issues in programming languages. The building<br />

blocks <strong>of</strong> programming languages are explored. The course gives students fundamental knowledge in the<br />

organization <strong>and</strong> operation <strong>of</strong> programming languages. Students learn to appreciate the possible future evolutions <strong>of</strong><br />

programming languages. It exposes students to causes <strong>of</strong> operational (like performance, security, etc) characteristics<br />

<strong>of</strong> programming languages. By the end <strong>of</strong> the course, students will be able to underst<strong>and</strong> common language<br />

paradigms; know the different building blocks <strong>of</strong> a programming language; know how the different blocks <strong>of</strong> a<br />

programming language interact<br />

Indicative Content:<br />

• Overview over programming language paradigms; Common principles: syntax, syntax trees, formal<br />

semantics (denotation <strong>and</strong> operational), variables <strong>and</strong> binding<br />

• Types: role <strong>of</strong> types in programming <strong>and</strong> programming languages, types <strong>and</strong> their operations: products,<br />

sums, functions, recursive types, reference <strong>and</strong> array types<br />

• Primarily imperative issues: control flow, arrays, pointers <strong>and</strong> references, parameter-passing mechanisms,<br />

49


scoping<br />

• Type systems: strongly typed languages type checking (static vs. dynamic), type equivalence (by name vs.<br />

structural), overloading, coercion, polymorphism, type inference<br />

• Binding: declarations <strong>and</strong> environments. Block structure: scope <strong>and</strong> visibility, stack discipline. Bound<br />

occurrences: static vs. dynamic binding.<br />

• Encapsulation: information hiding, modules, abstract data types, classes<br />

• Language implementation: parsing, code generation, garbage collection.<br />

Reference Books:<br />

i. D. P. Friedman, M. W<strong>and</strong>, <strong>and</strong> C. T. Haynes, Essentials <strong>of</strong> Programming Languages, MIT Press, 2001<br />

BIS 3100: Modeling <strong>and</strong> Simulation (4 CU)<br />

Course Description: The course gives students theoretical <strong>and</strong> practical skills in modeling <strong>and</strong> simulation <strong>of</strong><br />

dynamic systems with a view <strong>of</strong> learning their behavior <strong>and</strong> the sensitivity <strong>of</strong> that behavior to certain parameters.<br />

The course will familiarize students with modeling <strong>and</strong> simulation techniques that are applicable under varying<br />

circumstances equip students with practical experiences <strong>of</strong> composing models <strong>and</strong> running simulations under<br />

varying circumstances, equip students with skills <strong>of</strong> correctly representing simulation results<br />

Indicative Content: Simulation <strong>of</strong> operational systems, Simulation as a decision making methodology, Model<br />

development <strong>and</strong> validation, Design <strong>of</strong> simulation experiments, Generation <strong>of</strong> appropriate values <strong>of</strong> r<strong>and</strong>om<br />

variables, Interactive procedures <strong>and</strong> interpretation <strong>of</strong> results.<br />

Reference Books:<br />

i. L. Oakshott, Business Modelling <strong>and</strong> Simulation, Trans- Atlantic Publications, 1997.<br />

ii. R. G. Coyle, System Dynamics Modeling a Practical Approach, Chapman & Hall/CRC, 1996.<br />

CSC 3105 Computer Graphics (3 CU)<br />

Course Description: The course covers general purpose graphics systems <strong>and</strong> their use. It gives an in-depth<br />

knowledge <strong>of</strong> computer graphics <strong>and</strong> graphical user interfaces.<br />

The course introduces students to the concepts <strong>of</strong> graphical representation on computers, teaches students the design<br />

<strong>of</strong> good graphical user interfaces.<br />

Indicative Content: Students are exposed to Graphics hardware, Geometrical transformations, Surface <strong>and</strong> volume<br />

visualization, Design <strong>and</strong> implementation <strong>of</strong> graphical user interfaces, Two dimensional imaging processes,<br />

Computer graphics applications, Display system organization; Display devices <strong>and</strong> modes; Display file construction<br />

<strong>and</strong> its structure; Graphic primitive - device initialization, view porting <strong>and</strong> windowing; Line drawing, simple <strong>and</strong><br />

symmetrical Digital Differential Analysis (DDA); Arch <strong>and</strong> circle generating DDA Line; <strong>and</strong> polygon clipping<br />

algorithms; Curve plotting; Transformations- projections <strong>and</strong> perspective views; Picture segmentation: Graphics<br />

st<strong>and</strong>ards - PHIGS <strong>and</strong> GKS.<br />

Reference Books:<br />

i. J. D. Foley, A. Van Dam, S. K. Feiner, J. F. Hughes <strong>and</strong> R. L. Phillips, Introduction to Computer<br />

Graphics, Addison Wesley, 2003.<br />

ii. P. Shirley, Fundamentals <strong>of</strong> Computer Graphics, AK Peters, 2002.<br />

CSC 3115 Advanced Programming (3 CU)<br />

Course Description: This course highlights programming practices that are vital in the day today work <strong>of</strong> a<br />

programming pr<strong>of</strong>essional. While many systems are described by functionalities, some important aspects like<br />

security, robustness, <strong>and</strong> maintainability are ignored. Students are to get an in-depth underst<strong>and</strong>ing <strong>of</strong> these concepts<br />

as well as exploring the current trends in the programming environment. This course will concretize the student’s<br />

past programming experience as well as highlighting critical practices in programming that are necessary for a<br />

50


pr<strong>of</strong>essional programmer. Therefore, after this course, the student should be able to implement non functional but<br />

critical aspects <strong>of</strong> programming like robustness <strong>and</strong> security, develop well documented <strong>and</strong> well structured s<strong>of</strong>tware<br />

that can easily be maintained, be knowledgeable in other programming practices like mobile programming, be aware<br />

<strong>of</strong> newer programming paradigms like service oriented <strong>and</strong> cloud computing.<br />

Indicative Content: Programming for Security: Programming for Robustness; Programming for Maintainability;<br />

Trends in Programming Paradigms<br />

Reference Books:<br />

i. W. R. Stevens <strong>and</strong> S. A. Rago, Advanced Programming in the UNIX Environment, Addison Wesley 1992.<br />

CSC 3205 Compiler Design (3 CU)<br />

Course Description: In this course unit, students shall underst<strong>and</strong> the complete process <strong>of</strong> translating a Programme<br />

in a high-level language to machine language. The course gives an introduction to the design <strong>and</strong> implementation <strong>of</strong><br />

a compiler with emphasis on principles <strong>and</strong> techniques for Programme analysis <strong>and</strong> translation. It also gives an<br />

overview <strong>of</strong> the tools for compiler construction, Lexical analysis, token selection, transition diagrams, <strong>and</strong> finite<br />

automata. The use <strong>of</strong> context-free grammars to describe syntax, derivations <strong>of</strong> parse trees, <strong>and</strong> construction <strong>of</strong><br />

parsers, Syntax directed translation schemes; Intermediate code; Symbol table; Code generation; Detection,<br />

reporting, recovery <strong>and</strong> correction <strong>of</strong> errors.<br />

Indicative Content: Language translators: Introduction to compilers <strong>and</strong> interpreters; The structure <strong>of</strong> a compiler:<br />

lexical analysis, parsing, semantic analysis; Intermediate code generation, register allocation, global optimization;<br />

Lexical scanning; Parsing; Automatic parser construction; FIRST <strong>and</strong> FOLLOW functions; LL (1) parsers; LR<br />

parsers. Conflicts in LR grammars <strong>and</strong> how to resolve them; Semantic analysis: Attributes <strong>and</strong> their computation,<br />

tree-traversals, visibility <strong>and</strong> name resolution; inherited attributes <strong>and</strong> symbol tables. Name resolution in blockstructured<br />

languages; Type checking: Type systems, varieties <strong>of</strong> strong typing, overload resolution, polymorphism<br />

<strong>and</strong> dynamic dispatching. Type checking <strong>and</strong> type inference, unification; Run-time or Run-time organization:<br />

storage allocation, non-local references, parameter passing, dynamic storage allocation. Exception h<strong>and</strong>ling,<br />

debugging information; Intermediate code generation: control structures, expressions, simple register allocation.<br />

Aggregates <strong>and</strong> other high-level constructs; Global optimization<br />

Reference Book:<br />

i. W. M. Waite <strong>and</strong> G. Goos, Compiler construction, Springer Verlag 1994.<br />

CSC 3206 Group Project (5 CU)<br />

Course Content: The course is to allow students, in groups, to integrate the knowledge acquired over the previous<br />

five semesters into solving a non trivial problem through a computer application. Emphasis will be put on the<br />

systematic development methodology, the documentation <strong>of</strong> the development process, <strong>and</strong> how well the developed<br />

system addresses the problem to be solved. Non functional attributes like robustness, usability, security <strong>and</strong><br />

reliability will also be tested. The course will give students experience in Group <strong>and</strong> collaborative work, Proper<br />

procedures in development <strong>of</strong> computer systems, Proper documentation <strong>of</strong> the s<strong>of</strong>tware development process,<br />

Development <strong>of</strong> big not trivial computer projects. The content is to be determined by the students under the<br />

guidance <strong>of</strong> the supervisor.<br />

CSC 3207 Computer Security (3 CU)<br />

Course Description: Computer security is a branch <strong>of</strong> technology concerned with digital security or information<br />

security applied to computers. Since the largest part <strong>of</strong> the computer that users interact with is s<strong>of</strong>tware, computer<br />

security pays big attention to development <strong>of</strong> secure s<strong>of</strong>tware. Students will be conversant with threats faced by<br />

computers in the connected digital world, techniques that are used to protect computers against various threats.<br />

Indicative Content: Digital security principles, Hardware based security mechanisms, Secure operating systems,<br />

Security architecture, Security by design, Secure coding (S<strong>of</strong>tware Security), Access Control Lists <strong>and</strong> Security<br />

Applications.<br />

51


Reference Books:<br />

i. R. J. Anderson: Security Engineering: A Guide to Building Dependable Distributed Systems, Willey 2001.<br />

ii. R. C. Seacord: Secure Coding in C <strong>and</strong> C++, Addison Wesley, 2005.<br />

BIT 3200 Business Intelligence <strong>and</strong> Data Warehousing (4 CU)<br />

Course Description: This course covers techniques <strong>and</strong> s<strong>of</strong>tware tools that can assist management that deals with<br />

large amounts <strong>of</strong> data in management <strong>and</strong> business decision making. The course covers the fundamental differences<br />

between databases <strong>and</strong> data warehouses, the techniques <strong>of</strong> developing data warehouses as well as manipulating them<br />

to generate business strategic decisions. Students will be able to underst<strong>and</strong> the role <strong>and</strong> operation <strong>of</strong> data<br />

warehouses, be equipped with skills <strong>of</strong> developing, maintaining, <strong>and</strong> manipulating data warehouses to generate<br />

information for business decision making.<br />

Indicative Content: Data warehouse concepts: partitioning, granularity, record <strong>of</strong> source, <strong>and</strong> metadata; Building<br />

viable decision support environments; Architect development, Data migration <strong>and</strong> integration, Use <strong>of</strong> operational<br />

data stores, <strong>and</strong> transactional systems.<br />

Reference Books:<br />

i. P. Ponniah, Data warehousing fundamentals, Wiley, 2001.<br />

BSE 3202: Distributed Systems Development (4 CU)<br />

Course Content: This course gives students theoretical <strong>and</strong> practical skills on development <strong>of</strong> distributed systems<br />

<strong>and</strong> applications. This includes distributed system-specific challenges like reliability <strong>and</strong> robustness. Students will<br />

be equipped with skills <strong>of</strong> developing distributed systems.<br />

Indicative Content; Event-driven s<strong>of</strong>tware architectures, Distributed object computing, Development,<br />

documentation <strong>and</strong> testing <strong>of</strong> distributed applications, Techniques for reusable, extensible <strong>and</strong> efficient s<strong>of</strong>tware<br />

systems, Maintainability <strong>and</strong> concurrence in distributed systems, Abstraction based on patterns <strong>and</strong> object-oriented<br />

techniques<br />

Reference Books:<br />

i. S. Tanenbaum <strong>and</strong> M. V. Steen, Distributed Systems: Principles <strong>and</strong> Paradigms, 2nd Edition, Prentice<br />

Hall, 2006.<br />

ii. R. Anderson, Security Engineering: A Guide to Building Dependable Distributed Systems, John Wiley &<br />

Sons, 2001.<br />

6.4 Diploma in Computer Science <strong>and</strong> Information Technology Programme (DSCIT)<br />

6.4.1 Overview<br />

The Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology, Makerere University runs a two year undergraduate<br />

Diploma in Computer Science <strong>and</strong> Information Technology. It was first introduced in 2003 <strong>and</strong> revised in 2009. The<br />

revised curriculum took effect in 2009/2010 Academic year. It targets A-level leavers, Diploma holders <strong>and</strong><br />

Certificate holders. It is a day <strong>and</strong> evening privately sponsored Programme.<br />

The main objectives <strong>of</strong> the Programme is develop personnel with theoretical <strong>and</strong> practical skills through h<strong>and</strong>s on<br />

training in Computer Science <strong>and</strong> Information Technology who will be able to provide high quality technical<br />

support in computerized organizations. The Programme is run jointly by the Department <strong>of</strong> Computer Science <strong>and</strong><br />

Department <strong>of</strong> Information Technology. On top <strong>of</strong> overseeing the day to day running <strong>of</strong> the Programme, the<br />

departments explore ways <strong>of</strong> improving the quality <strong>of</strong> the Programme so as to achieve its objectives.<br />

52


1. Target Group<br />

The revised Programme targets A- Level Leavers <strong>and</strong> Certificate holders.<br />

2. Minimum admission requirements<br />

To be admitted to the Diploma in Computer Science <strong>and</strong> Information Technology, a c<strong>and</strong>idate must satisfy the<br />

general admission requirements for Makerere University. In addition, the following conditions apply:<br />

(a) Direct Entry:<br />

A C<strong>and</strong>idate must satisfy the general minimum entry requirements <strong>of</strong> Makerere University. In addition, the<br />

following regulations shall hold: C<strong>and</strong>idates seeking admission through direct entry must have obtained:<br />

i. The Ug<strong>and</strong>a Certificate <strong>of</strong> Education (UCE) or its equivalent, with credits in English <strong>and</strong> Mathematics.<br />

ii. At least two principle passes at the same sitting in Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE) in any<br />

two subjects (Mathematics, Physics, Economics, Chemistry, Biology, Geography, Literature,<br />

Entrepreneurship, Technical Drawing <strong>and</strong> Fine Art).<br />

iii. For purposes <strong>of</strong> computing weighted points, the A- level subjects shall be grouped <strong>and</strong> weighted as follows:<br />

(b) Diploma Holders<br />

Group Weight Subjects<br />

Essential 3 Any two best done subjects<br />

Relevant 2 Any other best done subjects<br />

Desirable 1 General Paper, Sub-Mathematics<br />

Others 0.5 All others.<br />

i. At least any second Class (lower division) diploma from a recognized institution.<br />

ii. C<strong>and</strong>idates who hold a Diploma in Computer Science <strong>and</strong> Information Technology from Makerere<br />

University with at least second class (lower division) shall be admitted to second year <strong>of</strong> Bachelor <strong>of</strong><br />

Information Technology. C<strong>and</strong>idates who hold a pass class <strong>of</strong> the same diploma shall be admitted to<br />

first year <strong>of</strong> Bachelor <strong>of</strong> Information Technology.<br />

(c) Certificate Holders:<br />

C<strong>and</strong>idates seeking admission through the certificate holders’ scheme must:<br />

i. Have passed Mathematics <strong>and</strong> English with at least a credit in the Ug<strong>and</strong>a Certificate <strong>of</strong> Education<br />

ii. Have at least a credit certificate in computer science or related discipline from a recognized institution<br />

3. Nature <strong>of</strong> the Programme<br />

The Programme is both day <strong>and</strong> evening. It is an entirely privately sponsored Programme.<br />

4. Duration<br />

The duration <strong>of</strong> the Programme is two (2) academic years consisting <strong>of</strong> four (4) semesters <strong>and</strong> two recess terms.<br />

Each semester lasts seventeen (17) weeks two <strong>of</strong> which are for examinations.<br />

5. Tuition Fees<br />

Tuition fees for privately sponsored students shall be 2,100,000 Ug<strong>and</strong>a Shillings per year for Ug<strong>and</strong>ans <strong>and</strong><br />

2,520,000 Ug<strong>and</strong>a Shillings per year for non Ug<strong>and</strong>ans. This is the same tuition fees for the existing curriculum.<br />

6. Semester Load <strong>and</strong> Minimum Graduation Load<br />

The normal semester load is between 15 <strong>and</strong> 24 credit units. The minimum graduation load is 60 credit units.<br />

53


6.4.2 Programme Structure<br />

A.) Computer Science Option<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSK 1101 Communication Skills 4 45 30 -- 60<br />

DCS 1103 Gender <strong>and</strong> ICT 3 45 -- -- 45<br />

DCS 1107 Fundamentals <strong>of</strong> Mathematics 3 30 -- 30 5<br />

DCS 1108 Computer Assembly, Repair <strong>and</strong> Maintenance I 3 30 30 -- 45<br />

Semester 2<br />

CSC 1204 Research Methodology 3 30 -- 30 45<br />

DCS 1205 Programming Fundamentals 3 45 -- -- 45<br />

DCS 1206 Computer Assembly, Repair <strong>and</strong> Maintenance II 3 30 30 -- 45<br />

DCS 1207 Fundamentals <strong>of</strong> Web site Design 3 30 30 -- 45<br />

DCS 1208 Fundamentals <strong>of</strong> Database Design 3 30 30 -- 45<br />

Year 1. Recess Term<br />

CSC 1301 Practical Skills Development 4 -- 120 -- 60<br />

CSC 1303 Cisco Certified Network Associate (Audited) 5 150 100 -- 200<br />

Semester 3<br />

CSC 1104 Computer Organization & Architecture 4 60 -- -- 60<br />

CSC 1105 Numerical Methods 3 45 -- -- 45<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

DCS 2103 Ethics in an IT Environment 3 45 -- -- 45<br />

Electives: (1 elective course)<br />

BIT 1102 Communication Technology & The Internet 3 45 -- -- 45<br />

BIT 1104 Information Technology I 3 45 -- -- 45<br />

Semester 4<br />

CSC 1206 Computational Mathematics 4 45 -- 30 60<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

CSC 1208 Individual Project I 4 15 90 -- 60<br />

CSC 1209 Logic Programming 3 30 30 -- 45<br />

Electives: (1 elective course)<br />

BIT 1204 Information Management 4 45 30 -- 60<br />

BIS 1200 Information Systems in Business 3 45 -- -- 45<br />

BSE 1205 Introduction to Internet Programming 4 45 30 -- 60<br />

54


B.) Information Technology Option<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSK 1101 Communication Skills 4 45 30 -- 60<br />

DCS 1103 Gender <strong>and</strong> ICT 3 45 -- -- 45<br />

DCS 1107 Fundamentals <strong>of</strong> Mathematics 3 30 -- 30 5<br />

DCS 1108 Computer Assembly, Repair <strong>and</strong> Maintenance I 3 30 30 -- 45<br />

Semester 2<br />

CSC 1204 Research Methodology 3 30 -- 30 45<br />

DCS 1205 Programming Fundamentals 3 45 -- -- 45<br />

DCS 1206 Computer Assembly, Repair <strong>and</strong> Maintenance II 3 30 30 -- 45<br />

DCS 1207 Fundamentals <strong>of</strong> Web site Design 3 30 30 -- 45<br />

DCS 1208 Fundamentals <strong>of</strong> Database Design 3 30 30 -- 45<br />

Year 1: Recess Term<br />

CSC 1301 Practical Skills Development 4 -- 120 -- 60<br />

CSC 1302 CCNA Sem. I & II (Audited) 5 150 100 -- 200<br />

Semester 3<br />

BIT 1102 Communication Technology & The Internet 4 30 60 -- 60<br />

BIT 1104 Information Technology I 4 45 30 -- 60<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

DCS 2103 Ethics in an IT Environment 3 45 -- -- 45<br />

Electives: (1 elective course)<br />

CSC 1104 Computer Organization & Architecture 4 60 -- -- 60<br />

CSC 1105 Numerical Methods 3 45 -- -- 45<br />

Semester 4<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

BIT 1204 Information Management 4 45 30 -- 60<br />

BIS 1200 Information Systems in Business 3 45 -- -- 45<br />

BSE 1205 Introduction to Internet Programming 4 45 30 -- 60<br />

Electives: (1 elective course)<br />

CSC 1206 Computational Mathematics 4 45 -- 30 60<br />

CSC 1208 Individual Project I 4 15 90 -- 60<br />

CSC 1209 Logic Programming 3 30 30 -- 45<br />

6.4.3 Course Unit Description<br />

CSC 1100: Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; Equip students with skills <strong>of</strong> using common <strong>of</strong>fice<br />

applications; Expose students to different operating systems; Equip students with skills <strong>of</strong> how to use the Internet;<br />

<strong>and</strong> equip students with knowledge about common text editors in different operating systems. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Describe the different parts <strong>of</strong> a computer; describe the historical evolution<br />

55


<strong>of</strong> computers; competently use the common <strong>of</strong>fice applications in at least two operating systems <strong>and</strong> competently<br />

use common text editor in at least two operating systems.<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

CSK 1101 Communication Skills (4 CU)<br />

Course Description: This course provides students with skills <strong>of</strong> effective communication. These include verbal,<br />

written, <strong>and</strong> gesture. The course aims at facilitating students appropriately <strong>and</strong> clearly communicate with others. The<br />

aims <strong>of</strong> the course unit are to: Improve the communication competencies <strong>of</strong> the student; Improve problem solving<br />

strategies <strong>of</strong> students; improve the art <strong>of</strong> critical thinking within the student; improve the student’s ability to collect<br />

<strong>and</strong> synthesize information; provide students with knowledge to utilize the library <strong>and</strong> other educational resources.<br />

Indicative Content:<br />

• Writing Skills: Thinking critically/selectively before the writing process; selecting the relevant details;<br />

organizing the relevant details logically; writing the reports essays, letters <strong>and</strong> taking notes in appropriate<br />

register; avoiding ambiguities, fallacies, irrationalities; providing supportive evidence; editing documents,<br />

pro<strong>of</strong> reading; writing <strong>and</strong> exp<strong>and</strong>ing information; Quoting <strong>and</strong> citing references; writing a curriculum<br />

vitae.<br />

• Reading Skills: The use <strong>of</strong> skimming; scanning inference <strong>and</strong> prediction in reading; Intensive <strong>and</strong> critical<br />

reading; Acquisition <strong>of</strong> specific reading skills; Interpretation <strong>of</strong> non linear texts; Locating information <strong>and</strong><br />

comprehension.<br />

• Speaking <strong>and</strong> Listening Skills to Enhance Effective Public Relations: The art <strong>of</strong> persuasion in effective<br />

speaking; Conducting interviews; Conducting meetings; Participating in group discussions <strong>and</strong> tutorials;<br />

Non verbal communication clues; Presentation seminars, seeking clarification etc.; Expression <strong>of</strong><br />

politeness; Public speaking; Proper listening skills.<br />

• Examination Skills; Preparing for examinations: How much one gets from group discussions; Proper<br />

revision; Underst<strong>and</strong>ing examination rubric; Budgeting time during examination process; Writing<br />

examinations <strong>and</strong> following instructions<br />

Reference Books:<br />

i. B. Bough, 101 ways to improve your communication skills instantly, 4th edition, 2005<br />

ii. P. Klavs, The hard Truth About s<strong>of</strong>t skills: Work Place Lessons Smart People wish they had learned<br />

sooner, 2008.<br />

DCS 1103: Gender <strong>and</strong> ICT (3 CU)<br />

Course Description: This course tackles the concepts <strong>of</strong> gender <strong>and</strong> how it affects / is affected by the Information<br />

<strong>and</strong> Communication Technologies. The course covers organizational, individual <strong>and</strong> technological aspects <strong>of</strong> the<br />

relationship between gender <strong>and</strong> ICT. By the end <strong>of</strong> the course, students should be able to underst<strong>and</strong> the social,<br />

organizational <strong>and</strong> technological underpinnings <strong>of</strong> gender <strong>and</strong> how they affect/ are affected in the ICT environment.<br />

Indicative Content: Introduction to Gender <strong>and</strong> ICT; Gender <strong>and</strong> Technology; Use <strong>of</strong> ICTs in addressing<br />

addressing gender equality; Gender <strong>and</strong> ICTs: mapping the change; ICTs as tools to challenge gender inequality;<br />

ICTs as tools to promote empowerment; Guidelines to gender sensitive policy making<br />

Reference Books:<br />

i. G. Lupton, P. M. Short <strong>and</strong> R. Whip, Society <strong>and</strong> Gender: An Introduction to Sociology, Macmillan, 1992.<br />

ii. E. Rathgehen <strong>and</strong> E. O. Adena, Gender <strong>and</strong> the Information Revolution in Africa, 2000.<br />

56


DCS 1107 Fundamentals <strong>of</strong> Mathematics (3 CU)<br />

Course Description: This course introduces basic mathematics to the students. It lays foundation for further<br />

mathematics <strong>and</strong> its applications in the course. it helps the student bridge high school mathematics to the<br />

mathematics required at university level. The aim <strong>of</strong> the course is to give students a strong mathematical foundation<br />

in order to comprehend further mathematical applications <strong>of</strong> computer science in the Programme. On completion <strong>of</strong><br />

this course unit, the students will be able to: Perform basic <strong>and</strong> intermediate differentiation; Perform basic <strong>and</strong><br />

intermediate integration; Demonstrate adequate knowledge <strong>of</strong> trigonometry; be able to solve simple systems <strong>of</strong><br />

linear equations <strong>and</strong> demonstrate knowledge <strong>of</strong> geometry.<br />

Indicative Content:<br />

• Differentiation: Gradient <strong>of</strong> a curve, chain rule, products <strong>and</strong> quotients, implicit differentiation, products<br />

<strong>and</strong> quotients, rates <strong>of</strong> change.<br />

• Integration: Basic integration, change <strong>of</strong> variables, integration by inspection, integration by parts.<br />

• Trigonometry: Trigonometric curves, compound <strong>and</strong> half angle formulae, derivatives <strong>of</strong> trigonometric<br />

functions:<br />

• Systems <strong>of</strong> linear equations: Solution by elimination, substitution <strong>and</strong> crammer’s rule<br />

• Geometry: Equation <strong>of</strong> lines, planes, intersection <strong>of</strong> lines <strong>and</strong> lines, lines <strong>and</strong> planes <strong>and</strong> planes <strong>and</strong> planes<br />

Reference Books:<br />

i. J. K. Backhouse <strong>and</strong> S. P. T. Houldsworth, Pure Mathematics I, Longmans, Press, 2005.<br />

DCS 1108: Computer Maintenance, Repair <strong>and</strong> Assembly I (3 CU)<br />

Course Description: The course gives students foundation knowledge on maintenance, assembly <strong>and</strong> repair <strong>of</strong><br />

desktop computers <strong>and</strong> laptops. Students learn the art <strong>of</strong> maintaining <strong>of</strong> computers as well as assembling <strong>and</strong><br />

repairing them. The course is largely h<strong>and</strong> on. The aims <strong>of</strong> the course are: To give students skills <strong>of</strong> assembling<br />

computers; replaying specific parts <strong>of</strong> the computers <strong>and</strong> repairing computers. By the end <strong>of</strong> the course, the student<br />

should be able to connect a computer to printers, networks, scanners, etc; Assemble a computer from its parts <strong>and</strong> be<br />

able to identify different components <strong>of</strong> the computer (internal <strong>and</strong> External); be able to identify <strong>and</strong> replace<br />

defective parts <strong>of</strong> a computer<br />

Indicative Content: Computer Assembly<br />

Reference Book:<br />

i. J. Z. Rosenthal <strong>and</strong> K. J. Irwin, PC Repair <strong>and</strong> Maintainance: A Practical Guide, Charles River Media,<br />

2003.<br />

CSC 1204 Research Methodology (3 CU)<br />

Course Description: The purpose <strong>of</strong> this course is to acquaint students with types <strong>of</strong> scientific research relevant for<br />

anyone working in the field <strong>of</strong> computer science. It will enable students to develop capacity to conduct small, simple<br />

research projects while at the university. The aims <strong>of</strong> the course are to provide the student with: Enable students<br />

become competent in underst<strong>and</strong>ing the research process. Provide skills that will enable students undertake<br />

independent research using a variety <strong>of</strong> appropriate methods, using primary <strong>and</strong> secondary data, as well as<br />

qualitative <strong>and</strong> quantitative techniques. Provide students with skills to produce a research proposal <strong>and</strong> highlight<br />

ethical research practices to students.<br />

Indicative Content: Introduction to scientific research; Formulating <strong>and</strong> clarifying the research topic <strong>and</strong> research<br />

problem; Conducting a literature review; Different research approaches; Ethics in research; Sampling; Use <strong>of</strong><br />

secondary data; Collection methods for primary data; Analyzing qualitative data; Analyzing quantitative data <strong>and</strong><br />

writing a research proposal <strong>and</strong> project report.<br />

57


Reference Books:<br />

i. H. Cooper, Synthesizing Research: A Guide for Literature Reviews, Thous<strong>and</strong> Oaks, California: Sage<br />

Publications, 1998.<br />

ii. M. Sounders, P. Lewis & A. Thornhill, Research Methods for Students, 3rd edition, UK, Financial times,<br />

Prentice hall 2003.<br />

DCS 1205: Programming Fundamentals (3 CU)<br />

Course Description: The course gives students the fundamentals <strong>of</strong> programming. Students learn Programme flow,<br />

control as well as selected procedures using pseudo codes. Flow chats are used to conceptualize the flow <strong>and</strong> syntax<br />

<strong>of</strong> the operations. The aim <strong>of</strong> the course is to give students a conceptual view <strong>of</strong> the art <strong>of</strong> programming <strong>and</strong><br />

Programme controls so that they are able to competently implement programming projects in specific languages.<br />

Indicative Content: Programme structure; Variables <strong>and</strong> declarations; Programme controls; Searching <strong>and</strong> sorting;<br />

Functions <strong>and</strong> procedures; Searching <strong>and</strong> sorting<br />

Reference Books:<br />

i. R. E. Neapolitan, K. Naimipour, Foundations <strong>of</strong> Algorithms Using C++ Pseudocode, 2nd edition , Jones<br />

& Bartlett Publishers, 1998.<br />

DCS 1206: Computer Maintenance, Repair <strong>and</strong> Assembly II (3 CU)<br />

Course Description: The course give students advanced knowledge in repair <strong>and</strong> maintenance <strong>of</strong> computers.<br />

Students go beyond assembling into identification <strong>of</strong> faulty parts <strong>and</strong> replacements as well as s<strong>of</strong>tware installation,<br />

upgrades <strong>and</strong> troubleshooting. The aims <strong>of</strong> the course are to give students advanced skills in computer repair <strong>and</strong><br />

trouble shooting. By the end <strong>of</strong> the course, the student should be able to repair, trouble shoot, install <strong>and</strong> upgrade<br />

computer Programmes.<br />

DCS 1207: Fundamentals <strong>of</strong> Website Design (3 CU)<br />

Course Description: This course aims to provide an underst<strong>and</strong>ing <strong>of</strong> the basics <strong>of</strong> the Internet, how it originated,<br />

how it works, <strong>and</strong> how to develop <strong>and</strong> maintain Web sites using HTML editors <strong>and</strong> site management tools such as<br />

FrontPage <strong>and</strong>/or Dream weaver. The primary aim <strong>of</strong> this course is to provide a basic underst<strong>and</strong>ing <strong>of</strong> Internet<br />

related technologies <strong>and</strong> introductory skills in Web applications.<br />

Indicative Content: Introduction to basic Internet Technologies such as DNS, email services, LDAP <strong>and</strong> the HTTP<br />

protocol; Web lay out <strong>and</strong> presentation; Web site development; Dynamic web sites <strong>and</strong> content management;<br />

Trends in web technologies<br />

Reference Books;<br />

i. J. N. Robbins <strong>and</strong> A. Gustafson, Learning Web Design: A Beginner’s Guide to (X) HTML, Style Sheets,<br />

<strong>and</strong> Web Graphics, O’Reilly Media, 2007.<br />

DCS 1208: Fundamentals <strong>of</strong> Database Design (3 CU)<br />

Course Description: This course gives students skills in the design <strong>and</strong> development <strong>of</strong> databases together with<br />

database applications. The course caters for design as well as scripting skills. The aims <strong>of</strong> the course are: To teach<br />

students systematic ways <strong>of</strong> designing database schemas; to teach students skills <strong>of</strong> developing database<br />

applications. By the end <strong>of</strong> the course, students should be able to: Systematically design database schemas given a<br />

data requirements document; Develop good applications Programmes that manipulate data in a database.<br />

Indicative Content: Database requirements collection; database Design; Introduction to SQL, Advanced SQL,<br />

Query-By-Example (QBE); Introduction to Visual Basic; Scripting<br />

Reference Book:<br />

i. T. Connolly <strong>and</strong> C. Begg, Database Systems: A Practical Approach to Design, Implementation <strong>and</strong><br />

Management, 2005.<br />

58


CSC 1301: Practical Skills Development (4 CU)<br />

Course Description: The course aims at imparting practical skills in areas chosen by the faculty. The students are to<br />

be supervised by staff with in the faculty. Areas <strong>of</strong> practical skills development include; Implementation <strong>of</strong> projects;<br />

Network <strong>and</strong> system administration; Hardware maintenance <strong>and</strong> Computer assembly.<br />

This can be done within the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology or any other unit in Makerere<br />

University. Students will write a report at the end <strong>of</strong> the course.<br />

CSC 1303: Cisco Certified Network Associate (Audited) (5 CU)<br />

Course Description: In this course, students will cover the course content <strong>of</strong> the CCNA international curriculum.<br />

CSC 1104: Computer Organization & Architecture (4 CU)<br />

Course Description: This course introduces the logical architecture <strong>and</strong> organization <strong>of</strong> computer systems. It<br />

highlights the lower end operations in a typical computer as well as the way computers manage their resources<br />

during operation. The course opens up a student to be an informed user <strong>of</strong> the computer rather than a passive<br />

recipient <strong>of</strong> the computer services. Teaching will be in terms <strong>of</strong> lectures as well as tutorials. The aims <strong>of</strong> the course<br />

are: To introduce to students the concepts <strong>of</strong> computer organization; to highlight to students the way computers<br />

process <strong>and</strong> store the data; to highlight internal management issues in computer systems. By the end <strong>of</strong> the course,<br />

the student will be able to know the organization, processing <strong>and</strong> storage mechanisms <strong>of</strong> computer systems.<br />

Indicative Content<br />

• Data Representation: Integer Formats, Binary, Octal <strong>and</strong> Hexadecimal Systems, Negative integers <strong>and</strong> 2’s<br />

Complement, Floating Point Formats, BCD Formats, Alphanumeric Codes.<br />

• Basic Digital Circuits: Logic gates, Karnaugh maps, Combinatorial Circuits, Binary Adders, Multiplexers<br />

<strong>and</strong> Demultiplexers, Comparators, Decoders <strong>and</strong> Encoders, Code Converters, ROMS <strong>and</strong> PLA’s,<br />

Sequential Circuits, Flip Flops <strong>and</strong> Latches, R-S flip flops, J-K flip flops, T flip Flops, D flip flops,<br />

Registers, Shift Registers <strong>and</strong> Data Transmission, Sequential Network Design.<br />

• Micro Computer Architecture: CPU, Memory, I/O Devices <strong>and</strong> Interfaces, System Bus, Examples <strong>of</strong> CPU<br />

Structures, The Intel Pentium CPU, The Z-80 or Motorolla, Machine Language Instructions, Instruction<br />

Formats <strong>and</strong> Addressing Modes.<br />

• The Processing Elements: Macroinstruction execution, Internal Bus Transfers, Detailed Internal<br />

Architecture, Microcontrol, Hardwired Control, Micro programmed Control, Reduced Instruction Set<br />

Computers.<br />

• I/O Programming: Programmed I/O, Interrupt I/O, Polling, Priority Interrupt System, Direct Memory<br />

Access, I/O processors.<br />

• Memory Systems <strong>and</strong> Memory Management: Memory Hierarchy, Main Memory, Auxiliary Memory,<br />

Associative Memory,<br />

• Cache Memory, Virtual Memory, Memory Management Hardware<br />

Reference Books:<br />

i. M. M. Mano, Computer Systems Architecture, Prentice Hall, 1993.<br />

ii. A. S. Tanebaum, Structured Computer Organization, Prentice Hall 1984.<br />

iii. G. B. Gibson, Computer Systems Concepts <strong>and</strong> Design, Prentice Hall, 1991.<br />

iv. W. Stallings, Computer Organization <strong>and</strong> Architecture, Prentice Hall 2003.<br />

CSC 1105: Numerical Methods (3 CU)<br />

Course Description: The course is to sharpen the students’ skills in using numerical approaches to solve<br />

mathematical/real life problems. The focus will be on the ability to correctly formulate numerical problems <strong>and</strong><br />

schemes that solve them. Emphasis will be put on the precision <strong>and</strong> robustness <strong>of</strong> the schemes. The course will be<br />

59


taught theoretically. The developed schemes can be implemented <strong>and</strong> run in any programming language. The aims<br />

<strong>of</strong> the course are; to provide a solid basis on the numerical approaches to computational problem solving; To<br />

provide students with problem analysis <strong>and</strong> solving skills to be able to h<strong>and</strong>le typical computational problems in<br />

practice. By the end <strong>of</strong> the course, the student should be able to; Derive schemes for different set ups <strong>of</strong> numerical<br />

problems; Test for convergence <strong>of</strong> different schemes; correctly use the schemes to generate solutions to the<br />

numerical problems to the required precision.<br />

Indicative Content: Numerical solutions to non linear equations; Numerical solutions for systems <strong>of</strong> linear<br />

equations; Fast - Fourier transforms; Numerical differentiation; Numerical integration; Numerical solutions for<br />

differential <strong>and</strong> difference equations.<br />

Reference Books:<br />

i. R. L. Burden <strong>and</strong> J. D. Faires, Numerical Analysis, Wardsworth, 1993.<br />

ii. A. K. Kaw, E. E. Kalu <strong>and</strong> D. Nguyen, Numerical Methods with Applications, 2008.<br />

CSC 1106: Programming Methodology I (3 CU)<br />

Course Description: The course is to create a strong base in the principles <strong>and</strong> practice <strong>of</strong> functional programming.<br />

A high level programming language like C is to be used. Students are to cover both theoretical principles <strong>and</strong> h<strong>and</strong>s<br />

on practical skills. The main concepts to cover include Programme structure, data structures, syntactical <strong>and</strong><br />

semantic correctness, planning <strong>and</strong> segmentation in programming as well as working with files. The aims <strong>of</strong> the<br />

course are to provide the student with: comprehensive knowledge about structured oriented programming;<br />

Knowledge in planning <strong>and</strong> organization <strong>of</strong> programming projects; Knowledge <strong>and</strong> techniques <strong>of</strong> evaluating<br />

syntactic <strong>and</strong> semantic correctness <strong>of</strong> a computer Programme <strong>and</strong> strong practical basis in programming.<br />

Indicative Content: Program structure; Variables <strong>and</strong> Operators; Conditional statements; Looping statements;<br />

Arrays <strong>and</strong> strings; Functions; Advanced data types; Pointers; Dynamic memory allocation <strong>and</strong> dynamic structures;<br />

Working with files <strong>and</strong> GUI.<br />

Reference Books:<br />

i. B. W. Kernighan <strong>and</strong> D. M. Ritchie, C Programmeming Language, 2nd edition, 1989.<br />

ii. S. P. Harbison, C: A Reference Manual, 5th edition, 2004.<br />

DCS 2103: Ethics in an IT Environment (3 CU)<br />

Course Description: The course addresses ethical issues in an IT environment. It explores cases <strong>of</strong> un ethical<br />

conduct possible by IT pr<strong>of</strong>essionals <strong>and</strong> how they can impact on the overall success/failure. The course aims at<br />

instilling ethical conduct in students so that they can be more resourceful in the organizations where they work.<br />

Indicative Content: Introduction to Ethics; Legal aspects <strong>and</strong> Implication <strong>of</strong> un ethical behavior; Business<br />

implications <strong>of</strong> un ethical behavior; Typical Un ethical behaviors in an ICT environment; Mitigation <strong>and</strong> defensive<br />

measures <strong>of</strong> un ethical behavior in ICT environment<br />

Reference Book:<br />

i. J. M. Kizza, Ethical <strong>and</strong> Social Issues in the Information Age, 2nd edition, Springer, 2003.<br />

BIT 1102 Communications Technology & Internet (4 CU)<br />

Course Description: This course is intended to be at the introductory level in a curriculum <strong>and</strong> to provide<br />

foundation skills for subsequent network-related courses, for example, Internet Programming. It provides an<br />

overview <strong>of</strong> Communications Technology <strong>and</strong> Internet. The goal is to help students underst<strong>and</strong> the role <strong>and</strong> meaning<br />

<strong>of</strong> Communications Technology <strong>and</strong> Internet in the contemporary world. The course aims to: Give students main<br />

guidelines for the future study <strong>of</strong> networks-related courses; Develop their knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> core<br />

networking concepts <strong>and</strong> technologies; Internet <strong>and</strong> intranet tools; basics <strong>of</strong> networking protocols; basics <strong>of</strong> network<br />

security; core Internet infrastructure; personal, business, social, legal <strong>and</strong> ethical implications <strong>of</strong> Internet<br />

governance.<br />

60


Indicative Content: Networking Concepts; Internet <strong>and</strong> Intra net Tools; Protocols; Security; Internet Infrastructure<br />

<strong>and</strong> Governance Personal, Business, Social, Legal <strong>and</strong> Ethical Implications<br />

Reference Books:<br />

i. D. E. Comer,The Internet Book, Prentice Hall Inc., Upper Saddle River, 2000.<br />

ii. D. Amor, Internet Future Strategies: How Pervasive <strong>Computing</strong> Services Will Change the World, Prentice<br />

Hall Inc., Upper Saddle River, 2002.<br />

iii. I. Zeid, Mastering the Internet <strong>and</strong> HTML, Prentice Hall Inc., Upper Saddle River, 2000.<br />

iv. P. Gralla, How the Internet Works, QUE Publishing, Indianapolis, 2006.<br />

v. A. E. Grant, J. H. Meadows, Communication Technology Update <strong>and</strong> Fundamentals, Focal Press, 2008.<br />

vi. M. Mirabito, B. Morgenstern, The New Communications Technologies, 5th Edition: Applications, Policy,<br />

<strong>and</strong> Impact, Focal Press, 2004.<br />

vii. M. Mirabito, B. Morgenstern, Communication Technology <strong>and</strong> Social Change: Theory <strong>and</strong> Implications<br />

Lea’s Communication Series, Lawrence Erlbaum, 2006.<br />

BIT 1104: Information Technology I (4 CU)<br />

Course Description: This course is intended to be at the introductory level in a curriculum <strong>and</strong> to provide<br />

foundation skills for subsequent courses. Together with Information Technology II it provides an overview <strong>of</strong> the<br />

discipline <strong>of</strong> IT, <strong>and</strong> begins to instill an IT mindset. The goal is to help students underst<strong>and</strong> the diverse contexts in<br />

which IT is used <strong>and</strong> the challenges inherent in the diffusion <strong>of</strong> innovative technology. The topics covered in this<br />

course include: User Centeredness <strong>and</strong> Advocacy; Information Assurance <strong>and</strong> Security; IT Systems Model;<br />

Management <strong>of</strong> Complexity (Abstraction, Modeling, best Practices, Patterns, St<strong>and</strong>ards, Use <strong>of</strong> Appropriate Tools);<br />

Adaptability; Pr<strong>of</strong>essionalism (Life-long Learning, Pr<strong>of</strong>essional Development, Ethics, Responsibility, Interpersonal<br />

Skills, Data versus Information). The course aims to: Give the students main guidelines for the future study <strong>of</strong> ITrelated<br />

courses; Develop their knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> the components <strong>of</strong> IT systems <strong>and</strong> their<br />

interrelationships;<br />

Indicative Content:<br />

• User Centeredness <strong>and</strong> Advocacy;<br />

• Information Assurance <strong>and</strong> Security;<br />

• IT Systems Model;<br />

• Management <strong>of</strong> Complexity; Abstraction; Modeling; Best Practices; Patterns; St<strong>and</strong>ards; Use <strong>of</strong><br />

Appropriate Tools<br />

• Adaptability<br />

• Pr<strong>of</strong>essionalism; Life-long Learning; Pr<strong>of</strong>essional Development; Ethics; Responsibility; Interpersonal<br />

Skills; Data versus Information<br />

Reference Books:<br />

i. J. A. Senn, Information Technology: Principles, Practices, Opportunities, Pearson Education, 2003.<br />

ii. D. Cyganski, J. A. Orr, Information Technology: Inside <strong>and</strong> Outside, Prentice Hall, 2001.<br />

iii. E. Turban, K. R. Rainer, R. E. Porter, Introduction to Information Technology, Whiley <strong>and</strong> Sons Inc., 2007.<br />

iv. J. Baschab, J. Piot , N.G. Garr, The Executive’s Guide to Information Technology, Whiley <strong>and</strong> Sons Inc.,<br />

2007.<br />

v. E. G. Walters, The Essential Guide to <strong>Computing</strong>: The Story <strong>of</strong> Information Technology, Prentice Hall Inc.,<br />

2000.<br />

vi. L. Snyder, Fluency with Information Technology: Skills, Concepts, <strong>and</strong> Capabilities, 3rd edition, Addison-<br />

Wesley, 2007.<br />

61


vii. B. Williams, <strong>and</strong> S. Sawyer, Using Information Technology, Career, Education, 2009.<br />

CSC 1206: Computational Mathematics (4 CU)<br />

Course Description: The course gives the students a strong mathematical base to be able to tackle other computer<br />

problems. The course brings together mathematical topics which are commonly used in the general area <strong>of</strong> computer<br />

science. It builds a foundation for other courses that need special mathematical backgrounds. The teaching will<br />

largely involve lectures, together with tutorials <strong>and</strong> take home assignments The aims <strong>of</strong> the course are: To provide<br />

students with a mathematical base that is to be used to solve computer science problems; To improve the problem<br />

solving skills <strong>of</strong> students.<br />

Indicative Content:<br />

• Calculus; Sequences <strong>and</strong> limits; Limits <strong>of</strong> functions & continuity Advanced differential calculus<br />

• Statistics; Discrete R<strong>and</strong>om variables <strong>and</strong> distributions; Continuous distributions; Basics <strong>of</strong> Monte Carlo<br />

simulations<br />

• Further topics; Mathematics for image processing; Mathematics for signal processing<br />

Reference Book:<br />

i. B. G. Thomas, R. L. Finney, Calculus <strong>and</strong> Analytic Geometry, 9th edition, Addison Wesley, 1995.<br />

ii. R. E. Walpole, Introduction to Statistics, 3rd edition, Prentice Hall, 1982.<br />

CSC 1207 Programming Methodology II (3 CU)<br />

Course Description: The course is to give an in depth underst<strong>and</strong>ing <strong>of</strong> Object Oriented programming. It is to cater<br />

for Object Oriented Programming practices like inheritance, interfaces, exception h<strong>and</strong>ling, action h<strong>and</strong>ling,<br />

security, s<strong>of</strong>tware reuse <strong>and</strong> robustness. The aim <strong>of</strong> the course is to: Move the students’ programming skills from<br />

basic to advanced; Avail students with skills to h<strong>and</strong>le non functional Programme aspects like robustness <strong>and</strong><br />

security <strong>and</strong> train students to develop complete computer applications.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference Books:<br />

i. J. Lewis <strong>and</strong> W. L<strong>of</strong>tus, Java S<strong>of</strong>tware Solution: Foundations <strong>of</strong> Programme Design, 4th edition, 2008.<br />

ii. K. A. Mughal <strong>and</strong> R. W. Rasmussen, A Programmer’s Guide to JavaTM Certification: A comprehensive<br />

Primer, 3rd edition, 2008.<br />

CSC 1208: Individual Project I (4 CU)<br />

Course Content: This course is to give students an experience <strong>of</strong> developing simple but complete applications.<br />

Focus will be put on programming <strong>and</strong> Programme documentations as well as realization <strong>of</strong> the objectives.<br />

The aims <strong>of</strong> the course are: To practically give students skills <strong>of</strong> integrating different concepts <strong>of</strong> programming into<br />

a single application; To introduce the student to h<strong>and</strong>s on aspects <strong>of</strong> s<strong>of</strong>tware development; To nurture the student’s<br />

ability to independently read different sources <strong>of</strong> literature so as to identify what (s)he can use to develop his/her<br />

application.<br />

CSC 1209 Logic Programming (3 CU)<br />

Course Description: This course introduces a paradigm where computation arises from pro<strong>of</strong> search in logic<br />

according to a fixed, predictable strategy. It thereby unifies logical specification <strong>and</strong> implementation in a way that is<br />

quite different from functional or imperative programming. This course provides a thorough, modern introduction to<br />

logic programming. It introduces the basic concepts <strong>and</strong> techniques <strong>of</strong> logic programming followed by successive<br />

refinement towards more efficient implementations or extensions to richer logical concepts. It covers a variety <strong>of</strong><br />

62


logics <strong>and</strong> operational interpretations. The aim <strong>of</strong> the course is to provide a basic introduction to the logic<br />

Programming language <strong>and</strong> Prolog. It aims at introducing a number <strong>of</strong> logical systems <strong>of</strong> importance in computer<br />

science.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference books:<br />

i. M. R. Huth <strong>and</strong> M. D. Ryan, Logic in Computer Science, Modeling <strong>and</strong> Reasoning about Systems,<br />

Cambridge University Press, 2000.<br />

ii. SWI Prolog Home Page, http://www.swi-prolog.org<br />

BIT 1204 Information Management (4 CU)<br />

Course Description: This course is important to the management, productivity <strong>and</strong> differentiation <strong>of</strong> an<br />

organization. Information is derived from data. This means that data must be efficiently collected, organized,<br />

retrieved <strong>and</strong> managed to make it meaningful to the organization. Thus, the development, deployment, management<br />

<strong>and</strong> integration <strong>of</strong> data <strong>and</strong> information systems to support the organization are a vital role <strong>of</strong> the IT pr<strong>of</strong>essional.<br />

Consequently, the knowledge area <strong>of</strong> Information Management should include the collection, organization,<br />

modeling, transformation, presentation, safety <strong>and</strong> security <strong>of</strong> the data <strong>and</strong> information. This course is aimed at<br />

giving students the skills needed to efficiently collect, organize, model, transform, present, <strong>and</strong> secure data <strong>and</strong><br />

information. Students will learn how to integrate information with Information Systems to make it meaningful to the<br />

Organization.<br />

Indicative Content: Concepts <strong>and</strong> fundamentals <strong>of</strong> Information management; Information system: purpose, use <strong>and</strong><br />

value; Properties <strong>of</strong> data (quality, accuracy, timeliness); Database systems; Analysis <strong>of</strong> data, forms & sources; Data<br />

collection <strong>and</strong> retention; Information backup <strong>and</strong> recovery; Database Query Languages; SQL data manipulation,<br />

data definition <strong>and</strong> performance tuning/optimization; XQuery <strong>and</strong> Xpath; Reports; Query by example <strong>and</strong> by<br />

optimization; Data Organization Architecture; Data models, Hierarchical, network <strong>and</strong> relational models; Object <strong>and</strong><br />

Object-relational databases; Logical, XML/XMI databases; Semantic <strong>and</strong> dimensional model; Star schema;<br />

Normalization <strong>and</strong> Data Integrity; Data modeling; Conceptual, logical <strong>and</strong> physical models; Re engineering <strong>of</strong><br />

Databases; St<strong>and</strong>ardized modeling in IDEF1, UML; CASE tools <strong>and</strong> data integration; Data Integration (data<br />

warehouses <strong>and</strong> data marts); Managing the Database Environment; Data <strong>and</strong> Database administration.; Distributed<br />

databases <strong>and</strong> patterns <strong>of</strong> distribution; Client server databases; N-tier architectures; Special-purpose databases (text,<br />

multimedia Temporal, spatial, mobile, scientific/genomic); Decision support; Knowledge management <strong>and</strong><br />

Information retrieval (digital libraries)<br />

Reference Books:<br />

i. T. Connolly, C. Begg, Database Systems: A Practical Approach to Design, Implementation <strong>and</strong><br />

Management. USA: Pearson Education Limited, 2002.<br />

ii. E. Turban., E. McLean, <strong>and</strong> J. Wetherbe, Information Technology for management: making connections<br />

for strategic advantage. John Wiley & Sons, Inc. 1998.<br />

BIS 1200 Information Systems in Business (3 CU)<br />

Course Description: The course covers the integration <strong>of</strong> Information <strong>and</strong> Communication Technologies into<br />

organizations <strong>and</strong> their working practices, from design <strong>and</strong> implementation to strategic effects. Drawing on<br />

Information Systems (IS) <strong>and</strong> Management literature, the course <strong>of</strong>fers a chance for students to examine case<br />

Studies <strong>of</strong> IS successes <strong>and</strong> failures <strong>and</strong> to explore real-world IS management issues. The course aims to provide<br />

students with knowledge for underst<strong>and</strong>ing the integration <strong>of</strong> business <strong>and</strong> technology resources to facilitate<br />

effective <strong>and</strong> efficient realization <strong>of</strong> an organizations mission <strong>and</strong> objectives.<br />

63


Upon successful completion <strong>of</strong> this course, the student should be able to: Appreciate the role <strong>of</strong> information<br />

technology <strong>and</strong> information systems function in modern organizations. Underst<strong>and</strong> the factors influencing<br />

information systems engineering. Gain an underst<strong>and</strong>ing <strong>of</strong> how to manage <strong>and</strong> grow information systems in<br />

organizations.<br />

Indicative Content:<br />

An information systems model: An Information System uses the resources <strong>of</strong> people, hardware, s<strong>of</strong>tware, data, <strong>and</strong><br />

networks to perform input, processing, output, storage <strong>and</strong> control activities that covert data resources into<br />

information products; Role <strong>of</strong> Information Systems in an organization; The shift from data processing Systems via<br />

information Systems to knowledge- Based Systems; How information <strong>and</strong> knowledge add value to an organization;<br />

Information Systems Trends; The Information Technology component <strong>of</strong> Information Systems; Information Systems<br />

Engineering; Strategic planning: Organizational strategies <strong>and</strong> objectives; Human resource development: budgeting,<br />

costing, charging, hire versus buy decisions; Hardware <strong>and</strong> s<strong>of</strong>tware procurement: request for proposal, evaluation,<br />

selection, contracting <strong>and</strong> maintenance; Security in computing: continuity<br />

<strong>of</strong> processes, controls <strong>and</strong> planning for st<strong>and</strong>by; Computer audit; Project management: approaches, tools, site<br />

planning <strong>and</strong> installation.<br />

Reference Books:<br />

i. G. Curtis, Business Information Systems: Analysis, Design <strong>and</strong> Practice, 1995.<br />

ii. P. Bocij, D. Chaffey, A. Greasley, S. Hickie, Business Information Systems: Technology, Development<br />

<strong>and</strong> Management for the E-Business, Prentice Hall, 2005.<br />

BSE 1205 Introduction to Internet Programming (4 CU)<br />

Course Description: This course covers ASP.NET development fundamentals, providing h<strong>and</strong>s-on experience<br />

through the building <strong>of</strong> a fully functional time <strong>and</strong> expense tracking application like TimeEx. Starting with an<br />

overview <strong>of</strong> server-side technologies, it then goes into the C# (C Sharp) programming language commonly used for<br />

ASP.NET <strong>and</strong> database development utilizing MSDE (Micros<strong>of</strong>t SQL Server Desktop Engine). Particular attention<br />

is given to techniques for integrating ASP.NET pages with the advanced client-side (DHTML) technologies covered<br />

first. The aims <strong>of</strong> this course are to: - To introduce students to the .Net development environment; To enable<br />

students apply core ASP.NET technologies to web application development; To teach students to write server-side<br />

ASP.NET code; To teach students to create web applications that use ADO.NET to interact with SQL Server; To<br />

enable the students master the integration <strong>of</strong> ASP.NET pages into DHTML driven pages.<br />

Indicative Content: ASP.NET development fundamentals; Server-side technologies; Interaction <strong>of</strong> web application<br />

with SQL Database; Integration <strong>of</strong> ASP.NET pages into advanced client-side technologies<br />

Reference Books:<br />

i. Z. Ruvalcaba, Build Your Own ASP.NET Web site Using C# & VB.NET, 1st edition, 2005.<br />

ii. P. J. Deite <strong>and</strong> H. M. Deitel, Internet &World WideWeb: How to Programme, Prentice Hall; 4th edition,<br />

2007.<br />

iii. S. Walther, ASP.NET Unleashed: unleashed, Sams Publishing, 2003.<br />

iv. K. Kalata, Internet Programming with VBScript <strong>and</strong> JavaScript (Web warrior series), Course Technology,<br />

1st edition, 2000.<br />

64


7.0 DEPARTMENT OF INFORMATION TECHNOLOGY<br />

7.1 Introduction<br />

The Department <strong>of</strong> Information Technology strives for the best through its mission:<br />

1. Teach academic Programmes that relate to the dynamic <strong>and</strong> changing needs <strong>of</strong> graduates in an information<br />

society<br />

2. Advancement <strong>of</strong> IT knowledge <strong>and</strong> application through state <strong>of</strong> the art research<br />

3. Support IT-based advancements in both the industry <strong>and</strong> society<br />

Established in 2005 as one <strong>of</strong> the four departments within the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology,<br />

the department <strong>of</strong> Information Technology is helping Makerere University to gain national height in the area <strong>of</strong><br />

Information Technology. This department has been in existence for four (4) years now. In the four years so far, we<br />

have tried to work towards exceeding all our expectations <strong>and</strong> accomplishments. Particularly, the students’<br />

achievements, the rising reputation <strong>of</strong> our department <strong>and</strong> the faculty at large as well as the thrilling partnerships we<br />

have made with the international academia, government <strong>and</strong> industry friends makes our pride.<br />

In the years that follow, <strong>and</strong> in relation to the Makerere University strategic plan (2008/09 – 2018/19), our<br />

department seeks to shift to the next level by focusing on our ability to make IT a fundamental part <strong>of</strong> the learning<br />

enterprise on the Makerere University campus. More so, we are collaborating with various academic <strong>and</strong> business<br />

world partners to effectively incorporate IT into diverse disciplines. To this end, we need your involvement in order<br />

to achieve our aims. As a department, our goal is to continuously build on our past four years’ achievements, at the<br />

same time continuously exp<strong>and</strong> our high-quality Programme that not only includes outst<strong>and</strong>ing department staff, a<br />

highly-developed curriculum, exceptional facilities, growing <strong>and</strong> recognized research, but also challenging students<br />

at different levels.<br />

The department <strong>of</strong>fers three degree Programmes <strong>and</strong> two diploma (ordinary <strong>and</strong> graduate) Programmes,<br />

respectively. These are: Bachelor <strong>of</strong> Information Technology (BIT), Masters in Information Technology (MIT) <strong>and</strong><br />

a PhD in Information Technology (PhD. IT), Diploma in Information Technology (DIT) <strong>and</strong> a Post Graduate<br />

Diploma in Information Technology (PGDIT). The department undertakes research in e-learning, multimedia<br />

technologies, <strong>and</strong> ICT for development in striving to exp<strong>and</strong> our national reputation. The IT department represents<br />

the joint efforts <strong>of</strong> the Makerere University, the private industry <strong>and</strong> Ug<strong>and</strong>a as a nation to address the growing<br />

worldwide needs for knowledgeable pr<strong>of</strong>essionals in the area <strong>of</strong> Information Technology.<br />

7.2 Bachelor <strong>of</strong> Information Technology (BIT) Degree Programme<br />

7.2.1 Overview<br />

The Bachelor <strong>of</strong> Information Technology (BIT) is a three year full-time degree programme open to all prospective<br />

students. This programme was first launched in August 2004. The programme <strong>of</strong>fers flexibility while providing the<br />

level <strong>of</strong> knowledge <strong>and</strong> skills required by industry <strong>and</strong> pr<strong>of</strong>essional bodies. The current curriculum was designed<br />

with emphasis on having the student acquire the business, media, computing <strong>and</strong> communication skills necessary for<br />

employment <strong>and</strong> career opportunities in today’s ICT industries <strong>and</strong> business organizations. Students on the BIT<br />

Degree Programme develop conceptual <strong>and</strong> practical IT skills in integrating financial, organisational, marketing <strong>and</strong><br />

65<br />

Dr. Josephine Nabukenya<br />

Head <strong>of</strong> Department


production/service function with an overall business strategy. The majority will take up Managerial positions in<br />

Information <strong>and</strong> Communication Technology (computing <strong>and</strong> ICT-based) sectors, <strong>and</strong> other positions such as Web-<br />

Designers, Web- Programmers, Information Technology Planners, Systems Analysts, IT Project Managers, IT<br />

Company Secretaries, Information Systems Specialists <strong>and</strong> IT Lecturers. Others will take up further studies in<br />

Information Technology like a Master <strong>of</strong> Information Technology (MIT).<br />

The Objectives <strong>of</strong> the Programme are to:<br />

a) Develop pr<strong>of</strong>essionals with theoretical <strong>and</strong> practical skills in the Information Technology (IT) sector.<br />

b) Address the increasing dem<strong>and</strong> for ICT training <strong>and</strong> pr<strong>of</strong>essionals.<br />

c) Strengthen capacity <strong>and</strong> institutional building in IT discipline in tertiary institutions, private <strong>and</strong> public<br />

sectors.<br />

The Bachelor <strong>of</strong> Information Technology Degree Programme is <strong>of</strong>fered to give an opportunity to prospective<br />

students to undertake training in Information Technology (IT). This programme also provides an avenue to those<br />

already engaged in the IT-sector without formal degree qualifications in IT to join the BIT Degree Programme<br />

through either direct or diploma schemes. Since Information Technology is a new discipline, this programme<br />

provides a pool <strong>of</strong> IT Pr<strong>of</strong>essionals that are much needed in today’s IT industry.<br />

1. Target Group<br />

The revised programme targets two categories <strong>of</strong> people, namely Direct Entry <strong>and</strong> Diploma Holders in relevant<br />

programmes.<br />

2. Minimum Admission Requirements<br />

a) Direct Entry<br />

A c<strong>and</strong>idate must satisfy the general admission requirements for Makerere University. In addition, the following<br />

regulations shall hold:<br />

i. The Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE) or its equivalent with credits in English <strong>and</strong><br />

Mathematics.<br />

ii. At least two principal passes at the same sitting in Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE)<br />

in any two subjects (Mathematics, Physics, Economics, Chemistry, Biology, Geography, Literature,<br />

Entrepreneurship, Technical Drawing <strong>and</strong> Fine Art).<br />

iii. For purposes <strong>of</strong> computing weighted points, the A- level subjects shall be grouped <strong>and</strong> weighted as follows:<br />

b) Diploma Holders<br />

Group Weight Subjects<br />

Essential 3 Any two best done subjects among: Mathematics, Physics,<br />

Economics, Chemistry, Biology, Geography, Literature,<br />

Entrepreneurship, Technical Drawing <strong>and</strong> Fine Art<br />

Relevant 2 Any other best done subject <strong>of</strong> all A’ level subjects<br />

Desirable 1 General Paper, Sub-Mathematics<br />

Others 0.5 All others.<br />

For a c<strong>and</strong>idate to be admitted via the diploma scheme, he/she must:<br />

i. At least any second Class (lower division) diploma from a recognized institution.<br />

ii. C<strong>and</strong>idates who hold a Diploma in Computer Science <strong>and</strong> Information Technology from Makerere University<br />

with at least second class (lower division) shall be admitted to second year <strong>of</strong> Bachelor <strong>of</strong> Information<br />

Technology. C<strong>and</strong>idates who hold a pass class <strong>of</strong> the same diploma shall be admitted to first year <strong>of</strong><br />

Bachelor <strong>of</strong> Information Technology.<br />

3. Nature <strong>of</strong> the Programme<br />

66


The day programme is both government <strong>and</strong> privately sponsored students. The evening Programme has privately<br />

sponsored students only.<br />

4. Duration<br />

The duration for the programme shall be three (3) academic years comprising <strong>of</strong> six (6) semesters <strong>and</strong> two recess<br />

terms. Each semester lasts seventeen (17) weeks to <strong>of</strong> which are for examinations.<br />

5. Tuition Fees<br />

Tuition fees for privately sponsored students shall be 2,520,000 Ug<strong>and</strong>a Shillings per year for Ug<strong>and</strong>ans <strong>and</strong><br />

3,780,000 Ug<strong>and</strong>a Shillings per year for non Ug<strong>and</strong>ans. This is the same tuition fees for the existing curriculum.<br />

6. Semester Load <strong>and</strong> Minimum Graduation Load<br />

The normal semester load is between 15 <strong>and</strong> 21 credit units. The minimum graduation load is 127 credit units<br />

<strong>of</strong> which 111 credit units are from core course units. The remaining 16 credit units are to be got from elective<br />

course units in semesters where elective courses are <strong>of</strong>fered.<br />

7.2.2 Programme Structure<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CU LH PH TH CH<br />

Semester 1<br />

CSK 1101 Communication Skills 4 45 30 -- 60<br />

CSC 1100 Computer Literacy 4 30 60 -- 60<br />

CSC 1106 Programming Methodology I 3 30 30 -- 45<br />

BIT 1102 Communications Technology & the Internet 3 45 -- -- 45<br />

BIT 1104 Information Technology I<br />

Semester 2<br />

CSC 1204 Research Methodology 3 30 -- 30 45<br />

CSC 1207 Programming Methodology II 4 30 60 -- 45<br />

BIT 1204 Information Management 4 45 30 -- 60<br />

BIS 1200 Information Systems in Business 3 45 -- -- 45<br />

BSE 1205 Introduction to Internet Programming 4 45 30 -- 60<br />

Year I Recess Term<br />

CSC 1301 Practical Skills Development 4 -- 120 -- 60<br />

CSC 1303 Cisco Certified Network Associate (Audited) 5 150 100 -- 200<br />

Semester 3<br />

CSC 2111 Database Management Systems I 3 30 30 -- 45<br />

BIT 2107 Web Systems <strong>and</strong> Technologies I 3 30 30 -- 45<br />

BIT 2108 Information Technology II 3 45 -- -- 45<br />

BIT 2109 Integrative Programming <strong>and</strong> Technologies 4 45 30 30 60<br />

Electives:- (1 elective course)<br />

BIT 2103 Electronic Commerce 3 45 -- -- 45<br />

BIT 2105 Electronic Media Systems <strong>and</strong> Multimedia 3 45 -- -- 45<br />

Semester 4<br />

BSE 2203 Computer Networks & Data Communication 4 45 30 -- 60<br />

CSC 2200 Operating Systems 4 45 -- 30 60<br />

BIT 2205 System Administration 3 30 -- 30 45<br />

CSC 2202 Systems Analysis & Design 4 45 -- 30 60<br />

Electives:- (1 elective course)<br />

67


BIT 2206 Pr<strong>of</strong>essional Law <strong>and</strong> Ethics 3 45 -- -- 45<br />

BIT 2201 Marketing in the IT Sector 3 45 -- -- 45<br />

Year 2 Recess Term<br />

BIT 2301 Industrial Training 4 -- 120 -- 60<br />

Semester 5<br />

BIT 3104 Business Communication <strong>and</strong> Report Writing 3 45 -- -- 45<br />

BIT 3105 Web Systems & Technologies II 3 30 30 -- 45<br />

BIT 3102 Entrepreneurship <strong>and</strong> Business 3 30 30 -- 45<br />

BIS 3102 Human Computer Interaction 3 30 -- 3- 45<br />

Electives: (1 elective course)<br />

BIT 3106 S<strong>of</strong>tware Engineering for Internet Applications 4 45 30 -- 60<br />

CSC 3103 User Interface Design 4 45 30 -- 60<br />

Semester 6<br />

BIT 3206 Information Assurance & Security 4 45 -- 30 60<br />

BIT 3207 System Integration & Architecture 4 45 -- 30 60<br />

BIT 3208 BIT Group Project 4 -- 120 -- 60<br />

Electives: (1 elective course)<br />

BIT 3203 Mobile Networks <strong>and</strong> <strong>Computing</strong> 4 45 -- 30 60<br />

BIT 3200 Business Intelligence & Data Warehousing 4 5 -- 30 60<br />

7.2.3 Course Unit Description<br />

CSC 1100 Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; Equip students with skills <strong>of</strong> using common <strong>of</strong>fice<br />

applications; Expose students to different operating systems; Equip students with skills <strong>of</strong> how to use the Internet;<br />

<strong>and</strong> equip students with knowledge about common text editors in different operating systems. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Describe the different parts <strong>of</strong> a computer; describe the historical evolution<br />

<strong>of</strong> computers; competently use the common <strong>of</strong>fice applications in at least two operating systems <strong>and</strong> competently<br />

use common text editor in at least two operating systems.<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

CSK 1101 Communication Skills (4 CU)<br />

Course Description: This course provides students with skills <strong>of</strong> effective communication. These include verbal,<br />

written, <strong>and</strong> gesture. The course aims at facilitating students appropriately <strong>and</strong> clearly communicate with others. The<br />

aims <strong>of</strong> the course unit are to: Improve the communication competencies <strong>of</strong> the student; Improve problem solving<br />

strategies <strong>of</strong> students; improve the art <strong>of</strong> critical thinking within the student; improve the student’s ability to collect<br />

<strong>and</strong> synthesize information; provide students with knowledge to utilize the library <strong>and</strong> other educational resources.<br />

Indicative Content:<br />

• Writing Skills: Thinking critically/selectively before the writing process; selecting the relevant details;<br />

organizing the relevant details logically; writing the reports essays, letters <strong>and</strong> taking notes in appropriate<br />

68


egister; avoiding ambiguities, fallacies, irrationalities; providing supportive evidence; editing documents,<br />

pro<strong>of</strong> reading; writing <strong>and</strong> exp<strong>and</strong>ing information; Quoting <strong>and</strong> citing references; writing a curriculum<br />

vitae.<br />

• Reading Skills: The use <strong>of</strong> skimming; scanning inference <strong>and</strong> prediction in reading; Intensive <strong>and</strong> critical<br />

reading; Acquisition <strong>of</strong> specific reading skills; Interpretation <strong>of</strong> non linear texts; Locating information <strong>and</strong><br />

comprehension.<br />

• Speaking <strong>and</strong> Listening Skills to Enhance Effective Public Relations: The art <strong>of</strong> persuasion in effective<br />

speaking; Conducting interviews; Conducting meetings; Participating in group discussions <strong>and</strong> tutorials;<br />

Non verbal communication clues; Presentation seminars, seeking clarification etc.; Expression <strong>of</strong><br />

politeness; Public speaking; Proper listening skills.<br />

• Examination Skills; Preparing for examinations: How much one gets from group discussions; Proper<br />

revision; Underst<strong>and</strong>ing examination rubric; Budgeting time during examination process; Writing<br />

examinations <strong>and</strong> following instructions<br />

Reference Books<br />

i. B. Bough, 101 ways to improve your communication skills instantly, 4th Edition, 2005.<br />

ii. P. Klavs, The hard Truth About s<strong>of</strong>t skills: Work Place Lessons Smart People wish they had learned sooner,<br />

2008.<br />

BIT 1102 Communications Technology & Internet (3 CU)<br />

Course Description: This course is intended to be at the introductory level in a curriculum <strong>and</strong> to provide<br />

foundation skills for subsequent network-related courses, for example, Internet Programming. It provides an<br />

overview <strong>of</strong> Communications Technology <strong>and</strong> Internet. The goal is to help students underst<strong>and</strong> the role <strong>and</strong> meaning<br />

<strong>of</strong> Communications Technology <strong>and</strong> Internet in the contemporary world. The course aims to: Give students main<br />

guidelines for the future study <strong>of</strong> networks-related courses; Develop their knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> core<br />

networking concepts <strong>and</strong> technologies; Internet <strong>and</strong> intranet tools; basics <strong>of</strong> networking protocols; basics <strong>of</strong> network<br />

security; core Internet infrastructure; personal, business, social, legal <strong>and</strong> ethical implications <strong>of</strong> Internet governance<br />

Indicative Content: Networking Concepts; Internet <strong>and</strong> Intranet Tools; Protocols; Security; Internet; Infrastructure<br />

<strong>and</strong> Governance – Personal, Business, Social, Legal <strong>and</strong> Ethical; Implications<br />

Reference Books:<br />

i. D. E. Comer,The Internet Book, Prentice Hall Inc., Upper Saddle River, 2000.<br />

ii. D. Amor, Internet Future Strategies: How Pervasive <strong>Computing</strong> Services Will Change the World, Prentice<br />

Hall Inc., Upper Saddle River, 2002.<br />

iii. I. Zeid, Mastering the Internet <strong>and</strong> HTML, Prentice Hall Inc., Upper Saddle River, 2000.<br />

iv. Internet Getting Started, Editions ENI, Nantes, 2001.<br />

v. A. E. Grant, J. H. Meadows, Communication Technology Update <strong>and</strong> Fundamentals, Focal Press, 2008.<br />

vi. M. Mirabito, B. Morgenstern, The New Communications Technologies: Applications, Policy, <strong>and</strong> Impact,<br />

5th edition, Focal Press, 2004.<br />

vii. M. Mirabito, B. Morgenstern, L. Erlbaum, Communication Technology <strong>and</strong> Social Change: Theory <strong>and</strong><br />

Implications, Lea's Communication Series, 2006.<br />

BIT 1104 Information Technology I (3 CU)<br />

Course Description: This course is intended to be at the introductory level in a curriculum <strong>and</strong> to provide<br />

foundation skills for subsequent courses. Together with Information Technology II it provides an overview <strong>of</strong> the<br />

discipline <strong>of</strong> IT, <strong>and</strong> begins to instil an IT mindset. The goal is to help students underst<strong>and</strong> the diverse contexts in<br />

which IT is used <strong>and</strong> the challenges inherent in the diffusion <strong>of</strong> innovative technology.<br />

69


Indicative Content: User Centeredness <strong>and</strong> Advocacy; Information Assurance <strong>and</strong> Security; IT Systems Model;<br />

Management <strong>of</strong> Complexity (Abstraction, Modelling, best Practices, Patterns, St<strong>and</strong>ards, Use <strong>of</strong> Appropriate Tools);<br />

Adaptability; Pr<strong>of</strong>essionalism (Life-long Learning, Pr<strong>of</strong>essional Development, Ethics, Responsibility, Interpersonal<br />

Skills, Data versus Information).<br />

Reference Books:<br />

i. J. A. Senn, Information Technology: Principles, Practices, Opportunities, Pearson Education, 2003.<br />

ii. D. Cyganski, <strong>and</strong> J. A. Orr, Information Technology: Inside <strong>and</strong> Outside, Prentice Hall, 2001.<br />

iii. E. Turban, K. R. Rainer, <strong>and</strong> R. E. Porter, Introduction to Information Technology, Whiley <strong>and</strong> Sons Inc.,<br />

2007.<br />

iv. J. Baschab, J. Piot N. G Garr, The Executive's Guide to Information Technology, Whiley <strong>and</strong> Sons Inc.,<br />

2007.<br />

v. E. G. Walters, The Essential Guide to <strong>Computing</strong>: The Story <strong>of</strong> Information Technology, Prentice Hall Inc.,<br />

2000.<br />

vi. L. Snyder, Fluency with Information Technology: Skills, Concepts, <strong>and</strong> Capabilities, 3rd edition, Addison-<br />

Wesley, 2007.<br />

vii. B. Williams <strong>and</strong> S. Sawyer, Using Information Technology, Career Education, 2009.<br />

CSC 1106 Programming Methodology I (3 CU)<br />

Course Description: The course is to create a strong base in the principles <strong>and</strong> practice <strong>of</strong> functional programming.<br />

A high level programming language lie C is to be used. The students are to cover both theoretical principles <strong>and</strong><br />

h<strong>and</strong>s on practical skills. The main concepts to cover include Programme structure, data structures, syntactical <strong>and</strong><br />

semantic correctness, planning <strong>and</strong> segmentation in programming as well as working with data files. The aims <strong>of</strong> the<br />

course are to provide the student with: Comprehensive knowledge about structured oriented programming;<br />

Knowledge in planning <strong>and</strong> organization <strong>of</strong> programming projects; Knowledge <strong>and</strong> techniques <strong>of</strong> evaluating<br />

syntactic <strong>and</strong> semantic correctness <strong>of</strong> a computer Programme <strong>and</strong>; Strong practical basis in programming.<br />

Indicative Content: Programme structure; Variables <strong>and</strong> Operators; Conditional statements; Looping statements;<br />

Arrays <strong>and</strong> strings; Functions; Advanced data types; Pointers; Dynamic memory allocation <strong>and</strong> dynamic structures;<br />

Working with files <strong>and</strong> GUI.<br />

Reference Books:<br />

i. B. W. Kernighan <strong>and</strong> D. M. Ritchie, C Programming Language, 2nd edition, 1989.<br />

ii. S. P. Harbison, C: A Reference Manual, 5th edition, 2004.<br />

BIS 1200 Information Systems in Business (3 CU)<br />

Course Description: The course covers the integration <strong>of</strong> Information <strong>and</strong> Communication Technologies into<br />

organizations <strong>and</strong> their working practices, from design <strong>and</strong> implementation to strategic effects. Drawing on<br />

Information Systems (IS) <strong>and</strong> Management literature, the course <strong>of</strong>fers a chance for students to examine case studies<br />

<strong>of</strong> IS successes <strong>and</strong> failures <strong>and</strong> to explore ’real-world’ IS management issues.<br />

The course aims to provide students with knowledge for underst<strong>and</strong>ing the integration <strong>of</strong> business <strong>and</strong> technology<br />

resources to facilitate effective <strong>and</strong> efficient realization <strong>of</strong> an organization’s mission <strong>and</strong> objectives.<br />

Indicative Content: An information systems model: An Information System uses the resources <strong>of</strong> people,<br />

hardware, s<strong>of</strong>tware, data, <strong>and</strong> networks to perform input, processing, output, storage <strong>and</strong> control activities that<br />

covert data resources into information products; Role <strong>of</strong> Information Systems in an organization; the shift from data<br />

processing Systems via information Systems to knowledge-Based Systems; How information <strong>and</strong> knowledge add<br />

value to an organization; Information Systems Trends; the Information Technology component <strong>of</strong> Information<br />

Systems; Information Systems Engineering. Strategic planning: Organizational strategies <strong>and</strong> objectives; Human<br />

resource development: budgeting, costing, charging, hire versus buy decisions; Hardware <strong>and</strong> s<strong>of</strong>tware procurement:<br />

70


equest for proposal, evaluation, selection, contracting <strong>and</strong> maintenance; Security in computing: continuity <strong>of</strong><br />

processes, controls <strong>and</strong> planning for st<strong>and</strong>by; Computer audit; Project management: approaches, tools, site planning<br />

<strong>and</strong> installation.<br />

Reference Books:<br />

i. G. Curtis, Business Information Systems: Analysis, Design <strong>and</strong> Practice, 1995.<br />

ii. P. Bocij, D. Chaffey, A. Greasley, S. Hickie, Business Information Systems: Technology, Development <strong>and</strong><br />

Management for the E-Business, 2005.<br />

BIT 1204 Information Management (4 CU)<br />

Course Description: This course is important to the management, productivity <strong>and</strong> differentiation <strong>of</strong> an<br />

organization. Information is derived from data. This means that data must be efficiently collected, organized,<br />

retrieved <strong>and</strong> managed to make it meaningful to the organization. Thus, the development, deployment, management<br />

<strong>and</strong> integration <strong>of</strong> data <strong>and</strong> information systems to support the organization are a vital role <strong>of</strong> the IT pr<strong>of</strong>essional.<br />

Consequently, the knowledge area <strong>of</strong> Information Management should include the collection, organization,<br />

modelling, transformation, presentation, safety <strong>and</strong> security <strong>of</strong> the data <strong>and</strong> information. This course is aimed at<br />

giving students the skills needed to efficiently collect, organize, model, transform, present, <strong>and</strong> secure data <strong>and</strong><br />

information. Students will learn how to integrate information with Information Systems to make it meaningful to the<br />

Organization.<br />

Indicative Content:<br />

• Concepts <strong>and</strong> fundamentals <strong>of</strong> Information management. Information system: purpose, use <strong>and</strong> value;<br />

Properties <strong>of</strong> data (quality, accuracy, timelines); Database systems; Analysis <strong>of</strong> data, forms & sources;<br />

Data collection <strong>and</strong> retention; Information backup <strong>and</strong> recovery;<br />

• Database Query Languages; SQL data manipulation, data definition <strong>and</strong> performance tuning/optimization<br />

XQuery <strong>and</strong> Xpath; Reports; Query by example <strong>and</strong> by optimization.<br />

• Data Organization Architecture: Data models, Hierarchical, network <strong>and</strong> relational models; Object <strong>and</strong><br />

Object-relational databases; Logical, XML/XMI databases; Semantic <strong>and</strong> dimensional models; Star<br />

schema; Normalization <strong>and</strong> Data Integrity.<br />

• Data modelling: Conceptual, logical <strong>and</strong> physical models; Reengineering <strong>of</strong> Databases; St<strong>and</strong>ardized<br />

modeling in IDEF1, UML; CASE tools <strong>and</strong> data integration; Data Integration (data warehouses <strong>and</strong> data<br />

marts).<br />

• Managing the Database Environment: Data <strong>and</strong> Database administration; Distributed databases <strong>and</strong> patterns<br />

<strong>of</strong> distribution; Client server databases; N-tier architectures.<br />

• Special-purpose databases (text, multimedia Temporal, spatial, mobile, scientific/genomic); Decision<br />

support; Knowledge management <strong>and</strong> information retrieval (digital libraries)<br />

Reference Books:<br />

i. C. T., Begg C. Database Systems: A Practical Approach to Design, Implementation <strong>and</strong> Management.<br />

USA: Pearson Education Limited, 2002.<br />

ii. E. Turban., E. McLean <strong>and</strong> J. Wetherbe, Information Technology for Management: Making Connections<br />

for Strategic Advantage, John Wiley & Sons, Inc. 1998.<br />

CSC 1204 Research Methodology (3 CU)<br />

Course Description: The purpose <strong>of</strong> this course is to acquaint students with types <strong>of</strong> scientific research relevant for<br />

anyone working in the field <strong>of</strong> computer science. It will enable students to develop capacity to conduct small, simple<br />

research projects while at the university. The aims <strong>of</strong> the course are to provide the student with: Enable students<br />

become competent in underst<strong>and</strong>ing the research process. Provide skills that will enable students undertake<br />

independent research using a variety <strong>of</strong> appropriate methods, using primary <strong>and</strong> secondary data, as well as<br />

71


qualitative <strong>and</strong> quantitative techniques. Provide students with skills to produce a research proposal <strong>and</strong> highlight<br />

ethical research practices to students.<br />

Indicative Content: Introduction to scientific research; Formulating <strong>and</strong> clarifying the research topic <strong>and</strong> research<br />

problem; Conducting a literature review; Different research approaches; Ethics in research; Sampling; Use <strong>of</strong><br />

secondary data; Collection methods for primary data; Analyzing qualitative data; Analyzing quantitative data <strong>and</strong><br />

writing a research proposal <strong>and</strong> project report.<br />

Reference Books:<br />

i. H. Cooper, Synthesizing Research: A Guide for Literature Reviews, Thous<strong>and</strong> oaks, California: Sage<br />

Publications, 1998.<br />

ii. M. Sounders, P. Lewis, & A. Thornhill, Research Methods for Students , 3rd edition, UK, Financial times,<br />

Prentice hall, 2003.<br />

BSE 1205 Introduction to Internet Programming (4 CU)<br />

Course Description: This course covers ASP.NET development fundamentals, providing h<strong>and</strong>s-on experience<br />

through the building <strong>of</strong> a fully functional time <strong>and</strong> expense tracking application like TimeEx. Starting with an<br />

overview <strong>of</strong> server-side technologies, it then goes into the C# (C Sharp) programming language commonly used for<br />

ASP.NET <strong>and</strong> database development utilizing MSDE (Micros<strong>of</strong>t SQL Server Desktop Engine). Particular attention<br />

is given to techniques for integrating ASP.NET pages with the advanced client-side (DHTML) technologies covered<br />

first.<br />

Indicative Content: ASP.NET development fundamentals; Server-side technologies; Interaction <strong>of</strong> web application<br />

with SQL Database; Integration <strong>of</strong> ASP.NET pages into advanced client-side technologies<br />

Reference Books:<br />

i. Z. Ruvalcaba, Build Your Own ASP.NET Website Using C# &VB.NET, 1st edition, 2005.<br />

ii. P. J. Deite <strong>and</strong> H. M. Deitel, Internet & World Wide Web: How to Programme, Prentice Hall; 4th edition,<br />

2007.<br />

iii. S. Walther, ASP.NET Unleashed: unleashed, Sams Publishing, 2003.<br />

iv. K. Kalata, Internet Programming with VBScript <strong>and</strong> JavaScript (Web warrior series), Course Technology,<br />

1st edition, 2000.<br />

CSC 1207 Programming Methodology II (3 CU)<br />

Course Description: The course is to give an in depth underst<strong>and</strong>ing <strong>of</strong> Object Oriented programming. It is to cater<br />

for Object Oriented Programming practices like inheritance, interfaces, exception h<strong>and</strong>ling, action h<strong>and</strong>ling,<br />

security, s<strong>of</strong>tware reuse <strong>and</strong> robustness. The aim <strong>of</strong> the course is to: Move the students’ programming skills from<br />

basic to advanced; Avail students with skills to h<strong>and</strong>le non functional Programme aspects like robustness <strong>and</strong><br />

security <strong>and</strong> train students to develop complete computer applications.<br />

Indicative Content: The object oriented paradigm; Classes <strong>and</strong> objects; Inheritance <strong>and</strong> visibility modifiers;<br />

Interfaces <strong>and</strong> abstract classes; Graphical user interface <strong>and</strong> action h<strong>and</strong>lers; Exception h<strong>and</strong>ling; Working with<br />

files; Working with databases; Sessions <strong>and</strong> user management.<br />

Reference Books:<br />

i. J. Lewis <strong>and</strong> W. L<strong>of</strong>tus, Java S<strong>of</strong>tware Solution: Foundations <strong>of</strong> Programme Design 4th edition, 2008.<br />

ii. K. A. Mughal <strong>and</strong> R. W. Rasmussen, A Programmer’s Guide to JavaTM Certification: A Comprehensive<br />

Primer, 3rd edition, 2008.<br />

BIT 2103 Electronic Commerce (3 CU)<br />

72


Course Description: The course aims to provide students with the skills required to design, implement <strong>and</strong> evaluate<br />

robust ecommerce applications. The theory <strong>and</strong> application <strong>of</strong> electronic commerce solutions on the internet to<br />

improve business pr<strong>of</strong>it are presented. The techniques, tools <strong>and</strong> infrastructure required for on-line transactions are<br />

presented. The course includes a major group project, which draws on a wide range <strong>of</strong> skills <strong>of</strong> team members to set<br />

up an integrated electronic business. Issues such as business-to-business transactions are also covered.<br />

Indicative Content: Computerized trading systems, electronic funds transfer, automatic product identification <strong>and</strong><br />

bar code technology, electronic data interchange; the infrastructure <strong>of</strong> electronic commerce; electronic payment<br />

systems; Electronic commerce retailing <strong>and</strong> corporate finance; Intranets <strong>and</strong> supply chain management; remote<br />

banking, procurement <strong>and</strong> purchasing, online marketing <strong>and</strong> advertisement, home shopping, <strong>and</strong> auctions.<br />

Ecommerce security issues, transaction integrity <strong>and</strong> electronic payment systems are considered; <strong>and</strong> legal aspects <strong>of</strong><br />

ecommerce.<br />

Reference Books:<br />

i. J. F. Rayport <strong>and</strong> G. J. Jaworski, Introduction to e-Commerce, McGraw-Hill, 2002.<br />

ii. J. F. Rayport <strong>and</strong> G. J. Jaworski,. Cases in e-Commerce, McGraw-Hill, 2002.<br />

iii. E. Turban, et al., Electronic Commerce, a Managerial Perspective, Upper Saddle River, NJ; Pearson<br />

Prentice Hall, 2004.<br />

iv. G. P. Schneider, Electronic Commerce: The Second Wave, Boston MA Thompson Course Technology,<br />

2004.<br />

BIT 2105 Electronic Media Systems <strong>and</strong> Multimedia (3 CU)<br />

Course Description: This course provides a comprehensive overview <strong>of</strong> the various platforms, applications, media<br />

<strong>and</strong> technology used to develop digital media products <strong>and</strong> communications. This course will investigate the use <strong>of</strong><br />

several s<strong>of</strong>tware tools for multimedia production <strong>and</strong> the ways in which media components can be represented <strong>and</strong><br />

integrated into final multimedia production. The course aims at:- Introducing students to the concepts <strong>of</strong> electronic<br />

media, the systems there <strong>of</strong> <strong>and</strong> the general field <strong>of</strong> multimedia.<br />

Indicative Content: Introduction to digital graphics, photography, video, audio, networked multimedia <strong>and</strong><br />

authoring; Visual design skills: leading to Graphic Design <strong>and</strong> other major areas <strong>of</strong> Multimedia Production,<br />

including a variety <strong>of</strong> design techniques using specialist s<strong>of</strong>tware to design <strong>and</strong> manipulate images.<br />

Reference Books:<br />

i. R. Steinmetz <strong>and</strong> K. Nahrstedt, Multimedia Systems, Springer 2004.<br />

ii. Z- Nian Li <strong>and</strong> M. S. Drew, Fundamentals <strong>of</strong> Multimedia, Prentice Hall 2003.<br />

iii. R. Steinmetz <strong>and</strong> K. Nahrstedt, Multimedia Applications, Springer 2004.<br />

BIT 2107 Web Systems <strong>and</strong> Technologies I (3 CU)<br />

Course Description: This course aims to: Provide an underst<strong>and</strong>ing <strong>of</strong> the basics <strong>of</strong> the Internet, how it originated,<br />

how it works, <strong>and</strong> how to develop <strong>and</strong> maintain Web sites; Provide a basic underst<strong>and</strong>ing <strong>of</strong> Internet related<br />

technologies <strong>and</strong> introductory skills in Web applications. On completion <strong>of</strong> this course unit, the students will be able<br />

to: Have essential skills for website management; demonstrate underst<strong>and</strong>ing <strong>of</strong> the basic Internet technology<br />

concepts <strong>and</strong>; Develop a prototype <strong>of</strong> interactive World Wide Web applications.<br />

Indicative Content: HTML editors; website management tools such as FrontPage <strong>and</strong>/or Dream weaver; Basic<br />

Internet technologies such as DNS, email services, LDAP <strong>and</strong> the HTTP protocol; Introduction to tools <strong>and</strong><br />

techniques for specifying <strong>and</strong> prototyping interactive World Wide Web applications based on HTML. Web<br />

technologies: HTTP Protocol, Presentation abstractions, Web-markup <strong>and</strong> display languages.<br />

Reference Books:<br />

73


i. A. Homer, C. Ullman & S. Wright, Instant HTML Programmer’s Reference, Wrox, 1998.<br />

ii. H. M. Deitel, P. J. Deitel & T. R. Nieto, Internet & World Wide Web – How to Programme, Prentice Hall,<br />

2000.<br />

iii. H. M. Deitel, P. J. Deitel, T. R. Nieto, T. M. Lin & P. Sadhu , XML – How to Programme, Prentice Hall,<br />

2000.<br />

iv. Website:: www.W3schools.com<br />

BIT 2108 Information Technology II (3 CU)<br />

Course Description: A necessary pre-requisite for this course is Information Technology I. This course continues<br />

an overview <strong>of</strong> the discipline <strong>of</strong> IT, describes how it relates to other computing disciplines, <strong>and</strong> finally instills an IT<br />

mindset. The course aims at giving the students main guidelines for the future study <strong>of</strong> IT-related courses; Develop<br />

knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> the elements <strong>of</strong> a feasible IT application. On completion <strong>of</strong> this course unit,<br />

students will be able to: Develop knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> the elements <strong>of</strong> a feasible IT application; the<br />

extend <strong>and</strong> activities involved in an IT application; business processes; project management processes; integration<br />

processes; history <strong>of</strong> computing technology <strong>and</strong> Internet; impacts <strong>of</strong> computing <strong>and</strong> IT on society, communication<br />

<strong>and</strong> interaction, global processes; changes in human-computer interaction; the relationship between IT <strong>and</strong> other<br />

disciplines (computing <strong>and</strong> non-computing).<br />

Indicative Content:<br />

• Organizational Issues: How to introduce IT applications; Dissemination <strong>of</strong> innovation <strong>and</strong> change agency;<br />

Integration <strong>of</strong> processes; Business process redesign; Cost benefit analysis; Project Management<br />

• History <strong>of</strong> Information Technology: History <strong>of</strong> <strong>Computing</strong> Technology; Social History <strong>of</strong> <strong>Computing</strong><br />

Impacts; Development <strong>of</strong> User interaction; <strong>and</strong> History <strong>of</strong> the Internet<br />

• IT <strong>and</strong> Its Related <strong>and</strong> Informing Disciplines: Definition <strong>of</strong> IT; Computer Science; S<strong>of</strong>tware Engineering;<br />

Information Systems; Cognitive Science; Computer Engineering; Mathematics <strong>and</strong> Statistics; Natural<br />

Sciences, Linguistics, Sociology, Psychology, etc.<br />

• Application Domains: Bio-informatics & medical applications; Business applications; Law enforcement;<br />

Political processes; e-commerce; Manufacturing; Education; Entertainment; Agriculture etc.<br />

• Application <strong>of</strong> Math <strong>and</strong> Statistics to IT: Functions, relations, <strong>and</strong> sets; Data representations <strong>and</strong><br />

encryptions; Basic logic used in programming; Applications <strong>of</strong> probability tools in solving problems;<br />

Applications <strong>of</strong> statistical methods in solving problems<br />

Reference Books:<br />

i. J. A. Senn, Information Technology: Principles, Practices, Opportunities, Pearson Education, 2003.<br />

ii. D. Cyganski <strong>and</strong> J. A. Orr, Information Technology: Inside <strong>and</strong> Outside, Prentice Hall, 2001.<br />

iii. C. V. Brown, et al., Managing Information Technology, 6th Edition, Prentice Hall, 2008.<br />

iv. G. Reynolds, Ethics in Information Technology, Course Technology, 2006.<br />

v. K. Schwalbe, Information Technology Project Management, South-Western, Div <strong>of</strong> Thomson Learning,<br />

2009.<br />

BIT 2109 Integrative Programming <strong>and</strong> Technologies (4 CU)<br />

Course Description: The course content is based on open source s<strong>of</strong>tware such as PHP or closed source s<strong>of</strong>tware<br />

such Active Server Pages (ASP). The s<strong>of</strong>tware to use will depend on the lecturer giving the course. Active Server<br />

Pages (ASP) as a server side scripting architecture for building dynamic web applications, <strong>and</strong> an ideal environment<br />

for building web based commerce solutions. On completion <strong>of</strong> this course unit, the students will be able to:<br />

Programme in Java, C# <strong>and</strong> scripting languages such as JavaScript or PHP; Develop st<strong>and</strong>alone <strong>and</strong> internet<br />

applications using technologies such as xml <strong>and</strong> in popular frameworks such as ASP.NET; Create the necessary<br />

74


connections <strong>and</strong> scripts in order that one or more servers can share data from one or more data sources; Integrate<br />

databases which are dissimilar in structure, platform <strong>and</strong> DBMS.<br />

Indicative Content: HTML; Scripting languages; Server side scripting architecture <strong>and</strong> building dynamic web<br />

applications; Web development in any language, including Visual Basic, C++, <strong>and</strong> J++ programming; Integrative<br />

technologies e.g. XML technologies <strong>and</strong> protocols<br />

Reference Books:<br />

i. M. Wilson <strong>and</strong> T. Wilson, XML Programming with VB <strong>and</strong> ASP.<br />

ii. B. Brogden et al, Java Developers Guide to E-Commerce with XML <strong>and</strong> JSP.<br />

CSC 2111 Database Management Systems I (3 CU)<br />

Course Description: This course is to provide students with a strong foundation in systematic approaches to design<br />

<strong>and</strong> implementing <strong>of</strong> database applications. Preliminarily, operations like requirements gathering <strong>and</strong> database<br />

planning will be covered. The course will also introduce students to developing <strong>of</strong> application Programmes that talk<br />

to the database. These applications may be online or <strong>of</strong>fline. The aims <strong>of</strong> the course are to: Provide a background for<br />

the evolution <strong>of</strong> database (management) systems; Provide the students with the steps one has to go through when<br />

developing good database applications; Give h<strong>and</strong> on experience <strong>and</strong> knowledge in developing database (driven)<br />

applications<br />

Indicative Content: Background to databases; Evolution <strong>of</strong> database systems; Database organization <strong>and</strong><br />

architecture; Data base models; Over view <strong>of</strong> database application development; The database development life<br />

cycle; Database design; Conceptual design; Logical design; Physical Design; Querying databases; SQL/PL SQL<br />

<strong>and</strong> Scripting.<br />

Reference Books:<br />

i. T. Connolly <strong>and</strong> C. Begg, Database Solutions, 2nd Edition.<br />

CSC 2200 Operating Systems (3 CU)<br />

Course Description: This course introduces students to s<strong>of</strong>tware that controls hardware <strong>and</strong> makes the hardware<br />

usable. Its interaction with other computer devises <strong>and</strong> how it controls other computer processes is explored. The<br />

course aims to: Provide students with a detailed underst<strong>and</strong>ing <strong>of</strong> how operating systems work; Provide students<br />

with skills to write basic Programmes to utilize underlying operating system infrastructures. The dominant<br />

categories <strong>of</strong> operating systems are Windows <strong>and</strong> UNIX (Linux, Mac OS, Solaris, etc). On completion <strong>of</strong> this course<br />

unit, the students will be able to: Have a proper underst<strong>and</strong>ing <strong>of</strong> the differences between these two operating<br />

systems Underst<strong>and</strong> different design principles for operating systems <strong>and</strong> various s<strong>of</strong>tware tools that make operating<br />

systems usable.<br />

Indicative Content: Operating Systems Structures; Processes <strong>and</strong> threads; Thread creation, manipulation <strong>and</strong><br />

synchronization; Deadlock; Implementing Synchronization operations; CPU scheduling; Memory management; File<br />

systems <strong>and</strong> file system implementation; Monitors; Segments; Disk Scheduling; Networking; UDP <strong>and</strong> TCP.<br />

Reference Books:<br />

i. W. Stallings, Operating Systems: Internals <strong>and</strong> Design Principles, 4th edition, 2007.<br />

BIT 2201 Marketing in the IT Sector (3 CU)<br />

Course Description: A marketing orientation drives strategic decision-making in most companies today. The<br />

business press is constantly discussing the efforts <strong>of</strong> companies to get close to their customers or to meet their needs<br />

better than the competition. Indeed, it is impossible to underst<strong>and</strong> the current <strong>and</strong> potential financial success <strong>of</strong><br />

companies today without a thorough underst<strong>and</strong>ing <strong>of</strong> their target markets, customer relationships, product<br />

development skills, <strong>and</strong> competitive advantages <strong>and</strong> disadvantages. Marketing is all about creating <strong>and</strong> capturing<br />

value. By providing superior value to customers, companies enhance their own value. The marketing concept is so<br />

pervasive in companies that a marketing orientation extends well beyond the marketing department. Marketing has<br />

75


ecome everyone’s job. This course will enable students to apply marketing tools <strong>and</strong> concepts, whether you work<br />

in the marketing department or not.<br />

Indicative Content: Introduction to Marketing Strategy; Analyzing Buyer Behavior; Segmentation; Targeting, <strong>and</strong><br />

Positioning; Analyzing Competition; Strategy over the Product Life Cycle; Developing New Products; Advertising<br />

& Communication; Pricing; Sales Promotion; Channels <strong>of</strong> Distribution; Br<strong>and</strong>ing; Customer Relationship<br />

Management; The Internet as the Holy Grail <strong>of</strong> Marketing.<br />

Reference Books:<br />

i. W. G. Zikmund, R. Macleod, F. W. Gilbert, Customer Relationship Management: Integrating Marketing<br />

Strategy <strong>and</strong> Information Technology, John Wiley <strong>and</strong> Sons, 2002.<br />

ii. M. Samil, International Business <strong>and</strong> Information Technology: Interaction <strong>and</strong> Transformation in the<br />

Global Economy, Routledge, 2004.<br />

iii. B. Silverstein, Internet Marketing for Information Technology Companies: Proven Online Techniques That<br />

Increase Sales <strong>and</strong> Pr<strong>of</strong>its for Hardware, S<strong>of</strong>tware, <strong>and</strong> Networking Companies Maximum Press, 2001.<br />

iv. R. Kerin, S. Hartley, W. Rudelius, Marketing, McGraw-Hill/Irwin, 2008.<br />

v. W. M. Pride, O. C. Ferrell, Marketing, South-Western College Pub, 2007.<br />

vi. J. P. Peter <strong>and</strong> J. Donelly, Preface to Marketing Management, McGraw-Hill/Irwin, 2007.<br />

vii. P. Kotler, G. Armstrong, Principles <strong>of</strong> Marketing, Prentice Hall, 2007.<br />

viii. M. Butje, Product Marketing for Technology Companies, Butterworth -Heinemann, 2005.<br />

ix. E. Artech, Successful Marketing Strategy for High-Tech Firms, House Publishers, 2004.<br />

CSC 2202 Systems Analysis <strong>and</strong> Design (4 CU)<br />

Course Description: This course introduces established <strong>and</strong> evolving methodologies for the analysis <strong>and</strong> design <strong>of</strong><br />

an information system. Great emphasis is placed on system characteristics, managing projects, prototyping,<br />

CASE/OOM tools, systems development life cycle phases, the role <strong>of</strong> the systems analyst, systems selection,<br />

definition <strong>of</strong> systems requirements, feasibility analysis, system design, <strong>and</strong> system architecture are topics included.<br />

Upon completion, students should be able to analyze a problem <strong>and</strong> design an appropriate solution using a<br />

combination <strong>of</strong> tools <strong>and</strong> techniques.<br />

Indicative Content:<br />

• SAD Fundamentals: Introduction to IS & types <strong>of</strong> IS; Need for SAD & role <strong>of</strong> Analyst; SDLC & use <strong>of</strong><br />

CASE tools; Determining feasibility & mgt <strong>of</strong> SAD activities.<br />

• Information Requirements Analysis Information gathering (Interactive methods, unobtrusive methods,<br />

RAD, prototyping); Determining Systems requirements (types <strong>of</strong> requirements)<br />

• The Analysis Process: Structuring systems requirements (describing process specifications & structured<br />

decisions) Data modelling; Process modelling; Preparing System proposals.<br />

• The Design Process: Designing effective output; Designing effective input (Accurate Data entry<br />

Procedures); User Interface design; Database Design.<br />

• System Implementation: Quality Assurance through S<strong>of</strong>tware Engineering (design with structured charts,<br />

testing, maintenance, auditing, Quality mgt); Implementing Information Systems (user training, conversion<br />

strategies, systems evaluation<br />

• Project Management: Stages <strong>of</strong> system Development; Project planning; Estimation & Project Monitoring &<br />

Control<br />

• Introduction to Object-oriented Systems Analysis & Design using UML<br />

76


Reference Books:<br />

i. Kendall & Kendall, Systems Analysis <strong>and</strong> Design, 6th edition, Pearson Prentice Hall, 2005.<br />

ii. J. A. H<strong>of</strong>fer, , J. F. George <strong>and</strong> J. S. Valacich , Modern Systems Analysis <strong>and</strong> Design, 2nd edition,<br />

Addison-Wesley, 1999.<br />

BSE 2203 Computer Networks & Data Communication (4 CU)<br />

Course Description: This course will cover Introduction to Networks: definition, advantages, types, configurations;<br />

The OSI/ISO reference model; Transmission media: magnetic media, twisted pair, coaxial, fiber-optics; Data<br />

encoding: straight, Manchester, differential Manchester, satellite; Digital versus Analog transmission; Modems,<br />

modulation <strong>and</strong> their st<strong>and</strong>ards, codes <strong>and</strong> pulse code modulation; Integrated Services Digital Networks (ISDN);<br />

Network Access Protocols; Passive versus dynamic allocation; LAN<br />

st<strong>and</strong>ards: 802.3 (Ethernet), 802.4 (token bus), 802.5 (token ring); Computer Network security, Active <strong>and</strong> Passive<br />

Attacks; Network layer <strong>and</strong> Network layer protocols; Transport layer <strong>and</strong> Transport layer protocols. Furthermore,<br />

the course considers problems on each layer <strong>of</strong> a multilayered communication model, <strong>and</strong> describes some typical<br />

solutions to such problems. On completion <strong>of</strong> this course unit, the students will be able to: Master the terminology<br />

<strong>and</strong> concepts <strong>of</strong> the OSI reference model <strong>and</strong> the TCP/IP reference model; Master the concepts <strong>of</strong> protocols,<br />

network interfaces, <strong>and</strong> design/performance issues in local area networks <strong>and</strong> wide area networks; Demonstrate<br />

knowledge <strong>of</strong> wireless networking concepts; Appreciate contemporary issues in networking technologies <strong>and</strong><br />

demonstrate knowledge <strong>of</strong> network tools.<br />

Indicative Content: Network services <strong>and</strong> applications: DNS, HTTP, SMTP, peer-to peer systems; Network<br />

transport architectures, TCP, UDP, TCP congestion control; Routing <strong>and</strong> forwarding, intra-domain, inter-domain<br />

routing algorithms <strong>and</strong> Mobile IP; Link layers <strong>and</strong> local area networks, Ethernet, WiFi, <strong>and</strong> mobility; Multimedia<br />

communications <strong>and</strong> quality <strong>of</strong> service; Network measurement, inference, <strong>and</strong> management; Network security<br />

(ACL, IPSec, etc); Network programming; Network experimentation <strong>and</strong> performance analysis <strong>and</strong> Protocol<br />

verification.<br />

Reference Books:<br />

i. J. F. Kurose <strong>and</strong> K. W. Ross. Computer Networking - A Top down Approach Featuring the Internet, 3rd<br />

edition, Addison-Wesley.<br />

ii. L. Peterson <strong>and</strong> B. Davie, Computer Networks: A Systems Approach, Morgan Kauffmann Publishers, 3rd<br />

edition, 2003.<br />

BIT 2205 System Administration (3 CU)<br />

Course Description: This course addresses both the technology <strong>of</strong> computer systems <strong>and</strong> the users <strong>of</strong> the<br />

technology on an equal basis. It is about putting together a network <strong>of</strong> computers, getting them running <strong>and</strong> then<br />

keeping them running in spite <strong>of</strong> the activities <strong>of</strong> users who tend to cause the systems to fail. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Demonstrate underst<strong>and</strong>ing <strong>of</strong> computer networking, computing models,<br />

<strong>and</strong> basic network services <strong>and</strong> plan, Install, Maintain <strong>and</strong> Run a Unix/Linux System as used in a TCP/IP networked<br />

environment.<br />

Indicative Content: Manage system resources including processes, memory <strong>and</strong> disk space; Maintain <strong>and</strong> interpret<br />

log files; Configure <strong>and</strong> manage a DNS service; Create <strong>and</strong> manage user accounts; Configure <strong>and</strong> manage an email<br />

system; Install <strong>and</strong> manage shared applications; Use shell scripts to automate procedures; Underst<strong>and</strong> <strong>and</strong> manage<br />

cross-platform file services; Underst<strong>and</strong> <strong>and</strong> manage Windows/Unix/Linux printing systems; Monitor, analyze <strong>and</strong><br />

tune system performance; Manage <strong>and</strong> configure virus protection strategies; Implement any other security measures;<br />

Perform system upgrades <strong>and</strong> version management; Perform system backup <strong>and</strong> recovery procedures<br />

77


Reference Books:<br />

i. M. Burgess, Principles <strong>of</strong> Network <strong>and</strong> System Administration, Published by Wiley <strong>and</strong> Sons, 2nd edition,<br />

2004.<br />

ii. www.tldp.org<br />

BIT 2206 Pr<strong>of</strong>essional Law <strong>and</strong> Ethics (2 CU)<br />

Course Description: A necessary pre-requisite for this course is Information Technology I. This course aims to<br />

develop in-depth knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> Computer Law <strong>and</strong> Ethics major issues; It provides the students<br />

with the survival legal kit necessary for their future carrier as IT pr<strong>of</strong>essionals <strong>and</strong> form an adoption <strong>of</strong> IT<br />

pr<strong>of</strong>essional ethics/code <strong>of</strong> conduct. The course provides a survival kit for IT graduates entering the work force. The<br />

course also considers computer ethical issues, such as information privacy, computer crime, computer terrorism,<br />

identity theft, ethical hacking etc. Each issue is analyzed in terms <strong>of</strong> the major ethical theories.<br />

Indicative Content:<br />

This course gives in-depth knowledge <strong>of</strong> computing law <strong>and</strong> ethics topics introduced earlier in pervasive themes <strong>of</strong><br />

Information Technology. It is intended for IT undergraduate students who generally have little (or none) work<br />

experience in the IT industry. First, the course considers the international <strong>and</strong> national legal frameworks related to<br />

IT. A variety <strong>of</strong> computer crimes as far as responsibility for committing such crimes are discussed. Other issues<br />

include legal protection <strong>of</strong> IT development - non-disclosure agreements, employment contracts, intellectual property<br />

law (copyright, patent, licensing, <strong>and</strong> royalties), trademarks <strong>and</strong> warranty disclaimers.<br />

Reference Books:<br />

i. J. M. Kizza, Ethical <strong>and</strong> Social Issues in the Informational Age, 2nd edition, Springer- Verlag, New York,<br />

Inc. 2003.<br />

ii. P. Quirk, J. Forder, Electronic Commerce <strong>and</strong> The Law. 2nd edition. John Wiley & Sons, Australia, 2003.<br />

iii. E. Lawrence, B. Corbitt, J. Fisher, J. Lawrence, A. Tidwell, Internet Commerce-Digital Models for<br />

Business, 2nd edition, John Wiley <strong>and</strong> Sons Australia 2000.<br />

iv. D. G. Johnson, Computer Ethics, Prentice Hall, 2nd edition, 1994.<br />

v. P. Knight <strong>and</strong> J. Fitzsimmons,The Legal Environment <strong>of</strong> <strong>Computing</strong>, Addison- Wesley, 1990.<br />

BIT 2301: Industrial Training (4 CU)<br />

Course Description: The students shall acquire h<strong>and</strong>s on training in maintenance, servicing <strong>and</strong> troubleshooting,<br />

<strong>and</strong> training in computer skills <strong>and</strong> applications. Hardware maintenance; Practicals; On job training; Report writing.<br />

BIT 3102 Entrepreneurship <strong>and</strong> Business (3 CU)<br />

Course Description: This course <strong>of</strong>fers an overview <strong>of</strong> the entrepreneurial process. Students will develop a<br />

business plan using their own business idea. They will learn skills <strong>and</strong> characteristics <strong>of</strong> successful entrepreneurs,<br />

techniques for evaluating business opportunities, planning tools, selling <strong>and</strong> marketing basics, financial analysis,<br />

record keeping, laws <strong>and</strong> regulations <strong>of</strong> Ug<strong>and</strong>a, <strong>and</strong> step by step procedures for starting a small business.<br />

Indicative Content:<br />

• Identification <strong>of</strong> talents <strong>and</strong> skills required to be a successful entrepreneur; Personal talents; Technical<br />

skills; Educational background<br />

• Overview <strong>of</strong> business opportunities: Trade association reports; Government reports; Demographic<br />

information <strong>and</strong> Surveys.<br />

• Business entry strategies: Steps in starting a business; Purpose <strong>of</strong> business; Description <strong>of</strong> business;<br />

Starting a business versus buying a business<br />

• Planning: Setting goals; Operational approach.<br />

78


• Laws <strong>and</strong> regulations affecting a small business in Ug<strong>and</strong>a: CAP <strong>and</strong> Local bye laws<br />

• Sources <strong>of</strong> information <strong>and</strong> assistance; Trade association <strong>and</strong> other non-governmental sources; Local, state,<br />

<strong>and</strong> federal governmental sources; Small business analysis<br />

• Description <strong>of</strong> a comprehensive business plan; Reason for preparing a business plan; Types <strong>of</strong> business<br />

plans; Form <strong>of</strong> business plan; Contents <strong>of</strong> a successful business plan.<br />

• Outline <strong>of</strong> a business plan: Preparation <strong>of</strong> an executive summary; Establishment <strong>of</strong> company strategy;<br />

Development <strong>of</strong> a marketing plan; Sales strategy; financial plan.<br />

• Completion <strong>of</strong> the business plan; Writing the plan; Outside review <strong>of</strong> the plan.<br />

• Social <strong>and</strong> Ethical Responsibility<br />

Reference Books:<br />

i. B. R. Barringer & R. D. Irel<strong>and</strong>, Entrepreneurship: Successfully Launching New ventures. Published by<br />

Pearson-Prentice Hall. 1st edition, 2006.<br />

ii. T. W. Zimmerer <strong>and</strong> N. M. Scarborough, Essentials <strong>of</strong> Entrepreneurship <strong>and</strong> Small Business Management.<br />

4th edition, 2005.<br />

BIS 3102 Human Computer Interaction (3 CU)<br />

Course Description: This course covers: Introduction to the interdisciplinary area <strong>of</strong> Human Computer Interaction<br />

(HCI); the underlying principles <strong>of</strong> psychology, computer science <strong>and</strong> ergonomics that influence theory <strong>and</strong> practice<br />

<strong>of</strong> HCI design <strong>and</strong> usage; specific topics will include: models <strong>of</strong> human information processing, organizational<br />

structures <strong>and</strong> socio-technical approaches to information system design; design principles for dialogue management;<br />

issues <strong>of</strong> systems user-ability; hypertext; natural language processing; virtual reality <strong>and</strong> multimedia applications.<br />

The course aims to provide students with knowledge <strong>and</strong> skills in human factors with respect to interactive s<strong>of</strong>tware,<br />

characteristics <strong>of</strong> design processes, principles <strong>and</strong> guidelines <strong>of</strong> interface design, virtual environments with respect<br />

to interfaces, corporate <strong>and</strong> business aspects <strong>of</strong> human computer interaction, interface aspects <strong>of</strong> response times <strong>and</strong><br />

presentation, interaction devices.<br />

Indicative Content: Conceptual systems models; Interface design <strong>and</strong> evaluation; Systems engineering <strong>and</strong> systems<br />

design factors; Assessments; S<strong>of</strong>tware tools; Virtual environments; Menus <strong>and</strong> dialogues; Comm<strong>and</strong> <strong>and</strong> natural<br />

languages; Interface devices; Response times; Complexity; Information attributes; Human factors <strong>and</strong> attributes;<br />

Tasks; Cognitive modelling; Function mapping; Hypermedia; Societal considerations <strong>and</strong> ethics <strong>and</strong> Internet/web<br />

considerations<br />

Reference Books:<br />

i. A. Dix, J. Finlay, G. Abowd, R. Beale, Human Computer Interaction, 2nd edition, Prentice Hall, 1997.<br />

ii. A. Sears <strong>and</strong> J. A. Jacko, The Human – Computer Interaction <strong>H<strong>and</strong>book</strong>, 2008.<br />

iii. H. Sharp, Y. Rodgers <strong>and</strong> J. Preece, Interaction Design: Beyond Human Computer Interaction, John<br />

Wiley & Sons; 2nd edition, 2007.<br />

CSC 3103 User Interface Design (4 CU)<br />

Course Description: The course introduces the principles <strong>of</strong> user interface development, focusing on design,<br />

implementation <strong>and</strong> evaluation. The course aims at providing the skills listed below to students: Developing<br />

efficient, flexible <strong>and</strong> interactive User Interfaces (UI); Provide ability to identifying system users, the tasks they<br />

want to carry out <strong>and</strong> the environment in which they will be working; Creating conceptual designs; Designing<br />

various kinds <strong>of</strong> UI, in particular graphical user interfaces (GUIs) <strong>and</strong> websites; evaluating UIs; Appreciation <strong>of</strong><br />

realities <strong>of</strong> developing usable UIs in an organization.<br />

Indicative Content: Usability; User-Centered Design; UI S<strong>of</strong>tware Architecture; Human Capabilities; Output<br />

Models; Conceptual Models <strong>and</strong> Metaphors; Input Models; Design Principles; Paper Prototyping; Constraints <strong>and</strong><br />

79


Layouts; Graphic Design; Computer Prototyping; Heuristic Evaluation; User Testing; Experiment Design <strong>and</strong><br />

Experiment Analysis.<br />

Reference Books:<br />

i. D. A. Norman, The Design <strong>of</strong> Everyday Things, New York, NY: Doubleday, 1990.<br />

ii. J. Nielsen, Usability Engineering. Burlington, MA: Academic Press, 1994.<br />

iii. K. Mullet <strong>and</strong> D. Sano, Designing Visual Interfaces: Communication Oriented Techniques. Upper Saddle<br />

River, NJ: Prentice Hall, 1994.<br />

BIT 3104 Business Communication <strong>and</strong> Report Writing (3CU)<br />

Course Description: Information oils the wheels <strong>of</strong> an organization! Communication enables the organizational<br />

development <strong>and</strong> growth in all its aspects. Communication is becoming a critical factor to organizational growth <strong>and</strong><br />

development. It is also a fact that governments <strong>and</strong> organizations that effectively communicate tend to succeed in<br />

achieving their intentions. This course is designed to exp<strong>and</strong> your knowledge <strong>of</strong> Business communication <strong>and</strong> to<br />

hone your communication skills. In particular the course will particularly pay close attention to developing<br />

purposive, clear, concise, communication styles <strong>and</strong> sensitivity to various audiences’ needs <strong>and</strong> interests.<br />

Indicative Content:<br />

Overview <strong>of</strong> communications; definitions, processes; <strong>and</strong> types; New technologies <strong>and</strong> communication, Noise <strong>and</strong><br />

Barriers to effective communication; Underst<strong>and</strong>ing the Business set up <strong>and</strong> processes; Principles <strong>of</strong> Effective<br />

Communication; Planning <strong>and</strong> Writing Effective Messages; Preparing <strong>and</strong> Producing Newsletters; Effective Report<br />

Writing for Business Organizations; Backgrounders & Position Papers; Effective Oral Presentations; Holding<br />

Successful Business Meetings; Opinion Articles (Op-Ed) & Letters to the Editor; Communicating via the Web;<br />

Crisis Communication; Inter-Cultural Communication; Communication Ethic; Communicating in a Team<br />

Environment.<br />

Reference Books:<br />

i. C. L. Bovee, J. V. Thill, B. E. Schatzman, Business Communication Today, 7th edition. New Dehli:<br />

Pearson Education, 2003.<br />

ii. H. A. Murphy, H. W. Hilderbr<strong>and</strong>t & J. P. Thomas, Effective Business Communications. Boston, MA:<br />

Irwin/McGraw-Hill, 1997.<br />

BIT 3105 Web Systems <strong>and</strong> Technologies II (3 CU)<br />

Course Description: This course reviews some <strong>of</strong> the more advanced features <strong>of</strong> the Internet <strong>and</strong> electronic. This<br />

unit provides the principles <strong>and</strong> skills <strong>of</strong> web application development. It arms students with current web<br />

programming technology <strong>and</strong> the skills for developing web oriented applications. Topics covered are web<br />

development, from a web page to a web site, types <strong>of</strong> servers <strong>and</strong> architectures for web sites.<br />

Indicative Content: Web development approaches <strong>and</strong> architectures; Security, performance, scalability, <strong>and</strong><br />

maintainability <strong>of</strong> the different web development approaches; Web-enabled databases; Dynamic web pages for B2C<br />

<strong>and</strong> B2B sites; Web security <strong>and</strong> legal issues; Projects will be prototype business systems which include dynamic<br />

database access; Graphical design issues; Client-side programming <strong>and</strong> server-side programming; Web services <strong>and</strong><br />

servers; Emerging technologies; St<strong>and</strong>ards <strong>and</strong> St<strong>and</strong>ard Bodies; Web information architecture.<br />

Reference Books:<br />

i. A. Homer, C. Ullman & S. Wright; Instant HTML Programmer’s Reference, Wrox, 1998.<br />

ii. H. M. Deitel, P. J. Deitel & T. R. Nieto, Internet & World Wide Web – How to Programme, Prentice Hall,<br />

2000.<br />

iii. P. J. Deitel, T. R. Nieto, T. M. Lin, H. M. Deitel, & P. Sadhu, XML – How to Programme, Prentice Hall,<br />

2000.<br />

iv. Website: www.W3schools.com.<br />

80


BIT 3106 S<strong>of</strong>tware Engineering for Internet Applications (4 CU)<br />

Course Description: This course unit shall cover challenges <strong>of</strong> concurrency (say 1000 people might be using the<br />

system at the same time), unpredictable load (say 100,000 users might show up tomorrow even if only 100 are using<br />

the system today), security risks, opportunity for wide-area distributed computing, creating a reliable <strong>and</strong> state-full<br />

user experience on top <strong>of</strong> unreliable connections <strong>and</strong> stateless protocols, extreme requirements <strong>and</strong> absurd<br />

development schedules , requirements that change mid-way through a project, sometimes because <strong>of</strong> experience<br />

gained from testing with users, user dem<strong>and</strong>s for a multi-modal interface: Web, mobile (WAP), <strong>and</strong> voice. Modern<br />

internet applications exhibit a form <strong>of</strong> online community in which customers are an integral part <strong>of</strong> the system.<br />

Indicative Content: This is a course for students who already have some programming experience; Basics<br />

(Stateless vs. State-full), planning for Internet applications, s<strong>of</strong>tware structure; User registration <strong>and</strong> Management,<br />

Content Management; S<strong>of</strong>tware modularity, Discussion boards, adding mobile users to the community; Voice<br />

(VoiceXML), Scaling Gracefully, Search, <strong>and</strong> distributed computing with HTTP, SOAP, <strong>and</strong> WSDL.<br />

Reference Books:<br />

i. E. Andersson, P. Greenspun, <strong>and</strong> A. Grumet, S<strong>of</strong>tware Engineering for Internet Applications, MIT Press,<br />

2006.<br />

BIT 3200 Business Intelligence <strong>and</strong> Data Warehousing (4 CU)<br />

Course Description: This course introduces the student on how companies can build data warehouses <strong>and</strong> utilize<br />

business intelligence for decision-making hence saving money <strong>and</strong> increasing pr<strong>of</strong>it. Several, initiatives ranging<br />

from supply chain integration to compliance with organizational/government-m<strong>and</strong>ated reporting requirements<br />

depend on well designed data warehouse architecture. Therefore the course introduces you to the main components<br />

<strong>of</strong> a data warehouse for business intelligence applications. This will include how a data warehouse fits into the<br />

overall strategy <strong>of</strong> a complex enterprise, how to develop data models, data mats useful for business intelligence, <strong>and</strong><br />

how to combine data from disparate sources into a single database that comprises the core <strong>of</strong> your data warehouse.<br />

The course will also explore how to define <strong>and</strong> specify useful management reports from warehouse data.<br />

Indicative content: Data warehouse concepts: partitioning, granularity, record <strong>of</strong> source, <strong>and</strong> metadata; Building<br />

viable decision support environments; Architect development; Data migration <strong>and</strong> integration; Use <strong>of</strong> operational<br />

data stores, <strong>and</strong> transactional systems.<br />

Reference books:<br />

i. P. Ponniah, Data Warehousing Fundamentals, 2001.<br />

BIT 3203 Mobile Networks <strong>and</strong> <strong>Computing</strong> (4 CU)<br />

Course Description: This course examines principles, design, implementation, <strong>and</strong> performance <strong>of</strong> mobile<br />

computing <strong>and</strong> wireless networking. The aim is to lay a foundation in the student's underst<strong>and</strong>ing <strong>and</strong> skills in<br />

mobile computing <strong>and</strong> wireless networking st<strong>and</strong>ards, technologies, application <strong>and</strong> services. Ideally the course is an<br />

integration <strong>of</strong> Wireless Networking <strong>and</strong> Mobile <strong>Computing</strong>. Subjects <strong>of</strong> study under Mobile Networking will<br />

include; Wireless Network technologies (including GSM/GPRS/3G & Wireless LANs), Convergence networks,<br />

NextGen, Mobile IP, wireless ATM, Wireless Ad Hoc Networks <strong>and</strong> Bluetooth; While subjects <strong>of</strong> discussion under<br />

Mobile <strong>Computing</strong> will include; Mobile <strong>Computing</strong> Architectures (including SMS/SIM, WAP, I-mode <strong>and</strong><br />

J2ME/J2EE), mobile OS (e.g., Android) <strong>and</strong> Mobile Application Development including location–based services.<br />

The aims <strong>of</strong> the course include: to introduce students to the theory <strong>and</strong> practice <strong>of</strong> Mobile networking <strong>and</strong><br />

computing.<br />

Indicative Content: Knowledge in the following (Computer Networking; Programming Principles, <strong>and</strong> Java );<br />

Introduction to mobile computing <strong>and</strong> wireless networking principles; The Blue Tooth <strong>and</strong> Zigbee short range<br />

wireless technologies; The Wi-Fi Technologies; Introduction to GSM/GPRS/3G/3GPP; The Mobile IP technology;<br />

Wireless ATM technology; Introduction to Mobile application development; Introduction to J2ME <strong>and</strong> J2EE<br />

platforms; underst<strong>and</strong>ing mobile computing architectures (I-mode, SMS <strong>and</strong> WAP) <strong>and</strong> introduction to GSM<br />

gateways e.g. Kannel<br />

81


Reference Books:<br />

i. J. Schiller, Mobile Communications, Addison-Wesley, 2000.<br />

ii. M. Beaulieu, Wireless Internet Applications & Architectures: Building Pr<strong>of</strong>essional Wireless Applications<br />

Worldwide, Addison-Wesley, 2002.<br />

iii. Q. H. Mahmoud, Learning – Wireless Java, O’Reilly, 2002.<br />

iv. T. Imielinski <strong>and</strong> H. K. Kluwer, Introduction to Mobile <strong>Computing</strong> in Mobile <strong>Computing</strong>, Academic<br />

Publishers, 1996.<br />

v. J. W. Muchow, Core J2ME, Technology & MIDP, Prentice-Hall, 2002.<br />

vi. S. Allamaraju, Pr<strong>of</strong>essional Java Server Programming J2EE 1, 3rd edition, Wrox Press Ltd, 2001.<br />

vii. S. Mann, Programming Applications with Wireless Application Protocol, John Wiley & Sons, Inc., 2000.<br />

viii. S. B. Guthery <strong>and</strong> M. J. Cronin, Mobile Application Development with SMS <strong>and</strong> The SIM Toolkit,<br />

McGraw-Hill TELECOM, 2000.<br />

ix. N. Rhodes & J. McKeehan, Palm Programming: The Developer’s Guide, O’Reilly, 1999.<br />

x. M. Hapner, Java Message Service API Tutorial <strong>and</strong> Reference – Messaging for the J2EE Platform, Sun<br />

Microsystems, 2002.<br />

BIT 3206 Information Assurance <strong>and</strong> Security (4 CU)<br />

Course Description: This course will <strong>of</strong>fer the students a holistic overview to security issues pertinent in an<br />

enterprise. The course will specifically tackle Security mechanisms, Operational issues, Policy, Attacks, Security<br />

Domains, Forensics, Information States, Security Services, threat analysis model, Vulnerabilities. The course will<br />

also present introductory aspects on confidentiality, integrity, authentication, non-repudiation, intrusion detection,<br />

physical security, <strong>and</strong> encryption. A student completing this course will be<br />

expected to have a good underst<strong>and</strong>ing <strong>of</strong> the information assurance issues <strong>of</strong> an Enterprise. This course aims at:<br />

Introducing students to the concepts <strong>of</strong> Information Assurance <strong>and</strong> how to secure such information using appropriate<br />

systems <strong>and</strong> technologies.<br />

Indicative Content: Security mechanisms; Operational issues; Policy Attacks; Security Domains; Forensics;<br />

Information States; Security Services; Threat analysis model; Vulnerabilities; Introduction: confidentiality,<br />

integrity, authentication, non-repudiation, intrusion detection, physical security, <strong>and</strong> encryption.<br />

Reference Books:<br />

i. Nestler, A. Conklin, G. White <strong>and</strong> M. Hirsch, Computer Security Lab Manual (Information Assurance &<br />

Security), Career Education, 2005.<br />

ii. C. P. Pfleeger <strong>and</strong> S. L. Pfleeger, Security in <strong>Computing</strong>, 4th edition, Prentice Hall 2006.<br />

BIT 3207 System Integration <strong>and</strong> Architecture (4 CU)<br />

Course Description: This course is designed to provide students with an underst<strong>and</strong>ing <strong>of</strong> Systems Integration (SI)<br />

process, approaches, drivers, tools <strong>and</strong> techniques required for successful SI, critical success factors, <strong>and</strong> best<br />

practices. The course focuses on how a proposed system will be integrated with other existing or planned systems. It<br />

addresses the System Integration problem using architectures as the basis <strong>and</strong> then addresses the evaluation <strong>of</strong> the<br />

architectures in terms <strong>of</strong> the capabilities they provide. Case studies <strong>and</strong> examples from the Information Technology<br />

(IT), energy, <strong>and</strong> financial services industry will be used to illustrate the concepts discussed.<br />

Indicative Content:<br />

• The System <strong>of</strong> Systems Integration Problem – Human, Organizational, Societal Cultural, Economic, <strong>and</strong><br />

Technological aspects; Processes, approaches, drivers, tools <strong>and</strong> techniques required for successful SI, critical<br />

success factors, <strong>and</strong> best practices in Systems Integration; The Role <strong>of</strong> Architectures in Systems Integration;<br />

Integration in a System <strong>of</strong> Systems <strong>and</strong> a Federation <strong>of</strong> Systems; Model Based Architecture, Design, <strong>and</strong><br />

Integration; Systems <strong>of</strong> Systems Interoperability; Evaluation <strong>of</strong> architectures; Measures <strong>of</strong> Performance <strong>and</strong><br />

82


Effectiveness; Assessment <strong>of</strong> System Capabilities; Analysis <strong>of</strong> Alternatives; Case studies <strong>and</strong> examples from the<br />

Information Technology (IT), energy, <strong>and</strong> financial services industry to illustrate the concepts discussed.<br />

• The theory <strong>and</strong> practice <strong>of</strong> business process integration, legacy integration, new systems integration, business-tobusiness<br />

integration, integration <strong>of</strong> commercial-<strong>of</strong>f-the-shelf (COTS) products, interface control <strong>and</strong> management,<br />

testing, integrated Programme management, integrated Business Continuity Planning (BCP). Specific focus will be<br />

given to issues <strong>of</strong> interface integration <strong>and</strong> interoperability <strong>of</strong> systems.<br />

Reference Book:<br />

i. A. P. Sage <strong>and</strong> W. B. Rouse, <strong>H<strong>and</strong>book</strong> <strong>of</strong> Systems Engineering <strong>and</strong> Management, John Wiley & Sons,<br />

1999.<br />

BIT 3208 BIT Group Project (4 CU)<br />

Course Description: To give the student experience in developing independent skills <strong>and</strong> implementing non-trivial<br />

information technology research projects. Each student will pursue a lengthy project in any area <strong>of</strong> information<br />

technology. The project will be specified, designed <strong>and</strong> implemented, with one <strong>of</strong> the Pr<strong>of</strong>essors / lecturers as<br />

advisor /supervisor.<br />

83


8.0 DEPARTMENT OF INFORMATION SYSTEMS<br />

8.1 Introduction<br />

The Information System (IS) Department is one <strong>of</strong> the four academic departments at the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong><br />

<strong>Informatics</strong> Technology. The department provides both undergraduate <strong>and</strong> postgraduate courses. Some areas <strong>of</strong><br />

the study <strong>and</strong> research in IS include System Analysis <strong>and</strong> Design, Data warehouses, Databases, Health <strong>Informatics</strong>,<br />

Management Information Systems <strong>and</strong> Decision Support Systems. These provide students with a thorough<br />

knowledge <strong>of</strong> the field thus providing an enduring foundation for future pr<strong>of</strong>essional growth. Information Systems<br />

students learn to become problem solvers in organizations, institutions, the economy <strong>and</strong> society. The department<br />

currently has two dynamic research groups namely: Simulation <strong>and</strong> Modelling Group <strong>and</strong> Visualization group.<br />

The department has 15 full time academic staff <strong>and</strong> a diverse collection <strong>of</strong> part time faculty to support the teaching<br />

needs for the Information Systems student community. Administrative staff members supervised by the Head <strong>of</strong><br />

Department ensure the smooth functioning <strong>of</strong> the department’s operations. Information systems specialists focus on<br />

integrating information technology solutions <strong>and</strong> business processes to meet the information needs <strong>of</strong> businesses <strong>and</strong><br />

other enterprises, enabling them to achieve their objectives in an effective, efficient way. This discipline’s<br />

perspective on information technology emphasizes information, <strong>and</strong> views technology as an instrument for<br />

generating, processing, <strong>and</strong> distributing information. Pr<strong>of</strong>essionals in the discipline are primarily concerned with the<br />

information that computer systems can provide to aid an enterprise in defining <strong>and</strong> achieving its goals, <strong>and</strong> the<br />

processes that an enterprise can implement or improve using information technology. They must underst<strong>and</strong> both<br />

technical <strong>and</strong> organizational factors, <strong>and</strong> they must be able to help an organization determine how information <strong>and</strong><br />

technology-enabled business processes can provide a competitive advantage.<br />

The department has a reputation for good teaching in a friendly environment. We have an active research<br />

programme <strong>and</strong> our staff <strong>and</strong> research students collaborate with other universities <strong>and</strong> industry around the world.<br />

Our main research specialties are in Geographical Information Systems, Information Visualization, Systematic<br />

Dynamics Modelling, <strong>and</strong> Simulation in Support for Decision Making <strong>and</strong> Health <strong>Informatics</strong>. Information System<br />

(IS) graduates are perfectly placed to adapt their careers to the evolving workplace <strong>and</strong> new career opportunities.<br />

Some <strong>of</strong> the roles IS graduates are able to fill include: Business analyst, Network analyst, Intelligence/threat analyst<br />

for top government organization, Web developer, Creative Internet campaigner, Systems designer/engineer, Ecommerce<br />

project <strong>of</strong>ficer, Assistive technology designer, Technical support analyst, Bioinformatics analyst, Change<br />

<strong>and</strong> transition manager, IS security auditor, Information Systems Project manager, Information Systems consultant,<br />

Database administrator, Analyst programmer, Development manager, Technical research <strong>of</strong>ficer, Business systems<br />

consultant <strong>and</strong> IS manager.<br />

8.2 Bachelor <strong>of</strong> Information Systems (BIS) Programme<br />

8.2.1 Overview<br />

The primary objective <strong>of</strong> the Bachelor <strong>of</strong> Information Systems (BIS) degree programme is to train students as<br />

information systems specialists in a business organisation context. The BIS will equip students with knowledge <strong>and</strong><br />

skills for planning, modeling <strong>and</strong> applying ICT to meet an organization‘s business requirements that are generally<br />

84<br />

Dr. Agnes Rwashana Semwanga<br />

Head <strong>of</strong> Department


depicted from the organization‘s stakeholders, events <strong>and</strong> products. The BIS Programme covers both business <strong>and</strong><br />

information technology subjects. The business subjects provide business practice framework for information<br />

systems development, whilst the information technology subjects provide the knowledge <strong>and</strong> technical skills<br />

required to build business information systems. The BIS programme aims to provide students with the concepts,<br />

analytical <strong>and</strong> developmental skills required for the information systems that underpin business computer systems<br />

<strong>and</strong> electronic commerce. The core units provide a foundation in the information systems areas <strong>of</strong> programming,<br />

system design, database, <strong>and</strong> project management.<br />

Objectives <strong>of</strong> the Programme are;<br />

The objectives <strong>of</strong> the Bachelor <strong>of</strong> Information Systems programme are:<br />

a) To build human resource capacity in information systems discipline in both the public <strong>and</strong> private<br />

sectors, especially in universities;<br />

b) To generate a pool <strong>of</strong> highly qualified c<strong>and</strong>idates for the M.Sc. in Information Systems Degree<br />

Programme;<br />

c) To address the increasing dem<strong>and</strong> for information systems training at bachelor’s degree level.<br />

d) To develop pr<strong>of</strong>essionals with theoretical <strong>and</strong> practical skills in the ICT sector.<br />

1. Target Group<br />

The programme targets two categories <strong>of</strong> people, namely Direct Entry <strong>and</strong> Diploma holders in relevant programmes.<br />

2. Minimum Admission Requirements<br />

To be admitted to the award <strong>of</strong> the Bachelor <strong>of</strong> Information Systems (BIS) Degree, a c<strong>and</strong>idate must satisfy the general<br />

admission requirements for Makerere University. In addition, the following regulations shall hold:<br />

a) Direct Entry<br />

A minimum weighted points set by the Admissions Board. For purposes <strong>of</strong> computing weighted points, the advanced<br />

level subjects shall be grouped <strong>and</strong> weighted as follows:-<br />

b) Diploma Holders<br />

Group Weight Subjects<br />

Essential 3 Any two best done subjects among: Mathematics, Physics,<br />

Economics, Chemistry, Biology, Geography, Literature,<br />

Entrepreneurship, Technical Drawing <strong>and</strong> Fine Art<br />

Relevant 2 Any other best done subject <strong>of</strong> all A’ level subjects<br />

Desirable 1 General Paper, Sub-Mathematics<br />

Others 0.5 All others.<br />

Applicants should possess at least a second class (lower division) Diploma in Computer Science any other diploma<br />

with business or computing aspects from any recognized Institution.<br />

3. Nature <strong>of</strong> the Programme<br />

The day programme has both government <strong>and</strong> privately sponsored students. The evening programme has privately<br />

sponsored students only.<br />

4. Duration<br />

The duration <strong>of</strong> this programme shall be three (3) academic years consisting <strong>of</strong> six semesters <strong>and</strong> two recess terms.<br />

Each semester lasts for seventeen (17) weeks two (2) <strong>of</strong> which are for examinations.<br />

85


5. Tuition Fees<br />

Tuition fees for privately sponsored students shall be 2,600,000 Ug<strong>and</strong>a Shillings per year for Ug<strong>and</strong>ans <strong>and</strong><br />

5,050,000 Ug<strong>and</strong>a Shillings per year for non Ug<strong>and</strong>ans. This is the same tuition fees for the existing curriculum.<br />

6. Semester Load <strong>and</strong> Minimum Graduation Load<br />

The normal semester load is between 15 <strong>and</strong> 21 credit units. The minimum graduation load is 113 credit units<br />

for courses passed including all the compulsory courses <strong>and</strong> required number <strong>of</strong> electives within a period<br />

stipulated by the University.<br />

8.2.2 Programme Structure<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Name CH LH TH PH CH<br />

Semester 1:<br />

BIS 1100 Foundations <strong>of</strong> Information Systems 3 45 -- -- 45<br />

BIS 1101 Communication for Information Systems Managers 3 45 -- -- 45<br />

BIS 1102 Business Statistics 3 45 -- -- 45<br />

CSC 1100 Computer Literacy 4 45 -- 30 60<br />

BIT 1100 Website Development & Internet Technology 3 30 -- -- 30<br />

CSK 1101 Communication Skills 4 45 -- 30 60<br />

Electives: (No Elective Course)<br />

Semester 2:<br />

BIS 1200 Information Systems in Business 3 45 -- -- 45<br />

BIS 1201 Distributed Information Systems 4 45 30 -- 60<br />

CSC 1200 Programming Methodology 4 45 -- 30 60<br />

CSC 1204 Research Methodology 4 45 30 -- 60<br />

BIT 1200 Information Technology 3 45 -- -- 45<br />

Year 1: Recess Term:<br />

CSC 1301 Practical Skills Development 4 -- -- 120 60<br />

CSC 1303 Cisco Certified Network Associate (Audited Course) 5 150 -- 100 200<br />

Semester 3:<br />

BIS 2100 Information Systems Security 4 45 30 -- 60<br />

BIT 2100 Information Systems Development 4 45 30 -- 60<br />

BIT 2101 Information Systems Management 3 45 30 -- 45<br />

BIT 2102 Electronic Commerce 4 45 30 -- 60<br />

Electives:(1 Elective Course)<br />

BIS 2102 Knowledge-based Systems 3 45 -- -- 45<br />

BIT 2105 Electronic Media Systems <strong>and</strong> Media 3 45 -- -- 45<br />

Semester 4:<br />

BIS 2200 Intelligent Systems 4 45 30 -- 60<br />

CSC 2202 Systems Analysis <strong>and</strong> Design 4 45 30 -- 60<br />

CSC 2203 Database Languages 4 45 30 -- 60<br />

CSC 2204 Research Design <strong>and</strong> Implementation 2 30 -- -- 60<br />

Electives: (1 Elective Course)<br />

BIS 2201 Executive Information Systems 4 45 30 -- 60<br />

BIS 2202 Selected Topics in Information Systems 4 60 -- -- 60<br />

CSC 2200 Operating Systems 4 45 30 -- 60<br />

Year 2: Recess Term:<br />

86


BIS 2301 Industrial Training 4 -- -- 120 60<br />

Semester 5:<br />

BIS 3100 Modeling <strong>and</strong> Simulation 4 45 30 -- 60<br />

BIS 3101 Requirements Engineering for Organizational Systems 4 45 30 -- 60<br />

BIS 3102 Human Computer Interaction 3 30 30 -- 45<br />

CSC 3107 Database Systems 4 45 -- 30 60<br />

Electives: (1 Elective Course)<br />

CSC 3101 S<strong>of</strong>tware Engineering 4 45 30 -- 60<br />

CSC 3103 User Interface Design 4 45 -- 30 60<br />

Semester 6:<br />

BIS 3200 Project in Information Systems 4 -- -- -- --<br />

BIS 3201 Strategic Management <strong>of</strong> Information Systems 3 45 -- -- 45<br />

BIS 3203 E-Governance 4 45 30 -- 60<br />

CSC 3209 Computer Networks 4 45 30 -- 60<br />

Electives: (1 Elective)<br />

BIT 3204 Enterprise Network Management 4 45 -- 30 60<br />

BIT 3205 Database (DB) Programming 4 45 -- 30 60<br />

8.2.3 Course Unit Description<br />

BIS 1100: Foundations <strong>of</strong> Information Systems (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should: View the organization as an<br />

information processing system designed to manage environmental uncertainty; explain the operational, managerial<br />

<strong>and</strong> strategic processes associated with Information Systems Management; Describe the ethical concerns associated<br />

with information privacy, accuracy, intellectual property, <strong>and</strong> accessibility.<br />

Indicative Content: This course aims at introducing students to the foundations <strong>of</strong> applying IT successfully; It will<br />

cover basic concepts for underst<strong>and</strong>ing Information systems; business processes, information <strong>and</strong> databases,<br />

communication, decision making <strong>and</strong> different types <strong>of</strong> information systems; product customer <strong>and</strong> competitive<br />

advantage, human <strong>and</strong> ethical issues (computer hardware, s<strong>of</strong>tware programming <strong>and</strong> artificial intelligence,<br />

networks <strong>and</strong> telecommunications), information systems planning, building <strong>and</strong> maintaining information systems,<br />

information system security <strong>and</strong> control, the future <strong>of</strong> information systems <strong>and</strong> customer relationship management.<br />

Reference Books:<br />

i. L. Zwass, Foundations <strong>of</strong> Information Systems, McGraw-Hill College, 1997.<br />

ii. K. Lyytinen, Information Systems: The State <strong>of</strong> the Field (John Wiley Series in Information Systems),<br />

Wiley, 2006.<br />

iii. D. Hart <strong>and</strong> S. Gregor, Information Systems Foundations: Constructing <strong>and</strong> Criticising, Ed., ANU press,<br />

2005.<br />

BIS 1101: Communication for Information systems Managers (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should: Have an underst<strong>and</strong>ing <strong>and</strong><br />

appreciation <strong>of</strong> requisite communication techniques & approaches for managers <strong>of</strong> information systems.<br />

Indicative Content: This course will focus on the value <strong>of</strong> effective communication in the management <strong>of</strong><br />

information systems including: common communication techniques <strong>and</strong> models <strong>and</strong> a review <strong>of</strong> their application in<br />

management <strong>of</strong> information systems. The content will include: the importance <strong>of</strong> effective communication, writing<br />

essays, reports & short business documents, working cooperatively in teams, <strong>and</strong> presenting group projects. It will<br />

also provide an overview <strong>of</strong> communication theory <strong>and</strong> an insight into the processes <strong>of</strong> pr<strong>of</strong>essional communication<br />

<strong>and</strong> effective communication skills for interpersonal <strong>and</strong> collaborative contexts in the workplace.<br />

87


Reference Books:<br />

i. R. Plant <strong>and</strong> S. Murrell, An Executives Guide to Information Technology: Principles, Business Models,<br />

<strong>and</strong> Terminology, Cambridge University press, 2007.<br />

ii. S. Gordon, <strong>Computing</strong> Information Technology: The Human Side, IRM Press, 2003.<br />

BIS 1102: Business Statistics (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should: Underst<strong>and</strong>, <strong>and</strong> be able to<br />

apply to real problems, the fundamental concepts <strong>of</strong> statistical thinking; Be able to appropriately apply basic tools <strong>of</strong><br />

data gathering, analysis <strong>and</strong> communication to real problems; Be able to integrate basic tools into an overall<br />

approach to scientific inquiry.<br />

Indicative Content: This unit covers simple <strong>and</strong> compound interest, time value <strong>of</strong> money, annuities, present <strong>and</strong><br />

future values, data classification <strong>and</strong> terminology, describing <strong>and</strong> displaying data, probability <strong>and</strong> probability<br />

distributions, estimation <strong>and</strong> hypothesis testing, linear regression <strong>and</strong> correlation, index numbers <strong>and</strong> time series,<br />

computer analysis <strong>of</strong> data using MINITAB <strong>and</strong> EXCEL.<br />

Reference Books:<br />

i. D. R. Anderson, D. J. Sweeney, T. A. Williams, <strong>and</strong> J. Freeman, Statistics for Business <strong>and</strong> Economics,<br />

Thomson Learning; European edition, 2006.<br />

ii. M. G. Sobol, Statistics for Business <strong>and</strong> Economics: An Action Learning Approach (McGraw-Hill series in<br />

quantitative methods for management), 1982.<br />

CSC 1100: Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; Equip students with skills <strong>of</strong> using common <strong>of</strong>fice<br />

applications; Expose students to different operating systems; Equip students with skills <strong>of</strong> how to use the Internet;<br />

<strong>and</strong> equip students with knowledge about common text editors in different operating systems. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Describe the different parts <strong>of</strong> a computer; describe the historical evolution<br />

<strong>of</strong> computers; Competently use the common <strong>of</strong>fice applications in at least two operating systems <strong>and</strong> competently<br />

use common text editor in at least two operating systems.<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

BIT 1100: Website Development & Internet Technology (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should: Differentiate between the<br />

Internet <strong>and</strong> the World Wide Web; Underst<strong>and</strong> basic Internet technologies such as DNS, email services, HTTP <strong>and</strong><br />

LDAP; Create, publish <strong>and</strong> maintain websites using Micros<strong>of</strong>t FrontPage / Dream weaver;<br />

Indicative Content: This course will provide an underst<strong>and</strong>ing <strong>of</strong> the basics <strong>of</strong> the Internet, how it originated, how<br />

it works, <strong>and</strong> how to develop <strong>and</strong> maintain Web sites using HTML editors <strong>and</strong> site management tools such as<br />

FrontPage <strong>and</strong>/or Dreamweaver. It will provide a basic underst<strong>and</strong>ing <strong>of</strong> Internet related technologies <strong>and</strong><br />

introductory skills in Web applications. It will introduce basic Internet technologies such as DNS, email services,<br />

LDAP <strong>and</strong> the HTTP protocol. The practical part <strong>of</strong> this course will introduce tools <strong>and</strong> techniques for specifying<br />

<strong>and</strong> prototyping interactive World Wide Web applications based on HTML.<br />

88


Reference Books:<br />

i. P. K. Yuen <strong>and</strong> V. Lau, Practical Web Technologies, Addison-Wesley, 2003.<br />

ii. M. Miller, J. Wiley <strong>and</strong> Sons, 501 Web Site Secrets: Unleash the Power <strong>of</strong> Google, Amazon eBay <strong>and</strong><br />

More, 2004.<br />

CSK 1101: Communication Skills (3 CU)<br />

Course Description: This course provides students with skills <strong>of</strong> effective communication. These include verbal,<br />

written, <strong>and</strong> gesture. The course aims at facilitating students appropriately <strong>and</strong> clearly communicate with others. The<br />

aims <strong>of</strong> the course unit are to: Improve the communication competencies <strong>of</strong> the student; Improve problem solving<br />

strategies <strong>of</strong> students; improve the art <strong>of</strong> critical thinking within the student; improve the student’s ability to collect<br />

<strong>and</strong> synthesize information; provide students with knowledge to utilize the library <strong>and</strong> other educational resources.<br />

Indicative Content:<br />

• Writing Skills: Thinking critically/selectively before the writing process; selecting the relevant details;<br />

organising the relevant details logically; writing the reports essays, letters <strong>and</strong> taking notes in appropriate<br />

register; avoiding ambiguities, fallacies, irrationalities; providing supportive evidence; editing documents,<br />

pro<strong>of</strong> reading; writing <strong>and</strong> exp<strong>and</strong>ing information; Quoting <strong>and</strong> citing references; writing a curriculum<br />

vitae.<br />

• Reading Skills: The use <strong>of</strong> skimming; scanning inference <strong>and</strong> prediction in reading; Intensive <strong>and</strong> critical<br />

reading; Acquisition <strong>of</strong> specific reading skills; Interpretation <strong>of</strong> non linear texts; Locating information <strong>and</strong><br />

comprehension.<br />

• Speaking <strong>and</strong> Listening Skills to Enhance Effective Public Relations: The art <strong>of</strong> persuasion in effective<br />

speaking; Conducting interviews; Conducting meetings; Participating in group discussions <strong>and</strong> tutorials;<br />

Non verbal communication clues; Presentation seminars, seeking clarification etc.; Expression <strong>of</strong><br />

politeness; Public speaking; Proper listening skills.<br />

• Examination Skills; Preparing for examinations: How much one gets from group discussions; Proper<br />

revision; Underst<strong>and</strong>ing examination rubric; Budgeting time during examination process; Writing<br />

examinations <strong>and</strong> following instructions<br />

Reference Books:<br />

i. B. Bough, 101 ways to improve your communication skills instantly, 4th edition, 2005.<br />

ii. P. Klavs, The hard Truth About s<strong>of</strong>t skills: Work Place Lessons Smart People wish they had learned sooner,<br />

2008.<br />

BIS 1200 Information Systems in Business (3 CU)<br />

Course Description: The course covers the integration <strong>of</strong> Information <strong>and</strong> Communication Technologies into<br />

organizations <strong>and</strong> their working practices, from design <strong>and</strong> implementation to strategic effects. Drawing on<br />

Information Systems (IS) <strong>and</strong> Management literature, the course <strong>of</strong>fers a chance for students to examine case studies<br />

<strong>of</strong> IS successes <strong>and</strong> failures <strong>and</strong> to explore ’real-world’ IS management issues.<br />

The course aims to provide students with knowledge for underst<strong>and</strong>ing the integration <strong>of</strong> business <strong>and</strong> technology<br />

resources to facilitate effective <strong>and</strong> efficient realization <strong>of</strong> an organization’s mission <strong>and</strong> objectives.<br />

Indicative Content: An information systems model: An Information System uses the resources <strong>of</strong> people,<br />

hardware, s<strong>of</strong>tware, data, <strong>and</strong> networks to perform input, processing, output, storage <strong>and</strong> control activities that<br />

covert data resources into information products; Role <strong>of</strong> Information Systems in an organization; the shift from data<br />

processing Systems via information Systems to knowledge-Based Systems; How information <strong>and</strong> knowledge add<br />

value to an organization; Information Systems Trends; the Information Technology component <strong>of</strong> Information<br />

Systems; Information Systems Engineering. Strategic planning: Organizational strategies <strong>and</strong> objectives; Human<br />

resource development: budgeting, costing, charging, hire versus buy decisions; Hardware <strong>and</strong> s<strong>of</strong>tware procurement:<br />

request for proposal, evaluation, selection,<br />

89


contracting <strong>and</strong> maintenance; Security in computing: continuity <strong>of</strong> processes, controls <strong>and</strong> planning for st<strong>and</strong>by;<br />

Computer audit; Project management: approaches, tools, site planning <strong>and</strong> installation.<br />

Reference Books:<br />

i. G. Curtis, Business Information Systems: Analysis, Design <strong>and</strong> Practice, 1995.<br />

ii. P. Bocij, D. Chaffey, A. Greasley, <strong>and</strong> S. Hickie, Business Information Systems: Technology,<br />

Development <strong>and</strong> Management for the E-Business, 2005.<br />

BIS 1201: Distributed Information Systems (4 CU)<br />

Course Description: Upon completion <strong>of</strong> this course, the student will: Underst<strong>and</strong> the basic principles underlying<br />

distributed information systems in general <strong>and</strong> client-server model (which is viewed as a specialization <strong>of</strong> distributed<br />

information systems) in particular. Underst<strong>and</strong> the characteristics <strong>of</strong> common architectures <strong>and</strong> technical issues for<br />

distributed <strong>and</strong> client-server information systems. Have the knowledge <strong>and</strong> skills to design, plan, implement <strong>and</strong><br />

support distributed information systems, services <strong>and</strong> server components.<br />

Indicative Content: This course will cover: a broad foundation in distributed <strong>and</strong> client-server information systems<br />

from both a managerial <strong>and</strong> a systems development point <strong>of</strong> view; provide a base from which the student can<br />

assimilate knowledge <strong>of</strong> future developments in distributed <strong>and</strong> client-server information systems. The emphasis<br />

will be on developing skills <strong>and</strong> techniques in distributed business information systems.<br />

Reference Books:<br />

i. M. T. Ozsu <strong>and</strong> P. Valduriez, The Principles <strong>of</strong> Distributed Databases, Pearson Education; 2nd edition,<br />

1999.<br />

ii. G. Coulouris, J. Dollimore <strong>and</strong> T. Kindberg, Distributed Systems - Concepts <strong>and</strong> Design, 3rd edition,<br />

Addison Wesley, 2000.<br />

CSC 1200: Programming Methodology (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should be able to: Gain an<br />

underst<strong>and</strong>ing <strong>of</strong> basic programming principles & practice; Recognise simple programming idioms <strong>and</strong> their<br />

‘semantics’; Select a suitable design methodology for a given problem;<br />

Indicative Content: The course aims at giving a good basis <strong>of</strong> programming principles <strong>and</strong> practice. A high-level<br />

programming language such as C will be used to impart a discipline <strong>of</strong> structured programming. Emphasis will be<br />

put on well-structured <strong>and</strong> correctly designed Programmes. The course gives an introduction to the basic concepts <strong>of</strong><br />

algorithms, Programme structure, data structures <strong>and</strong> programming. Formal programming languages, syntactic<br />

description; Introduction to digital computing techniques using a high level language; Algorithms development<br />

using the top-down design approach; Use <strong>of</strong> programming constructs <strong>and</strong> data structures like arrays, stacks, queues<br />

& heaps; Algorithms specification <strong>and</strong> verification.<br />

Reference Books:<br />

i. M. Hanssen <strong>and</strong> H. Richel, Introduction to Programming using SML, Addison-Wesley, 1999.<br />

ii. L. C. Paulson, ML for the Working Programmer, 2nd edition, Cambridge University Press, 1996.<br />

iii. C. Okasaki, Purely Functional Data Structures, Cambridge University Press, 1999.<br />

CSC 1204: Research Methodology (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should be able to: Identify interesting<br />

problems <strong>of</strong> research <strong>and</strong> develop appropriate strategies to address the problems identified; Demonstrate ethical<br />

consideration in conduction research; Show knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> Statistical <strong>and</strong> non-Statistical Research<br />

Methods; Use statistical packages to analyze data <strong>and</strong> make scientifically sound conclusions based on the analysis;<br />

Interpret, explain, <strong>and</strong> experiment through writing, oral presentation, various multi-media modes, <strong>and</strong> in a classroom<br />

setting; <strong>and</strong> demonstrate reflective, reflexive, creative, interpretative, evaluative, critical, <strong>and</strong> analytical thinking<br />

skills.<br />

90


Indicative Content: This course is an introduction to research, statistical analysis, <strong>and</strong> decision making. Close<br />

attention is paid to data types, data contributions, the identification <strong>of</strong> variables, <strong>and</strong> descriptive data presentation<br />

techniques. Students are introduced to both parametric <strong>and</strong> nonparametric data analysis procedures including<br />

independent <strong>and</strong> dependent sample tests, chi-square analysis, <strong>and</strong> simple analysis <strong>of</strong> variance. Hypothesis testing<br />

<strong>and</strong> the use <strong>of</strong> statistical s<strong>of</strong>tware packages are emphasized.<br />

Reference Book:<br />

i. J. M. Ruane, Essentials <strong>of</strong> Research Methods, Montclair State University, Jul 2004.<br />

BIT 1200: Information Technology (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Underst<strong>and</strong> <strong>and</strong> use various<br />

computer applications e.g. <strong>of</strong>fice suite, email & Internet, image processing for basic tasks; Use computer<br />

applications for advanced tasks like embedded spreadsheets, databases <strong>and</strong> other media tools used in <strong>of</strong>fice<br />

environments; Design <strong>and</strong> implement simple GUI systems;<br />

Indicative Content: This unit introduces students to the full range <strong>of</strong> skills needed to operate in the information<br />

society. It will cover an overview <strong>of</strong>: database management; operating systems management; network services <strong>and</strong><br />

electronic mail; document design; data analysis <strong>and</strong> presentation; information management; information presentation<br />

<strong>and</strong> the Internet <strong>and</strong> World Wide Web. Practical will be based on the following s<strong>of</strong>tware packages: MS <strong>of</strong>fice/Open<br />

<strong>of</strong>fice, MS outlook/qmail, the netscape /mosaic web browser <strong>and</strong> miscellaneous multimedia tools. Students will<br />

further use introductory object oriented techniques to design <strong>and</strong> code systems with graphical user interfaces.<br />

Reference Books:<br />

i. R. Plant <strong>and</strong> S. Murrell, An Executives Guide to Information Technology: Principles, Business Models, <strong>and</strong><br />

Terminology, 2007.<br />

ii. E. Garrison Walters, The Essential Guide to <strong>Computing</strong>: The Story <strong>of</strong> Information Technology, Essential<br />

Guide Series, 2000.<br />

BIS 2100: Information Systems Security (4 CU)<br />

Course Description: At the conclusion <strong>of</strong> the course, the student should have an underst<strong>and</strong>ing <strong>of</strong>: Computer,<br />

databases & network-related security threats <strong>and</strong> solutions; Principles <strong>of</strong> authentication <strong>and</strong> encryption; Internet<br />

Protocol security architecture (IPSEC).<br />

Indicative Content: This course introduces the basic principles <strong>of</strong> computer security, focusing on system elements.<br />

Among the topics covered are: access control <strong>and</strong> integrity; Network security; database security; cryptography<br />

(Symmetric <strong>and</strong> public key systems; PKI Strengths-complexity, secrecy, Encryption Key management);<br />

programming language security (problems like buffer overflow, pointers <strong>and</strong> arrays; java security).<br />

Reference Books:<br />

i. A. R. Warman, Computer Security within Organizations, The Macmillan Press Ltd, 1993.<br />

ii. P. E. Fites, M. P. Kratz, Information Systems Security: A Practitioners Reference 2nd edition, 2003.<br />

BIT 2100: Information Systems Development (4 CU)<br />

Course Description: Upon completion <strong>of</strong> this course, students should be able: To gain a general idea about<br />

information systems <strong>and</strong> the information systems development life cycle; To be familiar with the principles <strong>and</strong><br />

approaches <strong>of</strong> project management as they are applied to the design, development <strong>and</strong> maintenance <strong>of</strong> complex<br />

information systems; To underst<strong>and</strong> the roles <strong>and</strong> responsibilities <strong>of</strong> information architects in Team-based projects<br />

Indicative Content: This course is an introductory systems design course for s<strong>of</strong>tware engineers <strong>and</strong> business<br />

systems analysts. The course presents an overview <strong>of</strong> information systems <strong>and</strong> the systems development lifecycle<br />

for the s<strong>of</strong>tware engineer. Topics include: Information Systems theory, including strategic role <strong>of</strong> Information<br />

Systems; Systems Development Life Cycle; Project Management principles & techniques; Data Flow Diagrams;<br />

Programme Specifications.<br />

91


Reference Books:<br />

i. A. M. Langer, Analysis <strong>and</strong> Design <strong>of</strong> Information Systems, Springer- Verlag, 2007.<br />

ii. S. Brinkkemper, Conceptual, Modelling in Information Systems Engineering, Springer-Verlag, 2007.<br />

BIT 2101: Information Systems Management (3 CU)<br />

Course Description: At the completion <strong>of</strong> the course, the student should be able: To identify ways to use IT to<br />

leverage business opportunities in different areas <strong>of</strong> responsibility. Underst<strong>and</strong> the need for organizations to develop<br />

information vision, IT architecture, <strong>and</strong> strategic <strong>and</strong> operational IT plans <strong>and</strong> be able to participate in these<br />

processes. Participate in the development <strong>of</strong> organizational policies related to the potential impacts <strong>of</strong> IT usage on<br />

individuals, organizations, <strong>and</strong> society.<br />

Indicative Content: This Course studies the value <strong>of</strong> management <strong>of</strong> information <strong>and</strong> IT resources to commerce<br />

<strong>and</strong> industry. It delves on the management <strong>and</strong> application issues <strong>of</strong> information systems development rather than<br />

technical concepts. Material covered will include: the foundations <strong>of</strong> IT management, managing application<br />

portfolio resources, tactical <strong>and</strong> operational considerations <strong>and</strong> controlling information resources.<br />

Reference Books:<br />

i. A. M. Langer, Analysis <strong>and</strong> Design <strong>of</strong> Information Systems, Springer- Verlag, 2007.<br />

ii. A. Cassidy, A Practical Guide to Information Systems Process Improvement, CRC Press, 2000.<br />

BIT 2102: Electronic Commerce (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should: Underst<strong>and</strong> the main concepts<br />

<strong>and</strong> processes involved in doing business electronically; Be familiar with the different ways that electronic<br />

commerce can add business value to an organisation; Be able to analyze <strong>and</strong> design key decisions faced by an<br />

organisation when establishing or updating a web presence for business purposes.<br />

Indicative Content: The course provides an introduction to electronic commerce. It introduces the techniques <strong>and</strong><br />

the tools used in on-line transactions. It reviews problems <strong>and</strong> solutions to business activities being conducted<br />

electronically. Security issues, transaction integrity <strong>and</strong> electronic payment systems are considered. Topics covered<br />

in this course include: Internet concepts <strong>and</strong> technology; Data security issues; Electronic payment systems; Internet<br />

marketing <strong>and</strong> electronic commerce legal issues; Electronic commerce <strong>and</strong> retailing, <strong>and</strong> corporate finance; Intranets<br />

<strong>and</strong> supply chain management, <strong>and</strong> manufacturing.<br />

Reference Books:<br />

i. H. Chan, J. Wiley <strong>and</strong> Sons, Electronic Commerce: Fundamentals & Applications, 2001.<br />

ii. D. Travis, E-Commerce Usability: Tools <strong>and</strong> Techniques to Perfect the On-Line Experience, CRC Press,<br />

2002.<br />

BIS 2102: Knowledge-based Systems (3 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student should be able: To underst<strong>and</strong> important issues,<br />

challenges, concepts <strong>and</strong> techniques <strong>of</strong> building <strong>and</strong> managing knowledge-based Systems. To analyze, design <strong>and</strong><br />

develop Programmes <strong>and</strong> systems that deal with knowledge in various forms.<br />

Indicative Content: This course will cover structuring the logic <strong>of</strong> a solution into a business or management<br />

problem, designing a knowledge base containing a series <strong>of</strong> rules <strong>and</strong> implementing a solution using knowledgebased<br />

s<strong>of</strong>tware, Methods <strong>and</strong> tools <strong>of</strong> problem solving, reasoning, knowledge representation <strong>and</strong> knowledge<br />

acquisition.<br />

Reference Books:<br />

i. J. V. Richardson, Knowledge-based Systems for General Reference Work: Applications by – Computers,<br />

Academic Press.1995.<br />

ii. G. S. Tuthill, Implementing Knowledge-based Systems, TAB Books Inc, 1991.<br />

92


BIT 2105: Electronic Media Systems <strong>and</strong> Media (3 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student should; Have an underst<strong>and</strong>ing <strong>of</strong> the various platforms,<br />

applications, media <strong>and</strong> technology used to develop digital media products <strong>and</strong> communications. Have an<br />

appreciation <strong>of</strong> the varied design techniques <strong>and</strong> s<strong>of</strong>tware tools used for designing <strong>and</strong> manipulation <strong>of</strong> digital media<br />

products. Appreciate <strong>and</strong> practice the art <strong>of</strong> combining multimedia authoring tools to provide an effective<br />

multimedia system.<br />

Indicative Content: This course provides a comprehensive overview <strong>of</strong> the various platforms, applications, media<br />

<strong>and</strong> technology used to develop digital media products <strong>and</strong> communications. Participants are introduced to digital<br />

graphics, photography, video, audio, networked multimedia <strong>and</strong> authoring. Students are taught visual design skills as<br />

a basis for working in graphic design <strong>and</strong> other major areas <strong>of</strong> multimedia production, learning a variety <strong>of</strong> design<br />

techniques using specialist s<strong>of</strong>tware to design <strong>and</strong> manipulate images, learn the Art <strong>of</strong> combining multimedia<br />

authoring tools to provide an effective multimedia system. This course will also investigate the use <strong>of</strong> several<br />

s<strong>of</strong>tware tools for multimedia production <strong>and</strong> the ways in which media components can be represented <strong>and</strong><br />

integrated into final multimedia production.<br />

Reference Book:<br />

i. S. Y. Chen, Digital Multimedia Perception <strong>and</strong> Design, Idea Group Publishing, 2006.<br />

ii. G. Barlas, Distributed Multimedia Retrieval Strategies for Large Scale Networked Systems: Multimedia<br />

Systems <strong>and</strong> Applications, Springer-Verlag, 2005.<br />

BIS 2200: Intelligent Systems (4 CU)<br />

Course Description: By the completion <strong>of</strong> this course, the student should; Have an appreciation <strong>of</strong> computational<br />

issues in problem solving; Have an underst<strong>and</strong>ing <strong>of</strong> concepts, methods <strong>and</strong> principles in knowledge based problem<br />

solving; Be able to design <strong>and</strong> implement prototype knowledge systems.<br />

Indicative Content: This unit provides an introduction to intelligent system technologies such as knowledge<br />

engineering, applied artificial intelligence <strong>and</strong> expert systems as key players in filling a growing niche in corporate<br />

information systems. Topics include: natural language underst<strong>and</strong>ing, vision & learning; heuristic programming;<br />

search strategies; knowledge representations, acquisition <strong>and</strong> Applications i.e. Expert Systems’ design techniques,<br />

programming aspects, applications, successes, limitations <strong>and</strong> Neural Networks).<br />

Reference Book:<br />

i. M. Negnevitsky, Artificial Intelligence: A Guide to Intelligent Systems, 2nd edition, Addison-Wesley,<br />

2004.<br />

ii. P. Norvig, Artificial Intelligence: A Modern Approach, 2nd edition, Prentice Hall, 2002.<br />

CSC 2202 Systems Analysis <strong>and</strong> Design (4 CU)<br />

Course Description: This course introduces established <strong>and</strong> evolving methodologies for the analysis <strong>and</strong> design <strong>of</strong><br />

an information system. Great emphasis is placed on system characteristics, managing projects, prototyping,<br />

CASE/OOM tools, systems development life cycle phases, the role <strong>of</strong> the systems analyst, systems selection,<br />

definition <strong>of</strong> systems requirements, feasibility analysis, system design, <strong>and</strong> system architecture are topics included.<br />

Upon completion, students should be able to analyze a problem <strong>and</strong> design an appropriate solution using a<br />

combination <strong>of</strong> tools <strong>and</strong> techniques.<br />

Indicative Content:<br />

• SAD Fundamentals: Introduction to IS & types <strong>of</strong> IS; Need for SAD & role <strong>of</strong> Analyst; SDLC & use <strong>of</strong><br />

CASE tools; Determining feasibility & mgt <strong>of</strong> SAD activities.<br />

• Information Requirements Analysis Information gathering (Interactive methods, unobtrusive methods,<br />

RAD, prototyping); Determining Systems requirements (types <strong>of</strong> requirements)<br />

93


• The Analysis Process: Structuring systems requirements (describing process specifications & structured<br />

decisions) Data modelling; Process modelling; Preparing System proposals.<br />

• The Design Process: Designing effective output; Designing effective input (Accurate Data entry<br />

Procedures); User Interface design; Database Design.<br />

• System Implementation: Quality Assurance through S<strong>of</strong>tware Engineering (design with structured charts,<br />

testing, maintenance, auditing, Quality mgt); Implementing Information Systems (user training, conversion<br />

strategies, systems evaluation.<br />

• Project Management: Stages <strong>of</strong> system Development; Project planning; Estimation & Project Monitoring &<br />

Control.<br />

• Introduction to Object-oriented Systems Analysis & Design using UML<br />

Reference Books:<br />

i. Kendall & Kendall, Systems Analysis <strong>and</strong> Design, 6th edition, Pearson Prentice Hall, 2005.<br />

ii. A. J. H<strong>of</strong>fer, F. J. George <strong>and</strong> J. S. Valacich, Modern Systems Analysis <strong>and</strong> Design, 2nd edition, Addison-<br />

Wesley, 1999.<br />

CSC 2203: Database Languages (4 CU)<br />

Course Description: Upon completion <strong>of</strong> this course, the student should: Have knowledge <strong>of</strong> database definition<br />

<strong>and</strong> manipulation languages; Be able to use SQL, Advanced SQL, QBE, Visual Basic to perform data search,<br />

storage <strong>and</strong> other data processing techniques on a relational database schema.<br />

Indicative Content: The course will give in-depth knowledge about the commonly used database manipulation<br />

languages. Based on a relational database schema, the course will illustrate the use <strong>of</strong> these languages in<br />

manipulating databases. Topics include: a brief introduction to relational database schemas; Database languages<br />

(SQL, Advanced SQL, Query-By-Example (QBE), Visual Basic.<br />

Reference Book:<br />

i. C. Coronel, Database Systems: Design, Implementation <strong>and</strong> Management, 6th edition, Course<br />

Technology, 2004.<br />

ii. R. Ramakrishnan <strong>and</strong> J. Gehrke, Database Management Systems, McGraw-Hill Higher Education; 3rd<br />

edition, 2002.<br />

CSC 2204: Research Design <strong>and</strong> Implementation (2 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student should have an underst<strong>and</strong>ing <strong>of</strong> the<br />

basic guidelines on how to carry out research <strong>and</strong> produce a good academic project report.<br />

Indicative Content: This unit will cover: Developing the proposal; approval <strong>of</strong> the study plan; conducting the<br />

study; writing the manuscript; defense (presentation) <strong>of</strong> the Thesis (report).<br />

Reference Books:<br />

i. J. W. Creswell, Research Design: Qualitative, Quantitative, <strong>and</strong> Mixed Methods Approaches, SAGE<br />

Publications Inc.; 3rd edition, 2008.<br />

BIS 2201: Executive Information Systems (EIS) (4 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student should be able to: Underst<strong>and</strong> the information<br />

requirements <strong>of</strong> executives; underst<strong>and</strong> how executives make use <strong>of</strong> information; Underst<strong>and</strong> the merits <strong>and</strong><br />

limitations <strong>of</strong> available EIS s<strong>of</strong>tware;<br />

Indicative Content: The course will cover a framework for the underst<strong>and</strong>ing <strong>of</strong> the information needs <strong>of</strong> the<br />

executives, development <strong>and</strong> implementation <strong>of</strong> appropriate information models.<br />

94


Reference Books:<br />

i. A. Cassidy, A Practical Guide to Information Systems Process Improvement, CRC Press, 2000.<br />

BIS 2202: Selected Topics in Information Systems (4 CU)<br />

Course Description:<br />

By the end <strong>of</strong> this course, the student should have an underst<strong>and</strong>ing <strong>of</strong> the current developments in information<br />

systems theory, research <strong>and</strong> practice.<br />

Indicative Content: Topics <strong>of</strong> current interest in Information Systems will be discussed.<br />

CSC 2200: Operating Systems (4 CU)<br />

Course Description: Operating Systems course introduces students to s<strong>of</strong>tware that controls hardware <strong>and</strong> makes<br />

the hardware usable. Its interaction with other computer devises <strong>and</strong> how it controls other computer processes is<br />

explored. The Course aims at providing students with a detailed underst<strong>and</strong>ing <strong>of</strong> how operating systems work;<br />

skills to write basic Programmes to utilize underlying operating system infrastructures. At the end <strong>of</strong> the course,<br />

students are able to know the dominant categories <strong>of</strong> operating systems are Windows <strong>and</strong> UNIX (Linux, Mac OS,<br />

Solaris, etc). Students <strong>of</strong> operating systems are expected to have a proper underst<strong>and</strong>ing <strong>of</strong> the differences between<br />

these two. Students should be able to underst<strong>and</strong> different design principles for operating systems <strong>and</strong> various<br />

s<strong>of</strong>tware tools that make operating systems usable.<br />

Indicative Content; Operating Systems Structures; Processes <strong>and</strong> threads; Thread creation, manipulation <strong>and</strong><br />

synchronization; Deadlock; Implementing Synchronization operations; CPU scheduling; Memory management;<br />

File systems <strong>and</strong> file system implementation; Monitors; Segments; Disk Scheduling; Networking; UDP <strong>and</strong> TCP.<br />

Reference Book:<br />

i. W. Stallings, Operating Systems: Internals <strong>and</strong> Design Principles, 5th edition, Prentice Hall, 2005.<br />

BIS 3100: Modeling <strong>and</strong> Simulation (4 CU)<br />

Course Description: The course gives students theoretical <strong>and</strong> practical skills in modelling <strong>and</strong> simulation <strong>of</strong><br />

dynamic systems with a view <strong>of</strong> learning their behaviour <strong>and</strong> the sensitivity <strong>of</strong> that behaviour to certain parameters.<br />

The course will familiarize students with modelling <strong>and</strong> simulation techniques that are applicable under varying<br />

circumstances equip students with practical experiences <strong>of</strong> composing models <strong>and</strong> running simulations under<br />

varying circumstances, equip students with skills <strong>of</strong> correctly representing simulation results<br />

Indicative Content: Simulation <strong>of</strong> operational systems, Simulation as a decision making methodology, Model<br />

development <strong>and</strong> validation, Design <strong>of</strong> simulation experiments, Generation <strong>of</strong> appropriate values <strong>of</strong> r<strong>and</strong>om<br />

variables, Interactive procedures <strong>and</strong> interpretation <strong>of</strong> results.<br />

Reference Books:<br />

i. L. Oakshott, Business Modelling <strong>and</strong> Simulation, Trans- Atlantic Publications, 1997.<br />

ii. R. G. Coyle, System Dynamics Modelling; A practical approach, Chapman & Hall/CRC, 1996.<br />

BSE 3103: Requirements Engineering (4 CU)<br />

Course Description: At the end <strong>of</strong> the course students should be able to: Underst<strong>and</strong> the principles, tools, <strong>and</strong><br />

techniques for requirements elicitation, specification, <strong>and</strong> analysis; demonstrate the role <strong>of</strong> requirements in system<br />

development <strong>and</strong> maintenance; <strong>and</strong> appreciate the difficulties <strong>of</strong> specifying requirements for real systems, as well as<br />

effective methods tools <strong>and</strong> techniques.<br />

Indicative Content: System <strong>and</strong> S<strong>of</strong>tware System Engineering; S<strong>of</strong>tware Requirements Concepts; Requirements<br />

Elicitation; S<strong>of</strong>tware Requirements Analysis, S<strong>of</strong>tware Requirements Specifications, S<strong>of</strong>tware Requirements Tools,<br />

S<strong>of</strong>tware Requirements Verification; S<strong>of</strong>tware Requirements Engineering Management; Developing a Successful<br />

S<strong>of</strong>tware Requirement.<br />

95


Reference Books:<br />

i. P. Loucopoulos <strong>and</strong> V. Karakostas, System Requirements Engineering, McGraw-Hill; 1995<br />

ii. D. Leffingwell, D. Widrig, A. Wesley Managing S<strong>of</strong>tware Requirements, A Use Case Approach, 2nd<br />

edition,: Boston, 2000.<br />

iii. L. Chung, B. Nixon, E. Yu <strong>and</strong> J. Mylopoulos, Non-Functional Requirements in S<strong>of</strong>tware Engineering,<br />

Kluwer Academic Publishing, 2000.<br />

iv. A. M. Davis, S<strong>of</strong>tware Requirements: Objects, Functions, & States, Prentice Hall: Englewood Cliffs, 1993.<br />

v. R. H. Thayer <strong>and</strong> M. Dortman, System <strong>and</strong> S<strong>of</strong>tware Requirements Engineering: Tutorial, Editors, IEEE<br />

Computer Society Press, 1997.<br />

BIS 3102 Human Computer Interaction (3 CU)<br />

Course Description: This course covers: Introduction to the interdisciplinary area <strong>of</strong> Human Computer Interaction<br />

(HCI); the underlying principles <strong>of</strong> psychology, computer science <strong>and</strong> ergonomics that influence theory <strong>and</strong> practice<br />

<strong>of</strong> HCI design <strong>and</strong> usage; specific topics will include: models <strong>of</strong> human information processing, organizational<br />

structures <strong>and</strong> socio-technical approaches to information system design; design principles for dialogue management;<br />

issues <strong>of</strong> systems user-ability; hypertext; natural language processing; virtual reality <strong>and</strong> multimedia applications.<br />

The course aims to provide students with knowledge <strong>and</strong> skills in human factors with respect to interactive s<strong>of</strong>tware,<br />

characteristics <strong>of</strong> design processes, principles <strong>and</strong> guidelines <strong>of</strong> interface design, virtual environments with respect<br />

to interfaces, corporate <strong>and</strong> business aspects <strong>of</strong> human computer interaction, interface aspects <strong>of</strong> response times <strong>and</strong><br />

presentation, interaction devices.<br />

Indicative Content: Conceptual systems models; Interface design <strong>and</strong> evaluation; Systems engineering <strong>and</strong> systems<br />

design factors; Assessments; S<strong>of</strong>tware tools; Virtual environments; Menus <strong>and</strong> dialogues; Comm<strong>and</strong> <strong>and</strong> natural<br />

languages; Interface devices; Response times; Complexity; Information attributes; Human factors <strong>and</strong> attributes;<br />

Tasks; Cognitive modelling; Function mapping; Hypermedia; Societal considerations <strong>and</strong> ethics <strong>and</strong> Internet/web<br />

considerations<br />

Reference Books:<br />

i. A. Dix, J. Finlay, G. Abowd <strong>and</strong> R. Beale, Human Computer Interaction, 2nd edition, Prentice Hall, 1997.<br />

ii. A. Sears <strong>and</strong> J. A. Jacko, the Human – Computer Interaction <strong>H<strong>and</strong>book</strong>, 2008.<br />

iii. H. Sharp, Y. Rodgers, J. Preece <strong>and</strong> J. Wiley & Sons, Interaction Design: beyond Human Computer<br />

Interaction, 2nd edition, 2007.<br />

CSC 3107: Database Systems (4 CU)<br />

Course Description: At the conclusion <strong>of</strong> this course, the student should be able to: Underst<strong>and</strong> the principles <strong>of</strong><br />

database design <strong>and</strong> implementation; Perform conceptual data modeling using entity-relationship modeling<br />

techniques <strong>and</strong> implement developed models in a relational database management system; Appreciate database<br />

h<strong>and</strong>ling <strong>and</strong> manipulation techniques in dynamic computing environments.<br />

Indicative Content: The course covers the principles <strong>of</strong> database design <strong>and</strong> implementation including relational<br />

theory, database development, conceptual <strong>and</strong> logical modeling, use <strong>of</strong> SQL as a data-definition <strong>and</strong> data<br />

manipulation language, <strong>and</strong> contemporary issues in database administration. Practical experience in entityrelationship<br />

modeling, database design, <strong>and</strong> query writing will be covered. The course will also cover using<br />

transactions, implementing cursors, stored procedures <strong>and</strong> triggers. The course will also provide an introduction to<br />

database connectivity st<strong>and</strong>ards (for example, JDBC), client-server databases (for example, ORACLE), objectoriented<br />

databases, <strong>and</strong> accessing databases through the World-Wide Web.<br />

96


Reference Books:<br />

i. J. Petersen, Absolute Beginner‘s Guide to Databases, Absolute Beginners Guide, Que, 2002.<br />

ii. H. G. Molina, J. D. Ullman, J. D. Widom, Database Systems: The Complete Book (GOAL Series) Prentice<br />

Hall, 2001.<br />

CSC 2108: S<strong>of</strong>tware Engineering (4 CU)<br />

Course Description: This course introduces students to the foundations <strong>of</strong> s<strong>of</strong>tware engineering as a discipline.<br />

Students are introduced to the evolving role <strong>of</strong> s<strong>of</strong>tware engineering, especially with emphasis on s<strong>of</strong>tware<br />

engineering process <strong>and</strong> process models. Key topics covered include S<strong>of</strong>tware configuration management,<br />

Requirement analysis, S<strong>of</strong>tware Specification, Design methods, S<strong>of</strong>tware testing, S<strong>of</strong>tware project management<br />

techniques; S<strong>of</strong>tware project planning, Risk management; S<strong>of</strong>tware Quality Assurance; S<strong>of</strong>tware reuse; <strong>and</strong><br />

Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

Indicative Content:<br />

• Evolving role <strong>of</strong> s<strong>of</strong>tware, s<strong>of</strong>tware characteristics; Systems <strong>and</strong> environment; system engineering<br />

hierarchy, information <strong>and</strong> knowledge engineering; Information strategy; Business Area analysis, modeling<br />

enterprise <strong>and</strong> business-level data modeling, system architecture <strong>and</strong> associated information flow; writing<br />

system specification.<br />

• S<strong>of</strong>tware Engineering as a layered technology: S<strong>of</strong>tware process, s<strong>of</strong>tware process models. S<strong>of</strong>tware<br />

configuration management: the SCM process, Identification <strong>of</strong> objects in s<strong>of</strong>tware configuration, version<br />

control, change control, configuration audit, SCM st<strong>and</strong>ards.<br />

• Requirement analysis: Communication techniques, Information gathering tools; organizing <strong>and</strong> structuring<br />

information; analysis principles; Analysis modeling.<br />

• S<strong>of</strong>tware Specification: Design process, principles <strong>and</strong> concepts: Abstraction, refinement, modularity,<br />

control hierarchy, structural partitioning, information hiding, functional independence, cohesion, coupling,<br />

design heuristics;<br />

• Design methods: data design, architectural design, transform mapping, design optimization, human<br />

computer interface design, procedural design <strong>and</strong> tools; Design documentation.<br />

• S<strong>of</strong>tware testing: Testing objectives, Testing principles, Testability, test case designing, white box testing;<br />

Basis path testing: Condition testing, data flow testing, loop testing; Black box testing: graph based testing<br />

methods, equivalence partitioning, Boundary value analysis, comparison testing; Testing documentation<br />

<strong>and</strong> help facilities; S<strong>of</strong>tware testing strategy: unit testing, integration testing, validation testing, system<br />

testing.<br />

• S<strong>of</strong>tware project management techniques: project metrics, s<strong>of</strong>tware measurement <strong>and</strong> metrics, s<strong>of</strong>tware<br />

quality metrics;<br />

• S<strong>of</strong>tware project planning: objectives <strong>of</strong> planning, resources, project estimation <strong>and</strong> estimation models,<br />

project decomposition techniques, make-buy decisions; automated estimation tools.<br />

• Risk management: s<strong>of</strong>tware risks, risk identification, risk projection, risk mitigation, monitoring <strong>and</strong><br />

management; Project Scheduling: people <strong>and</strong> effort relationships, defining tasks, defining task network,<br />

scheduling techniques; S<strong>of</strong>tware teams <strong>and</strong> intra-team relationships; role <strong>of</strong> project manager.<br />

• S<strong>of</strong>tware Quality Assurance: Concept <strong>of</strong> quality, quality control vs. quality assurance, cost <strong>of</strong> quality,<br />

factors that affect quality, quantitative view <strong>of</strong> quality, quality metrics, defect removal efficiency SQA<br />

activities, ISO st<strong>and</strong>ards <strong>and</strong> CMM practices, SEI levels, S<strong>of</strong>tware reviews, Formal approaches to SQA,<br />

Statistical Quality Assurance. S<strong>of</strong>tware reliability, reliability metrics, reliability models, meeting reliability<br />

requirements.<br />

• Effective metrics for s<strong>of</strong>tware process: Measurement principles, attributes <strong>of</strong> s<strong>of</strong>tware metrics, metrics for<br />

analysis model, metrics for design model, metrics for source code, metrics for maintenance.<br />

97


• S<strong>of</strong>tware reuse: difficulties in reuse, hardware reuse vs. s<strong>of</strong>tware reuse, reusable artifacts, domain<br />

engineering approach, analysis design <strong>and</strong> construction <strong>of</strong> reusable components, classification <strong>and</strong> retrieval<br />

<strong>of</strong> components, economic impact <strong>of</strong> reuse <strong>and</strong> reuse metrics.<br />

• Computer aided s<strong>of</strong>tware engineering: CASE tools <strong>and</strong> application.<br />

Reference Books:<br />

i. J. F. Peters, W. Pedrycz, S<strong>of</strong>tware engineering: An Engineering approach, John Wiley, 2000.<br />

ii. R. S. Pressman, S<strong>of</strong>tware engineering: A Practitioners Approach, 5th edition, McGraw Hill, 2005.<br />

iii. I. Sommerville, S<strong>of</strong>tware Engineering, 8th edition, Addison Wesley, 2008.<br />

iv. D. Ghezzi, M. Jazayeri, D. M<strong>and</strong>rioli, Fundamentals <strong>of</strong> S<strong>of</strong>tware Engineering, Prentice Hall <strong>of</strong> India, 2004.<br />

CSC 3103: User Interface Design (4 CU)<br />

Course Description: The course introduces the principles <strong>of</strong> user interface development, focusing on design,<br />

implementation <strong>and</strong> evaluation. The course aims at providing different skills to students, such as: Developing<br />

efficient, flexible <strong>and</strong> interactive User Interfaces (UI); Provide ability to identifying system users, the tasks they<br />

want to carry out <strong>and</strong> the environment in which they will be working; Creating a conceptual designs; Designing<br />

various kinds <strong>of</strong> UI, in particular graphical user interfaces (GUIs) <strong>and</strong> websites; evaluating UIs; Appreciation <strong>of</strong><br />

realities <strong>of</strong> developing usable UIs in an organization.<br />

Indicative Content: Usability; User-Centred Design; UI S<strong>of</strong>tware Architecture; Human Capabilities; Output<br />

Models; Conceptual Models <strong>and</strong> Metaphors; Input Models; Design Principles; Paper Prototyping; Constraints <strong>and</strong><br />

Layouts; Graphic Design; Computer Prototyping; Heuristic Evaluation; User Testing; Experiment Design <strong>and</strong><br />

Experiment Analysis.<br />

Reference Books:<br />

i. D. A. Norman, The Design <strong>of</strong> Everyday Things, New York, NY: Doubleday, 1990.<br />

ii. J. Nielsen, Usability Engineering, Burlington, MA, Academic Press, 1994.<br />

iii. K. Mullet <strong>and</strong> D. Sano, Designing Visual Interfaces: Communication oriented techniques. Prentice Hall,<br />

1994.<br />

BIS 3200: Project in Information Systems (4 CU)<br />

Course Description: The objective <strong>of</strong> this course is to give the student experience in developing independent skills<br />

<strong>and</strong> implementing non-trivial programming/ research projects.<br />

Indicative Content: Each student will pursue a lengthy programming project in any area <strong>of</strong> computer information<br />

systems. The project will be specified, designed <strong>and</strong> implemented, with one <strong>of</strong> the Pr<strong>of</strong>essors Lecturers as an<br />

adviser/ supervisor.<br />

BIS 3201: Strategic Management <strong>of</strong> Information Systems (3 CU)<br />

Course Description: Upon completion <strong>of</strong> this course, the student will have an underst<strong>and</strong>ing <strong>of</strong> the: Information<br />

needs <strong>of</strong> an organization <strong>and</strong> the role <strong>of</strong> information systems in providing them; Alternative ways to match the<br />

information systems function to the structure <strong>and</strong> behavior <strong>of</strong> the organization; The role <strong>of</strong> the CIO <strong>and</strong> other<br />

executives in managing an organization’s IS f unction;<br />

Indicative Content: This course will adopt an enterprise management perspective with the aim to develop an<br />

underst<strong>and</strong>ing <strong>of</strong> managerial <strong>and</strong> organizational performance <strong>and</strong> <strong>of</strong> strategic decision making, in a competitive<br />

business environment. It will cover conceptual <strong>and</strong> practical skills in integrating information systems into financial,<br />

organisational, marketing <strong>and</strong> production/service function <strong>of</strong> an organisation with an overall business strategy. Other<br />

topics include cross-cultural management, the management <strong>of</strong> high technology, managing the physical environment,<br />

<strong>and</strong> public sector management.<br />

98


Reference Books:<br />

i. W. Robson, Strategic Management <strong>and</strong> Information Systems: An Integrated Approach, Financial Times/<br />

Prentice Hall, 2nd edition, 1997.<br />

ii. S. Clarke, Information Systems Strategic Management: Rout ledge Series in Information Systems: An<br />

Integrated Approach, Rout ledge; 1st edition, 2006.<br />

CSC 3209: Computer Networks (4 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student should have; A general underst<strong>and</strong>ing <strong>of</strong> the important<br />

concepts in data networks; Knowledge <strong>of</strong> the problems which occur at various levels <strong>of</strong> a layered communication’s<br />

model <strong>and</strong> how these problems can be solved; Be introduced to network programming using the socket paradigm.<br />

Indicative Content: This course gives an introduction <strong>and</strong> an overview <strong>of</strong> the important concepts in data networks.<br />

Topics include: Introduction to data networks, problems which occur at various levels <strong>of</strong> a layered communications<br />

model, <strong>and</strong> how these problems can be solved. In particular, the course emphasizes the levels up to <strong>and</strong> including the<br />

transport layer, <strong>and</strong> how one can implement applications based on the services provided by the transport layer. An<br />

Important part <strong>of</strong> the course is network programming using the socket paradigm (Internet addressing, UDP, TCP,<br />

HTTP).<br />

Reference Books:<br />

i. S. Karris, Networks: Design <strong>and</strong> Management, Orchard Publications, 2008.<br />

ii. F. M. Nader, Computer <strong>and</strong> Communication Networks, Prentice Hall, 2006.<br />

BIS 3202: E-Governance (4 CU)<br />

Course Description: By completion <strong>of</strong> this course, the student should have an underst<strong>and</strong>ing <strong>of</strong>: The difference<br />

between e-governance <strong>and</strong> e-government; E-governance strategy <strong>and</strong> Public Policy issues for e-governance<br />

implementation; Infrastructure <strong>and</strong> applications required for e-governance.<br />

Indicative Content: The course will cover: the definitions <strong>of</strong> e-governance <strong>and</strong> e-government; e-governance<br />

(Strategy <strong>and</strong> Implementation);Public Policy for e-governance ( legal, ethical <strong>and</strong> other public issues, privacy,<br />

Intellectual property rights, Free speech, Consumer <strong>and</strong> seller protection);Infrastructure for e-governance (intranet,<br />

extranet, IP, web-based-client server, Internet security) <strong>and</strong> e-governance applications (online citizen access to<br />

governmental databases, e-procurement, e-licensing & e-democracy).<br />

Reference Books:<br />

i. G. D. Garson, Digital Government: Principles <strong>and</strong> Best Practices, IGI Publishing; illustrated edition, 2003.<br />

ii. D. M. West, Digital Government: Technology <strong>and</strong> Public Sector Performance, Princeton University Press;<br />

illustrated edition, 2007.<br />

BIT 3204 Enterprise Network Management (4 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student should: Have an underst<strong>and</strong>ing <strong>of</strong> what enterprise<br />

network management entails <strong>and</strong> how different it is from other network management techniques; Have an<br />

underst<strong>and</strong>ing <strong>of</strong> the various methods <strong>and</strong> tools used in implementing enterprise network management;<br />

Indicative Content: This course will cover the introduction to enterprise network management; the Internet <strong>and</strong><br />

ISO models, SNMP,ASN.I; structure <strong>of</strong> management information <strong>and</strong> MIB; Events <strong>and</strong> managed objects; EMS Vs<br />

NMS.NOC; remote <strong>and</strong> web-based management tools; OAM & P focus: operation, maintenance, performance<br />

monitoring <strong>and</strong> introduction <strong>of</strong> traffic engineering <strong>and</strong> load balancing.<br />

Reference Books:<br />

i. P. Oppenheimer, Top-Down Network Design, Cisco Press, 2nd edition, 2004.<br />

ii. A. Clemm, Network Management Fundamentals, Cisco Press, 1st edition, 2006.<br />

99


BIT 3205 Database (DB) Programming (4 CU)<br />

Course Description: By the end <strong>of</strong> this course, the student will: Underst<strong>and</strong> the use <strong>of</strong> SQLPlus <strong>and</strong> the SQL<br />

language with a fourth generation general purpose language to generate scripts, reports <strong>and</strong> database objects; Be able<br />

to write server side stored procedures <strong>and</strong> triggers; Apply the material in group database design <strong>and</strong> implementation<br />

<strong>of</strong> projects<br />

Indicative Content: In this course, students will design, critique <strong>and</strong> develop database applications using SQL with<br />

fourth generation languages <strong>and</strong> SQL embedded in third generation languages such as C. Topics include: modular<br />

design <strong>and</strong> development, module development, <strong>and</strong> compiling <strong>and</strong> linking. They also include use <strong>of</strong> triggers,<br />

embedded procedures, dynamic SQL preparation, <strong>and</strong> database cursors. Finally, exception <strong>and</strong> error h<strong>and</strong>ling <strong>and</strong><br />

development with in a local <strong>and</strong> distributed application environment will be discussed.<br />

Reference Books:<br />

i. G. Reese, Database Programming with JDBC <strong>and</strong> Java, O’Reilly Media, Inc.; 2nd edition, 2000.<br />

ii. M. Fisher, JDBC API Tutorial <strong>and</strong> Reference, Prentice Hall; 3rd edition, 2003.<br />

100


9.0 DEPARTMENT OF NETWORKS<br />

9.1 Introduction<br />

Traditional (isolated) IT solutions like desktop computing may have served us well in the past. But the growing<br />

need for ubiquitous computing in the 21st Century means these solutions can no longer meet the dem<strong>and</strong>s <strong>of</strong> the<br />

business communities. Today, users <strong>of</strong> computing technologies desire new ways <strong>of</strong> information access, <strong>and</strong> are<br />

dem<strong>and</strong>ing new computing models with secure access <strong>of</strong> services. To meet the emerging computing needs <strong>of</strong> the<br />

business <strong>and</strong> research communities, we think part <strong>of</strong> the answer lies in the well engineered data communication<br />

networks <strong>and</strong> s<strong>of</strong>tware solutions. Well engineered solutions, full <strong>of</strong> scientific insights allow for more dynamic,<br />

flexible <strong>and</strong> cheaper solutions with limited malfunctions.<br />

With the growing dem<strong>and</strong> <strong>of</strong> networked systems, the Department <strong>of</strong> Networks Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> IT,<br />

Makerere University has positioned herself as a number one centre in the region on data communication <strong>and</strong><br />

s<strong>of</strong>tware engineering teaching, research <strong>and</strong> consultancy. The department is internationally recognized for its work<br />

in the building IT human resource capacity in both the public <strong>and</strong> private sectors especially in universities. The<br />

department has trained thous<strong>and</strong>s <strong>of</strong> pr<strong>of</strong>essionals with theoretical <strong>and</strong> practical skills in the area <strong>of</strong> Data<br />

Communications Engineering, Network Administration, Mobile <strong>Computing</strong>, System Administration <strong>and</strong> S<strong>of</strong>tware<br />

Engineering. The team in the department continues to challenge itself for higher distinctions.<br />

The quest for better solutions to real problems has encouraged researchers in the department to establish strong<br />

partnerships with other institutions, private or public in the areas <strong>of</strong> Data Communication Networks, Mobile<br />

<strong>Computing</strong>, Digital security, S<strong>of</strong>tware Engineering <strong>and</strong> related disciplines. The collaborations <strong>of</strong> the department has<br />

established <strong>and</strong> aims at establishing focuses on human capacity building, optimal adaption <strong>of</strong> technology, research<br />

<strong>and</strong> development <strong>of</strong> new technologies.<br />

As a department, we are gratefully for the contribution made by our partners which include; NUFFIC, Nokia Inc.,<br />

HP Inc., Ug<strong>and</strong>a Police Force, Cisco Systems Inc., Google, MTN Ug<strong>and</strong>a, New Vision Group <strong>and</strong> Rockefeller<br />

Foundation.<br />

9.2 Bachelor <strong>of</strong> Science in S<strong>of</strong>tware Engineering Degree (BSc SE) Programme<br />

9.2.1 Overview<br />

This programme <strong>of</strong>fers a course <strong>of</strong> study leading to the B.Sc. in S<strong>of</strong>tware Engineering. The Bachelor <strong>of</strong> Science in<br />

S<strong>of</strong>tware Engineering Degree Programme will be <strong>of</strong>fered to give an opportunity to prospective students to undertake<br />

training in S<strong>of</strong>tware engineering at a bachelor’s degree level within Ug<strong>and</strong>a. With the growth <strong>of</strong> the ICT sector in<br />

Ug<strong>and</strong>a, there is need to produce graduates who are job creators using the skills obtained in s<strong>of</strong>tware Engineering.<br />

The objectives <strong>of</strong> the programme are;<br />

a) To produce graduates who are well-educated in the fundamental concepts <strong>of</strong> s<strong>of</strong>tware engineering <strong>and</strong> able<br />

to continue their pr<strong>of</strong>essional development throughout their careers. The course combines theory with<br />

consideration <strong>of</strong> its application in s<strong>of</strong>tware engineering practice.<br />

b) To build human resource capacity in the S<strong>of</strong>tware engineering discipline in both the public <strong>and</strong> private<br />

sectors to students who wish to become pr<strong>of</strong>icient in developing s<strong>of</strong>tware in a variety <strong>of</strong> languages,<br />

platforms <strong>and</strong> applications using a methodical approach.<br />

c) To produce graduates with good communication skills capable <strong>of</strong> functioning responsibly in diverse<br />

environments <strong>and</strong> able to work in teams.<br />

101<br />

Dr. Benjamin Kanagwa<br />

Head <strong>of</strong> Department


d) To produce graduates who are innovative <strong>and</strong> are capable <strong>of</strong> creating jobs;<br />

1. Target Group<br />

The revised programme targets three categories <strong>of</strong> people, namely Direct Entry, Diploma Holders <strong>and</strong> Mature Entry<br />

Scheme in relevant programmes.<br />

2. Minimum Admission Requirements<br />

Admission to the B.Sc. in S<strong>of</strong>tware Engineering (BSc.SE) degree course will be through three avenues; Direct Entry,<br />

Mature age <strong>and</strong> Diploma entry schemes. To be admitted for a course leading to an award <strong>of</strong> Bachelor <strong>of</strong> Science in<br />

S<strong>of</strong>tware Engineering (BSc.SE) Degree, a c<strong>and</strong>idate must satisfy the general admission requirements for Makerere<br />

University. In addition, the following regulations shall hold:<br />

a) Direct Entry<br />

C<strong>and</strong>idates seeking admission through this avenue must have obtained:<br />

i. At least two principal passes at the same sitting in Ug<strong>and</strong>a Advanced Certificate <strong>of</strong> Education (UACE)<br />

<strong>of</strong> which one <strong>of</strong> them must be in either Mathematics or Physics.<br />

ii. A minimum weighted points set by the Admissions Board.<br />

iii. For purposes <strong>of</strong> computing weighted points, the A- level subjects shall be grouped <strong>and</strong> weighted as follows:<br />

Group Weight Subjects<br />

Essential 3 Any two best done subjects among: Mathematics, Physics,<br />

Economics, Chemistry, Biology, Geography, Literature,<br />

Entrepreneurship, Technical Drawing <strong>and</strong> Fine Art<br />

Relevant 2 Any other best done subject <strong>of</strong> all A’ level subjects<br />

Desirable 1 General Paper, Sub-Mathematics<br />

Others 0.5 All others.<br />

b) Mature Entry Scheme<br />

For admission under Mature Entry Scheme, a c<strong>and</strong>idate must have passed a Makerere University Mature Age<br />

Entry Examinations.<br />

c) Diploma Holders<br />

Applicants should possess at least a second class (lower division) Diploma in Computer Science, Engineering,<br />

Statistics or any other diploma with either Mathematics or Computer Science as one <strong>of</strong> the subjects from any<br />

recognized institution.<br />

3. Nature <strong>of</strong> the Programme<br />

The day programme has both government <strong>and</strong> privately sponsored students. The evening programme has privately<br />

sponsored students only.<br />

4. Duration<br />

The duration <strong>of</strong> the programme shall be three (4) academic years consisting <strong>of</strong> eight semesters <strong>and</strong> two recess terms.<br />

Each semester lasts for seventeen (17) weeks <strong>and</strong> two (2) weeks <strong>of</strong> which are for examinations.<br />

5. Tuition Fees<br />

Tuition fees for privately sponsored students shall be 2,600,000 Ug<strong>and</strong>a Shillings per year for Ug<strong>and</strong>ans <strong>and</strong><br />

5,050,000 Ug<strong>and</strong>a Shillings per year for non Ug<strong>and</strong>ans. This is the same tuition fees for the existing curriculum.<br />

6. Semester Load <strong>and</strong> Minimum Graduation Load<br />

102


The normal semester load is between 15 <strong>and</strong> 21 credit units. The minimum graduation load is 167 credit units<br />

for courses passed including all the compulsory courses <strong>and</strong> required number <strong>of</strong> electives within a period<br />

stipulated by the University.<br />

9.2.2 Programme Structure<br />

Details <strong>of</strong> the Programme structure as specified below where CU, LH, PH, TH, <strong>and</strong> CH represent Credit Units,<br />

Lecture Hours, Practical Hours, Tutorial Hours <strong>and</strong> Contact Hours respectively.<br />

Code Course Title CU LH TH PH CH<br />

Semester 1<br />

CSK 1101 Communication Skills 3 30 30 -- 45<br />

CSC 1100 Computer Literacy 4 45 -- 30 60<br />

BIT 1102 Communication Technology <strong>and</strong> Internet 4 45 -- 30 60<br />

BSE 1103 Systems Analysis <strong>and</strong> Design 3 30 30 -- 45<br />

BSE 1104 Discrete Mathematics 3 30 30 -- 45<br />

BSE 1105 Business Law 3 30 30 -- 45<br />

Semester 2<br />

BSE 1200 S<strong>of</strong>tware Development Principles I 4 45 -- 30 60<br />

BSE 1202 Principles <strong>of</strong> Programming I 4 45 -- 30 60<br />

BSE 1201 Numerical Analysis 3 30 30 -- 45<br />

CSC 1203 Information Systems 3 30 30 -- 45<br />

BSE 1205 Introduction to Internet Programming 4 45 -- 30 60<br />

CSC 1204 Research Methodology 3 30 30 -- 45<br />

Year 1: Recess Term:<br />

BSE 1301 Pr<strong>of</strong>essional S<strong>of</strong>tware Engineering Mini Practical Project I 4 -- -- 120 60<br />

Semester 3:<br />

BSE 2101 Introduction to Database Systems 4 45 -- 30 60<br />

BSE 2102 S<strong>of</strong>tware Development Principles II 4 45 -- 30 60<br />

BSE 2103 Principles <strong>of</strong> Programming II 4 45 -- 30 60<br />

CSC 2100 Data Structures <strong>and</strong> Algorithms 4 45 -- 30 45<br />

BSE 2104 Computer Architecture 3 30 30 -- 45<br />

BSE 2105 Formal Methods 3 30 30 -- 45<br />

Electives: (No Elective Course)<br />

Semester 4<br />

BSE 2200 System S<strong>of</strong>tware 4 45 -- 30 60<br />

BSE 2201 Network Application Development 4 45 -- 30 60<br />

BSE 2202 Embedded Systems S<strong>of</strong>tware 4 45 -- 30 60<br />

BSE 2203 Computer Networks <strong>and</strong> Data communication 4 45 -- 30 60<br />

BSE 2204 Modeling in Information Systems 4 45 -- 30 60<br />

Electives: (No Elective Course)<br />

Year 2: Recess Term:<br />

BSE 2301 Pr<strong>of</strong>essional S<strong>of</strong>tware Engineering Mini Practical Project II 4 -- -- 120 60<br />

Semester 5<br />

BSE 3101 IT Projects Management <strong>and</strong> Development 4 45 -- 30 60<br />

BSE 3102 Object-Oriented S<strong>of</strong>tware Engineering 4 45 -- 30 60<br />

BSE 3103 Requirements Engineering 4 45 -- 30 60<br />

CSC 3100 Database Management Systems 4 45 -- 30 60<br />

103


BSE 3104 S<strong>of</strong>tware Metrics 3 30 -- 30 45<br />

Electives: (At least 1 Elective Course)<br />

BSE 3105 S<strong>of</strong>tware Evolution 4 45 -- 30 60<br />

BSE 3106 Mobile Networks <strong>and</strong> <strong>Computing</strong> 4 45 30 -- 60<br />

BSE 3107 Real-Time <strong>and</strong> Embedded Systems 4 45 -- 30 60<br />

Semester 6<br />

BSE 3201 S<strong>of</strong>tware Architecture 4 45 -- 30 60<br />

BSE 3202 Distributed Systems Development 4 45 -- 30 60<br />

BSE 3203 Object-Oriented Programming 4 45 -- 30 60<br />

BSE 3204 Human-Computer Interface Design 4 45 -- 30 60<br />

Electives: (At least 1 Elective Course)<br />

BSE 3205 Unix Shell Programming 4 45 -- 30 60<br />

CSC 3202 Concepts <strong>of</strong> CAD/CAM 4 45 -- 30 60<br />

BSE 3206 Computer Graphics 4 45 -- 30 60<br />

Year 3: Recess Term:<br />

BSE 3301 Internship 4 -- -- 120 60<br />

Semester 7<br />

BSE 4100 S<strong>of</strong>tware Engineering Project I 5 -- -- 150 75<br />

BSE 4101 S<strong>of</strong>tware Reliability <strong>and</strong> Testing 4 45 -- 30 60<br />

BSE 4102 Ethics for Pr<strong>of</strong>essional Engineers 3 30 30 -- 45<br />

BSE 4103 Entrepreneurship <strong>and</strong> Business 3 30 30 -- 45<br />

Semester 8:<br />

BSE 4200 S<strong>of</strong>tware Engineering Project II 5 -- -- 150 75<br />

BSE 4201 S<strong>of</strong>tware Design Patterns 4 45 30 -- 60<br />

BSE 4203 Information Technology <strong>and</strong> Society 3 30 30 -- 45<br />

BSE 4204 Emerging trends in s<strong>of</strong>tware engineering 3 30 30 -- 45<br />

9.2.3 Course Unit Description<br />

CSK 1101: Communication Skills (3 CU)<br />

Course Description: This course provides students with skills <strong>of</strong> effective communication. These include verbal,<br />

written, <strong>and</strong> gesture. The course aims at facilitating students appropriately <strong>and</strong> clearly communicate with others. The<br />

aims <strong>of</strong> the course unit are to: Improve the communication competencies <strong>of</strong> the student; Improve problem solving<br />

strategies <strong>of</strong> students; improve the art <strong>of</strong> critical thinking within the student; improve the student’s ability to collect<br />

<strong>and</strong> synthesize information; provide students with knowledge to utilize the library <strong>and</strong> other educational resources.<br />

Indicative Content:<br />

• Writing Skills: Thinking critically/selectively before the writing process; selecting the relevant details;<br />

organising the relevant details logically; writing the reports essays, letters <strong>and</strong> taking notes in appropriate<br />

register; avoiding ambiguities, fallacies, irrationalities; providing supportive evidence; editing documents,<br />

pro<strong>of</strong> reading; writing <strong>and</strong> exp<strong>and</strong>ing information; Quoting <strong>and</strong> citing references; writing a curriculum<br />

vitae.<br />

• Reading Skills: The use <strong>of</strong> skimming; scanning inference <strong>and</strong> prediction in reading; Intensive <strong>and</strong> critical<br />

reading; Acquisition <strong>of</strong> specific reading skills; Interpretation <strong>of</strong> non linear texts; Locating information <strong>and</strong><br />

comprehension.<br />

• Speaking <strong>and</strong> Listening Skills to Enhance Effective Public Relations: The art <strong>of</strong> persuasion in effective<br />

speaking; Conducting interviews; Conducting meetings; Participating in group discussions <strong>and</strong> tutorials;<br />

104


Non verbal communication clues; Presentation seminars, seeking clarification etc.; Expression <strong>of</strong><br />

politeness; Public speaking; Proper listening skills.<br />

• Examination Skills; Preparing for examinations: How much one gets from group discussions; Proper<br />

revision; Underst<strong>and</strong>ing examination rubric; Budgeting time during examination process; Writing<br />

examinations <strong>and</strong> following instructions<br />

Reference Books:<br />

i. B. Bough, 101 ways to improve your communication skills instantly, 4th edition, 2005.<br />

ii. P. Klavs, The hard Truth About s<strong>of</strong>t skills: Work Place Lessons Smart People wish they had learned sooner,<br />

2008.<br />

CSC 1100: Computer Literacy (4 CU)<br />

Course Description: In this course, students are to learn about the basic organization, concepts <strong>and</strong> terminologies in<br />

a computerized environment. They are also to get an in depth underst<strong>and</strong>ing <strong>of</strong> common computer applications. The<br />

use <strong>of</strong> related applications in different operating systems will be explored. The aims <strong>of</strong> the course unit are to: Equip<br />

students with basic knowledge about computer organization; Equip students with skills <strong>of</strong> using common <strong>of</strong>fice<br />

applications; Expose students to different operating systems; Equip students with skills <strong>of</strong> how to use the Internet;<br />

<strong>and</strong> equip students with knowledge about common text editors in different operating systems. On completion <strong>of</strong> this<br />

course unit, the students will be able to: Describe the different parts <strong>of</strong> a computer; describe the historical evolution<br />

<strong>of</strong> computers; competently use the common <strong>of</strong>fice applications in at least two operating systems <strong>and</strong> competently<br />

use common text editor in at least two operating systems.<br />

Indicative Content: General computer organisation; Historical perspectives <strong>of</strong> computing; common Micros<strong>of</strong>t<br />

<strong>of</strong>fice packages; <strong>of</strong>fice packages in other operating systems; text editors; Common Linux <strong>and</strong> Using the web.<br />

Reference Books:<br />

i. J. Preston, R. Ferret <strong>and</strong> S. Gaskin, Computer Literacy, 2007.<br />

ii. J. Janrich <strong>and</strong> D. Oja, Practical Computer Literacy, 2001.<br />

BIT 1102 Communications Technology & Internet (3 CU)<br />

Course Description: This course is intended to be at the introductory level in a curriculum <strong>and</strong> to provide<br />

foundation skills for subsequent network-related courses, for example, Internet Programming. It provides an<br />

overview <strong>of</strong> Communications Technology <strong>and</strong> Internet. The goal is to help students underst<strong>and</strong> the role <strong>and</strong> meaning<br />

<strong>of</strong> Communications Technology <strong>and</strong> Internet in the contemporary world. The course aims to: Give students main<br />

guidelines for the future study <strong>of</strong> networks-related courses; Develop their knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> core<br />

networking concepts <strong>and</strong> technologies; Internet <strong>and</strong> intranet tools; basics <strong>of</strong> networking protocols; basics <strong>of</strong> network<br />

security; core Internet infrastructure; personal, business, social, legal <strong>and</strong> ethical implications <strong>of</strong> Internet governance<br />

Indicative Content: Networking Concepts; Internet <strong>and</strong> Intranet Tools; Protocols; Security; Internet; Infrastructure<br />

<strong>and</strong> Governance – Personal, Business, Social, Legal <strong>and</strong> Ethical; Implications<br />

Reference Books:<br />

i. D. E. Comer, The Internet Book, Prentice Hall Inc., Upper Saddle River, 2000.<br />

ii. D. Amor, Internet Future Strategies: How Pervasive <strong>Computing</strong> Services Will Change the World, Prentice<br />

Hall Inc., Upper Saddle River, 2002.<br />

iii. I. Zeid, Mastering the Internet <strong>and</strong> HTML, Prentice Hall Inc., Upper Saddle River, 2000.<br />

iv. Internet Getting Started, Editions ENI, Nantes, 2001.<br />

v. A. E. Grant, J. H, Meadows, Communication Technology Update <strong>and</strong> Fundamentals, Focal Press, 2008.<br />

vi. M. Mirabito, B. Morgenstern, The New Communications Technologies, 5th edition: Applications, Policy,<br />

<strong>and</strong> Impact, Focal Press, 2004.<br />

105


vii. M. Mirabito, B. Morgenstern, Communication Technology <strong>and</strong> Social Change: Theory <strong>and</strong> Implications<br />

Lea's Communication Series, Lawrence Erlbaum, 2006.<br />

BSE 1103: System Analysis <strong>and</strong> Design (3 CU)<br />

Course Description: This course introduces established <strong>and</strong> evolving methodologies for the analysis <strong>and</strong> design <strong>of</strong><br />

an information system. Great emphasis is placed on system characteristics, managing projects, prototyping,<br />

CASE/OOM tools, systems development life cycle phases, the role <strong>of</strong> the systems analyst, systems selection,<br />

definition <strong>of</strong> systems requirements, feasibility analysis, system design, <strong>and</strong> system architecture are topics included.<br />

Upon completion, students should be able to analyze a problem <strong>and</strong> design an appropriate solution using a<br />

combination <strong>of</strong> tools <strong>and</strong> techniques.<br />

Indicative Content:<br />

• SAD Fundamentals: Introduction to IS & types <strong>of</strong> IS; Need for SAD & role <strong>of</strong> Analyst; SDLC & use <strong>of</strong><br />

CASE tools; Determining feasibility & mgt <strong>of</strong> SAD activities.<br />

• Information Requirements Analysis Information gathering (Interactive methods, unobtrusive methods,<br />

RAD, prototyping); Determining Systems requirements (types <strong>of</strong> requirements)<br />

• The Analysis Process: Structuring systems requirements (describing process specifications & structured<br />

decisions) Data modelling; Process modelling; Preparing System proposals.<br />

• The Design Process: Designing effective output; Designing effective input (Accurate Data entry<br />

Procedures); User Interface design; Database Design.<br />

• System Implementation: Quality Assurance through S<strong>of</strong>tware Engineering (design with structured charts,<br />

testing, maintenance, auditing, Quality mgt); Implementing Information Systems (user training, conversion<br />

strategies, systems evaluation<br />

• Project Management: Stages <strong>of</strong> system Development; Project planning; Estimation & Project Monitoring &<br />

Control<br />

• Introduction to Object-oriented Systems Analysis & Design using UML<br />

Reference Books:<br />

i. Kendall & Kendall, Systems Analysis <strong>and</strong> Design, 6th edition, Pearson Prentice Hall, 2005.<br />

ii. J. A. H<strong>of</strong>fer, J. F. George <strong>and</strong> J. S. Valacich , Modern Systems Analysis <strong>and</strong> Design, 2nd edition, Addison-<br />

Wesley, 1999.<br />

BSE 1104: Discrete Mathematics (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Be familiar with the terminology,<br />

operations, <strong>and</strong> symbols <strong>of</strong> set theory, <strong>and</strong> with formal logic; Be able to use logic to determine the validity <strong>of</strong> an<br />

argument; Be able to construct the pro<strong>of</strong> <strong>of</strong> a theorem directly, by the contra positive, by cases, by contradiction, by<br />

truth table, by counter-example, <strong>and</strong> by mathematical induction; Be able to identify a relation; specifically, a partial<br />

order, equivalence relation, or total order; Be able to identify a function; specifically, subjective, injective, <strong>and</strong><br />

objective functions; Be able to perform operations on matrices; Be familiar with the terminology for graphs <strong>and</strong><br />

trees; Be able to trace Euler <strong>and</strong> Hamiltonian paths; Be able to construct minimal spanning trees <strong>and</strong> adjacency<br />

matrices for graphs; Have begun to develop a logical mode <strong>of</strong> thought that will be applicable to computer design,<br />

both hardware <strong>and</strong> s<strong>of</strong>tware.; Be able to underst<strong>and</strong> sequential logic; Be able to underst<strong>and</strong> sets <strong>and</strong> relations <strong>and</strong> be<br />

able to represent information using zeros <strong>and</strong> ones.<br />

Indicative Content: Set algebra, logic, relations <strong>and</strong> functions, recursion, matrices; graph theory, <strong>and</strong> methods <strong>of</strong><br />

pro<strong>of</strong>. Emphasis is on an algorithmic approach; Set theory; Methods <strong>of</strong> pro<strong>of</strong>; Recursion; Matrix algebra; Graphs<br />

<strong>and</strong> trees. Application to data structure <strong>and</strong> graph representations, partial ordered sets, trees, algebraic structures,<br />

lattices <strong>and</strong> Boolean algebra, semi groups, groups, introduction to grammars <strong>and</strong> machines <strong>and</strong> languages, error<br />

correcting codes; Representation <strong>of</strong> information two’s complement arithmetic. Combinational logic: switching<br />

106


algebra, canonical forms, Karnaugh maps, combinational network analysis <strong>and</strong> design, MSI modules. Sequential<br />

logic: latch, flip-flop <strong>and</strong> logic design, state diagram, sequential network analysis <strong>and</strong> synthesis, register, counter,<br />

memory organization.<br />

Reference Books:<br />

i. L.S. Bobrow, <strong>and</strong> M. A. Arbib, Discrete Mathematics: Applied Algebra for Computer <strong>and</strong> Information<br />

Science, Philadelphia, PA: Saunders, 1974.<br />

ii. J. A, Dossey, A, D, Otto, L. Spence, <strong>and</strong> C. V. Eynden, Discrete Mathematics, 3rd edition. Reading, MA:<br />

Addison-Wesley, 1997.<br />

iii. K. Balakrishnan, Introductory Discrete Mathematics, New York: Dover, 1997.<br />

BSE 1105: Business Law (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Underst<strong>and</strong> the basic nature <strong>of</strong> the<br />

legal system including the court structure <strong>and</strong> the role <strong>of</strong> lawyers; Underst<strong>and</strong> the different types <strong>of</strong> torts <strong>and</strong> crimes;<br />

Be familiar with contract law including all the elements <strong>of</strong> a contract under the common law as well as the Uniform<br />

Commercial Code; Underst<strong>and</strong> the basic theories <strong>of</strong> products liability law; Be familiar with the creation <strong>of</strong> security<br />

interests <strong>and</strong> the rules that secured creditors must follow; Underst<strong>and</strong> the basic features <strong>of</strong> bankruptcy law;<br />

Underst<strong>and</strong> the general nature <strong>of</strong> an agency relationship<br />

Indicative Content: This subject acquaints the student with legal concepts <strong>and</strong> their application to business <strong>and</strong><br />

personal situations. Attention is paid to problems arising under the following topical headings: basic nature <strong>of</strong> the<br />

legal system; tort law; contract law, including both common law principles <strong>and</strong> the provisions <strong>of</strong> the Uniform<br />

Commercial Code; products liability law; debtor/creditor relations; bankruptcy law; <strong>and</strong> agency law. Introduction to<br />

Legal System; Tort <strong>and</strong> Criminal law; Contract Law; Uniform Commercial Code; Products Liability Law; Secured<br />

Transactions; Bankruptcy; Agency.<br />

Reference Books:<br />

i. Ibp Usa <strong>and</strong> Emerging Markets Investment Center, Ug<strong>and</strong>a Business Law <strong>H<strong>and</strong>book</strong>, International<br />

Business Publications, USA; 2nd edition, 1999.<br />

BSE 1200: Principles <strong>of</strong> S<strong>of</strong>tware Development I (4 CU)<br />

Course Description: Upon successful completion, the student should be able to: Demonstrate mastery <strong>of</strong> the<br />

s<strong>of</strong>tware development process, describing core activities at various levels <strong>of</strong> s<strong>of</strong>tware development; Perform<br />

requirement analysis <strong>of</strong> a simple s<strong>of</strong>tware systems; Manage a team <strong>of</strong> developers; Demonstrate knowledge <strong>of</strong> at<br />

least one tool <strong>of</strong> s<strong>of</strong>tware documentation; Work in a team; <strong>and</strong> design, develop, test <strong>and</strong> valid a s<strong>of</strong>tware product.<br />

Indicative Content: Introduction: What is s<strong>of</strong>tware engineering? Phases in the development <strong>of</strong> s<strong>of</strong>tware; S<strong>of</strong>tware<br />

Management: Planning <strong>and</strong> controlling a s<strong>of</strong>tware development project. Requirements analysis: Requirements<br />

specification, humans as information sources, tools for documenting the requirements (SADT, PSL/PSA, Ada-based<br />

analysis methods). S<strong>of</strong>tware design: Abstraction, modularity, information hiding, design methods, design<br />

documentation; Testing: Test objectives, verification <strong>and</strong> validation, manual test techniques, techniques for<br />

functional <strong>and</strong> structural testing.<br />

Reference Books:<br />

i. B. Boehm <strong>and</strong> R. Turner, Balancing Agility <strong>and</strong> Discipline: A Guide for the Perplexed, Addison Wesley<br />

Pr<strong>of</strong>essional, 2003.<br />

ii. A. M. Davis, 201 Principles <strong>of</strong> S<strong>of</strong>tware Development, McGraw-Hill, March, 1995.<br />

BSE 1201: Numerical Analysis (4 CU)<br />

Course Description: Upon completion <strong>of</strong> the course, the student should be able to: Demonstrate factual knowledge<br />

including the mathematical notation <strong>and</strong> terminology used in the course; Describe the fundamental principles<br />

including the laws <strong>and</strong> theorems arising from the concepts covered in this course; Apply course material along with<br />

107


techniques <strong>and</strong> procedures covered in this course to solve practical problems; <strong>and</strong> write numerical Programmes,<br />

such as Mat lab Programmes, to solve the above problems.<br />

Indicative Content: Numerical linear algebra, numerical solution <strong>of</strong> systems <strong>of</strong> non-linear equations,<br />

approximations, Fast Fourier-Transformation, numerical integration, deference equations <strong>and</strong> numerical solution <strong>of</strong><br />

ordinary differential equations. Problem solving is an important part <strong>of</strong> the course.<br />

Reference Book:<br />

i. R. L. Burden, <strong>and</strong> D. J, Faires, Numerical Analysis, Brooks/Cole Publishing Co., Pacific Grove, CA, 8th<br />

edition, 2001.<br />

BSE 1202: Principles <strong>of</strong> Programming I (4 CU)<br />

Course Description: Upon completion <strong>of</strong> the course, the student should be able to: Demonstrate mastery <strong>of</strong> basic<br />

programming concepts, like Programme structure <strong>and</strong> control, Application Programme Interface (API), memory<br />

management among others; Demonstrate sufficient underst<strong>and</strong>ing <strong>of</strong> Java as a programming language; Develop<br />

simple web <strong>and</strong> st<strong>and</strong> alone applications in Java; Work with an Integrate Development Kit like NETBEANS with<br />

minimal difficulties; <strong>and</strong> differentiate the various programming languages (i.e., in terms <strong>of</strong> their strength <strong>and</strong><br />

weakness).<br />

Indicative Content: An introduction to the Java programming language. The course will include an introduction to<br />

the concepts <strong>of</strong> object oriented programming <strong>and</strong> will show how Java supports this programming paradigm.<br />

Students will learn about the Java environment <strong>and</strong> will write both applets (programs that execute in a Web browser)<br />

<strong>and</strong> applications (st<strong>and</strong> alone Programme). In addition to learning about basic language statements, students will<br />

also learn how Java provides support for such diverse applications as Web pages, multimedia, educational, etc<br />

Reference Books:<br />

i. R. W. Sebesta, Concepts <strong>of</strong> Programming Languages, 5th edition, Addison Wesley, 2002.<br />

ii. R. Sethi, Progamming Languages: Concepts <strong>and</strong> Constructs, 2nd edition. Addison Wesley, 1996.<br />

iii. Y. D. Liang, Introduction to Java Programming: Comprehensive Version, Prentice Hall, 2006.<br />

BSE 1204: Introduction to Internet Programming (4 CU)<br />

Course Description: On successfully completing this course, students will be able to: Set up a Net development<br />

including environment, including MSDE; Apply core ASP.NET technologies to develop Web applications; Author<br />

server-side ASP.NET code in C#; Create Web applications are using ADO.NET to interact with SQL Server; <strong>and</strong> (v)<br />

Write ASP.NET pages that integrate into traditional DHTML-driven pages.<br />

Indicative Content: ASP.NET development fundamentals, providing h<strong>and</strong>s-on experience through the building <strong>of</strong><br />

a fully functional time <strong>and</strong> expense tracking application like TimeEx. Starting with an overview <strong>of</strong> server-side<br />

technologies, it then goes into the C# (C Sharp) programming language commonly used for ASP.NET <strong>and</strong> database<br />

development utilizing MSDE (Micros<strong>of</strong>t SQL Server Desktop Engine). Particular attention is given to techniques for<br />

integrating ASP.NET pages with the advanced client-side (DHTML) technologies covered first.<br />

Reference Books:<br />

ii. Z. Ruvalcaba, Build Your Own ASP.NET Website Using C# &VB.NET, 1st edition.<br />

iii. P. J. Deite <strong>and</strong> H. M. Deitel, Internet & World Wide Web: How to Programme, Prentice Hall; 4th edition,<br />

2007.<br />

iv. S. Walther, ASP.NET Unleashed, Sams Publishing, 2003.<br />

v. K. Kalata, Internet Programming with VBScript <strong>and</strong> JavaScript (Web warrior series), Course Technology,<br />

1st edition, 2000.<br />

108


CSC 1203: Information Systems (3 CU)<br />

Course Description: On completion <strong>of</strong> this course, the students should have achieved the following: An<br />

underst<strong>and</strong>ing <strong>of</strong> characteristics <strong>of</strong> information systems <strong>and</strong> their management; Technology <strong>and</strong> its effective<br />

utilization within organizations; Skills in evaluating <strong>and</strong> applying appropriate methods <strong>and</strong> technologies for<br />

representing, managing <strong>and</strong> disseminating information; <strong>and</strong> Skills in contributing to information system<br />

implementation using sound principles, an appreciation <strong>of</strong> the necessary legal, ethical <strong>and</strong> pr<strong>of</strong>essional values; An<br />

underst<strong>and</strong>ing <strong>of</strong> information services; Underst<strong>and</strong>ing <strong>of</strong> principles <strong>of</strong> secure computing; Core considerations <strong>of</strong><br />

information systems acquisition <strong>and</strong> adaptation; <strong>and</strong> basic project management skills.<br />

Indicative Content: Information Systems fundamentals; The role <strong>of</strong> Information Systems in an organisation; The<br />

shift from Data Processing Systems via Information Systems to Knowledge-Based Systems; Information Systems<br />

boundaries; How information <strong>and</strong> knowledge add value to an organization; The Information Technology component<br />

<strong>of</strong> Information Systems; Information Systems Engineering. Organizational strategies <strong>and</strong> objectives; Strategic<br />

planning; Human resource development; Budgeting, costing, charging, hire versus buy decisions; Hardware <strong>and</strong><br />

s<strong>of</strong>tware procurement: request for proposal, evaluation, selection, contracting <strong>and</strong> maintenance; Security in<br />

computing: continuity <strong>of</strong> processing, controls <strong>and</strong> planning for st<strong>and</strong>by; Computer audit; Project management:<br />

approaches, tools, site planning <strong>and</strong> installation; Implementation strategy; The Information Center;<br />

Reference Books:<br />

i. R. Stair <strong>and</strong> G. Reynolds, Fundamentals <strong>of</strong> Information Systems, Course Technology; 5th edition, 2009.<br />

ii. N. Kumar, Management Information System, Anmol Publications PVT. LTD.<br />

iii. L. Jessup <strong>and</strong> J. Valacich, Information Systems Today: Managing in the Digital World, Prentice Hall, 3rd<br />

edition, 2007.<br />

iv. J. A. O’Brien, Introduction to Information Systems: Essentials for the Internet Worked Enterprise,<br />

Irwin/McGraw-Hill, 2000.<br />

BSE 1205: Research Methodology (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should be able to: Identify interesting<br />

problems <strong>of</strong> research <strong>and</strong> develop appropriate strategies to address the problems identified; Demonstrate ethical<br />

consideration in conduction research; Show knowledge <strong>and</strong> underst<strong>and</strong>ing <strong>of</strong> Statistical <strong>and</strong> non-Statistical Research<br />

Methods; Use statistical packages to analyze data <strong>and</strong> make scientifically sound conclusions based on the analysis;<br />

Interpret, explain, <strong>and</strong> experiment through writing, oral presentation, various multi-media modes, <strong>and</strong> in a classroom<br />

setting; <strong>and</strong> demonstrate reflective, reflexive, creative, interpretative, evaluative, critical, <strong>and</strong> analytical thinking<br />

skills.<br />

Indicative Content: This course is an introduction to research, statistical analysis, <strong>and</strong> decision making. Close<br />

attention is paid to data types, data contributions, the identification <strong>of</strong> variables, <strong>and</strong> descriptive data presentation<br />

techniques. Students are introduced to both parametric <strong>and</strong> nonparametric data analysis procedures including<br />

independent <strong>and</strong> dependent sample tests, chi-square analysis, <strong>and</strong> simple analysis <strong>of</strong> variance. Hypothesis testing<br />

<strong>and</strong> the use <strong>of</strong> statistical s<strong>of</strong>tware packages are emphasized.<br />

Reference Books;<br />

i. J. M. Ruane, Essentials <strong>of</strong> Research Methods, Montclair State University, 2004.<br />

BSE 1301: Pr<strong>of</strong>essional S<strong>of</strong>tware Engineering Mini Practical Project I (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should: Demonstrate mastery <strong>of</strong> a<br />

specific programming language <strong>and</strong> development platform; Carry out requirement engineering for a particular<br />

project; <strong>and</strong> demonstrate ability to develop a mini application or systems with minimal difficulty.<br />

Indicative Content: An introduction to a specific pr<strong>of</strong>essional s<strong>of</strong>tware certification course is covered.<br />

109


Reference Books:<br />

i. A. Koenig <strong>and</strong> B. E. Moo, Accelerated C++: Practical Programming by Example, Addison-Wesley, 2008.<br />

ii. J. Friesen, Beginning Java SE 6 Platform: From Novice to Pr<strong>of</strong>essional, , Apress October 2007,<br />

iii. S. Karam, <strong>and</strong> R. Freeman, Easy Oracle Jumpstart: Oracle Database Management Concepts <strong>and</strong><br />

Administration.<br />

iv. S. Feuerstein, B. Pribyl <strong>and</strong> C. Dawes, Oracle PL/SQL Language Pocket Reference, 4th edition, OReilly,<br />

2007.<br />

BSE 2102: S<strong>of</strong>tware Development Principles II (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the c<strong>and</strong>idate should be: Able to describe the<br />

history <strong>of</strong> s<strong>of</strong>tware development <strong>and</strong> s<strong>of</strong>tware life cycle management; Able to address various challenges <strong>of</strong> user<br />

interface design <strong>and</strong> adaption; Demonstrate ability to carry out system feasibility study <strong>and</strong> document requirements;<br />

Able to carry out s<strong>of</strong>tware modularization using one <strong>of</strong> the most popular s<strong>of</strong>tware design tools; Show ability to<br />

manage a s<strong>of</strong>tware development process; Able to design, implement <strong>and</strong> deploy a s<strong>of</strong>tware product; <strong>and</strong> Able to<br />

performance s<strong>of</strong>tware correctness <strong>and</strong> testing with minimum difficulties.<br />

Indicative Content: History <strong>of</strong> s<strong>of</strong>tware design <strong>and</strong> development, S<strong>of</strong>tware crisis, S<strong>of</strong>tware life cycle Management<br />

issues, User interfacing, Documentation, Requirements Analysis <strong>and</strong> Definition, Feasibility study, System<br />

specification, Functional s<strong>of</strong>tware specification Methods, Tools, Design Methodologies: structured design,<br />

functional decomposition, data-flow (data-driven), data structure (Jackson), object-oriented design, Tools:<br />

abstraction, structure chart, data-flow diagram, Programme design language, structured walkthrough,<br />

Implementation <strong>and</strong> Testing, Programming environments, teams, languages, <strong>and</strong> style, Strategies for maintainability<br />

<strong>and</strong> reusability, Test case design, Programme testing, <strong>and</strong> system testing, Quality assurance, verification, validation,<br />

reliability, Testing methodologies, Evolution, Operation; performance analysis <strong>and</strong> measurement Maintenance<br />

Reference Books:<br />

i. B. Boehm <strong>and</strong> R. Turner, Balancing Agility <strong>and</strong> Discipline: A Guide for the Perplexed, Addison Wesley<br />

Pr<strong>of</strong>essional, 2003<br />

ii. A. M. Davis, 201 Principles <strong>of</strong> S<strong>of</strong>tware Development, McGraw-Hill, 1995<br />

BSE 2105: Formal Methods (3 CU)<br />

Course Description: Demonstrate factual knowledge including the mathematical notation <strong>and</strong> terminology used in<br />

the course; Be able describe the fundamental principles including the laws <strong>and</strong> theorems arising from the concepts<br />

covered in this course; Be able to apply course material along with techniques <strong>and</strong> procedures covered in this course<br />

to solve practical problems; <strong>and</strong> demonstrate programming skills by writing numerical Programmes, such as Mat lab<br />

Programmes, to solve the above problems.<br />

Indicative Content: Foundations; Basic concepts; Verification; Tools <strong>and</strong> systems; animation – Mir<strong>and</strong>a <strong>and</strong> ZANS<br />

Nitpick; The OBJ family <strong>of</strong> languages, LARCH. Optional Topics (as time permits): State charts, Integrated creation<br />

<strong>of</strong> a Programme <strong>and</strong> its correctness pro<strong>of</strong> 3; Automatic Programme synthesis, Scripting Languages.<br />

Reference Books:<br />

i. A. Diller, Z: An Introduction to Formal Methods, 2nd edition, Wiley, 1994.<br />

ii. M. Huth <strong>and</strong> M. Ryan, Logic in Computer Science: Modelling <strong>and</strong> Reasoning about Systems, Cambridge<br />

University Press; 2nd edition,2004.<br />

iii. R .Gupta, P. Le Guernic, S. K. Shukla, <strong>and</strong> J. P. Talpin, Formal Methods <strong>and</strong> Models for System Design: A<br />

System Level Perspective, (Eds.), 2004.<br />

110


BSE 2103: Principles <strong>of</strong> Programming II (4 CU)<br />

Course Description: Upon successful completion the students should be able to: Demonstrate mastery <strong>of</strong> core<br />

programming concepts, like Programme structure <strong>and</strong> control, Application Programme Interface (API), memory<br />

management among others; Demonstrate sufficient underst<strong>and</strong>ing <strong>of</strong> object oriented programming; Develop<br />

complex web <strong>and</strong> st<strong>and</strong> alone applications; Work with an Integrate Development Kit like NETBEANS with minimal<br />

difficulties; <strong>and</strong> differentiate the various programming languages (i.e., in terms <strong>of</strong> their strength <strong>and</strong> weakness). The<br />

Indicative Content: Formal definition <strong>of</strong> structures: formal description <strong>of</strong> syntax <strong>and</strong> semantics; Meta - Language;<br />

Comparative studies <strong>of</strong> programming languages <strong>and</strong> language design concepts: structural organization, structures for<br />

names, data abstractions, concurrency; Functional, object oriented, <strong>and</strong> logic programming languages <strong>and</strong> concepts;<br />

Language design principles.<br />

Reference Books:<br />

i. R.W. Sebesta, Concepts <strong>of</strong> Programming Languages, 5th edition, Addison Wesley, 2002.<br />

ii. R. Sethi, Progamming Languages: Concepts <strong>and</strong> Constructs, 2nd edition. Addison Wesley. 1996.<br />

iii. Y. Daniel Liang, Introduction to Java Programming: Comprehensive Version, Prentice Hall, 2006.<br />

CSC 2100: Data Structures <strong>and</strong> Algorithms (4 CU)<br />

Course Description: Upon successful completion the students should be able to: Demonstrate factual knowledge<br />

including the mathematical notation, syntax <strong>and</strong> terminology used in the course; describe the fundamental principles<br />

including the laws <strong>and</strong> theorems arising from the concepts covered in this course; Apply course material along with<br />

techniques <strong>and</strong> procedures covered in this course to solve practical problems; Design simple algorithms <strong>and</strong> data<br />

structures in C; <strong>and</strong> Use theories <strong>and</strong> concepts covered in the course to approximate the complexities <strong>of</strong> algorithms.<br />

Indicative Content: Methods for modularizing, documenting <strong>and</strong> constructing Programmes (abstract data types/<br />

object orientation), <strong>and</strong> an introduction to classical data structures <strong>and</strong> algorithms with complexity analysis. Detailed<br />

Course Content: Application <strong>and</strong> implementation <strong>of</strong> strings, arrays, stacks queues, lists, trees <strong>and</strong> graphs.; Abstract<br />

data types; storage management; Sorting, searching, merging, reference <strong>and</strong> cross-referencing files; Design <strong>and</strong><br />

analysis <strong>of</strong> algorithms, complexity <strong>of</strong> algorithms, big-O <strong>and</strong> small-O notation. Binary trees, B-trees, B*-trees, <strong>and</strong><br />

AVL-trees; Study <strong>of</strong> disk <strong>and</strong> tape file organizations; Creation <strong>of</strong> sequential, direct, <strong>and</strong> indexed sequential files;<br />

Hashing techniques <strong>and</strong> address overflows; Primary <strong>and</strong> secondary key usage, inverted <strong>and</strong> linked-list files;<br />

Semantic Nets, frames.<br />

Reference Books:<br />

i. M. Weiss, Data Structures <strong>and</strong> Algorithm Analysis in C, 2nd Edition, Addison-Wesley, 1997.<br />

ii. M. A. Weiss, Data Structures <strong>and</strong> Algorithm Analysis in Java, Pearson International.<br />

BSE 2101: Introduction to Database Systems (4 CU)<br />

Course Description: By the end <strong>of</strong> the course, students should be able to: Develop a sound data model for an<br />

application domain; Realize this model as a relational database schema; Implement this schema as a PostgreSQL<br />

application; Build an HTML/forms based (PHP) interface to a relational database; Analyse the costs/benefits <strong>of</strong> data<br />

structures <strong>and</strong> algorithms used in the implementation <strong>of</strong> relational database management systems; Underst<strong>and</strong> the<br />

theory <strong>and</strong> techniques behind managing concurrent access to databases <strong>and</strong> recovery from errors; <strong>and</strong> Appreciate the<br />

limitations <strong>of</strong> existing relational database technology <strong>and</strong> have an overview <strong>of</strong> upcoming database technologies.<br />

Indicative Content: An introduction to SQL, Advanced SQL, Query-By-Example (QBE), Visual Basic <strong>and</strong> other<br />

fourth generation languages will be given. This subject aims to explore the theory behind relational database<br />

systems, the practice <strong>of</strong> developing database applications, <strong>and</strong> the technologies used to implement database<br />

management systems. This course will also cover introduction to Micros<strong>of</strong>t Access.<br />

111


Reference Books:<br />

i. H. G-Molina, J. D. Ullman, <strong>and</strong> J. Widom, Database Systems: The Complete Book, Prentice Hall. 2002.<br />

ii. R. Elmasri <strong>and</strong> S. B. Navathe, Fundamentals <strong>of</strong> Database Systems, 4th edition.<br />

BSE 2104: Computer Architecture (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should: Have gained an underst<strong>and</strong>ing<br />

<strong>of</strong> basic components <strong>of</strong> the modern computer system; Be able to describe the operation <strong>of</strong> the various logic gets; Be<br />

able to design digital circuits; Demonstrate a good underst<strong>and</strong>ing <strong>of</strong> sequential <strong>and</strong> parallel processing; Perform low<br />

level assembly programming; <strong>and</strong> perform low level memory management.<br />

Indicative Content: Computer Organization <strong>and</strong> Structures (based on the Von Neumann architecture); Processor<br />

unit organization: control unit, ALU, processor register <strong>and</strong> internal buses; hardwired <strong>and</strong> micro-programmed<br />

control. Instructions sets, formats <strong>and</strong> types; Addressing modes, stacks, pipelining, RISC/CISC concepts; Memory<br />

organization <strong>and</strong> addressing; Memory hierarchy <strong>and</strong> cache; Special-purpose co-processors; I/O facilities <strong>and</strong> storage<br />

devices; The Operating System level.<br />

Reference Books:<br />

i. D. A. Patterson <strong>and</strong> J. L. Hennessy, Computer Architectures: A Quantitative Approach, Morgan Kaufmann<br />

Publishers, 3rd edition, 2003.<br />

ii. A. S. Tanenbaum, Structured Computer Organisation, 4th edition, Prentice Hall inc., Upper Saddle River,<br />

1999.<br />

BSE 2200: Systems S<strong>of</strong>tware (4 CU)<br />

Course Description: By the end <strong>of</strong> this course, Students will underst<strong>and</strong> the various levels <strong>of</strong> system <strong>and</strong><br />

application s<strong>of</strong>tware; They will be familiar with the major Operating System services such as file systems, memory<br />

management, process management, device control <strong>and</strong> network services; They will underst<strong>and</strong> how design decisions<br />

in Operating Systems affect users <strong>of</strong> the system; In addition, students will have used a major Operating System<br />

extensively, with experience in using an interactive comm<strong>and</strong> line programming language; <strong>and</strong> They will also will<br />

have experience in using a systems programming language with an Application Programmers Interface to the<br />

Operating System for its services based on Unix OS, <strong>and</strong> the C systems programming language.<br />

Indicative Content: This course looks at the necessary system architecture introduction for further study <strong>of</strong><br />

operating systems, computer architectures, <strong>and</strong> the implementation <strong>of</strong> higher level languages. It goes further <strong>and</strong><br />

builds upon that by looking at the concepts underlying Operating Systems, <strong>and</strong> to show how different choices in<br />

Operating System design <strong>and</strong> implementation have effects on applications, application programmers <strong>and</strong> user<br />

environments.<br />

Reference Books:<br />

i. L. L. Beck, System S<strong>of</strong>tware: An Introduction to Systems Programming, Addison Wesley; 3rd edition,<br />

August, 1996.<br />

ii. A. S. Tanenbaum, Modern Operating Systems, 2nd edition, Prentice Hall 2001.<br />

iii. A. Silberschatz, P. B. Galvin <strong>and</strong> G. Gagne, Operating Systems Concepts, 6th edition, John Wiley & Sons<br />

2002.<br />

BSE 2201 Network Application Development (4 CU)<br />

Course Description: This course is designed to: Familiarize students with technologies <strong>and</strong> protocols that support<br />

computer communication networks, including the Internet; <strong>and</strong> elaborate on network based programming<br />

methodologies, languages, tools <strong>and</strong> st<strong>and</strong>ards.<br />

Indicative Content: Design principles for network-based applications; design <strong>and</strong> development <strong>of</strong> Java Servlets,<br />

JSP, Web services <strong>and</strong> .NET; principles <strong>of</strong> information security in network-based applications; http <strong>and</strong> https<br />

protocols.<br />

112


Reference Books:<br />

i. M. Hall, Core Servlets <strong>and</strong> Java Server Pages, Volume 1: Core Technologies, 2nd edition.<br />

BSE 2203: Computer Networks & Data Communication (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course students should be able to: Master the terminology<br />

<strong>and</strong> concepts <strong>of</strong> the OSI reference model <strong>and</strong> the TCP/IP reference model; Master the concepts <strong>of</strong> protocols,<br />

network interfaces, <strong>and</strong> design/performance issues in local area networks <strong>and</strong> wide area networks; Demonstrate<br />

knowledge <strong>of</strong> wireless networking concepts; Appreciate contemporary issues in networking technologies; <strong>and</strong><br />

demonstrate knowledge <strong>of</strong> network tools.<br />

Indicative Content: Introduction to Networks: definition, advantages, types, configurations; The OSI/ISO reference<br />

model; Transmission media: magnetic media, twisted pair, coaxial, fiber-optics; Data encoding: straight,<br />

Manchester, differential Manchester, satellite; Digital versus Analog transmission; Modems, modulation <strong>and</strong> their<br />

st<strong>and</strong>ards, codes <strong>and</strong> pulse code modulation; Integrated Services Digital Networks (ISDN); Network Access<br />

Protocols; Passive versus dynamic allocation; LAN st<strong>and</strong>ards:802.3 (Ethernet), 802.4 (token bus), 802.5 (token<br />

ring); Computer Network security, Active <strong>and</strong> Passive Attacks; Network layer <strong>and</strong> Network layer protocols;<br />

Transport layer <strong>and</strong> Transport layer protocols. Furthermore, the course considers problems on each layer <strong>of</strong> a<br />

multilayered communication model, <strong>and</strong> describes some typical solutions to such problems.<br />

Reference Books:<br />

i. J. F. Kurose <strong>and</strong> K. W. Ross, Computer Networking - A Top Down Approach Featuring the Internet, 3rd<br />

edition, Addison-Wesley.<br />

ii. L. Peterson <strong>and</strong> B. Davie, Computer Networks: A Systems Approach.<br />

BSE 2204: Modeling in Information Systems (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should: Be able to demonstrate<br />

sufficient underst<strong>and</strong>ing <strong>of</strong> the various modeling tools <strong>and</strong> techniques; Be able to model an information system<br />

using the Universal Modeling Language (UML); Be able to model business processes; Select a suitable modeling<br />

language based on the context; <strong>and</strong> be able to evaluate the quality <strong>of</strong> models using model checking tools <strong>and</strong> formal<br />

methods:<br />

Indicative Content: This course deals with methods <strong>and</strong> techniques used in systems analysis <strong>and</strong> design. This<br />

includes modeling the enterprise, application domains, business processes <strong>and</strong> activities, <strong>and</strong> information systems<br />

components. Main topics to be covered are: Modeling the enterprise: Object-oriented concepts, object-oriented<br />

enterprise modeling. Modeling the business process: process <strong>and</strong> workflow modeling, IDEF0, <strong>and</strong> SAP R/3 process<br />

models, Modeling the dynamics: Data flow diagram (DFD), structured English, decision table, decision tree, <strong>and</strong><br />

state-transition diagram. Modeling the structures: Entity-relationship (ER) models. Putting the designs together:<br />

Unified Modeling Language (UML) Evaluation <strong>of</strong> methods: Evaluation criteria.<br />

Reference Books:<br />

i. A. Olive, Conceptual Modeling <strong>of</strong> Information Systems, Springer, 1st edition, 2007.<br />

ii. R. A. Hirschheim, H. K. Klein <strong>and</strong> K. Lyytinen, Information Systems Development <strong>and</strong> Data Modeling:<br />

Conceptual <strong>and</strong> Philosophical Foundations, Cambridge University Press, 1995.<br />

BSE 2202: Embedded Systems S<strong>of</strong>tware (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Underst<strong>and</strong> the role <strong>of</strong> assembly<br />

language programming; Underst<strong>and</strong> the instruction set <strong>of</strong> a typical embedded processor (68HC11); Be able to<br />

employ a modular approach to assembly language programming with code reuse; Be able to use embedded systems<br />

development tools; Underst<strong>and</strong> memory addressing <strong>and</strong> use various addressing modes; Underst<strong>and</strong> hardware<br />

interrupts <strong>and</strong> be able to use them; <strong>and</strong> be able to integrate assembly language subroutines into a high-level language<br />

Programme.<br />

113


Indicative Content: This course presents assembly language programming as the bridge between hardware <strong>and</strong><br />

high-level programming languages such as C++. Topics covered include the addressing modes, register file, <strong>and</strong><br />

instruction set <strong>of</strong> a microcontroller; subsystems such as timers, h<strong>and</strong>shaking input <strong>and</strong> output, <strong>and</strong> analog to digital<br />

conversion; <strong>and</strong> interrupts. S<strong>of</strong>tware control <strong>of</strong> hardware is stressed. In the laboratory, students design s<strong>of</strong>tware to<br />

demonstrate pr<strong>of</strong>iciency in these areas. Introduction to microcomputer/microcontroller structure from a<br />

programmers perspective; 68hc11 addressing modes <strong>and</strong> memory types; Tool usage (assembler, linker, downloader,<br />

simulator); 68hc11 instruction set (5 classes) Assembly language Programmes structure, including comparisons to<br />

high level languages; Parallel I/O with h<strong>and</strong>shaking; Analog I/O on the 68hc11 plus background on A/D <strong>and</strong> D/A<br />

converters; Hardware interrupts.<br />

Reference Book:<br />

i. S. A. Edwards, Languages for Digital Embedded Systems, Kluwer Academic Press, 2000.<br />

BSE 2302: Pr<strong>of</strong>essional S<strong>of</strong>tware Engineering Mini Practical Project II (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> the course, the student should: Demonstrate mastery <strong>of</strong> a<br />

specific programming language <strong>and</strong> development platform; Carry out requirement engineering for a particular<br />

project; <strong>and</strong> demonstrate ability to develop a mini application or systems with minimal difficulty.<br />

Indicative Content: An introduction to a specific pr<strong>of</strong>essional s<strong>of</strong>tware certification course is covered.<br />

Reference Books:<br />

i. A. Koenig <strong>and</strong> B. E. Moo, Accelerated C++: Practical Programming by Example, Addison-Wesley, 2008.<br />

ii. J. Friesen, Beginning Java SE 6 Platform: From Novice to Pr<strong>of</strong>essional, Apress October 2007.<br />

iii. S. Karam, <strong>and</strong> R. Freeman, Easy Oracle Jumpstart: Oracle Database Management Concepts <strong>and</strong><br />

Administration.<br />

iv. S. Feuerstein, B. Pribyl <strong>and</strong> C. Dawes, Oracle PL/SQL Language Pocket Reference, 4th edition, O’Reilly<br />

2007.<br />

BSE 3101: IT Project Management <strong>and</strong> Development (4 CU)<br />

Course Description: At the end <strong>of</strong> the course, students will: Appreciate the range <strong>of</strong> practical project management<br />

techniques available; be able to apply project management principles <strong>and</strong> techniques within their organizations; <strong>and</strong><br />

be able to confidently undertake the management <strong>of</strong> a project <strong>and</strong> see it to a satisfactory conclusion on time <strong>and</strong><br />

within budget.<br />

Indicative Content:<br />

• Integration Management includes the processes required to ensure that the various elements <strong>of</strong> the project<br />

are properly co-coordinated.<br />

• Scope Management is the function <strong>of</strong> controlling a project in terms <strong>of</strong> its aims, goals <strong>and</strong> objectives<br />

through the process <strong>of</strong> conceptual development, full scope definition or statement, scope reporting <strong>and</strong><br />

control, <strong>and</strong> project close out.<br />

• Time Management is the function <strong>of</strong> maintaining appropriate allocation <strong>of</strong> time to every element in the<br />

overall conduct <strong>of</strong> the project through the successive stages <strong>of</strong> its natural life-cycle.<br />

• Cost Management is the function <strong>of</strong> maintaining effective financial control <strong>of</strong> the project.<br />

• Quality Management is the composite <strong>of</strong> material attributes (including performance features <strong>and</strong><br />

characteristics) <strong>of</strong> the product or service which are required to satisfy the needs for which the project is<br />

being undertaken.<br />

• Human Resource Management is the function <strong>of</strong> directing <strong>and</strong> coordinating human resources throughout<br />

the life <strong>of</strong> the project. It involves the application <strong>of</strong> the principles <strong>of</strong> behavioral science <strong>and</strong> administrative<br />

knowledge to achieve the predetermined project objectives <strong>of</strong> scope, time, cost, quality <strong>and</strong> participant<br />

satisfaction.<br />

114


• Communications Management includes the processes required to ensure timely <strong>and</strong> appropriate generation,<br />

collection, dissemination, storage <strong>and</strong> ultimate disposition <strong>of</strong> project information.<br />

• Risk Management includes the processes concerned with identifying, analysing <strong>and</strong> responding to project<br />

risk. It includes maximising the results <strong>of</strong> positive events <strong>and</strong> minimising the consequences <strong>of</strong> adverse<br />

events.<br />

• Procurement Management is the function <strong>of</strong> acquiring resources for the project in order to produce the end<br />

product.<br />

Reference Book:<br />

i. D. Billows, Advanced Project Management Techniques, PMP.<br />

BSE 3104: S<strong>of</strong>tware Metrics (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course students should be able to: Describe s<strong>of</strong>tware<br />

metrics; underst<strong>and</strong> the foundations <strong>of</strong> measurement theory <strong>and</strong> models <strong>of</strong> s<strong>of</strong>tware engineering measurement <strong>and</strong><br />

appreciate s<strong>of</strong>tware products metrics, s<strong>of</strong>tware process metrics <strong>and</strong> measuring management.<br />

Indicative Content: The course is composed <strong>of</strong> the following basic modules: Measurement theory (overview <strong>of</strong><br />

s<strong>of</strong>tware metrics, basics <strong>of</strong> measurement theory, goal-based framework for s<strong>of</strong>tware measurement, empirical<br />

investigation in s<strong>of</strong>tware engineering), S<strong>of</strong>tware product <strong>and</strong> process measurements (measuring internal product<br />

attributes: size <strong>and</strong> structure, measuring external product attributes: quality, measuring cost <strong>and</strong> effort, measuring<br />

s<strong>of</strong>tware reliability, s<strong>of</strong>tware test metrics, object-oriented metrics Measurement management.<br />

Reference Books:<br />

i. N.E. Fenton <strong>and</strong> S.L. Pfleeger, S<strong>of</strong>tware Metrics: A Rigorous <strong>and</strong> Practical Approach, 2nd edition (638p.),<br />

PWS Publishing, 1998.<br />

ii. S. H. Kan, Metrics <strong>and</strong> Models in S<strong>of</strong>tware Quality Engineering, 2nd edition (560 p.) Addison-Wesley<br />

Pr<strong>of</strong>essional, 2002.<br />

iii. J. C. Munson, S<strong>of</strong>tware Engineering Measurement, Auerbach Publications, 2003.<br />

iv. C. Jones, Applied S<strong>of</strong>tware Measurement: Assuring Productivity <strong>and</strong> Quality, McGraw-Hill, 1996.<br />

CSC 2111 Database Management Systems I (3 CU)<br />

Course Description: This course is to provide students with a strong foundation in systematic approaches to design<br />

<strong>and</strong> implementing <strong>of</strong> database applications. Preliminarily, operations like requirements gathering <strong>and</strong> database<br />

planning will be covered. The course will also introduce students to developing <strong>of</strong> application Programmes that talk<br />

to the database. These applications may be online or <strong>of</strong>fline. The aims <strong>of</strong> the course are to: Provide a background for<br />

the evolution <strong>of</strong> database (management) systems; Provide the students with the steps one has to go through when<br />

developing good database applications; Give h<strong>and</strong> on experience <strong>and</strong> knowledge in developing database (driven)<br />

applications<br />

Indicative Content: Background to databases; Evolution <strong>of</strong> database systems; Database organization <strong>and</strong><br />

architecture; Data base models; Over view <strong>of</strong> database application development; The database development life<br />

cycle; Database design; Conceptual design; Logical design; Physical Design; Querying databases; SQL/PL SQL<br />

<strong>and</strong> Scripting.<br />

Reference Books:<br />

i. T. Connolly <strong>and</strong> C. Begg, Database Solutions, 2nd edition.<br />

BSE 3102: Object-Oriented S<strong>of</strong>tware Engineering (4 CU)<br />

Course Description: Upon completion <strong>of</strong> the course, students will be able to: Underst<strong>and</strong> the entire s<strong>of</strong>tware<br />

engineering project process, which consists <strong>of</strong> object-oriented analysis, design, programming <strong>and</strong> testing;<br />

Underst<strong>and</strong> basic object-oriented programming concepts; Effectively use the main features <strong>of</strong> the object-oriented<br />

115


programming language Java; Gain experience in implementing object-oriented Programmes in Java; Apply an<br />

iterative, use case-driven process to the development <strong>of</strong> a robust design model; Use UML to represent the design<br />

model; Apply the OO concepts abstraction, encapsulation, inheritance, hierarchy, modularity, <strong>and</strong> polymorphism to<br />

the development <strong>of</strong> a robust design model; <strong>and</strong> Design <strong>and</strong> implement a s<strong>of</strong>tware system using object-oriented<br />

s<strong>of</strong>tware engineering paradigm.<br />

Indicative Content: In particular the course covers the following main themes <strong>and</strong> associated topics: Systems<br />

modeling <strong>and</strong> Design S<strong>of</strong>tware Engineering processes <strong>and</strong> principles <strong>of</strong> good s<strong>of</strong>tware design. UML modeling <strong>and</strong><br />

design with particular emphasis on s<strong>of</strong>tware architecture, behavioral modeling, object interactions <strong>and</strong> state-charts.<br />

Formal specifications <strong>of</strong> system requirements Principles <strong>of</strong> formal specifications <strong>and</strong> object orientation, state <strong>and</strong><br />

operation schemas; class schemas, object aggregation <strong>and</strong> inheritance; specification <strong>of</strong> dependency <strong>and</strong> information<br />

sharing; definition <strong>of</strong> class union; semantic issues; reasoning techniques for validating invariant properties, such as<br />

safety <strong>and</strong> liveness; Specification <strong>of</strong> object oriented Programmes Principles <strong>of</strong> object-oriented Programme<br />

specifications, concepts <strong>of</strong> mid-conditions, pre-conditions <strong>and</strong> post-conditions <strong>of</strong> methods, the role <strong>and</strong> definition <strong>of</strong><br />

class invariants; loop invariants as a programming technique; techniques for reasoning about the correctness <strong>of</strong><br />

Programmes. The development process Generation <strong>of</strong> specifications <strong>of</strong> object-oriented Programmes from formal<br />

specifications <strong>of</strong> system requirement; validation <strong>and</strong> verification processes <strong>of</strong> s<strong>of</strong>tware system; acquisition <strong>of</strong><br />

practical experience in modelling <strong>and</strong> specifying Java Programmes, using appropriate tools for developing <strong>and</strong><br />

checking specifications <strong>of</strong> Java Programmes.<br />

Reference Books:<br />

i. C. Larman, Applying UML <strong>and</strong> Patterns: An Introduction to Object-Oriented Analysis <strong>and</strong> Design <strong>and</strong> the<br />

Unified Process, 2nd edition, Prentice-Hall, 2002.<br />

ii. S. R. Schach, Object Oriented <strong>and</strong> Classical S<strong>of</strong>tware Engineering, 7th edition, McGraw-Hill, 2007.<br />

iii. R. S. Pressman <strong>and</strong> D. Ince, S<strong>of</strong>tware Engineering A Practitioners Approach, McGraw-Hill, 2007.<br />

iv. I. Sommerville, S<strong>of</strong>tware Engineering, 8th edition, Addison Wesley, 2006.<br />

v. R.H. Thayer, <strong>and</strong> M. J. Christiansen, S<strong>of</strong>tware Engineering, Volume 1: The Development Process, 3rd<br />

edition, Wiley & Sons, 2005.<br />

vi. R. H. Thayer <strong>and</strong> M. Dorfman, S<strong>of</strong>tware Engineering, Volume 2: The Supporting Processes, 3rd edition,<br />

Wiley & Sons, 2005.<br />

BSE 3107: Real-Time <strong>and</strong> Embedded Systems (4 CU)<br />

Course Description: At the end <strong>of</strong> the course students should be able to: Demonstrate knowledge <strong>of</strong> rate monotonic<br />

theory <strong>and</strong> how to apply it to real-time applications; Underst<strong>and</strong> the process <strong>and</strong> fundamentals <strong>of</strong> integrating<br />

microprocessor-based embedded system elements to realize systems that not only meet functional requirements, but<br />

timing <strong>and</strong> performance requirements as well; <strong>and</strong> Use practical skills to design <strong>and</strong> integrate a real-time operation<br />

system with a microprocessor to host real-time service data processing.<br />

Indicative Content: Rate Monotonic Theory, specifically the RM least upper bound, necessary <strong>and</strong> sufficient<br />

feasibility tests, <strong>and</strong> application <strong>of</strong> rate monotonic theory , Real-time Operating Systems, scheduling,<br />

synchronization mechanisms, <strong>and</strong> resource management, Embedded system architectures: System-on-chip, scalable<br />

bus architectures, memory subsystems, Sensor <strong>and</strong> Actuator IO: ADC, DAC, servos, relays, stepper motors, Hbridge,<br />

<strong>and</strong> CODECs, Real-time embedded test equipment, s<strong>of</strong>tware debug tools, <strong>and</strong> methods <strong>of</strong> performance<br />

pr<strong>of</strong>iling <strong>and</strong> tracing, Real-time applications including voice/packet-switched links <strong>and</strong> networks, streaming video<br />

media, computer vision, digital control, <strong>and</strong> robotic system comm<strong>and</strong> <strong>and</strong> control.<br />

Reference Books:<br />

i. M. Ben-Ari, Principles <strong>of</strong> Concurrent <strong>and</strong> Distributed Programming, Prentice Hall, 1990.<br />

ii. S. Bennett, Real-Time Computer Control: An Introduction Series in Systems <strong>and</strong> Control Engineering,<br />

International Prentice Hall, 1988.<br />

116


iii. A. Burns <strong>and</strong> A. Wellings, Real-Time Systems <strong>and</strong> Programming Languages, Addison Wesley, 3rd edition,<br />

2001.<br />

BSE 3103: Requirements Engineering (4 CU)<br />

Course Description: At the end <strong>of</strong> the course students should be able to: Underst<strong>and</strong> the principles, tools, <strong>and</strong><br />

techniques for requirements elicitation, specification, <strong>and</strong> analysis; demonstrate the role <strong>of</strong> requirements in system<br />

development <strong>and</strong> maintenance; <strong>and</strong> appreciate the difficulties <strong>of</strong> specifying requirements for real systems, as well as<br />

effective methods tools <strong>and</strong> techniques.<br />

Indicative Content: System <strong>and</strong> S<strong>of</strong>tware System Engineering; S<strong>of</strong>tware Requirements Concepts; Requirements<br />

Elicitation; S<strong>of</strong>tware Requirements Analysis, S<strong>of</strong>tware Requirements Specifications, S<strong>of</strong>tware Requirements Tools,<br />

S<strong>of</strong>tware Requirements Verification; S<strong>of</strong>tware Requirements Engineering Management; Developing a Successful<br />

S<strong>of</strong>tware Requirement.<br />

Reference Books:<br />

i. P. Loucopoulos <strong>and</strong> V. Karakostas, System Requirements Engineering, McGraw-Hill.<br />

ii. D. Leffingwell, D. Widrig, A. Wesley, Managing S<strong>of</strong>tware Requirements: A Use Case Approach, 2nd<br />

edition, Boston.<br />

iii. L. Chung, B. Nixon, E. Yu <strong>and</strong> J. Mylopoulos, Non-Functional Requirements in S<strong>of</strong>tware Engineering,<br />

Kluwer Academic Publishing, 2000.<br />

iv. A. M. Davis, S<strong>of</strong>tware Requirements: Objects, Functions, & States, Prentice Hall: Englewood Cliffs, 1993.<br />

v. R. H. Thayer <strong>and</strong> M. Dortman, System <strong>and</strong> S<strong>of</strong>tware Requirements Engineering: Tutorial, (Editors), IEEE<br />

Computer Society Press.<br />

BSE 3105: S<strong>of</strong>tware Evolution (4 CU)<br />

Course Description: In this course, students will learn: How selected s<strong>of</strong>tware systems can be analyzed to<br />

underst<strong>and</strong> properties <strong>of</strong> their evolution; <strong>and</strong> interpret their implication.<br />

Indicative Content: Separate compilation; design issues; verification <strong>and</strong> validation; integrating components;<br />

documentation , Issues in object-oriented programming; parallelism; event centered programming; common design<br />

patterns; s<strong>of</strong>tware reuse, The Laws <strong>of</strong> S<strong>of</strong>tware Evolution Client-server computing: S<strong>of</strong>tware support needed for<br />

client <strong>and</strong> server implementation; varieties <strong>of</strong> server structures; Reverse engineering <strong>and</strong> reverse engineering tools,<br />

recognizing s<strong>of</strong>tware architecture <strong>and</strong> design patterns in existing s<strong>of</strong>tware systems S<strong>of</strong>tware transformation,<br />

migration, <strong>and</strong> reengineering, recovering s<strong>of</strong>tware components for reuse<br />

Reference Books:<br />

i. L. J. Arthur, S<strong>of</strong>tware Evolution: A S<strong>of</strong>tware Maintenance Challenge, John Wiley & Sons, 1988.<br />

ii. R. C. Seacord, D. Plakosh, <strong>and</strong> G. A. Lewis, Modernizing Legacy Systems: S<strong>of</strong>tware Technologies,<br />

Engineering Processes, <strong>and</strong> Business Practices, Addison-Wesley Pub Co; 1st edition, 2003.<br />

iii. T. M. Pigoski, Practical S<strong>of</strong>tware Maintenance: Best Practices for Managing Your S<strong>of</strong>tware Investment,<br />

John Wiley & Sons, 1st edition, 1996.<br />

iv. D. D. Smith, Designing Maintainable S<strong>of</strong>tware, Springer-Verlag, 1999.<br />

v. R. B. Grady, S<strong>of</strong>tware Metrics: Establishing A Company-Wide Program, Prentice Hall; 1st edition, 1987.<br />

BSE 3106: Mobile Networks <strong>and</strong> <strong>Computing</strong> (4 CU)<br />

Course Description: At the end <strong>of</strong> the course, students will be able to: Underst<strong>and</strong> the basic principle, architecture<br />

<strong>and</strong> challenges <strong>of</strong> wireless networks <strong>and</strong> mobile computing systems; <strong>and</strong> demonstrate knowledge <strong>of</strong> s<strong>of</strong>tware<br />

development related to mobile computing systems.<br />

117


Indicative Content: The topics for wireless networking include GSM, Wireless LANs, GPRS, Mobile IP, wireless<br />

ATM, Mobile Ad Hoc Networking <strong>and</strong> internetworking with TCP/IP. As well as mobile computing models in<br />

general, the SMS Bluetooth, WAP <strong>and</strong> I-mode will be introduced as typical mobile computing systems.<br />

Reference Book:<br />

i. D. Milojicic, F. Douglis <strong>and</strong> R. Wheeler, Mobility: Processes, Computers, <strong>and</strong> Agents, Eds., Addison<br />

Wesley, 1999.<br />

BSE 3201: S<strong>of</strong>tware Architecture (4 CU)<br />

Course Description: At the end <strong>of</strong> the course, students will: Be familiar with the latest state <strong>of</strong>- the-art s<strong>of</strong>tware<br />

architecture; Appreciate s<strong>of</strong>tware system design; <strong>and</strong> underst<strong>and</strong> how system’s components are meant to interact<br />

with each other.<br />

Indicative Content: Architectural styles, Components <strong>of</strong> architectural design, Connectors, components,<br />

composition, Architectural design guidance <strong>and</strong> Tools for architectural design, Achieving quality goals with<br />

architectural styles, Formal models <strong>and</strong> specifications, Analyzing s<strong>of</strong>tware architecture with SAAM, Architecture<br />

description languages (ADLs), Architecture-based development, Patterns in s<strong>of</strong>tware architecture, Reusing s<strong>of</strong>tware<br />

architecture.<br />

Reference Books:<br />

i. L. Bass, P. Clements <strong>and</strong> R. Kazman, S<strong>of</strong>tware Architecture in Practice, Addison Wesley, 1998.<br />

ii. Shaw <strong>and</strong> Garlan, S<strong>of</strong>tware Architecture: Perspectives on an Emerging Discipline, PrenticeHall, 1996.<br />

iii. Cheesman <strong>and</strong> Daniels, UML Components: A simple process for specifying component-based s<strong>of</strong>tware,<br />

Addison-Wesley, 2000.<br />

BSE 3202: Distributed Systems Development (4 CU)<br />

Course Description: At the end <strong>of</strong> the course students should be able to: Present a conceptual model <strong>of</strong> distributed<br />

systems; Describe key components <strong>of</strong> a distributed system <strong>and</strong> evaluate the Trade <strong>of</strong>fs <strong>of</strong> alternative architectural<br />

models; Suggest algorithm suitable for application in distributed systems; Build prototype implementations <strong>of</strong><br />

distributed systems; <strong>and</strong> demonstrate an underst<strong>and</strong>ing <strong>of</strong> the challenges faced by future distributed systems.<br />

Indicative Content; Event-driven s<strong>of</strong>tware architectures; distributed object computing, <strong>and</strong> developing,<br />

documenting, <strong>and</strong> testing applications using object-oriented frameworks <strong>and</strong> design patterns. Techniques that enable<br />

the construction <strong>of</strong> reusable, extensible, efficient, <strong>and</strong> maintainable concurrent <strong>and</strong> distributed s<strong>of</strong>tware systems are<br />

emphasized. Abstraction based on patterns <strong>and</strong> object-oriented techniques will be crucial throughout the course, <strong>and</strong><br />

their application studied in several in-depth case studies.<br />

Reference Books:<br />

i. S. Tanenbaum <strong>and</strong> M. V. Steen, Distributed Systems: Principles <strong>and</strong> Paradigms, 2nd edition, Prentice Hall,<br />

2006.<br />

ii. G. Coulouris, J. Dollimore, <strong>and</strong> T. Kindberg, Distributed Systems: Concepts <strong>and</strong> Design, 3rd edition,<br />

Addison-Wesley, 2000.<br />

iii. R. Anderson, Security Engineering: A Guide to Building Dependable Distributed Systems, John Wiley &<br />

Sons, 2001.<br />

BSE 3205: UNIX Shell Programming (4 CU)<br />

Course Description: At the end <strong>of</strong> the course students should be able to: use the UNIX operating system for<br />

information h<strong>and</strong>ling <strong>and</strong> s<strong>of</strong>tware development; <strong>and</strong> develop engineering applications using c language in a UNIX<br />

environment.<br />

Indicative Content: This course introduces the UNIX operating system as a basic environment for information<br />

h<strong>and</strong>ling <strong>and</strong> s<strong>of</strong>tware development. It covers the UNIX file system, job control, <strong>and</strong> processes using both the C<br />

118


shell <strong>and</strong> Korn shell, common UNIX utilities (sed, awk, grep), UNIX networking utilities, piping <strong>and</strong> redirection,<br />

<strong>and</strong> an introduction to shell programming. Computer engineering applications programming using the C language in<br />

a UNIX environment; Use <strong>of</strong> UNIX tools including filters <strong>and</strong> shell scripts; Overview <strong>of</strong> UNIX s<strong>of</strong>tware design<br />

practices using tools such as Make <strong>and</strong> SCCS; The UNIX system interface; S<strong>of</strong>tware design projects. Other topics<br />

include advanced programming in both the C shell <strong>and</strong> the Korn shell using project management tools (SCCS or<br />

RCS), using s<strong>of</strong>tware development tools (make), <strong>and</strong> an introduction to system administration.<br />

Reference Books:<br />

i. Morris I. Bolsky, David G. Korn, The New KornShell Comm<strong>and</strong> And Programming Language.<br />

ii. D. O’Brien, D. Pitts (Contributor), Korn Shell Programming by Example.<br />

iii. A. Olczak,The Korn Shell Linux <strong>and</strong> Unix Programming Manual, 2nd edition.<br />

iv. Ken. O. Burtch, Linux Shell Scripting with Bash.<br />

v. S. Kochan <strong>and</strong> P. Wood, Unix Shell Programming, 3rd edition.<br />

BSE 3206: Computer Graphics (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course students should be able to: Demonstrate knowledge<br />

<strong>of</strong> a general purpose graphics system <strong>and</strong> its use; Show that consistent design <strong>of</strong> user interfaces based on existing<br />

st<strong>and</strong>ards are important; <strong>and</strong> Appreciate the domain <strong>of</strong> computer graphics <strong>and</strong> graphical user interfaces in general.<br />

Indicative Content: graphics hardware, geometrical transformations, surface <strong>and</strong> volume visualization, design <strong>and</strong><br />

implementation <strong>of</strong> graphical user interfaces; two dimensional imaging processes; Computer graphics applications.<br />

Introduction to computer graphics; Display system organization; Display devices <strong>and</strong> modes; Display file<br />

construction <strong>and</strong> its structure; Graphic primitive - device initialization, view porting <strong>and</strong> windowing; Line drawing,<br />

simple <strong>and</strong> symmetrical Digital Deferential Analysis (DDA); Arch <strong>and</strong> circle generating DDA Line; <strong>and</strong> polygon<br />

clipping algorithms; Curve plotting; Transformations- projections <strong>and</strong> perspective views; Picture segmentation:<br />

Graphics st<strong>and</strong>ards - PHIGS <strong>and</strong> GKS.<br />

Reference Books:<br />

i. D. Hearn, M.P. Baker, Computer Graphics, 2nd edition (C Version), Prentice-Hall, 1997.<br />

ii. J. D. Foley, A. Van-Dam, S. K. Feiner <strong>and</strong> J. F. Hughes, Computer Graphics - Principles <strong>and</strong> Practice 2nd<br />

edition in C, Addison-Wesley, 1996.<br />

iii. P. Burger <strong>and</strong> D. Gillies, Interactive Computer Graphics - Functional, Procedural <strong>and</strong> Device-Level<br />

Methods, Addison-Wesley, 1989.<br />

iv. A. Watt <strong>and</strong> M. Watt, Advanced Animation <strong>and</strong> Rendering Techniques, Addison-Wesley, 1992.<br />

v. J. Prosise, Programming Windows with MFC, Micros<strong>of</strong>t Press; 2nd edition, 1999.<br />

vi. Woo, Manson. et al., OpenGL Programming Guide, Addison-Wesley, 1999.<br />

BSE 3203: Object-Oriented Programming (4 CU)<br />

Course Description: In this course, students will learn: Object oriented design <strong>and</strong> s<strong>of</strong>tware development by<br />

performing <strong>and</strong> discussing OO design for re-use <strong>of</strong> general purpose applications <strong>and</strong> small Java applets;<br />

Demonstrate correct use <strong>of</strong> the basic Java features in a working Programme: objects, classes, methods, IO h<strong>and</strong>ling,<br />

decisions <strong>and</strong> iterations; Demonstrate correct use <strong>of</strong> the following advanced Java features in a working Programme:<br />

inheritance, encapsulation, overloading, polymorphism, abstract classes <strong>and</strong> interfaces; <strong>and</strong> Demonstrate knowledge<br />

<strong>of</strong> GUI-based event-driven programming in a working Programme assignment utilizing Java GUI components,<br />

event listeners <strong>and</strong> event-h<strong>and</strong>lers.<br />

Indicative Content: the Java API <strong>and</strong> Abstract Windowing Toolkit. Other topics covered include the use <strong>of</strong> Java as<br />

an object-oriented programming language including encapsulation, simple inheritance, <strong>and</strong> polymorphism; design <strong>of</strong><br />

Java classes using Java interfaces <strong>and</strong> packages; implement design patterns in working Java code, <strong>and</strong> demonstrate<br />

119


use <strong>of</strong> Java Base Classes, including AWT. Java foundation classes including Swing <strong>and</strong> JavaBeans will be discussed<br />

briefly, along with the selection <strong>and</strong> application <strong>of</strong> current design <strong>and</strong> development tools.<br />

Reference Books:<br />

i. J. Hubbard, Programming in C++, McGraw Hill, Schaum’s Outline Series, 2000.<br />

ii. Y. D. Liang, Introduction to Programming with C++ (Brief Version), Prentice Hall, 2007.<br />

CSC 3202: Concepts <strong>of</strong> CAD/CAM (4 CU)<br />

Course Description: Upon successful completion students will be able to: Underst<strong>and</strong> the basic concepts <strong>of</strong><br />

CAD/CAM; Demonstrate knowledge <strong>and</strong> skill in applying computer <strong>and</strong> scientific principles related to solving<br />

engineering <strong>and</strong> manufacturing problems; <strong>and</strong> develop an underst<strong>and</strong>ing <strong>of</strong> engineering design <strong>and</strong> learn how to<br />

provide technical assistance in managing CAD/CAM systems.<br />

Indicative Content: Concepts <strong>of</strong> modelling in CAD/CAM; Designing <strong>of</strong> specifications for interactive s<strong>of</strong>tware<br />

packages in grafting; Designing <strong>and</strong> manufacturing applications; Design <strong>and</strong> development <strong>of</strong> algorithms;<br />

Methodologies <strong>of</strong> problem solving in design; Role <strong>of</strong> geometric models in CAD/CAM; Techniques <strong>of</strong> displaying<br />

models using computer optimization; Concepts <strong>of</strong> data representations in CAD/CAM problems; Discussion on large<br />

numbers <strong>of</strong> case studies involving s<strong>of</strong>tware development <strong>of</strong> various problems in CAD/CAM.<br />

Reference Books:<br />

i. I. Zeid, CAD/CAM, Tata McGraw Hill, New Delhi.<br />

ii. J. Rooney & P. Steadman, Principles <strong>of</strong> Computer Aided Design, Pitman/ Open University, London.<br />

iii. J. Rooney & P. Steadman, Computer Aided Design, Pitman/Open University, London.<br />

iv. G. Mallineuse, Computational Concepts <strong>and</strong> Methods, Kogan Page Ltd. London.<br />

v. D. L. Rayan, Computer Aided Graphical Design, Marcel Dekker, New York.<br />

BSE 3204: Human-Computer Interface Design (4 CU)<br />

Course Description: The students will throughout the course: Get a thorough underst<strong>and</strong>ing <strong>of</strong> the nature <strong>of</strong> manmachine<br />

communication; Use acquired knowledge in designing user interfaces; Become familiar with the variety <strong>of</strong><br />

design <strong>and</strong> evaluation methods used in interface design; <strong>and</strong> use these methods in their projects.<br />

Indicative Content: Methods <strong>and</strong> techniques for designing user interfaces will be presented. These will include<br />

comm<strong>and</strong>-based systems, menus, graphical interfaces, desktop techniques <strong>and</strong> direct manipulation. Principles for<br />

user-friendly interfaces will be discussed using case studies from commercial Programmes (Windows, Word, DOS,<br />

UNIX, LINUX, others). Human performance: memory, perception, skill learning, task closures motivation,<br />

performance, motor skills, attention; Types <strong>of</strong> users: casual, naive, learning, expert; Collecting <strong>and</strong> evaluating<br />

behavioral data; System performance <strong>and</strong> its erect on users: response data; Styles <strong>of</strong> interaction: comm<strong>and</strong> language,<br />

form-fill, direct manipulation, hierarchical/network systems; desk-top metaphor, browsing; Help mechanisms:<br />

conventional, context sensitive, hyper text, error h<strong>and</strong>ling, implicit cues; Graphics: tools <strong>and</strong> graphical user<br />

interfaces; Dialogue design methods: dialogue principles, dialogue description languages; task analysis <strong>and</strong><br />

ergonomics.<br />

Reference Book:<br />

i. B. Shneiderman & C. Plaisant, Designing the User Interface: Strategies for Effective Human-Computer<br />

Interaction, 4th edition, Publisher: Addison Wesley.<br />

BSE 3301: Internship (4 CU)<br />

Course Description: Upon successful completion students will: Have gained work experience that allows them to<br />

sample pr<strong>of</strong>essional environments in which they might seek careers; <strong>and</strong> have experience that will help prepare them<br />

for careers <strong>and</strong> research.<br />

120


Indicative Content: The students shall be attached to an industrial partner with business in the area <strong>of</strong> s<strong>of</strong>tware<br />

engineering or heavy bias in Information technology. During this time, the student shall be visited at least twice by a<br />

pr<strong>of</strong>essor or lecturer to assess the performance <strong>of</strong> the student in the industry. The students shall acquire h<strong>and</strong>s on<br />

training in maintenance, servicing <strong>and</strong> troubleshooting, <strong>and</strong> training in computer skills <strong>and</strong> applications as well as<br />

s<strong>of</strong>tware development. Hardware maintenance; Practicals; On Job training; project management, requirement<br />

engineering, product conceptualized, Report writing including communication skills, project coordination, team<br />

organisation, product br<strong>and</strong>ing. Based on the trading experience the c<strong>and</strong>idate will be expected to pick ideas to<br />

develop for the final year project.<br />

Reference:<br />

There is no particular reference material for internship, except whatever may be recommended by the student<br />

supervisors<br />

BSE 4100: S<strong>of</strong>tware Engineering project I (5 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course the student will have ability to: Demonstrate<br />

independent skills in collecting requirements, documenting user requirements <strong>and</strong> technical requirements for nontrivial<br />

s<strong>of</strong>tware engineering/ research projects by pursuing a lengthy S<strong>of</strong>tware engineering project; <strong>and</strong> demonstrate<br />

skills <strong>of</strong> specifying, designing <strong>and</strong> implementing a project, with assistance <strong>of</strong> one <strong>of</strong> the Pr<strong>of</strong>essors/ Lecturers as<br />

adviser/ supervisor.<br />

Indicative Content: The student develops a framework within which research will be conducted <strong>and</strong> <strong>of</strong>fers<br />

evidence <strong>of</strong> qualifications to pursue the research. Concepts <strong>and</strong> theories underlying the student’s Project research are<br />

articulated, the problem is clearly stated, <strong>and</strong> specific, measurable goals are specified, a literature review is<br />

presented, the methods <strong>of</strong> conducting research are delineated, <strong>and</strong> strategy to achieve the goal is given. The specific<br />

deliverables are a requirements document clearly specified in well-known <strong>and</strong> acceptable notation; Technical<br />

Specification Document Detailed design document. References No particular reference will be used for this course<br />

unit, except whatever is recommended by the student supervisors.<br />

Reference:<br />

No particular reference will be used for this course unit, except whatever is recommended by the student<br />

supervisors.<br />

BSE 4101: S<strong>of</strong>tware Reliability <strong>and</strong> Testing (4 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course the student will have ability to: Underst<strong>and</strong> the<br />

s<strong>of</strong>tware reliability process <strong>and</strong> reliability growth models; Show techniques to improve <strong>and</strong> predict s<strong>of</strong>tware<br />

reliability; <strong>and</strong> appreciate concepts such as operational pr<strong>of</strong>iles, techniques to improve <strong>and</strong> predict s<strong>of</strong>tware<br />

reliability, preparing <strong>and</strong> executing test, black box testing, white box testing, unit testing, system testing, <strong>and</strong><br />

integration testing.<br />

Indicative Content: This course introduces s<strong>of</strong>tware reliability process, reliability growth models <strong>and</strong> shows<br />

techniques to improve <strong>and</strong> predict s<strong>of</strong>tware reliability. Concepts such as defining necessary reliability, developing<br />

operational pr<strong>of</strong>iles, techniques to improve <strong>and</strong> predict s<strong>of</strong>tware reliability, preparing <strong>and</strong> executing test, black box<br />

testing, white box testing, unit testing, system testing, <strong>and</strong> integration testing will be explained.<br />

Reference Books:<br />

i. J. D. Musa, S<strong>of</strong>tware Reliability Engineering: More Reliable S<strong>of</strong>tware Faster <strong>and</strong> Cheaper, Author house,<br />

2nd edition, (632 p.), 2004.<br />

ii. M. R. Lyu (Editor), <strong>H<strong>and</strong>book</strong> <strong>of</strong> S<strong>of</strong>tware Reliability Engineering, McGraw Hill, 1996.<br />

iii. J. D. Musa, A. Iannini, K. Okumoto, S<strong>of</strong>tware Reliability: Measurement, Prediction <strong>and</strong> Application, (621<br />

p.), McGraw-Hill, 1987.<br />

iv. W. E. Perry, Effective Methods for S<strong>of</strong>tware Testing, 2nd edition, John Wiley <strong>and</strong> Sons, 2000.<br />

121


BSE 4103: Entrepreneurship <strong>and</strong> Business (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course the student will have ability to: Systematically<br />

apply an entrepreneurial way <strong>of</strong> thinking that will allow them to create <strong>and</strong> identify business opportunities that may<br />

be commercialized successfully; <strong>and</strong> appreciate the differences between newly formed ventures, existing small to<br />

medium size growth-oriented ventures, <strong>and</strong> entrepreneurial ventures within larger organizations.<br />

Indicative Content: Entrepreneurship is the process <strong>of</strong> building something from nothing. It is the process <strong>of</strong> seizing<br />

or creating opportunity without regard to the resources you control. The organizational aspects <strong>of</strong> consultancies <strong>and</strong><br />

client responsibilities within the framework <strong>of</strong> corporate management. Topics include: contracts fees, legal issues,<br />

patents, copyrights, hourly rates, hiring <strong>and</strong> employment concerns, timekeeping <strong>and</strong> invoicing, <strong>and</strong> intellectual<br />

property. The course involves preparation <strong>of</strong> proposals <strong>and</strong> visits by appropriate pr<strong>of</strong>essionals<br />

Reference Books:<br />

i. J. W. Halloran, 36-hour Course: Entrepreneurship, McGraw-Hill, 1994.<br />

ii. B. R. Barrington, One Key Course Compass, Student Access Kit to Entrepreneurship, Prentice Hall, 2005.<br />

BSE 4102: Ethics for Pr<strong>of</strong>essional Engineers (3CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Apply the ethical concepts<br />

relevant to resolving moral issues in business, industry, <strong>and</strong> other relevant areas <strong>of</strong> concern; <strong>and</strong> articulate <strong>and</strong><br />

defend with good reasons his/her own ethical point <strong>of</strong> view pertaining to specific problem areas in business,<br />

industry, <strong>and</strong> related areas.<br />

Indicative Content: This course examines <strong>and</strong> evaluates the meaning <strong>of</strong> ethics <strong>and</strong> pr<strong>of</strong>essional conduct. A guiding<br />

theme is the human search or quest for values <strong>and</strong> ethical direction in terms <strong>of</strong> pr<strong>of</strong>essional conduct <strong>and</strong> our daily<br />

life relationships with others. Students are expected to articulate <strong>and</strong> evaluate their own ethical principles <strong>and</strong> values<br />

<strong>and</strong> their foundations. The first part <strong>of</strong> this course covers the nature <strong>of</strong> ethics, ethical development, responsibilities<br />

<strong>and</strong> basic ethical directions such as Aristotelian ethics, utilitarian ethics, Kantian ethics <strong>and</strong> rights, <strong>and</strong> various views<br />

<strong>of</strong> justice. The second part <strong>of</strong> the course covers specific business <strong>and</strong> engineering ethical issues such as the<br />

company’s <strong>and</strong> engineer’s ethical obligation to the public, employer-employee ethical obligations including such<br />

topics as the giving <strong>and</strong> receiving <strong>of</strong> gifts, employee theft, trade secrets, computer ethics, fair wages, safety, working<br />

conditions, job satisfaction, employee rights with special emphasis on whistle-blowing, the ethics <strong>of</strong> political tactics<br />

to advance one’s career, <strong>and</strong> discrimination <strong>and</strong> affirmative action. Also, emphasis is given to environmental ethics<br />

including such topics as pollution control, the conservation <strong>of</strong> natural resources, various ethical positions on the<br />

environment, as well as such topics as biomedical ethics, treatment <strong>of</strong> animals, <strong>and</strong> the ethical assessment <strong>of</strong> new<br />

technologies.<br />

References Books:<br />

i. C. B. Fleddermann, Engineering Ethics, 1st edition Prentice Hall 1999.<br />

ii. D. J. Kemper, B. R. S<strong>and</strong>ers, Engineers <strong>and</strong> Their Pr<strong>of</strong>ession, Oxford University Press, USA.<br />

iii. M. Krisen, Engineering, Business <strong>and</strong> Pr<strong>of</strong>essional Ethics, Elsevier Science & Technology, 2007.<br />

BSE 4200: S<strong>of</strong>tware Engineering project II (5 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course the student will have ability to: Demonstrate<br />

independent skills in implementing non-trivial s<strong>of</strong>tware engineering/ research projects by pursuing a lengthy<br />

S<strong>of</strong>tware engineering project; <strong>and</strong> Demonstrate skills <strong>of</strong> Documenting, deploying a testing a well engineered<br />

solution, with assistance <strong>of</strong> one <strong>of</strong> the Pr<strong>of</strong>essors/ Lecturers as adviser/ supervisor.<br />

Indicative Content: The student implements, documents, tests <strong>and</strong> deploys a s<strong>of</strong>tware solution using the state <strong>of</strong> the<br />

art principles, concepts <strong>and</strong> technologies The specific deliverables are: S<strong>of</strong>tware Implementation using state <strong>of</strong> the<br />

art technologies Detailed s<strong>of</strong>tware documentation in accordance to well known practices Installation Manuals User<br />

Manual Testing <strong>and</strong> validation strategy.<br />

122


BSE 4201: S<strong>of</strong>tware Design Patterns (4 CU)<br />

Course Description: Design patterns are st<strong>and</strong>ard solutions to common s<strong>of</strong>tware design problems. Instead <strong>of</strong><br />

focusing on how individual components work, design patterns are a systematic approach that focus <strong>and</strong> describe<br />

abstract systems <strong>of</strong> interaction between classes, objects, <strong>and</strong> communication flow. This course explores advanced<br />

principles <strong>of</strong> object-oriented design by studying key s<strong>of</strong>tware design patterns. The patterns are drawn from a variety<br />

<strong>of</strong> sources <strong>and</strong> illustrated through examples <strong>and</strong> case studies. Examples are presented in Java, C++ or C sharp.<br />

Students will also have an opportunity to apply these patterns through a series <strong>of</strong> h<strong>and</strong>s-on exercises.<br />

Indicative Content: Basic Patterns: Structural patterns Creational patterns; Behavioral Grasp <strong>and</strong> Cooper, Vlissides<br />

Pattern Hatching; Relationships between Patterns: Pree’sMetapatterns Zimmers Relations. Tichys classification,<br />

Classification in; Automation <strong>of</strong> Patterns: Automation <strong>of</strong> Design Patterns Together, OpenJava <strong>and</strong> Design Patterns,<br />

Compost/Recoder Refactoring Copliens Symmetries; Historic Roots: The timeless way <strong>of</strong> building; Advanced<br />

Patterns: Parallelism Patterns Exclusion, State Dependence, PLOP2, Coordination; Reactive patterns Analysis<br />

Patterns Re engineering Patterns Automation <strong>of</strong> Design Patterns; Process Patterns Organizational Patterns;<br />

Applications <strong>of</strong> Design Patterns: Extreme Programming Cope: Multi-Paradigm Design<br />

Reference Books:<br />

i. E. Gamma et al. Design Patterns, Elements <strong>of</strong> Reusable Object-Oriented S<strong>of</strong>tware, Addison Wesley, 1995.<br />

ii. W. Pree. Design Patterns for Object-Oriented S<strong>of</strong>tware Development, Wokingham: Addison-Wesley/ACM<br />

Press, 1996.<br />

iii. F. Buschmann, K. Henney, D. C. Schmidt, On Patterns <strong>and</strong> Pattern Language, 2005.<br />

BSE 4203: Information Technology <strong>and</strong> Society (3 CU)<br />

Course Description: Upon successful completion <strong>of</strong> this course, the student will: Underst<strong>and</strong> the impact <strong>of</strong><br />

computerization on society; <strong>and</strong> appreciate the variety <strong>of</strong> computerized systems in our everyday life.<br />

Indicative Content: Impact <strong>of</strong> computers on society; Social structures, their boundaries <strong>and</strong> development; Ethical<br />

issues (Basic honesty, sincerity, etc.) relating to system development <strong>and</strong> its use; Systems security <strong>and</strong> protection;<br />

Dependency constraints, self-reliance; Legal issues relating to computerized systems; Uses <strong>and</strong> applications <strong>of</strong><br />

computers for national development - communication, agriculture, health care delivery, banking, administration,<br />

accounting, planning <strong>and</strong> decision making.<br />

Reference Books:<br />

i. W. H. Dutton, Information <strong>and</strong> Communication Technologies: Visions <strong>and</strong> Realities, Oxford University<br />

Press, 1996.<br />

ii. R. Kling (Ed), Computerization <strong>and</strong> Controversy: Value conflicts <strong>and</strong> social choices, Academic Press,<br />

1996.<br />

iii. W. H. Dutton, Society on the Line: information politics in the digital age, Oxford University Press, 1999.<br />

iv. G. Walsham, Interpreting Information Systems in Organisations, John Wiley, 1993.<br />

v. F. Webster, Theories <strong>of</strong> the Information Society, Routledge, 1995.<br />

BSE 4204: Emerging Trends in S<strong>of</strong>tware Engineering (4 CU)<br />

Course Description: Given the rapid nature <strong>of</strong> the computing discipline, the objective <strong>of</strong> this course is to equip<br />

students with a set <strong>of</strong> emerging trends in s<strong>of</strong>tware engineering that may be encountered in their practice.<br />

Indicative Content: New trends in s<strong>of</strong>tware engineering not yet introduced in the syllabus will be covered <strong>and</strong> the<br />

current topics in s<strong>of</strong>tware engineering <strong>and</strong> its applications.<br />

References: No particular reference will be used for this course unit, except whatever is recommended by head <strong>of</strong><br />

department in consultation with members <strong>of</strong> the Department.<br />

123


10.0 SHORT COURSES<br />

10.1 Short Courses taught at CIT<br />

• Certificate in Computer Application (CCA)<br />

• CIT Cisco Academy Programmes<br />

o Cisco Certified Network Associate (CCNA)<br />

o Cisco Certified Network Pr<strong>of</strong>essional (CCNP)<br />

o IT Essentials I & II<br />

o International Computer Driving License (ICDL)<br />

• Multimedia Certified Courses<br />

o Certificate in Graphics <strong>and</strong> Image Editing<br />

o Certificate in Video Editing <strong>and</strong> Animation<br />

o Certificate in Dynamic Website Development<br />

• Micros<strong>of</strong>t Academy Programmes<br />

o Micros<strong>of</strong>t Certified Database Administrators (MCDBA)<br />

o Micros<strong>of</strong>t Certified Systems Engineers (MCSA)<br />

o Micros<strong>of</strong>t Certified Systems Administrators (MCSE)<br />

o Micros<strong>of</strong>t Office User Specialists (MOS)<br />

o Micros<strong>of</strong>t Certified Solutions Developer (MCSD)<br />

• Oracle Programmes<br />

o Oracle Certified Associate (OCA)<br />

o Oracle Certified Pr<strong>of</strong>essional (OCP)- Proposed<br />

• Staff Development Programme (Advanced End –User Training Programme in ICT Skills)<br />

• Geographical Information Systems(GIS)<br />

• Computer Systems Engineering Course<br />

10.2 Certificate in Computer Applications (CCA)<br />

Students are trained on how to use a Computer <strong>and</strong> Computer Applications in an <strong>of</strong>fice or business setting. CCA<br />

course comprises <strong>of</strong>: Introduction to Computers <strong>and</strong> Computer Systems, Introduction to Operating Systems,<br />

Word Processing with Micros<strong>of</strong>t word, Spreadsheets with Micros<strong>of</strong>t Excel, <strong>and</strong> Presentations with Micros<strong>of</strong>t Power<br />

Point, Databases with Ms. Access, Graphics Design with Corel Draw <strong>and</strong> Web Technology for managing Email <strong>and</strong><br />

using search engines. CCA is a 50 hour course, no matter what times <strong>and</strong> a date a person chooses to study. CCA<br />

gives a wide <strong>and</strong> vibrant variety <strong>of</strong> course which have been carefully chosen to give any individual a good<br />

jump start to computing <strong>and</strong> making them competent in computing.<br />

Course Content:<br />

• Introduction to Computers <strong>and</strong> Computer Systems which basically covers the History <strong>of</strong> Computers,<br />

the types <strong>of</strong> computers <strong>and</strong> the different computer parts broken into Hardware <strong>and</strong> s<strong>of</strong>tware,<br />

components <strong>of</strong> the computer <strong>and</strong> aspects <strong>of</strong> computing.<br />

• Introduction to Operating Systems which covers the different types <strong>of</strong> operating systems we have,<br />

choosing a good operating systems <strong>and</strong> the advantages <strong>and</strong> disadvantages one has over the other.<br />

• Micros<strong>of</strong>t Word basically covers using MS Word but emphasis is on Introduction <strong>of</strong> Ms word, Window<br />

properties <strong>and</strong> saving, Headers, Footers & Footnotes, find & replace, editing fonts & alignment,<br />

Columns, section & column breaks, tables, Using <strong>and</strong> creating a mail merge among many.<br />

• Micros<strong>of</strong>t Excel covers introduction to Excel, properties <strong>of</strong> the worksheets, using simple formulas<br />

(adding, multiplying etc), Complex formulae (importing formulae, using the paste function & help) <strong>and</strong><br />

Charts <strong>and</strong> the chart wizards, save options & print options.<br />

124


• Micros<strong>of</strong>t PowerPoint covers Introduction(Auto content wizard, design templates <strong>and</strong> layouts),<br />

inserting images, charts, audio <strong>and</strong> video streams, Designing in PowerPoint (certificate or Dinner<br />

cards) <strong>and</strong> Doing a presentation, animating <strong>and</strong> slide transitions.<br />

• Micros<strong>of</strong>t Access covers Introduction to Databases <strong>and</strong> underst<strong>and</strong>ing terms & tables, designing<br />

multiple tables, creating relationships <strong>and</strong> creating Queries, Forms <strong>and</strong> Reports.<br />

• Web Technologies which covers underst<strong>and</strong>ing networks <strong>and</strong> Search engines, emailing <strong>and</strong> sending<br />

attachments.<br />

• CorelDraw basically covers Introduction to CorelDraw, underst<strong>and</strong>ing <strong>and</strong> using the tools <strong>and</strong><br />

Designing a business card.<br />

Minimum Admission Requirements:<br />

To be admitted for a course leading to the award <strong>of</strong> Certificate in Computer Applications, a c<strong>and</strong>idate must know<br />

English.<br />

Note: Individuals intending to attend the CCA course are advised to pay <strong>and</strong> register early enough before the<br />

commencement <strong>of</strong> the particular intake they are interested in as admissions to intakes are on first-come-first-served<br />

basis <strong>and</strong> there is a limit on the class size.<br />

10.3 International Computer Driving License (ICDL)<br />

This course equips students with confidence to participate in the global digital society; improves the students’<br />

quality <strong>of</strong> life by gaining a better working knowledge <strong>of</strong> computers; increases their value in the workplaces by<br />

possessing a valuable credential.<br />

Course Content:<br />

Module 1: Basics <strong>of</strong> Information Technology<br />

Module 2: using a computer <strong>and</strong> file management Module 3: word processing<br />

Module 4: Micros<strong>of</strong>t Excel (Spreadsheets)<br />

Module 5: Micros<strong>of</strong>t access (Database)<br />

Module 6: Micros<strong>of</strong>t PowerPoint (presentations) Module 3: Information <strong>and</strong> Communication<br />

Minimum Admission Requirements:<br />

O’ Level certificate is required<br />

10.4 Micros<strong>of</strong>t Academy Programmes<br />

Since June 2003, the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> IT has been running a Micros<strong>of</strong>t IT Academy Programme. To date,<br />

more than 100 students have acquired different IT certifications by attending different Programmes <strong>of</strong>fered in the<br />

Academy. This course prepares students for academic education tracks, career opportunities as Network<br />

Administrators, Technical Support Specialists, S<strong>of</strong>tware/Hardware Developers, Design Engineers, <strong>and</strong> Office<br />

Specialists. Students train in: Visual Studio, NET Pr<strong>of</strong>essional, Visual Basic, Visual C++, Visual FoxPro, Visual<br />

InterDev, <strong>and</strong> Visual J++; Micros<strong>of</strong>t .NET Enterprise Servers, Windows Server, SQL Server, Exchange Server,<br />

Commerce Server, BizTalk Server, Host Integration Server, Application Center Server, Systems Management<br />

Server, Mobile Information 2001 Server, <strong>and</strong> Content Management Servers; Micros<strong>of</strong>t Operating Systems:<br />

Windows 2000 Pr<strong>of</strong>essional, Windows 2000 Server, Windows 2000 Advanced Server, Windows 2000 Datacenter<br />

Server, Windows 2000 Small Business Server, <strong>and</strong> Windows XP Pr<strong>of</strong>essional; Micros<strong>of</strong>t Office 2000 <strong>and</strong><br />

Micros<strong>of</strong>t Office XP Pr<strong>of</strong>essional.<br />

The Micros<strong>of</strong>t IT Academy Programme is a Programme designed to allow accredited academic institutions to deliver to<br />

students a premium education on cutting-edge Micros<strong>of</strong>t® technologies. From the desktop to networking <strong>and</strong><br />

programming, students <strong>and</strong> employers worldwide look to Micros<strong>of</strong>t IT Academies for the latest technologies, in-<br />

125


dem<strong>and</strong> skills, <strong>and</strong> the assurance <strong>of</strong> the Micros<strong>of</strong>t quality st<strong>and</strong>ard. In line with this general aim, the Micros<strong>of</strong>t IT<br />

Academy <strong>of</strong> CIT delivers training in accordance with guidelines issued by Micros<strong>of</strong>t world-wide. The Academy<br />

follows the Micros<strong>of</strong>t Official Curriculum guidelines to deliver courses leading to any <strong>of</strong> the following<br />

certifications:<br />

• Micros<strong>of</strong>t Certified Database Administrators (MCDBAs)<br />

• Micros<strong>of</strong>t Certified Systems Engineers (MCSEs)<br />

• Micros<strong>of</strong>t Certified Systems Administrator (MCSA)<br />

• Micros<strong>of</strong>t Office User Specialist(MOS)<br />

• Micros<strong>of</strong>t Certified Solutions Developer (MCSD).<br />

The Academy uses services <strong>of</strong> Micros<strong>of</strong>t Certified Trainers (MCTs) to deliver the training. It is a Micros<strong>of</strong>t basic<br />

requirement that IT Academies associate with MCT certified trainers to ensure that Micros<strong>of</strong>t’s high technical<br />

training st<strong>and</strong>ards are met when training is obtained from the accredited institutions.<br />

i. Programme Structure<br />

Micros<strong>of</strong>t Certified Database Administrators (MCDBAs)<br />

EXAM REF: DESCRIPTION STATUS<br />

Exam 70-228 Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t SQL Server 2000<br />

Enterprise Edition<br />

Exam 70-229: Designing <strong>and</strong> Implementing Databases with Micros<strong>of</strong>t SQL<br />

Server 2000 Enterprise Edition<br />

Exam 70-290: Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003<br />

Environment<br />

Exam 70-291: Implementing, Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t<br />

Windows Server 2003 Network Infrastructure<br />

126<br />

Core<br />

Core<br />

Core Elective<br />

Core Elective<br />

Exam 70-215: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows Server 2000 Core Elective<br />

Exam 70-216: Implementing <strong>and</strong> Administering Micros<strong>of</strong>t Windows 2000<br />

Network Infrastructure<br />

Exam 70-293: Planning <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003<br />

Network Infrastructure<br />

Exam 70-175: Designing <strong>and</strong> Implementing Distributed Applications with<br />

Micros<strong>of</strong>t Visual Basic 6.0<br />

MCSE on Micros<strong>of</strong>t Windows 2000 Certification Requirements<br />

Exam 70-210: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows Pr<strong>of</strong>essional Core<br />

Exam 70-215: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows Server Core<br />

Exam 70-216: Implementing <strong>and</strong> Administering a Micros<strong>of</strong>t Windows 2000 Network<br />

Infrastructure<br />

Exam 70-17: Implementing <strong>and</strong> Administering a Micros<strong>of</strong>t Windows 2000 Directory<br />

Services Infrastructure<br />

Elective<br />

Elective<br />

Elective<br />

Exam 70-219: Designing a Micros<strong>of</strong>t Windows 2000 Directory Services Infrastructure Core Elective<br />

Exam 70-220: Designing Security for a Micros<strong>of</strong>t Windows 2000 Network Core Elective<br />

Exam 70-221: Designing a Micros<strong>of</strong>t Windows 2000 Network Infrastructure Core Elective<br />

Core<br />

Core


Exam 70-297: Designing a Micros<strong>of</strong>t Windows Server 2003 Active Directory <strong>and</strong> Network<br />

Infrastructure<br />

127<br />

Core Elective<br />

Exam 70-298: Designing Security for a Micros<strong>of</strong>t Windows Server 2003 Network Core Elective<br />

Exam 70-228: Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t SQL Server 2000<br />

Enterprise Edition<br />

MCSE on Micros<strong>of</strong>t Windows Server 2003 Certification Requirements<br />

Exam 70-210: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows Pr<strong>of</strong>essional Core<br />

Exam 70-290: Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server<br />

2003 Environment<br />

Exam 70-291: Implementing, Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t<br />

Windows Server 2003 Network Infrastructure<br />

Exam 70-293: Planning <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server<br />

2003 Network Infrastructure<br />

Exam 70-294: Planning, Implementing <strong>and</strong> Maintaining a Micros<strong>of</strong>t<br />

Windows Server 2003 Active Directory Infrastructure<br />

Exam 70-297: Designing a Micros<strong>of</strong>t Windows Server 2003 Active Elective<br />

Directory <strong>and</strong> Network Infrastructure<br />

Exam 70-298: Designing Security for a Micros<strong>of</strong>t Windows Server 2003<br />

Network Infrastructure<br />

Exam 70-229: Designing <strong>and</strong> Implementing Databases with Micros<strong>of</strong>t<br />

SQL Server 2000 Enterprise Edition<br />

Exam 70-228: Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t SQL<br />

Server 2000 Enterprise Edition<br />

MCSA on Micros<strong>of</strong>t Windows Server 2003 Certification Requirements<br />

Exam 70-210: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows<br />

Pr<strong>of</strong>essional<br />

Exam 70-290: Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003<br />

Environment<br />

Exam 70-291: Implementing, Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows<br />

Server 2003 Network Infrastructure<br />

Exam 70-228: Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t SQL Server<br />

2000 Enterprise Edition<br />

MCSA on Micros<strong>of</strong>t Windows 2000 Certification Requirements<br />

Exam 70-210: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows<br />

Pr<strong>of</strong>essional<br />

Exam 70-215: Installing, Configuring, <strong>and</strong> Administering Micros<strong>of</strong>t Windows<br />

Server<br />

Exam 70-218: Managing a Micros<strong>of</strong>t Windows 2000 Network Environment Core<br />

Exam 70-214: Implementing <strong>and</strong> Administering Security in a Micros<strong>of</strong>t<br />

Windows 2000 Network<br />

Elective<br />

Core<br />

Core<br />

Core<br />

Core<br />

Core<br />

Elective Core<br />

Elective<br />

Elective<br />

Core<br />

Core<br />

Core<br />

Elective<br />

Core<br />

Core<br />

Elective


Exam 70-216: Implementing <strong>and</strong> Administering a Micros<strong>of</strong>t Windows 2000<br />

Network Infrastructure<br />

Exam 70-224: Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t Exchange<br />

2000 Server<br />

Exam 70-228: Installing, Configuring <strong>and</strong> Administering Micros<strong>of</strong>t SQL Server<br />

2000 Enterprise Edition<br />

ii. Course Unit Description<br />

MCDBA on Micros<strong>of</strong>t SQL Server 2000 Certification Requirements<br />

128<br />

Elective<br />

Elective<br />

Elective<br />

The MCDBA credential is the premier certification for pr<strong>of</strong>essionals who implement <strong>and</strong> administer Micros<strong>of</strong>t SQL<br />

Server databases. Micros<strong>of</strong>t Certified Database Administrators (MCDBAs) design, implement, <strong>and</strong> administer<br />

Micros<strong>of</strong>t SQL Server databases. Micros<strong>of</strong>t Certified Database Administrator (MCDBA) on Micros<strong>of</strong>t SQL<br />

Server 2000 c<strong>and</strong>idates need to pass three core exams <strong>and</strong> one elective exam that provide a valid <strong>and</strong><br />

reliable measure <strong>of</strong> technical pr<strong>of</strong>iciency <strong>and</strong> expertise in the implementation <strong>and</strong> administration <strong>of</strong> SQL<br />

Server databases. Micros<strong>of</strong>t Windows Server 2003 exams now can be used to fulfill the networking systems core<br />

exam requirement in combination with SQL Server 2000 exams.<br />

Core Exams (3 Exams Required)<br />

MCDBA c<strong>and</strong>idates are required to pass one SQL Server administration exam <strong>and</strong> one SQL Server design exam. In<br />

addition, MCDBA c<strong>and</strong>idates have the option to pass either one Windows 2000 Server or one Windows Server<br />

2003 exam to fulfill the networking systems core requirement.<br />

Elective Exams (1 Exam Required)<br />

In addition to the core exam requirements, you must also pass one elective exam that provides pro<strong>of</strong> <strong>of</strong> expertise<br />

with a specific Micros<strong>of</strong>t server product.<br />

The following Windows Server 2003 exams have been added to the MCDBA track as options to the core<br />

requirements:<br />

• Exam 70-290: Managing <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003 Environment.<br />

• Exam 70-291: Implementing, Managing, <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003 Network<br />

Infrastructure will be added in September 2003 to the pool <strong>of</strong> electives.<br />

• Exam 70-293: Planning <strong>and</strong> Maintaining a Micros<strong>of</strong>t Windows Server 2003 Network Infrastructure will be<br />

added in September 2003 to the pool <strong>of</strong> electives.<br />

MCSE on Micros<strong>of</strong>t Windows 2000 Certification Requirements<br />

The MCSE credential is the premier certification for pr<strong>of</strong>essionals who analyze the business requirements<br />

<strong>and</strong> design <strong>and</strong> implement the infrastructure for business solutions based on the Micros<strong>of</strong>t Windows 2000<br />

platform <strong>and</strong> Micros<strong>of</strong>t server s<strong>of</strong>tware. Micros<strong>of</strong>t Certified Systems Engineers (MCSEs) design <strong>and</strong><br />

implement an infrastructure solution based on the Windows platform <strong>and</strong> Micros<strong>of</strong>t Servers s<strong>of</strong>tware. They<br />

are among the most technically pr<strong>of</strong>icient pr<strong>of</strong>essionals available to help organizations make a successful<br />

transition to the Windows 2000 operating system <strong>and</strong> to ensure that they reap the ongoing benefits that<br />

Windows 2000 <strong>and</strong> Active Directory are designed to deliver. Specializations include MCSE: Messaging <strong>and</strong><br />

MCSE: Security. Micros<strong>of</strong>t Certified Systems Engineer (MCSE) c<strong>and</strong>idates on the Micros<strong>of</strong>t Windows® 2000 track<br />

are required to pass seven exams or the equivalent that include the following:


Core Exams (5 Exams Required)<br />

• Four (4) Operating System exams. C<strong>and</strong>idates must pass one exam from each set <strong>of</strong> operating<br />

system exams—client operating system <strong>and</strong> networking system—in the table that follows.<br />

• One (1) design exam. C<strong>and</strong>idates must pass one exam that provides pro<strong>of</strong> <strong>of</strong> expertise for design skills<br />

for specific Micros<strong>of</strong>t server technologies.<br />

Elective Exams (2 Exams Required). The elective exams provide a valid <strong>and</strong> reliable measure <strong>of</strong> technical<br />

pr<strong>of</strong>iciency <strong>and</strong> expertise in solution design <strong>and</strong> implementation.<br />

MCSE on Micros<strong>of</strong>t Windows Server 2003 Certification Requirements<br />

Micros<strong>of</strong>t Certified Systems Engineer (MCSE) c<strong>and</strong>idates on the Micros<strong>of</strong>t Windows Server 2003 track are<br />

required to satisfy the following requirements:<br />

Core Exams (6 Exams Required)<br />

• Four networking system exams<br />

• One client Operating System exam<br />

• One design exam<br />

Elective Exams (1 Exam Required)<br />

Together with the core exams, the elective exams provide a valid <strong>and</strong> reliable measure <strong>of</strong> technical pr<strong>of</strong>iciency <strong>and</strong><br />

expertise in solution design <strong>and</strong> implementation.<br />

Note: Core exams are a must for MCSE on Micros<strong>of</strong>t Windows Server 2003 Core Elective exams: Any one <strong>of</strong> the<br />

two exams must be done<br />

MCSA on Micros<strong>of</strong>t Windows Server 2003 Certification Requirements<br />

The MCSA on Micros<strong>of</strong>t Windows 2000 <strong>and</strong> Windows Server 2003 certification is designed for pr<strong>of</strong>essionals who<br />

implement, manage, <strong>and</strong> troubleshoot existing network <strong>and</strong> system environments based on the Micros<strong>of</strong>t Windows<br />

2000 Server platforms. Micros<strong>of</strong>t Certified Systems Administrators (MCSAs) administer network <strong>and</strong> systems<br />

environments based on the Micros<strong>of</strong>t Windows platforms. Specializations include MCSA: Messaging <strong>and</strong> MCSA:<br />

Security. The Micros<strong>of</strong>t Certified Systems Administrator (MCSA) certification helps students to advance their career<br />

by ensuring they have the skills to successfully manage <strong>and</strong> troubleshoot system environments running on Micros<strong>of</strong>t<br />

Windows operating systems. Micros<strong>of</strong>t Windows® Server 2003-based operating environments. MCSA c<strong>and</strong>idates are<br />

required to pass three core exams <strong>and</strong> one elective exam.<br />

Note: Core exams are a must. One elective exam must be done.<br />

MCSA on Micros<strong>of</strong>t Windows 2000 Certification Requirements<br />

MCSA c<strong>and</strong>idates are required to pass three core exams <strong>and</strong> one elective exam.<br />

Micros<strong>of</strong>t Office Specialist (MOS)<br />

Micros<strong>of</strong>t Office Specialist is the only comprehensive, performance-based certification Programme approved by<br />

Micros<strong>of</strong>t to validate desktop computer skills using Micros<strong>of</strong>t Office applications. Micros<strong>of</strong>t Office Specialists<br />

(Office Specialists) are globally recognized for demonstrating advanced skills with Micros<strong>of</strong>t desktop<br />

s<strong>of</strong>tware. To earn the Micros<strong>of</strong>t Office Specialist (Office Specialist) certification for Micros<strong>of</strong>t Office, one must pass<br />

one or more certification exams. Office Specialist exams provide a valid <strong>and</strong> reliable measure <strong>of</strong> technical<br />

pr<strong>of</strong>iciency <strong>and</strong> expertise by evaluating your overall comprehension <strong>of</strong> Office or Micros<strong>of</strong>t Project Programmes,<br />

your ability to use their advanced features, <strong>and</strong> your ability to integrate the Office Programmes with other s<strong>of</strong>tware<br />

Programmes. Office Specialist exams are administered at Authorized Testing Centers worldwide.<br />

129


MCSD for Micros<strong>of</strong>t .NET Certification<br />

Micros<strong>of</strong>t Certified Solution Developers (MCSDs) design <strong>and</strong> develop leading-edge business solutions with<br />

Micros<strong>of</strong>t development tools, technologies, platforms, <strong>and</strong> the Windows architecture. The Micros<strong>of</strong>t Certified<br />

Solution Developer (MCSD) for Micros<strong>of</strong>t .NET credential is the top-level certification for advanced<br />

developers who design <strong>and</strong> develop leading-edge enterprise solutions, using Micros<strong>of</strong>t development tools <strong>and</strong><br />

technologies as well as the Micros<strong>of</strong>t .NET Framework. C<strong>and</strong>idates for this certification are required to pass four<br />

core exams <strong>and</strong> one elective exam. The core exams provide a valid <strong>and</strong> reliable measure <strong>of</strong> technical<br />

pr<strong>of</strong>iciency <strong>and</strong> expertise in developing <strong>and</strong> maintaining enterprise applications that are based on Micros<strong>of</strong>t<br />

development tools, technologies, <strong>and</strong> platforms. The elective exam provides pro<strong>of</strong> <strong>of</strong> expertise with a specific<br />

Micros<strong>of</strong>t server product.<br />

Minimum Admission Requirements for Micros<strong>of</strong>t Academy Courses<br />

The courses are skills-based <strong>and</strong> therefore open to every one who is computer literate <strong>and</strong> has knowledge <strong>of</strong> English.<br />

10.5 Staff Development Programmes<br />

This is done through seminars, workshops <strong>and</strong> short courses such as Certificate in Information Technology run by<br />

the End User Training Project (EUTP) for all academic <strong>and</strong> administrative staff <strong>and</strong> students <strong>of</strong> Makerere<br />

University; <strong>and</strong> Consultancy services to both the private <strong>and</strong> public sectors.<br />

10.6 Multimedia Certificate Courses:<br />

The following are the New Courses that started in April 2009 <strong>and</strong> are aimed at <strong>of</strong>fering H<strong>and</strong>s On Experience in<br />

Multimedia Applications. These courses are geared towards industrial production <strong>and</strong> are taught by leading experts<br />

in the field. They will mainly be PRACTICAL <strong>and</strong> will be <strong>of</strong>fered in the newly equipped Multimedia Lab at CIT.<br />

These courses include;<br />

• Introduction to Multimedia Applications<br />

• Certificate in Graphics <strong>and</strong> Image Editing<br />

• Certificate in Video Editing <strong>and</strong> Animation<br />

• Certificate in Digital Audio using Logic Pro<br />

• Certificate in Dynamic Website Development<br />

• Certificate in Publishing <strong>and</strong> Br<strong>and</strong>ing<br />

Minimum Admission Requirements for Micros<strong>of</strong>t Academy Courses<br />

Computer Knowledge is required. All applicants should have completed Senior Six at the minimum.<br />

10.7 Oracle Programmes<br />

The Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology, Makerere University, is a member <strong>of</strong> the Oracle<br />

Academy Initiative <strong>of</strong>fering Oracle Certified Associate (OCA) <strong>and</strong> Oracle Associate Pr<strong>of</strong>essional (OCP).<br />

However OCP has not taken <strong>of</strong>f at the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology but it is hoped to begin<br />

very soon. Oracle Associates acquire a foundation knowledge that will allow them to keep the Oracle<br />

database environment running all the time. They are able to install, maintain, troubleshoot, <strong>and</strong> fine-tune the<br />

Oracle9i database with all the newest features the Oracle9i database <strong>of</strong>fers. The Oracle9i Database Administrator<br />

Certification consists <strong>of</strong> two paths, which are to be taken in sequence:<br />

i. Oracle9i Database Administrator Certified Associate (OCA)<br />

Two exams are required to obtain the Oracle 9iDBA OCA.<br />

a) Introduction to Oracle9i SQL<br />

b) Oracle9i Database Fundamentals I<br />

130


a) Introduction to 9i SQL:<br />

Course Content: Writing a Basic SQL Statement; Restricting <strong>and</strong> Sorting Data; Single Row Functions; Displaying<br />

Data from Multiple Tables; Writing Sub queries; Producing Readable Output with iSQL*Plus; Manipulating Data;<br />

Creating <strong>and</strong> Managing Tables; Including Constraints; Creating Views; Other Database Objects; SQL Workshop;<br />

Using Set Operators; Oracle9i Single Row Functions; Enhancements to the GROUP BY Clause; Advanced Sub<br />

queries; Hierarchical Retrieval; Extensions to DDL <strong>and</strong> DML Statements <strong>and</strong> Writing Scripts to Generate Scripts.<br />

b) Oracle9i Database Fundamentals I:<br />

Course Content: Oracle Architectural Components; Getting Started with the Oracle Server; Identifying the features<br />

<strong>of</strong> the Universal Installer; Defining the Optimal Flexible Architecture; Identifying database administrative users;<br />

Managing an Oracle Instance; Creating a Database; Using the Data Dictionary; Maintaining the Control File;<br />

Maintaining Redo Log Files; Managing Table spaces <strong>and</strong> Data files; Describing storage hierarchy; Establishing the<br />

difference between SYSTEM <strong>and</strong> Non-SYSTEM table spaces; Storage Structures <strong>and</strong> Relationships; Managing<br />

Undo Data; Creating <strong>and</strong> maintaining UNDO tables paces; Managing Tables <strong>and</strong> Managing Indexes<br />

ii. Oracle9i Database Administrator Certified Pr<strong>of</strong>essional (OCP)<br />

After achieving the OCA, Oracle training has to be continued along with gaining on-the-job experience to pass the<br />

required exams <strong>and</strong> move up to the OCP level. For 9iOCP one instructor led course is a requirement. Exams for OCP<br />

include:<br />

• Oracle9i Database Fundamentals I<br />

• Oracle9i Database Performance <strong>and</strong> Tuning<br />

Minimum Admission Requirements<br />

To be admitted for a course leading to the award <strong>of</strong> Certificate in OCA, a c<strong>and</strong>idate must have completed A’ Level <strong>and</strong><br />

therefore he/she has A’ Level certificate.<br />

iii. Oracle Certified Pr<strong>of</strong>essional (OCP) - Proposed<br />

10.8 Geographical Information Systems (GIS)<br />

Subject Details;<br />

a) Introduction to GIS<br />

The Faculty <strong>of</strong> computing <strong>and</strong> IT has introduced a new short course in Geographical Information Systems (GIS) that<br />

will cover; Introduction to GIS, GIS & Business, GIS & Telecommunications, GIS & Government. It will be taught<br />

in CIT's newly set up advanced GIS Lab. Training in specialized Geographical Information Systems (GIS) topics for<br />

private <strong>and</strong> public sectors in Ug<strong>and</strong>a are as follows;<br />

• Spatial Data Capture <strong>and</strong> Input;<br />

• Spatial Data Structures;<br />

• Spatial Data Manipulation <strong>and</strong> Analysis;<br />

• Practicals on Online GIS <strong>and</strong> ArcExplorer.<br />

b) Application to GIS<br />

i. General Introduction to GIS;<br />

ii. Practical GIS sessions in various application domains such as:<br />

• Utilities (Water, Electricity, Telecom),<br />

• Governance,<br />

• Fleet Management,<br />

• Marketing Intelligence.<br />

131


10.9 Cisco Academy Programmes<br />

In July 2002, Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology (CIT) was approved as a<br />

Regional Cisco Networking Academy under a partnership with Cisco Systems Inc. The four popular Cisco<br />

Systems Programmes <strong>of</strong>fered are; (a) Cisco Certified Network Associate (CCNA) (b) Cisco Certified Network<br />

Pr<strong>of</strong>essional (CCNP) (c) Wireless Local Area Network (WLAN) <strong>and</strong> (d) Instructional Technology Essentials I<br />

<strong>and</strong> II (IT Essentials I & II.<br />

A Cisco Certified Network Associate (CCNA) Programme<br />

CCNA is a comprehensive curriculum that includes four separate modules. The curriculum emphasizes the use<br />

<strong>of</strong> decision-making <strong>and</strong> problem-solving techniques to resolve networking issues. Students learn how to<br />

install <strong>and</strong> configure switches <strong>and</strong> routers in local <strong>and</strong> wide-area networks using various protocols <strong>and</strong> provide<br />

Level 1 troubleshooting service, <strong>and</strong> improve network performance <strong>and</strong> security. Additionally, training is provided in<br />

the proper care, maintenance, <strong>and</strong> use <strong>of</strong> networking s<strong>of</strong>tware tools <strong>and</strong> equipment. The CCNA certification course<br />

features the following modules:<br />

a) CCNA Discovery1: Networking for Home <strong>and</strong> Small Businesses<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to pr<strong>of</strong>iciently: Set up a personal computer system, including the operating system, interface cards<br />

<strong>and</strong> peripheral devices; Plan <strong>and</strong> install a small business network <strong>and</strong> connect it to the Internet; Verify <strong>and</strong><br />

troubleshoot network <strong>and</strong> Internet connectivity; Share resources such as files <strong>and</strong> printers among multiple<br />

computers; Recognize <strong>and</strong> mitigate security threats to a home network; Configure <strong>and</strong> certify common<br />

Internet applications; Configure basic IP services through a GUI.<br />

b) CCNA Discovery2: Working at a Small-to-Medium Business or ISP<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to pr<strong>of</strong>iciently: Describe the structure <strong>of</strong> the Internet <strong>and</strong> how communication occurs between<br />

hosts; Install, configure, <strong>and</strong> troubleshoot Cisco IOS devices for Internet <strong>and</strong> server connectivity; Plan a<br />

basic wired infrastructure to support network traffic; Configure a server to share resources <strong>and</strong> provide<br />

common Web services; Implement basic WAN connectivity using Telco services; Demonstrate proper<br />

disaster recovery procedures <strong>and</strong> perform server backups; Monitor network performance <strong>and</strong> isolate<br />

failures; Troubleshoot problems using an organized, layered procedure; Describe the OSI model <strong>and</strong> the<br />

process <strong>of</strong> encapsulation.<br />

c) CCNA Discovery3: Introducing Routing <strong>and</strong> Switching in the Enterprise<br />

During the Introducing Routing <strong>and</strong> Switching in the Enterprise course, administered by the undersigned<br />

instructor, the student demonstrated the following competencies: Configure a switch with VLANs <strong>and</strong><br />

inter-switch communication; Perform LAN, WAN, <strong>and</strong> VLAN troubleshooting using a structured<br />

methodology <strong>and</strong> the OSI model; Implement a LAN for an approved network design; Implement access<br />

lists to permit or deny specified traffic; Implement WAN links; Configure routing protocols on Cisco<br />

devices.<br />

d) CCNA Discovery4: Designing <strong>and</strong> Supporting Computer Networks<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to pr<strong>of</strong>iciently: Gather customer requirements; Design a simple Internetwork using Cisco<br />

technology; Design an IP addressing scheme to meet LAN requirements; Create an equipment list to meet<br />

LAN design requirements; Create <strong>and</strong> present a proposal to a customer; Install <strong>and</strong> configure a prototype<br />

Internetwork; Obtain <strong>and</strong> upgrade Cisco IOS S<strong>of</strong>tware in Cisco devices.<br />

132


Minimum Admission Requirements<br />

To be admitted for a course leading to the award <strong>of</strong> CCNA Certificate, a c<strong>and</strong>idate must have completed O’ Level <strong>and</strong><br />

thus possesses O’ Level Certificate.<br />

B. Cisco Certified Network Pr<strong>of</strong>essional (CCNP) Programme<br />

The pr<strong>of</strong>essional-level curriculum builds on CCNA with more complex network configurations, diagnosis, <strong>and</strong><br />

troubleshooting. Students learn about complex network configurations <strong>and</strong> how to diagnose <strong>and</strong> troubleshoot<br />

network problems. Trains students to install configure <strong>and</strong> operate local <strong>and</strong> wide-area networks (LANs <strong>and</strong> WANs),<br />

<strong>and</strong> dial access services for organizations with networks from 100 to more than 500 nodes with protocols <strong>and</strong><br />

technologies such as: TCP/IP, OSPF, EIGRP, BGP, ISDN, Frame Relay, STP, <strong>and</strong> VTP. The focus is on<br />

developing those skills that enable students to implement scalable networks, build campus networks using<br />

multilayer switching technologies, create <strong>and</strong> deploy a global intranet, <strong>and</strong> troubleshooting routers <strong>and</strong><br />

switches for multiprotocol client hosts <strong>and</strong> services. The CCNP certification course features the following modules:<br />

a) CCNP1: Building Scalable Internetworks<br />

During the Building Scalable Internetworks course, administered by the undersigned instructor, the student<br />

demonstrated the following competencies: Explain routing in the enterprise network; Implement <strong>and</strong> verify<br />

multicast forwarding using PIM; Implement IPv6 in an enterprise network; Implement <strong>and</strong> verify EIGRP<br />

operations; Build a scalable multi-area network with OSPF; Implement route optimization; Implement <strong>and</strong><br />

verify BGP for enterprise ISP connectivity; Implement <strong>and</strong> verify IS-IS.<br />

b) CCNP2: Implementing Secured Converged Wide-Area Networks<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to Pr<strong>of</strong>iciently: Implement basic teleworker services; Implement Frame-Mode MPLS; Implement<br />

a site-to-site IPSec VPN; Describe network security strategies; Implement Cisco Device Hardening;<br />

Implement Cisco IOS firewall; Describe <strong>and</strong> configure Cisco IOS IP.<br />

c) CCNP3: Building Multilayer Switched Networks<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to pr<strong>of</strong>iciently: Implement VLANs; Conduct the operation <strong>of</strong> Spanning Tree protocols in a<br />

hierarchical network; Implement Inter-VLAN routing; Implement gateway redundancy technologies;<br />

Describe <strong>and</strong> configure wireless client access; Describe <strong>and</strong> configure security features in a switched<br />

network; Configure support for voice.<br />

d) CCNP4: Optimizing Converged Networks<br />

During the Cisco® Networking Academy course, administered by the undersigned instructor, the student<br />

was able to pr<strong>of</strong>iciently: Describe Cisco VoIP implementations; Describe QOS considerations; Describe<br />

DiffServ QOS implementations; Implement Auto QOS; Implement WLAN security <strong>and</strong> management.<br />

Minimum Admission Requirements:<br />

To be admitted for a course leading to the award <strong>of</strong> CCNP Certificate, a c<strong>and</strong>idate must have completed CCNA <strong>and</strong><br />

thus possesses CCNA certificate.<br />

C. Information Technology (IT) - Essentials I & II<br />

This course introduces students to information technology <strong>and</strong> data communications. This h<strong>and</strong>s-on, lab-oriented<br />

course stresses laboratory safety <strong>and</strong> working effectively in a group environment.<br />

133


a) IT Essentials I: PC Hardware <strong>and</strong> S<strong>of</strong>tware Competencies<br />

This presents an in-depth exposure to computer hardware <strong>and</strong> operating systems. Students learn the functionality <strong>of</strong><br />

hardware <strong>and</strong> s<strong>of</strong>tware components as well as suggested best practices in maintenance, <strong>and</strong> safety issues. Through<br />

h<strong>and</strong>s on activities <strong>and</strong> labs, students learn how to assemble <strong>and</strong> configure a computer, install operating systems <strong>and</strong><br />

s<strong>of</strong>tware, <strong>and</strong> troubleshoot hardware <strong>and</strong> s<strong>of</strong>tware problems. In addition, an introduction to networking is included.<br />

Acquired competencies:<br />

• Building a computer <strong>and</strong> installation <strong>of</strong> the motherboard, floppy <strong>and</strong> hard drives, CDROM, <strong>and</strong> video cards.<br />

• Installing <strong>and</strong> managing Windows operating systems. * Adding peripherals <strong>and</strong> multimedia capabilities.<br />

• Knowledge <strong>of</strong> local-area network architecture, networking protocols <strong>and</strong> the OSI Model, <strong>and</strong> TCP/IP utilities.<br />

• Connecting the computer to a local area network <strong>and</strong> to the Internet.<br />

• In addition to basic networking concepts, the functions <strong>and</strong> configurations <strong>of</strong> a network are also covered.<br />

b) IT Essentials II: Network Operating Systems<br />

This h<strong>and</strong>s-on, lab-oriented course is designed to be an overview <strong>of</strong> network operating systems <strong>and</strong> specifically covers<br />

the Linux Red Hat Network operating system. Students will learn how to use the Linux operating system, the K<br />

Desktop Environment (KDE), <strong>and</strong> GNU Network Object Model (GNOME). This course will be a stepping stone to<br />

help prepare students for challenging careers, such as skilled hardware support pr<strong>of</strong>essional <strong>and</strong> Linux support<br />

pr<strong>of</strong>essional.<br />

Acquired competencies:<br />

• Configuration <strong>of</strong> network services, including basic network security <strong>and</strong> troubleshooting.<br />

• Use fundamental comm<strong>and</strong>-line features <strong>of</strong> the Linux environment including file system navigation,<br />

file permissions, the vi text editor, comm<strong>and</strong> shells, <strong>and</strong> basic network use.<br />

• Explore GUI features including Applications Manager, Text Editor, printing, <strong>and</strong> mail. * Know basic<br />

administrative tasks with Windows 2000.<br />

Minimum Admission Requirements:<br />

To be admitted for a course leading to the award <strong>of</strong> Certificate in IT Essentials, a c<strong>and</strong>idate must have basic knowledge<br />

about the computer or she/he must have completed CCA.<br />

10.10 Computer Systems Engineering<br />

C<strong>and</strong>idates will learn to design, implement <strong>and</strong> maintain computer systems. The modules covered include: Basic<br />

electronics; Digital Technology; Microprocessor Technology; Computer programming; embedded systems; Digital<br />

systems design; Advanced Computer Maintenance. In each module the students conduct experiments <strong>and</strong> part <strong>of</strong> the<br />

requirements to complete the course the students work on a relevant industry challenge as their project<br />

11 Summary <strong>of</strong> the Duration/Time <strong>of</strong> Study/Training Fees for Short Courses<br />

Course Time <strong>of</strong> Study Duration/Fees<br />

Certificate in Computer Applications Early Morning<br />

5weeks<br />

[CCA]<br />

6:00 AM - 8:00 AM<br />

80,000/=<br />

Regular Classes<br />

5weeks<br />

09:00–11:00,<br />

14:00 – 16:00 &<br />

19:00 – 21:00<br />

100,000/=<br />

Midnight Class<br />

5weeks<br />

00:00 – 06:00<br />

[60,000/=]<br />

Weekend Class<br />

5weeks<br />

09:00 -11:00 (Sat)<br />

14:00 - 16:00 (Sun)<br />

100,000/=<br />

134


International Computer Driving License<br />

(ICDL]<br />

Tuesdays to Thursdays<br />

17:00 - 19:00<br />

Cisco Certified Network Associate Early Morning classes<br />

[CCNA]<br />

06:00 -08:00<br />

Regular classes<br />

10:00 - 12:00<br />

14:00 - 16:00 &<br />

18:00 – 20:00<br />

Midnight Class<br />

00:00 - 06:00<br />

Weekend Class<br />

11:00 - 14:00 (Sat)<br />

09:00 – 16:00 (Sun)<br />

Cisco Certified Network Pr<strong>of</strong>essional Evening<br />

[CCNP]<br />

18:00 – 21:00<br />

IT Essentials I & II Week days<br />

14:00 – 17:00<br />

18:00 - 21:00<br />

Micros<strong>of</strong>t Pr<strong>of</strong>essional Certification Week days<br />

Courses (MCSE, MCDBA, MCSA, 18:00 - 21:00<br />

MCSD & MOUS)<br />

Weekend<br />

Oracle Certified Associate (OCA) Weekend class<br />

09:00 – 13:00(Sat)<br />

Video Editing <strong>and</strong> Animation Mon & Wed or Tue & Thursday<br />

16:00-18:00<br />

Graphics & Image Editing Mon & Wed or Tue & Thursday<br />

11:00-13:00<br />

Dynamic Website Development Tue & Thursday<br />

13:30 - 15:30<br />

or Sat & Sun<br />

12:00 - 14:00<br />

Geographical Information Systems Mon & Wed<br />

14:00-18:00<br />

Computer Systems Engineering Mon, Wed & Fri<br />

14:00 – 18:00<br />

Oracle Associate Pr<strong>of</strong>essional (OCP) (Proposed)<br />

NB: Special Offer for Ladies is ONLY on CCNA at 300,000/= anytime <strong>of</strong> study<br />

12 Intake for Short Courses<br />

135<br />

7weeks<br />

Training [140,000/=]<br />

Certification Testing [140,000/=]<br />

4months<br />

[370,000/=]<br />

6months<br />

[450,000/=]<br />

4months<br />

[280,000]<br />

6months<br />

[450,000/=]<br />

8months<br />

[555,000/=]<br />

3 months<br />

[370,000/=]<br />

5weeks per module<br />

At [370,000/=]<br />

Certification Testing<br />

[250,000 per exam]<br />

14weeks<br />

[555,000/=]<br />

Certification testing (270,000/=)<br />

3 Months<br />

(400,000/=)<br />

3 Months<br />

(400,000/=)<br />

3 Months<br />

(400,000/=)<br />

4 weeks<br />

[250,000/=]<br />

10 Weeks<br />

[500,000/=]<br />

Course Intake period Award<br />

Cisco Certified Network Associate<br />

(CCNA) Programme<br />

Every after 2month. International Certificate<br />

Cisco Certified Network At the Beginning <strong>of</strong> every Month International Certificate<br />

Pr<strong>of</strong>essional (CCNP) Programme<br />

Certificate in Computer<br />

At the Beginning <strong>of</strong> every Month Makerere University - CIT<br />

Applications (CCA)<br />

Certificate<br />

Oracle programme Every after 4months (3 times a year) International Certificate<br />

Micros<strong>of</strong>t Certification Every Month International Certificate<br />

International Computer Driving<br />

License (ICDL)<br />

Every after 2months International Certificate


EUTP Every after 17 weeks Makerere University - CIT<br />

Certificate<br />

Multimedia Certification Courses Every after 2 Months Makerere University - CIT<br />

Certificate<br />

Computer Systems Engineering Every after 2 Months Makerere University – CIT<br />

Certificate<br />

13 Application Forms<br />

For application forms <strong>and</strong> more information about short courses, please visit the Faculty Front Office, level 1, our<br />

website: www.cit.ac.ug/psd/, call us on +256 414 540628 or write to info@cit.mak.ac.ug.<br />

14 Registration Procedure<br />

Pay the tuition fee at any <strong>of</strong> the DFCU Bank branches, Account No: 0IL2550588800 for UGX only <strong>and</strong> Account<br />

Name: Makerere University Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> IT for all accounts, using the deposit slips at the bank. Present<br />

the deposit slip to the Front Office Administrators <strong>of</strong> the Faculty <strong>of</strong> <strong>Computing</strong> <strong>and</strong> <strong>Informatics</strong> Technology for<br />

registration. Tuition fees for applicants with forged academic documents will not be refunded.<br />

136


137

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!