Download entrance exam for computer science and more Exams Software Engineering in PDF only on Docsity! ADDIS ABABA UNIVERSITY, FACULTY OF SCIENCE Department of Mathematics and Computer Science Entrance examination for the Masters of Science Programme in Computer Science Date : June 4, 2002 Time allowed: 3 hours Full Name : Grade Obtained :. Important Note ¢ Answer neatly to all the questions on the space provided on the question paper ¢ Write short, and grammatically and logically correct sentences Page - 1- Part I: Computer organization and assembly (11 pts total) 1. Base your answer to the questions below on the following fragment of code that sorts a list of numbers in ascending order using the bubble sort algorithm. Assume that the list is already stored in the memory. mov cx, p dec cx Ip1: mov di, cx mov bx, 0 Ip2: mov ax, a[bx] cmp ax, a[bx+2] jle continue xchg ax, a[bx+2] mov a[bx], ax continue: add bx, 2 loop Ip2 mov cx, di loop Ip1 1.1. (1 pt) List the variables used in the code. 1.2. (1 pt) Which variable contains the size (ie. Number of elements) of the list? 1.3. (1 pt) Which variable contains the list of numbers? 1.4. (1 pt) What size (or type) are the variables a and p? 1.5. (3 pts) List the different addressing modes used in the code. Page - 2- 2. (8 pts) Design a detailed algorithm to sort a given data of integers into ascending order using a bubble sort algorithm. Write a function that implements this algorithm in a programming language of your choice. Page - 5- Part Ill: Software Engineering (14 pts total) 1. (3 pts) Compare and contrast procedural and object-oriented programming languages. 2. (3 pts) What is the relationship between abstract data types and classes? 3. (4 pts) Give three phases of your choice among the phases of the software development life cycle and give, for each phase, its role in the software development process. A maximum of one sentence is accepted for each phase. Page - 6- 4. (4 pts) Choose one of the following topic (a, b or c) and explain very briefly. a. Waterfall, Spiral, and Prototyping models. For what type of development projects are each of these software development models used? Software metrics. Discuss size, complexity, and quality metrics. Structural and functional software testing methods. Discuss the various structural and functional testing techniques, which are commonly used in software development projects. Give chosen topic here (a, b or c): Page - 7- 2. (4 pts) Normalization is one of the important aspects of relational database design. Discuss the first two normal forms (1NF, 2NF). Elaborate your answer using Examples. 3. (3 pts) Concurrency is one of the major problem areas that the database designer has to deal with in the shared database environments. Describe very briefly any two of such concurrency problems and discuss methods used to overcome the problems. Page - 10- Part 5: Operating system (14 pts total) 1) (2 pts) What are the two major purposes of an operating system? 2) (3 pts) Describe the three process states and the functions involved in the transition of processes from one state to another. Use a diagram to demonstrate your answer. 3) (3 pts) Selection of the value of the quantum time in CPU scheduling is one important aspect of the algorithms. Discuss the problems associated with the selection of a very small quantum value and a very large one? Page - 11- 4) (6 pts) Write a program that runs on UNIX (i.e. that uses UNIX system calls) and creates two processes. The first process should write PING, then the second should write PONG, then the first should write PING, then the second should write PONG, etc. indefinitely. You can use any communication and synchronization method available on UNIX and any programming language. Page - 12- General questions on ICT in Ethiopia and abroad (15 pts total) Instruction: Attempt ANY {CWO of the following five questions. If you attempt more than two none will be accepted. Each question is given 7.5 points as long as you follow the above instructions. 1. IBM mainframe computers used to be called a closed/proprietary system: What does it mean? 2. Do you see advantages/drawbacks in liberalizing the telecom sector in the Ethiopian context? Justify your answer. Page - 15- 3. List three major obstacles against the development of ICT in Ethiopia. Argument your answer. 4. Itis nowadays very commonly said that there is convergence of information technologies and communication technologies. What does this statement mean? Give examples to justify your answers. 5. State and explain two ethical rules an IT professional must follow in Ethiopia. Page - 16-