You are on page 1of 36

Undergraduate study in Computer Science

Our Universe is made of matter, energy and information. Computer Science leads the study of mechanisms that acquire, store, manipulate and use information. Join us and help us push the frontiers.
Professor Aaron Sloman

Challenge what you know.

School of Computer Science

School of Computer Science

Contents
3 Welcome 4 What is Computer Science?

Learn more
Follow us on facebook www.cs.bham.ac.uk/go/facebook Follow us on twitter @uobcompsci

6 Why Birmingham? 8 Birmingham city 10  Why Computer Science at Birmingham? 12  Studying Computer Science at Birmingham 14 Overview of year one 16 Overview of year two 18 Overview of year three 22 Overview of year four 24 Artificial Intelligence explained 26  What can you do with a degree in Computer Science? 28  Joint Honours undergraduate programmes 29 Year in industry 30 International study opportunities 32 Applications and admissions 34  Money matters: Fees, funding, scholarships and bursaries Undergraduate Student Admissions Team Tel: +44 (0)121 415 8742 Email: ug-admissions@cs.bham.ac.uk SCAN ME www.cs.bham.ac.uk Come along to an Open Day: www.birmingham.ac.uk/opendays

KEEP UP TO DATE!
Sign up for your personalised Birmingham VIP webpage and keep up to date with all the latest news about life and learning at the University. Visit www.vip.bham.ac.uk to register now.

School of Computer Science

Welcome
The University of Birmingham is a great university in a great city. Founded as Englands first truly civic university over a century ago, in a glorious campus close to the centre of Englands second city, the University of Birmingham is now not only one of Britains leading universities, but internationally acclaimed and globally recognised.
I am delighted that you are considering undergraduate study at Birmingham and I hope you find this guide useful when making what is, undoubtedly, a life changing decision. The School of Computer Science provides specialist teaching and conducts cutting-edge research in fundamental and applied computer science, artificial intelligence, optimisation, computer security, and robotics. Led by academics at the forefront of their fields, we deliver outstanding education and offer comprehensive careers support to ensure an exciting range of career opportunities for our alumni. We are eager to receive applications from highly motivated and well-qualified students and hope that this guide will provide you with adequate information on the variety of computer science degrees offered, and the opportunities available to you after you graduate. It is important that you choose a degree programme to suit your future career aspirations and that you choose a university and school where you will be happy and able to fulfil your potential. One of the best ways to make this decision is to visit the university to explore, enquire and listen first hand to what life is really like at Birmingham and we very much hope you will be able to attend one of our admissions events. The Schools admissions team are here to support you in your decision of whether to join us, and there will be a number of occasions when you will have the opportunity to visit the school and to talk to us. University Open Days are scheduled throughout the year and, as a Computer Science applicant, you will be invited to attend an informative Applicant Visit Day to assist your decisionmaking. If you have any questions in the mean time however, please do not hesitate to contact our admissions team, and they will do all they can to help. I wish you every success with your studies and hope to welcome you to Birmingham in the near future. Professor Jonathan Rowe Head of the School of Computer Science

Coming to Birmingham was the best thing that could have happened to me. I have secured a better job than I could have ever hoped to have got, I have really enjoyed my degree, and I have had such a fantastic student life experience all because I came to Birmingham!
Selina Tindall Graduate Trainee in Global Markets (Technology), Royal Bank of Scotland BSc Computer Science

School of Computer Science

What is Computer Science?


Computers are a core part of our lives: social networking, media streaming, computer games, office applications and online shopping are all obvious examples of things that computer science has brought us that many people are very familiar with.

It is a popular view that Computer Science is about developing and building new and improved consumer products and technologies, and of course it has a vital role to play in this area: computer science is at the heart of 21st century commerce and industry, with almost every business using computers in some way. Large businesses will often devote a substantial proportion of their operating budget to the development of computer systems that aid in the management of the company; for example, by keeping track of stock levels or managing delivery schedules. But Computer Science is about so much more than this: at its most fundamental level, it is about information and how to represent, store, communicate, manipulate, understand, and make use of it. This can have a far more significant impact than the use of computers to perform comparatively simple housekeeping tasks. Computational Thinking Information is a tremendously valuable commodity, and there is a vast industry dedicated to making sense of it: from generating adverts specific to your interests on social networking sites to identifying trends in financial markets. Computer Science is at the heart of this industry. The role of the computer scientist in this process is not just about writing computer programmes to perform a particular task (although this can be a significant part of what computer scientists do), it is about developing new ways of thinking about information, and what you can do with it. This can have a profound impact on other areas of science and engineering, and also on the humanities, social sciences and business.

I started at Birmingham with a blank sheet on computing. My degree allowed me to begin a successful technical career in the industry.
Caleb Kam Kong Tang Advisory IT Specialist IBM China/Hong Kong BEng Computer Science and Software Engineering

School of Computer Science

Thinking about problems from a computational perspective is leading to fundamental new insights in other areas and allows us to: o Extract the crucial features from very large datasets such as those generated in the search for the Higgs boson at the Large Hadron Collider o Use computer simulations to work out how the flocking behaviour of birds emerges from the actions of intelligent individuals o Develop new designer drugs for cancer o Understand how the brain works, through the analysis of artificial neural networks, and by drawing on our knowledge of information processing to formulate a Computational Theory of Mind o Analyse data from social networks and mobile systems in order to understand the movements and motivations of people o Model and analyse business processes to understand how to improve the efficiency of a company's operations

So, at its most fundamental level Computer Science is about understanding, analysing, and designing information processing systems. This is a complex multi-faceted process that can involve mathematical analysis, engineering, human factors and ethical considerations. A Computer Science degree could lead to a tremendous variety of careers: you could be helping to develop the next generation of social networks; writing a sophisticated motor racing game (or even a Formula 1 simulator); working out the structure of proteins; developing software for financial trading; predicting the weather; modelling the effect of brain injuries, amongst many, many other possibilities. The proliferation of information, and the pressing need and desire to understand it will only lead to an increase in the demand for skilled computer scientists to develop new ways of thinking.

School of Computer Science

Why Birmingham?
Birmingham has a long history of research excellence, a stunning campus with exceptional facilities, and offers students a culturally diverse academic experience, set within one of the most vibrant cities in Europe.

Situated in the heart of England, the University was founded over 100 years ago and has a long tradition of discovery, invention and design across all of the major academic subjects. The University has strong links with industry and we are one of the top six universities that major companies target when they are recruiting. If you join us, you will enter a community of more than 16,000 undergraduate students; almost 70% of which receive a first or upper-second-class degree every year. We understand that choosing the right university is one of the most important decisions you will make, so here are a few more reasons why the University of Birmingham may be right for you: o We are an internationally-recognised, research-led institution, with over 100 years of achievement. The recent Research Assessment Exercise 2008 confirms we are 12th in the UK*, leading the way across a broad range of disciplines. o We offer teaching from academics who are global experts in their field, with five Nobel Prize winners amongst our alumni and academic staff.

Our students have access to excellent study facilities (including one of the UKs largest academic libraries) and we invest an impressive 1 million each week on developing the campus and improving our students learning experience. Ranked as one of the top three campus environments in the country, our beautiful 243-acre parkland campus offers students a safe, friendly environment with all the facilities of a small town including bars, cafs, shops, banks, an art gallery, museums, a doctors surgery and a railway station. source: Opinion Panel, June 2005 Our Freshers Guarantee Scheme for first-year students means that we offer guaranteed University accommodation to all new students. (For the conditions of the Freshers Guarantee Scheme see www.housing.bham.ac.uk). With 4,500 overseas students from nearly 150 different countries, we are home to one of the largest communities of international students in the UK, with a network of 150,000 alumni throughout the world. We are a top three sporting university and have some of the best facilities

in the country, as well as professional coaching and imaginative health and fitness programmes, which offer a range of sporting opportunities to suit all tastes and ability levels. o Our students benefit from living in one of Europes most vibrant cities: Birmingham has been transformed in the last 20 years to become a confident, modern commercial regional capital and one of the most culturally diverse cities in Britain.
* Using the Research Ranking Fortnight Power Ranking

School of Computer Science

An oasis of green space and red brick amid the bustle of Englands second biggest city. Set in 250 acres of parkland, the main campus is largely self-contained with lawns, trees and a lake.
The Independent

School of Computer Science

Birmingham city
Birmingham has been transformed into a city for young professionals and is one of Europes most exciting destinations. It is more than somewhere to study; it is somewhere to build a successful career.

Birmingham is a modern, fascinating city: on his visit here in 2002, former US president Bill Clinton described it as an extraordinary jewel of a city. Famous for its historical industrial past it is now a centre of arts and culture, commerce and entertainment, with a vibrant and diverse community. Birmingham is home to the largest financial services and creative sectors outside London. The thriving business community offers you a wealth of opportunities when you join the job market, and around 40% of Birmingham graduates choose to make their home here after leaving university. For more information on student life in Birmingham, visit www.visitbirmingham.co.uk where real Birmingham students will give you their opinions on everything from nightlife to libraries. View photos, read blogs, watch films and sign up for the newsletter. Modern city Around 9 billion has been ploughed into the city centre over the past 20 years and Birmingham continues to attract significant investment. The landscape of the area has changed, and stylish apartments and offices have replaced factories and warehouses. Birmingham is home to one of Europes largest shopping centres, the award-winning Bullring, with over 160 shops, restaurants and bars, including the iconic Selfridges building. It is also home to the Mailbox, a unique development that brings together designer fashion and lifestyle shops, luxury apartments, hotels and an array of restaurants and caf bars. The Mailbox is also home to BBC Midlands television and radio.

School of Computer Science

Factfile: The city of Birmingham


o

Birmingham is the safest major city in England and Wales according to a recent report by the Reform group www.reform.co.uk The NEC Group welcomes over five million visitors to its Birmingham venues each year, staging more exhibitions than any other European centre The Lord of the Rings author, JRR Tolkien, grew up in Birmingham, and the protected natural habitats that inspired The Hobbit can still be seen at Moseley, just minutes from the city centre and university campus Sherlock Holmess creator, Sir Arthur Conan Doyle, also lived in the city The creation of the Football League in 1888 is credited to William McGregor, then a director of Aston Villa FC

Shopping, entertainment and culture in Birmingham Although Birmingham is facing the future, it is still proud to showcase its past. The city was the hub of the industrial revolution and areas such as the historic Jewellery Quarter keep traditions alive. The canals are now fringed with bars and restaurants, and many visitors are excited by the citys bustling nightlife. There are more than 500 restaurants offering a vast range of international cuisine. After enjoying a meal, you could go for drinks or watch some of the best comedians on the circuit at the Glee Club. If you prefer live music, Birmingham has a number of leading venues for bands and local talent, including the National Indoor Arena and the NEC. Birmingham is also home to one of the UKs finest concert halls, Symphony Hall, where the City of Birmingham Symphony Orchestra is based, and Birmingham Hippodrome, where the Birmingham Royal Ballet is based. The city centre also has three other theatres and

a number of cinemas, including the 30-screen 'Vue' at Star City, which shows the latest Asian and mainstream films under one roof. Sporting city Birmingham is home to Premier League football clubs Aston Villa and Birmingham City and in recent years it has staged more sporting championships than any other UK city. The Warwickshire County Cricket ground, close to the University in Edgbaston, regularly hosts test matches and international tournaments including the Cricket World Cup. The city also boasts many golf courses, including The Belfry, which has hosted the Ryder Cup four times. Welcoming city There is something for everyone in Birmingham and you will get a warm welcome in one of the most culturally diverse cities in Britain. People from all over the world live, work and play here as part of a citywide community which has been harmonious and tolerant over many years. Our long record of industry and innovation contributes to the exciting and dynamic atmosphere of our historic city.

10

School of Computer Science

Why Computer Science at Birmingham?


Birmingham is one of the top universities for studying computer science in the UK, with a strong international reputation for excellence in teaching and research. We offer a broad range of flexible courses giving the opportunity for a challenging academic experience.

Teaching and research excellence Our academic community consists of people working at the forefront of their subject. This benefits you directly as their cutting-edge research feeds into our undergraduate teaching; and gives you the chance to learn from innovative developments as they are being made. Our impressive profile of world-leading academic staff means that we constantly feature as one of the top ranking computer science departments in the UK. Our School of Computer Science is ranked 5th out of 106 UK institutions offering courses in Computer Science and IT, as stated by the Guardian University Guide 2012. We have the highest possible rating for our computer science teaching (from the QAA Quality Assurance Agency for Higher Education) and are currently ranked in equal 7th position by the 2008 Research Assessment Exercise (RAE) for the quality of our world leading research. We are also home to the Centre of Excellence for Research in Computational Intelligence and Applications (CERCIA). Rewarding excellence If you choose the School of Computer Science at Birmingham, you will be choosing one of the top ranking computer science departments in the UK and, as such, we want to attract the best students. We recognise and reward excellence, with competitive school-specific academic scholarships available for our brightest students. Our level of financial investment made per student is amongst the top ten computer science departments in the UK, according to the 2010 Guardian League Tables. Course flexibility

At this point in time, the most important thing is for you to choose a programme that meets your future career aspirations. Once you have selected an undergraduate degree programme, you will find that it is carefully structured to allow you as much choice as possible, while making sure you take core modules to achieve a solid base in the subject. There is considerable flexibility built into the system with the core modules of the first year being shared between the BSc Computer Science, MEng Computer Science and Software Engineering, and BSc Artificial Intelligence and Computer Science. This flexibility lets you decide which programme best suits you before making a final choice. It also allows your course and career direction to be moulded as your ideas and interests evolve. Student support Within our school we are dedicated to ensuring that our students have an enjoyable and beneficial time with us. Our comprehensive support structures are designed to meet the needs of our students. In terms of overall satisfaction, we are ranked joint sixth among all computer science departments nationally and third within the Russell Group, as stated by the National Student Survey 2010. To help you settle in your first-year, all students are paired with an existing student on a mentor-scheme and a member of staff is also allocated as your personal tutor for academic-related issues. In addition, the student/staff committee provides a useful forum for raising issues and the student-lead Computer Science Society, CSS, offers support and organises varied

social events. We also have three welfare tutors who provide a welfare session each day during which time any student can drop in and have a chat. School facilities As a student in the School of Computer Science you will be based within a purpose-built multi-million pound building, which offers 24-hour swipe card access to an impressive range of state-of-the-art facilities. These include: o Dedicated laboratories for Computer Science students o Teaching laboratory for robotics o Research laboratories for Medical Imaging and Intelligent Robotics o Full wireless network o Subject-specific library o Student common room and five departmental seminar and meeting rooms

I treasure my time at Birmingham. My degree equipped me with the computer science theory as well as the more practical software engineering skills. Birmingham provided an excellent foundation for my career.
Ernest Wong, Senior Web Developer, Yahoo! Holdings, BSc Computer Science and Software Engineering

School of Computer Science

11

Award-winning development At the School of Computer Science we are not just renowned for teaching and research excellence. We also produce award-winning software for the real world. The Autotrain project at Birmingham develops e-training for the automotive sector and has won an award for best practice in Europe by the Bertelsmann Foundation and AOL Time Warner. We are also proud to have developed a revolutionary award-winning method for diagnosing skin cancer. Business and industry links Helping you to achieve At the School of Computer Science we organise events and support services to help you refine your career options. Support is tailored to your chosen subject area and draws on our excellent range of resources. We have taken time to build strong local and national relationships with major industry players from the public and private sector. Just a few of these include Accenture, Goldman Sachs, HP, IBM and Logica. It is a wide network of links that can secure you a year out in industry or even a graduate position. Plus, senior speakers from these organisations give lectures throughout the year, with our Commercial Programming module offering a series of 22 lecturers from leading IT companies. We also boast research partnerships with many blue-chip companies, including BT Exact, Honda, HP, IBM, Marconi, QinetiQ, Rolls Royce, Severn Trent and Sony.

Employer opinion A University of Birmingham degree is an excellent qualification for securing a good job. A survey commissioned by the Guardian showed that Birmingham is one of the top six universities targeted by personnel managers when looking for new employees. So while the end of your degree may be a while off, it is worth considering that the University of Birmingham will give you the specialist knowledge and transferable skills that will make you attractive to potential employers in what is an increasingly competitive job market. Professional Exemption and Accreditation All our computing courses are accredited by the British Computer Society (BCS) and give you exemption from all of the educational requirements for the award of Chartered Information Technology Practitioner (CITP). BCS Membership is recognised by the Engineering Council. As a member, after completing the prescribed minimum period of experience as a professional engineer, you can then apply to register as a Chartered Engineer (CEng), an internationally accepted qualification. Some of our courses are accredited as meeting some or all of the educational requirements for CEng registration.

Deciding to study at the University of Birmingham was one of the best decisions Ive ever made. While attending an open day, I instantly felt at home. The campus was beautiful and the people were so warm and friendly. I knew then that this was where I wanted to spend the next three years of my life. The course has been rigorous and challenging, but immensely gratifying. At the University of Birmingham, students are taught by brilliant minds which inspires you to be the best you can be. After my second year, I completed a year out in industry. This enabled me to apply the knowledge gained during my studies in the real world. This placement led to securing an excellent graduate job in the city. Abisola Adefuye
IT Analyst Deutsche Bank BSc Computer Science and Software Engineering

12

School of Computer Science

Studying Computer Science at Birmingham


Computer Science at Birmingham dates back to the late 1950s with the School of Computer Science becoming one of the first academic departments in the UK to undertake research and teaching in this field.

Some 50 years later, we now provide specialist teaching and conduct world-leading research in fundamental and applied computer science, artificial intelligence, optimisation, computer security, and robotics. As an undergraduate student within the School of Computer Science you will be taught by academics at the forefront of their fields and will benefit from an industryinformed curriculum that is appropriately accredited by the British Computer Society (BCS) and the Institute of Engineering Technology (IET). Programme title Award UCAS code Duration

You will develop a high level of practical skills and will have the opportunity to build significant specialist knowledge in applied computer science, whilst maintaining the flexibility to follow your interest through the array of optional modules on offer. Below you will find an overview of the programme and application details for all four of our undergraduate programmes. Please do not hesitate to contact our Undergraduate Admissions Team should you require any further information.

Learn more Undergraduate Admissions Team School of Computer Science Tel: +44 (0)121 415 8742 Email: ug-admissions@cs.bham.ac.uk www.cs.bham.ac.uk

Professional accreditation

Teaching quality Entry requirements A level grades A level/GCSE subjects

Computer Science and Software Engineering BSc MEng G400 GG46 3 years; 4 years with a 4 years for a MEng; year abroad or in industry 5 years with a year abroad or in industry British Computer Society British Computer Society (BCS) (BCS) and the Institute of Engineering Technology (IET) QAA: Excellent QAA: Excellent AAB Mathematics GCSE grade B if not at A level At least one A level or equivalent in a science subject is required (Mathematics, Physics or Computing preferred) AAB Mathematics GCSE grade B if not at A level At least one A level or equivalent in a science subject is required (Mathematics, Physics or Computing preferred) No 3236 points Mathematics, Physics or Computer Science at HL; SL Mathematics if not at HL

Computer Science

Artificial Intelligence and Computer Science BSc GG47 3 years; 4 years with a year abroad or in industry British Computer Society (BCS)

Computer Science with Business Management BSc G4N1 3 years; 4 years with a year in industry British Computer Society (BCS)

QAA: Excellent AAB Mathematics GCSE grade B if not at A level At least one A level or equivalent in a science subject is required (Mathematics, Physics, Computing or Psychology preferred) Yes 3034 points Mathematics, Physics or Computer Science at HL; SL Mathematics if not at HL

QAA: Excellent AAB Mathematics GCSE grade B if not at A level

General Studies accepted? IB grades required IB subjects required

Yes 3436 points Mathematics, Physics or Computer Science at HL; SL Mathematics if not at HL

Yes 3436 points Mathematics at SL

School of Computer Science

13

Undergraduate degrees in Computer Science


Full details on all undergraduate degrees in computer science can be found at www.cs.bham.ac.uk/admissions/undergraduate

BSc Computer Science (G400) The BSc Computer Science will provide you with a balance of computer science, artificial intelligence and practical software engineering. It will focus on analytical methods and technical skills and offer you the opportunity to combine knowledge and personal skills to undertake the research and development of software solutions to problems. You will learn about all kinds of computational systems, their theory, design, development and application. This includes programming languages, software engineering, artificial intelligence, operating systems, databases, nature-inspired computation, concurrent computing, robotics and the theory of computation. MEng Computer Science and Software Engineering (GG46) Software engineering is concerned with how to build the very large software systems that are used throughout commerce and industry. Software engineers are the professionals behind this industry. As a software engineer you would lead the development of these very large systems so that they are delivered on time, within budget, and are both reliable and maintainable. Software engineering covers not only the technical aspects of building these software systems, but also management and teamwork skills. In this degree, you learn all the fundamentals of computer science, with an emphasis on the skills required for successful software engineers. You begin with the fundamentals of computing, and progress to comprehensive courses in software engineering, computer architecture, logic, and the mathematical theory of computation. BSc Artificial Intelligence and Computer Science (GG47) Artificial Intelligence (AI) is a fascinating subject in which you build intelligent machines and study the nature of the mind. On the

engineering side, this field is especially relevant in todays world because of the benefits of making computers perform tasks that normally require human intelligence. From a scientific viewpoint, artificial intelligence is a multidisciplinary field that connects with computing, psychology, neuroscience, philosophy, mathematics and linguistics. As a result, this degree programme will give you all the computing skills you need to enter industry, while also allowing you to acquire scientific skills in order to pursue research. We are one of the leading centres for AI teaching and research in Europe, which enables us to offer an unusually rich and innovative programme for undergraduate study. In year one you will learn about theories of mind and techniques for generating intelligent behaviour, and will experiment with the techniques by implementing them as computer programs. In the second year you take more advanced modules in specific areas of AI, including an Introduction to Natural Computation, Machine Learning, Computer Vision and Natural Language Processing. In the Computer Science half of your degree you learn to program in a language called Java (which is widely used in business) and will apply your Java skills to building systems involving databases, graphics and human computer interaction. For more on the AI technologies being developed and how they can be applied in the real world, turn to page 24. BSc Computer Science with Business Management (G4N1) Computing has already transformed business. Technologies that have had significant impact include computer-aided manufacturing, just-in-time manufacturing, data mining and data warehousing in the retail sector, e-procurement, internet banking and online shopping.

There is a real demand for managers who have a thorough grasp of computer science as well as a clear understanding of management principles. This programme is designed to give you both. This degree is taught jointly between the School of Computer Science and the Birmingham Business School. It will prepare you not only for the technical side of computing but also for a career in management, sales or marketing, especially one related to IT. In each year, you will spend one-third of your time in the Business School and two-thirds in the School of Computer Science.

Degrees in computing with another subject Joint Honours Degrees with Computing and another subject are an increasingly popular choice. For details of our joint honours programmes, go to page 28. Degrees with a year in industry All programmes, including joint honours degrees, can be combined with a Year in Industry. This extra year is typically taken between years two and three of a three-year degree, or between years 3 and 4 of a four-year degree and if successful leads to your degree title including with a Year in Industry. See page 29 for more details. Degrees with International Study Opportunities All students enrolled on the BSc Computer Science and BSc Artificial Intelligence and Computer Science are entitled to pursue the opportunity to Study Abroad between years two and three of their degree. To learn about the benefits of choosing to Study Abroad see page 30.

14

School of Computer Science

Overview of year one


We understand the pressures that many students can feel when faced with the prospect of deciding upon one specific route of study. Therefore all of our programmes have been carefully constructed to allow you as much flexibility as possible. Based around the study of core computer science principles, our year one structure allows your course and career direction to be moulded as your ideas and interests evolve.
Year one syllabus Module title BSc Computer Science MEng Computer Science/Software Engineering BSc Artificial Intelligence and Computer Science BSc Computer Science with Business Management

Compulsory Modules Foundations of Computer Science Software Workshop 1 Introduction to Software Engineering Language and Logic Introduction to AI Introduction to Financial Analysis Business Organisation and Management Introduction to Economics International Economy Information and the Web Robot Programming Optional Modules to a total of 20 credits Modules outside the main discipline Mathematics

Foundations of Computer Science Introducing the fundamental concepts such as the von Neumann machine, the representation of data in computer memory, programming constructs, data models and data structures, and the analysis of algorithms. The ideas are presented abstractly, although examples are given in the language used in the related programming workshop modules. Software Workshop One A first module in imperative, object-oriented programming with a strong emphasis on practical program development skills. Introduction to Software Engineering Covering the software lifecycle and methodologies for software development.

Language and Logic Provides some of the knowledge and skills necessary for the rigorous communication of information via natural language as well as formal languages. Introduction to AI Covering its techniques and main subfields, and providing a foundation for further study in specific areas of artificial intelligence. The principal focus of this module is on the common underlying ideas, such as knowledge representation, rule-based systems, search and learning. Introduction to Financial Analysis The aim of the module is to introduce financial analysis techniques related to the appraisal of company financial performance. It will cover: The content and format of accounting statements, accounting concepts and valuation approaches; appraising company

financial performance using ratio analysis and management accounting techniques of planning, operational control and decision making; and the uses, strengths and limitations of accounting information. Business Organisation and Management The aim of this module is to acquaint students with the theory and practice of managing organisations. Introduction to Economics The aim of the module is to provide a thorough grounding in microeconomics. It will cover: An introduction to alternative approaches to economics and socioeconomics; demand and supply; elasticity; intervention in the market; marginal utility theory; production and cost analysis; market structure; perfect and imperfect competition; analysis of monopoly and oligopoly; and alternative theories of the firm.

School of Computer Science

15

Graduate profile Selina Tindall


Award gained: 2.1 Pre-University qualifications: A levels in Mathematics, Information and Communication Technology, French, Drama and General Studies Degree: BSc Computer Science

When I started my degree I really liked the fact that they teach you programming from scratch. I had never programmed before coming to the department and I was worried that I would get left behind but that couldnt have been further from the truth. Admittedly about two thirds of the class had some prior programming experience, but there was so much help available that I never felt overwhelmed. Also a very unique aspect of the department is the friendliness of the staff; from speaking to my friends in other degree disciplines, unlike their lecturers, you can actually talk to these they are not just a face at the front of the lecture theatre, but really people you can have a conversation with.

International Economy This module will cover: National income accounting; macroeconomic theory; theory of monetary and fiscal policy; exchange rate regimes; purchasing power parity and interest rate parity; and European monetary union. Information and the Web This module introduces some of the key technologies used on the internet, and uses them to reinforce important concepts related to the representation and management of structured data. A team project allows students to really demonstrate their skills in a substantial piece of software development. Robot Programming Teaches basic AI and robotic programming skills through a series of team exercises using small, mostly prebuilt, robots. Regular exercises will give each team the skills to build up a robot capable of tackling a competitive, arena-based, task that includes a variety of AI-requiring sub-problems.

Mathematics Provides a solid grounding in mathematics sufficient to understand a range of computer science topics. This module takes all the relevant topics covered at GCSE and builds upon them to act as a foundation for further study of mathematics relevant to computer science.

Without the skills I gained from my course at Birmingham University and the reputation of the school I wouldnt be where I am today.
Ali Alauoubiy, Analyst, Hierarchy Manager IT, Dresdner Kleinwort BSc Hons in Artificial Intelligence and Computer Science

16

School of Computer Science

Overview of year two


Year two syllabus Module title BSc Computer Science MEng Computer Science/Software Engineering BSc Artificial Intelligence and Computer Science BSc Computer Science with Business Management

Compulsory Modules Software System Components 1 Software System Components 2 Communication Skills and Professional Issues Software Workshop Team Java Models of Computation Mathematical Techniques for Computer Science Software Engineering Introduction to Natural Computation Software Workshop Prolog Machine Learning Computational Vision Natural Language Processing 1 Financial Decision Making Introduction to Marketing Human Resource Management Global Marketing Optional Modules to a total of 10 credits Software Workshop Haskell Software Workshop Prolog Optional Modules to a total of 20 credits Introduction to Natural Computation Machine Learning Software Engineering Computational Vision Natural Language Processing 1 L2 language modules Computer Systems and Architecture Models of Computation Software System Components 1 This module presents more advanced software development techniques, enabling the design and development of programs of medium-scale size and complexity. Through a series of lab exercises, students apply concepts taught in lectures and at the same time practice the design and development of medium-scale programs. Together with its companion module, Software System Components 2, it is designed to equip students with programming abilities which may be needed in an individual final year project. The module covers the three topics of HCI, i/o and parsing, and graphics. Software System Components 2 This module presents more advanced software development techniques, enabling the design and development of programs of medium-scale size and complexity. Through a series of lab exercises, students apply concepts taught in

the lectures and at the same time practice the design and development of medium-scale programs. Together with its companion module, Software System Components 1, it is designed to equip students with programming abilities which may be needed in an individual final year project. The module covers the three topics of databases, web programming and concurrency, and distributed computing. Computer Systems and Architecture Introduction to Hardware Engineering: outline of digital circuits, basic computer organisation and architecture (CPU, memory, i/o); control of peripherals; basics of networking. Communication Skills and Professional Issues The module introduces students to ethical, social, legal and professional issues in computing in combination with report writing skills. Student participation is an important

component of the module, both in researching and presenting material. Some lectures are given by external speakers with appropriate professional experience. Software Workshop Team Java A large programming project using Java. Students work in teams of about five people. Models of Computation The module will introduce various automata theoretic models of computation and discuss their practical and theoretical significance. Finite automata, grammars and stack automata and Turing machines will be introduced. The fundamental ideas of (non-)computability and complexity will be presented. There will also be a section on the Lambda Calculus and its connection with Functional Programming.

School of Computer Science

17

Mathematical Techniques for Computer Science Computer Science makes use of a variety of mathematical techniques to describe and solve computational problems. Often, these techniques are quite deep and outside the scope of standard mathematical syllabuses, for example, the use of structural recursion in the analysis of data structures and programming languages. The module aims to present a core of mathematical techniques in a sample computational context, and tries to strike a balance between systematic introduction and an application-orientated 'maths-by-need' approach. Software Engineering Management of the software development process, including: how projects arise, choosing the right project, software life cycles, human factors in project management, basic project management techniques (eg. planning, estimating, monitoring progress), advanced project management techniques (eg. risk management, configuration management, quality management, process improvement). Overview of requirements engineering, requirements elicitation and analysis, requirements definition and specification, requirements validation, requirements management, overview of specification techniques. Object-oriented analysis and design using Unified Modeling Language (UML) and patterns. Introduction to Natural Computation Natural computation is the study of systems in nature that lend themselves to a computational interpretation. This module provides an introduction to the field, emphasising common themes, principles and techniques. It lays the foundations for further advanced study of specific areas (such as neural networks and evolutionary algorithms).

Software Workshop Prolog The module consists of taught material and practical work. The taught material introduces the fundamentals of the Prolog programming language. Practical work consists of programming exercises in Prolog. Early exercises are designed to develop a core understanding of programming in Prolog, especially: the importance of unification in the understanding of Prolog; the nature of search in Prolog and alternative search strategies; common recursive program structures, especially for list processing; design of Prolog programs. Later exercises are designed to develop skills in applying Prolog in practical situations. Machine Learning The module will provide a good foundation to machine learning. It will compare and contrast human learning with machine learning. It will examine the limitations of machine learning, the role of hypothesis bias and hypothesis representation. Computational Vision The module provides an introduction to computer vision, intended for students with some prior background in AI. Appropriate computational models, techniques and algorithms will be introduced, so that students can both understand the relevant literature and construct simple software systems. Natural Language Processing 1 The module presents an overview of Natural Language Processing and its applications, followed by introductions to morphology, syntax and semantics. These topics are used to introduce some linguistic theory and appropriate algorithms for their computational implementation. Examples are mostly given using Prolog.

Financial Decision Making Examines investment projects using discounting methods under the conditions of certainty and risk using both traditional and portfolio methods. Demonstrates how to calculate and use cost of capital for geared companies, and how to evaluate leasing projects. Introduction to Marketing Introduction to marketing and the marketing environment; marketing functions; the 4 Ps of marketing. Human Resource Management Processes of planning for acquiring and utilising human resources in organisations. Global Marketing The module aims to provide an introduction to the issues involved with global marketing management, and to critically analyse business topics and develop their own informed views. Software Workshop Haskell The purpose of this module is to present the basic ideas of the pure functional programming language Haskell, to demonstrate the main elements of good programming style and to illustrate some of the used and applications of Haskell. L2 Language Modules Language modules (at Level 2 or above) may only be chosen in order to continue study of a language successfully passed in Year 1.

18

School of Computer Science

Overview of year three


Year three syllabus Module title BSc Computer BEng Computer MEng Computer BSc Artificial BSc Computer Science Science/Software Science/Software Intelligence and Science with Business Engineering Engineering Computer Science Management 80 credits 70 credits 80 credits 80 credits 40 credits

Compulsory Modules Software Project Commercial Programming Software Design Study Corporate Finance Strategic Management A Strategic Management B Supply Chain Management Optional Modules to a total of: Commercial Programming Compilers and Languages Databases 2 Computer Networks and Distributed Systems Evolutionary Computation Graphics 2 Human Computer Interaction 2 Individual Study 1 Intelligent Data Analysis Intelligent Robotics Natural Language Processing and Applications Natural Language Processing 2 Nature Inspired Design (A) Neural Computation Philosophy of Cognitive Science Planning Principles of Programming Languages Operating Systems and Systems Programming in C/C++ L3 language modules

Software Project The final year project enables the student to demonstrate competence as a computing professional and to apply material learned in other components of the degree programme. Projects are chosen from staff suggestions or are developed from the student's original idea. The project normally includes writing a substantial piece of software or developing some hardware. Occasionally it can consist of conducting research other than by writing software.

Commercial Programming Guest speakers present seminars on topics relevant to the work in which Computer Science/Software Engineering (CS/SE) graduates are frequently involved on entering Industry or Commerce. The speakers are chosen to have particular experience in industrial/commercial application of CS/SE, employing or working with graduates in CS/SE or related areas, or legal or managerial aspects of work that requires such graduates. Each speaker provides handouts on his/her chosen topic (usually available either from the School

Library or online via the syllabus web page for the module a few days before the speakers lecture) and a technical report title (available online via the syllabus web page near the end of the semester). Software Design Study The software design study gives the student the opportunity to work in a team (typically 5 or 6 students) on a challenging and substantial software design project. This will normally include mainly the early phases of the software lifecycle (requirements analysis and software

School of Computer Science

19

Graduate profile Marija Smirnova


Position: New Associate Programme Analyst in the Technology Division Employer: Goldman Sachs Qualification: BSc Computer Science with Business Management

Over the 3 years while I was reading CSBM, I gained significant knowledge in different programming languages that improved my analytical thinking, important for my current role at Goldman Sachs. The business disciplines that I studied as part of my degree introduced me to the world of finance. For example, I feel comfortable to perform various strategic analyses of companies and industries globally. These skills are very important to me because I work in the financial sector and need to be able to deal with various financial problems everyday. Working in a team and presenting the team findings to large audiences have been a big part of several modules that I studied, such as Strategic Management and Robotics. Additionally, extra curricular activities at university such as being a Computer Science Ambassador improved my communication skills significantly and made it easier for me to settle into a new environment and work closely with other team members.

design), but may also include the further development of prototype software and/or demonstration software. The final report must include a fully costed proposal for the development of a complete software product. Corporate Finance Attention is given to important aspects of corporate finance, with the main emphasis placed on understanding how technical methods can be applied. Topics include: gearing; dividend policies and financial options.

Strategic Management A In the first semester work will primarily be in the form of attending lectures to cover the underlying theories of strategic management. The second semester will be concerned with lectures, writing a case study of a company of your choice in small teams, making presentations and answering questions of your analysis in front of larger groups. A high level of personal and collective effort is required.

Strategic Management B In the first semester work will primarily be in the form of attending lectures to cover the underlying theories of strategic management. The second semester will be concerned with lectures, writing a case study of a company of your choice in small teams, making presentations and answering questions of your analysis in front of larger groups. A high level of personal and collective effort is required.

20

School of Computer Science

Supply Chain Management In their attempts to achieve superior profitability for their firms, managers need to consider two critical tasks. First, firms need to position themselves by matching their internal capabilities with external market opportunities to maximise the revenue flowing into the organisation. Second, firms need to organise themselves so that as little of that revenue as possible flows out of the organisation and into the pockets of their suppliers. This module discusses how managers might undertake these critical tasks in an effective manner and also shows that the two tasks are inter-related. Compilers and Languages The module describes the structure of a typical compiler. The phases of compilation, from the front end to analysis and code generation, as well as the main techniques used in each phase will be covered. Databases 2 The module begins with a swift recap of the standard database canon: SQL and ER modelling, albeit from a more advanced perspective. This is followed by a discussion of relational algebra and functional dependencies, and their role in verifying and improving the ER model (towards Boyce-Codd normal form). In the second part of the module, the inner workings of a database management system are presented and it is discussed how they impact on query evaluation efficiency. In the final part, transactions and transaction processing will be discussed. Computer Networks and Distributed Systems This module introduces the basic concepts, technologies, architecture and standards involved in computer networks and distributed systems, together with methods for their design and implementation. This will include discussion of data transmission protocols, TCP/IP, LANs and WANs, communication mechanisms and synchronization issues. Evolutionary Computation Evolutionary computation is the study of computational systems that use ideas and get inspiration from natural evolution. Its techniques can be applied to optimisation, learning and design. Example topics covered in this module include natural and artificial evolution, evolutionary, chromosome representations, search operators, co-evolution, constraint handling techniques, niching and speciation, genetic programming, classifier systems and theoretical foundations.

Graphics 2 3D constructive graphics (co-ordinate systems, object and scene design, graphics transformations in 3D translations, scaling, rotation, viewing); Animation; 2D raster graphics (algorithms for efficient drawing of lines and curves); Images and colour (image representations, image arithmetics, image enhancement, colour models). Human Computer Interaction 2 The module will explore some major themes in HCI, such as the concept of task analysis, the absence of relevant design formalisms, the cognitive basis of a proposed interaction taxonomy, the notion of self-explanatory tools, and the use of AI techniques in humancomputer interaction. Individual Study 1 This module exists to allow particularly strong students to study, at their own initiative, material that is outside what can be found in other modules that are available in the School of Computer Science. Learning is by self-managed study under the direction of a supervisor (a member of the academic staff of the School). The topic for a particular student is by negotiation between the student and supervisor early in the semester. Intelligent Data Analysis The module introduces a range of state-of-theart techniques in the fields of statistical pattern analysis and data mining. The 'information revolution' has generated large amounts of data, but valuable information is often hidden and hence unusable. Pattern analysis and data mining techniques seek to unveil hidden patterns in the data that can help us to refine web search, construct more robust spam filters, or uncover principal trends in the evolution of a variety of stock indexes.

Natural Language Processing and Applications The module will cover: levels of NLP, speech (phonetics, phonology); grammar (morphology, syntax); meaning (semantics, pragmatics); applications (text-to-speech, speech-to-text, parsing, MT, NL interfaces). The emphasis will be on the background needed to understand practical applications of speech and natural language processing. Natural Language Processing 2 Topics covered provide an overview of current research in language processing. Nature Inspired Design (A) This module introduces the basic ideas of nature-inspired design techniques. Different algorithms and their applications will be presented. Similarities and differences between these techniques/algorithms and other classical techniques will be discussed whenever appropriate. The design domain ranges from architectural, engineering and graphics design to electronic circuit design and evolvable hardware. Examples of such techniques include evolution and knowledge discovery, circuit design by evolution, novel architectural design by evolution, creative design, interactive evolution, evolutionary graphics, knowledge extraction from evolution, extrinsic evolvable hardware, intrinsic evolvable hardware, on-line adaptation, and implementation issues. Neural Computation This module introduces the basic concepts and techniques of neural computation, and its relation to automated learning in computing machines more generally. It covers the main types of formal neuron and their relation to neurobiology, showing how to construct large neural networks and study their learning and generalization abilities in the context of practical applications. Philosophy of Cognitive Science Some of the fascinating philosophical problems thrown up by cognitive science and related disciplines will be presented. Philosophical problems are notoriously difficult to solve, so a methodology will be presented to enable students to tackle them. Students will be shown the advantages of pluralism, proliferation and pancritical rationalism. Planning The basic notions and problems of planning are presented, including plan-space and state-space planners, the frame problem,

Intelligent Robotics Artificial Intelligence is concerned with mechanisms for generating intelligent behaviour. When this behaviour occurs in the everyday physical world, with its uncertainty and rapid change, we find that all kinds of new problems and opportunities arise. We will try to understand some of these in the context of robotics. In a series of lectures we will look at some theories of how to sense the real world, and act intelligently in it. In a series of labs you will build your own robots to see how well (or badly) these theories actually work.

School of Computer Science

21

and hierarchical task networks. The module looks at a range of different planning problems, and a number of algorithms for solving them. These include STRIPS, UCPop, Graph Plan, SAT Plan, and HTN planners. In addition, some recent advances in planning will be looked at. These may include decision-theoretic planning, robotic architectures for planning, scheduling, and planning under uncertainty. The advantages and disadvantages of the different approaches are discussed. Principles of Programming Languages The module explains some fundamental principles of programming languages, such as stack, environment, store and type. We do this for a toy language called call-by-pushvalue, in which we represent various familiar programming idioms. We see how the meaning of language features can be described precisely using abstract machines. Operating Systems and Systems Programming in C/C++ This module covers basic operating system concepts including memory management, file systems and threading, and introduces the tools and techniques required to modify and develop operating systems kernal software in C/C++. L3 Language Modules Language modules (at Level 3 or above) may only be chosen in order to continue study of a language successfully passed in Year 2.

I credit the University of Birmingham for giving me the knowledge and confidence to start my own business. I am charged with several roles within the company spanning both web and software development in addition to sales and accounts. Since we began Ive often found myself drawing on skills acquired from nearly all aspects of my study and beyond. Tariq El-Hoss
Web Media Works, BSc Computer Science

22

School of Computer Science

Overview of year four


Year four syllabus Module title Compulsory Modules Software Project Optional Modules Compilers and Languages (Extended) Component-based Software Computational Modelling with MATLAB Computer Security Cryptography Computer Networks and Distributed Systems Intelligent Data Analysis (Extended) Network Security Operating Systems and Systems Programming in C/C++ Secure Programming Software Testing Individual Study 2 Intelligent Robotics (Extended) Introduction to Evolutionary Computation Introduction to Neural Computation Machine Learning (Extended) Nature Inspired Design Nature Inspired Optimisation Planning (Extended) Software Project The MEng final year project enables the student to demonstrate competence as a software engineer and to apply material learned in other components of the degree programme. Projects are chosen from staff suggestions or are developed from the student's original idea. The project results in a product related to one or more stages of the software life-cycle. Compilers and Languages (Extended) The module describes the structure of a typical compiler. The phases of compilation, from the front end to analysis and code generation, as well as the main techniques used in each phase will be covered. Component-based Software Building on previous knowledge of objectoriented programming, the module introduces students to the concept of building software systems from independently developed components. Current technologies and standards will be reviewed. Exercises and other coursework will be used to give practical experience of constructing component-based software systems. MEng Computer Science/ Software Engineering Cryptography The module will present the fundamentals of cryptography, as well as its applications and issues of how cryptography is used in practice. Distributed Systems (Extended) This module introduces the fundamental characteristics of distributed systems, their models and architectures, together with the methods and technology used during their design and implementation. The issues to be discussed will include topics such as distributed system architecture, communication mechanisms, protocols, consensus algorithms, real-time and synchronization issues, storage organisation access control, object-based distributed systems, fault-tolerance, naming, security and code mobility. Intelligent Data Analysis (Extended) The module introduces a range of state-of-theart techniques in the fields of statistical pattern analysis and data mining. The 'information revolution' has generated large amounts of data, but valuable information is often hidden and hence unusable. Pattern analysis and data mining techniques seek to unveil hidden patterns in the data that can help us to refine web search, construct more robust spam filters, or uncover principal trends in the evolution of a variety of stock indexes. Network Security The module introduces the threats and attacks which may be perpetrated on computer networks, and some of the mechanisms designed to address them. Some technology case studies are presented and evaluated. Operating Systems and Systems Programming in C/C++ This module covers basic operating system concepts including memory management, file systems and threading, and introduces the tools and techniques required to modify and develop operating systems kernal software in C/C++. Secure Programming The module covers the basics of software security. Classic design principles for the protection of information in computer systems are introduced. Some of the most important vulnerabilities in current software systems and the corresponding attacks are reviewed. It is then shown how to defend code against these attacks, both by means of careful programming technique and automated machine support.

Computational Modelling with MATLAB This module introduces practical computational techniques used for modelling dynamic (especially biological) systems. The module covers both equation-based and individualbased modelling techniques and students learn how to apply them (using the MATLAB computational package) to simulate and understand dynamic systems such as animal swarms and gene regulatory networks. Computer Networks and Distributed Systems This module introduces the basic concepts, technologies, architecture and standards involved in computer networks and distributed systems, together with methods for their design and implementation. This will include discussion of data transmission protocols, TCP/IP, LANs and WANs, communication mechanisms and synchronization issues. Computer Security The module will introduce a range of topics in computer security, including attacks and vulnerabilities, and defences and countermeasures. Both theory and practice are covered, through lectures and seminars.

School of Computer Science

23

Software Testing The module presents a systematic approach to software testing, in context of the software life cycle and as a branch of software engineering, building on students' prior knowledge of software engineering (to at least Level 2/I). Through both the breadth and depth of its coverage, the module prepares students to make an effective contribution to software testing as professional software engineers. Behaviour of Complex Systems The module gives a hands-on introduction into the Science of Complexity, and investigates how simple rules applied to system components create the richness and diversity of natural and man-made systems. Individual Study 2 This module exists to allow particularly strong students to study, at their own initiative, material that is outside what can be found in other Level M modules that are available in the School of Computer Science. Learning is by self-managed study under the direction of a supervisor (a member of the academic staff of the School). The topic for a particular student is by negotiation between the student and supervisor early in the semester. Intelligent Robotics (Extended) Artificial Intelligence is concerned with mechanisms for generating intelligent behaviour. When this behaviour occurs in the everyday physical world, with its uncertainty and rapid change, we find that all kinds of new problems and opportunities arise. We will try to understand some of these in the context of robotics. In a series of lectures we will look at some theories of how to sense the real world, and act intelligently in it. In a series of labs you will build your own robots to see how well (or badly) these theories actually work. Introduction to Evolutionary Computation Evolutionary computation is the study of computational systems that use ideas and get inspiration from natural evolution. Its techniques can be applied to optimisation, learning and design. Example topics covered in this module include natural and artificial evolution, evolutionary, chromosome representations, search operators, co-evolution, constraint handling techniques, niching and speciation, genetic programming, classifier systems and theoretical foundations.

Introduction to Neural Computation This module introduces the basic concepts and techniques of neural computation, and its relation to automated learning in computing machines more generally. It covers the main types of formal neuron and their relation to neurobiology, showing how to construct large neural networks and study their learning and generalization abilities in the context of practical applications. It also provides practical experience of designing and implementing a neural network for a real world application. Machine Learning (Extended) The module will provide a good foundation to machine learning. It will compare and contrast human learning with machine learning. It will examine the limitations of machine learning, the role of hypothesis bias and hypothesis representation. Nature Inspired Design This module introduces the basic ideas of nature-inspired design techniques. Different algorithms and their applications will be presented. Similarities and differences between these techniques/algorithms and other classical techniques will be discussed whenever appropriate. The design domain ranges from architectural, engineering and graphics design to electronic circuit design and evolvable hardware. Examples of such techniques include evolution and knowledge discovery, circuit design by evolution, novel architectural design by evolution, creative design, interactive evolution, evolutionary graphics, knowledge extraction from evolution, extrinsic evolvable hardware, intrinsic evolvable hardware, on-line adaptation, and implementation issues. Nature Inspired Optimisation This module introduces a range of natureinspired algorithms for both real-valued and combinatorial optimisation. Examples of such algorithms include: Evolutionary Algorithms, Ant Colony Algorithms, Simulated Annealing, Tabu Search. The study of these techniques and the problems for which they are designed will take place within the broader context of established optimisation theory. Such theory as currently exists for the new techniques will also be presented.

Planning (Extended) The basic notions and problems of planning are presented, including plan-space and state-space planners, the frame problem, and hierarchical task networks. The module looks at a range of different planning problems, and a number of algorithms for solving them. These include STRIPS, UCPop, Graph Plan, SAT Plan, and HTN planners. In addition, some recent advances in planning will be looked at. These may include decision-theoretic planning, robotic architectures for planning, scheduling, and planning under uncertainty. The advantages and disadvantages of the different approaches are discussed.

24

School of Computer Science

Artificial Intelligence explained


As an A level or equivalent student, artificial intelligence is probably one of the areas of computer science that you may know least about. Thats perfectly understandable given that it is surrounded by so much Hollywood hype. Here you will find more about what AI is and what it can be used for.

AI is the study of the nature of intelligence by building computer systems, and the application of these insights in solving real-world problems. New AI technologies are being developed constantly but a few examples include: o Neural Networks simulating the work of neurons in the brain o Natural Language Processing producing computer systems that can understand, translate and communicate in human languages o Theorem Provers allowing computers to solve mathematical problems and discover new mathematical concepts o Genetic Algorithms solving problems by a loose analogy with biological evolution by natural selection

Knowledge Based Systems encoding human expert knowledge in such a way a computer can reason with it o Case-Based Reasoning simulating how humans reason from past experience o Robotics focusing on constructing intelligent robots that adapt to their environment o Vision focusing on tasks such as face recognition The applications of AI There are a huge number of uses for AI technology, including: o Fraud detection systems which use neural networks to detect stolen credit cards o Genetic algorithms which are used in scheduling to find the most efficient way to roster staff or allocate resources

Medical Knowledge Based Systems which can advise on medical treatment o Call centres and help desks which often use case based reasoning to provide instructions on how to deal with common problems o Forensic analysis of CCTV images using AI  vision technology which is being developed to recognise criminals o Financiers using neural networks to predict stock market trends and genetic algorithms to optimise their portfolios

School of Computer Science

25

Robot cars become reality Until now the fully self-driving car has been the stuff of fantasy: Herbie and K.I.T.T. from Knight Rider spring to mind. But with AI, anything is possible. German car giant Volkswagen recently reported that they had turned fantasy into reality with a fully automatic car. The VW Golf GTI 53 plus 1 has sensors built into the grille that monitor the road. They feed information back to an onboard computer which works in conjunction with the satellite navigation system. The end result means the Golf can be navigated along any road, with pinpoint accuracy. On the race circuit, the VW Golf GTi 53 plus 1 drove itself faster and more precisely than the VW engineers did and accelerated independently up to 150mph. So it seems the potential for self-driving cars to be available to buy one day is not as unlikely as once though. Plus, you can be sure that many of the separate AI elements which make up the self-driving Golf will be finding their way into car showrooms within a few years, just like sat nav and anti-lock brakes have done in recent years.
Source: Volkswagen

NASA Planetary Rovers get AI Scientists at NASA Ames Research Center are developing very complex AI software that enables a higher level of robotic intelligence. In the past, very simple AI systems on board rovers allowed them to make some simple decisions, but much smarter AI will enable them to make many of the decisions currently made by mission controllers. Future robotic rovers will have enough intelligence to navigate the Martian landscape without detailed instructions from scientists on Earth. Rovers with additional artificial intelligence will be able to avoid hazards including holes, impassable rocks or steep grades. According to Dr Richard Dearden, Senior Lecturer in Computer Science at the University of Birmingham and former NASA computer scientist involved in the application of AI techniques in Mars Rovers: Creating strong AI software is a very exciting and challenging problem, and it inspires us and our students to work on this bold effort.
Source: NASA

26

School of Computer Science

What can you do with a degree in Computer Science?


There is so much potential in the real world for Birminghams computing graduates. A survey commissioned by The Guardian showed that Birmingham is one of the top six universities targeted by personnel managers when looking for new employees. So while graduation may seem a long time away, it is worth considering the competitive advantage you will gain with a Birmingham degree.
Studying an undergraduate degree in Computer Science will develop management skills such as communication, teamwork, time management and report writing. It will give you a disciplined approach to analysing problems; with the ability to design creative solutions and critically evaluate the results. Employers are impressed by the combination of technical and transferable skills offered by computing graduates, and as such, you might find yourself in a variety of environments in academia, industry, research and commercial organisations, in such areas as: o Artificial Intelligence Developing computers that simulate human learning and reasoning ability. o Computer Design and Engineering Designing new computer circuits, microchips, and other electronic components. o Computer Architecture Designing new computer instruction sets, and combining electronic or optical components to provide powerful but cost-effective computing. o Information Technology Developing and managing information systems that support a business or organization. o Software Engineering Developing methods for the production of software systems on time, within budget, and with few or no defects. o Computer Theory Investigating the fundamental theories of how computers solve problems, and apply the results to other areas of computer science. Operating Systems and Networks Developing the basic software computers use to supervise themselves or to communicate with other computers. o Software Applications Applying computing and technology to solving problems outside the computer field in education or medicine, for example.
Source: Adapted from IEEE Computer Society o

Graduate profile Daniel Birks


Position: Crime Science Researcher Employer: West Midlands Police/ Jill Dando Institute of Crime Science Degree: BSc (Hons) Artificial Intelligence and Computer Science

What skills will I develop? Your course will give you a disciplined approach to analysing problems, and the ability to design creative solutions and critically evaluate the results. Plus, you will develop management skills such as communication, teamwork, time management and report writing. Future employers will be interested in your technical skills, in particular the ability to program in multiple languages, and the transferable skills youve developed, such as innovation and the adaptability to cope with rapid change in technology. Where can I work? You can go to a technology consultancy like Accenture, CHP Consulting, Logica CMG or PA Consulting, or one of the global IT giants, such as Microsoft, Oracle, Hewlett Packard and IBM. There is also a huge number of smaller IT-focused UK companies, not to mention opportunities in investment and retail banking, telecommunications companies, retail businesses, public sector organisations and research.

Neural networks are a fairly recent development: designed using the human brain as a template, they are actually able to learn from their environment. They are currently being used in a variety of applications, for example University of Birmingham alumnus Daniel Birks is working with West Midlands Police to create software to predict where crimes are likely to occur. Since joining the Jill Dando Institute lab at its inception in November 2002, Dans work has focused on crime analysis techniques, especially in the areas of domestic burglary and car crime, criminal networks analysis and the use of Geographic Information Systems (GIS) in analysing spatial and temporal patterns of crime. Currently, Dan is working on creating a software test-bed for predictive crime-mapping techniques. His research interests include such predictive models of crime, datamining applications in crime and agent-based simulations of crime.

School of Computer Science

27

Graduate profile

Grant Bolton
Position: Games Programmer Employer: EA Games Degree: BSc Computer Science and Software Engineering

What types of job can I get? 96% of our Computer Science graduates are in graduate jobs, six months after graduation, as stated by the recent Destination of Leavers of Higher Education (DLHE) Survey 2011. The following job titles and their definitions are not standardised within the industry, but they have been chosen to give you a flavour of the variety of opportunities that exist. o Applications Developer, writes programs for technical, commercial and business users; usually works in a team to create a program to agreed specifications and produce detailed supporting documentation o Database Administrator, responsible for the usage, accuracy, efficiency, security, maintenance, administration and development of an organisations computerised databases o Information Systems Manager, works with a staff of technical specialists to provide and maintain an organisations hardware and software technology infrastructures. Also called service delivery managers o IT Consultant, gives objective advice on the best use of IT to solve business problems; clarifies client requirements, and defines and presents the solutions o Network Engineer, ensures the server and network infrastructure is maintained to maximise efficiency, involving installing and supporting new servers, hardware and software, allocating resources and providing technical support to end users. Also called systems administrators o Software Engineer, researches, designs, tests, implements and maintains software systems to meet client or employer needs; uses a variety of computer programming languages and applications, working in teams with other IT professionals, or alone o Web Designer, designs and codes web pages; liaises with and advises clients, creates web pages, adds content and tests the finished site

Grant develops computer games for handheld systems, such as PlayStation Portable and Nintendo DS: if you have skidded off a wet track playing Burn Out, it was probably due to Grants weather effects. He also worked on the PSP version of Harry Potter and the Goblet of Fire. My degree course helped me develop some of the core skills needed to be a Games Programmer. At Birmingham you learn a lot of maths, physics and AI: that is the foundation for computer science and a good platform for a career in games development. Grants main responsibility is for the AI part of a game and game mechanics. I write code to make computer-controlled characters act realistically. I write a set of rules to dictate how characters react to the player. The quality of the AI can determine the quality of the game. The smarter the bad guys, the harder they are to kill! For those looking for entry into games development, Grant says, Testing is a good way into the industry. It is a common misconception that games is difficult to get into. I worked on Black & White 2, where I was involved in improving the design rather than just bug hunting. I also recommend you bring gaming into your university projects, where you can get experience in building demos.

Lecturer/Teacher, could teach ICT in secondary schools or college after taking a Postgraduate Certificate in Education (PGCE). As a shortage subject it currently attracts additional funding. Around 10% of graduates go on to further study, usually studying in greater depth through an MSc or PhD. This is essential for an academic career in higher education Multimedia Programmer/Computer Games Developer, works in a team to write programs that bring together text, sound, artwork, 2D/3D modelling, animation, video and virtual reality to create a multimedia product, eg. for websites and computer games Systems Designer, designs new IT systems from a technical specification, and is responsible for installation, testing and maintenance. The job can incorporate a systems analyst or consultant role Systems/Business Analyst, works with a client to improve their information systems or recommend new systems; defines the problem, finds a solution, costs it produces a project brief and outline design for a systems designer to develop Technical Support Officers, monitors and maintains the computer systems and networks of an organisation; installs and configures computer systems, diagnoses hardware/software faults and solves technical problems, either over the phone or face-to-face

Source: Adapted from www.prospects.ac.uk the UKs official graduate careers website.

Learn more Graduate Prospects works in partnership with the Association of Graduate Careers Advisory Services (AGCAS) to maximise the opportunities and support available to all students and graduates throughout their career search. For more details visit: www.prospects.ac.uk and www.agcas.org.uk

28

School of Computer Science

Joint Honours undergraduate programmes


A joint honours degree programme involves the study of two subjects, both to honours degree level so you work at exactly the same level and to the same academic standard as students taking a single honours programme. You are simply required to choose fewer topics from the range of options available in each half of the programme.
Computer science can be combined with electronics, mathematics or an arts subject. You may therefore choose to combine very disparate subjects simply because you want to develop two separate areas of expertise Computer Science and Theology, for example each of which has its own inherent interest. Sometimes there is considerable common ground between the subjects, as in the case of the very popular combination of Mathematics and Computer Science. You may wish to link the two subjects by choosing particular options in each department or by creating a final-year project on a topic that draws on the knowledge and expertise developed in two departments. The choice is yours. For those of you who have interest in more than one scientific discipline, you may wish to consider the highly flexible BSc in Natural Sciences. By following this route you could study two major subjects combining computer science with biology, chemistry, earth sciences or mathematics for three years, and add an optional third minor subject for the first two years. There is even the opportunity to take a different minor in each year. In the final year you focus on the major subject disciplines or if you find yourself leaning more towards one, then the programme requirements may allow you to study that one major only, allowing you to tailor you degree course to suit individual interests. Learn more For more details about the BSc Natural Sciences, visit www.naturalsciences.bham.ac.uk Why study Joint Honours? The intellectual range of a Joint Honours degree, together with the communication and organisational skills acquired by combining disciplines, makes you very attractive to employers. A Joint Honours degree also equips you to proceed to a higher degree in either subject area, or to conduct research on a topic that combines your chosen disciplines. Joint honours programmes offered in conjunction with the School of Computer Science include: BSc/MSci Mathematics and Computer Science (GG14 MSci/MCS) Nowadays there are many links between mathematics and computer science: mathematicians use computers as tools to help with solving complex equations, algebraic analysis and even theorem proving; while computer scientists make use of a wide range of mathematics from logic and algebra to statistics. This programme allows you to choose from a wide range of options from both computer and mathematical sciences. BA Computer Studies and Arts Subject These degrees allow you to combine an arts subject with the core of a degree in computer science: o BA Computer Studies and Archaeology/ Ancient History (GV44 BA/CSAH) o BA Computer Studies and French Studies (4 Years) (GR41 BA/CSFS) The particular needs of students taking any of the above combinations are looked after by the Admissions Tutor for Joint Honours. Students are also usually assigned a personal tutor in each department. Learn more To find out more about the breakdown of computer science modules in any of the joint honours options available, visit www.cs.bham.ac.uk/resources/programmes You may also wish to contact one of the following academic schools, depending upon your chosen joint honours programme: School of Mathematics Tel: +44 (0)121 414 3359 Email: maths@bham.ac.uk www.mat.bham.ac.uk Faculty of Arts Tel: +44 (0)121 414 5495 Email: jointhonours@bham.ac.uk

School of Computer Science

29

Year in industry
Competition for graduate jobs is tough so you need to do what you can to stand out from the crowd. Gaining relevant work experience can often give you that point of difference, helping you to develop skills and experience that will enhance your university education and maximise your prospects.

School of Computer Science students all have an excellent opportunity to supplement their studies with a year working in industry. In fact, many of our students go on to work for their year-out employers after graduating. How does it work? If you choose this option, you will spend the first two years of your degree at Birmingham, followed by the placement year on a salary, then back to the University for your final year. During your year in industry you will be able to put taught theory into practice, as well as gain valuable experience and skills.

Who will my placement be with? Several well-known companies sponsor our student prizes and offer work placements, all of which are organised by the University Careers Service and the School of Computer Science Work Placement Officer. To gain a placement you will need to find an opportunity that suits your career goals, present your CV and attend an interview, all of which you will be supported in by our Work Placement Officer. What will I do? The School and placement company work together to devise a programme of study for

you that is linked to the industrial work. This will include basic skills and project elements. At the end of the year you will be awarded a Certificate of Industrial Studies. Learn more For additional information on industry placements contact: Industrial Placements Tutor Email: IPTutor@cs.bham.ac.uk

Graduate placement Helen Hancox


Employer: IBM Degree: MEng Computer Science/ Software Engineering

What was your role within your work placement? My role involved supporting members of staff who worked with business partners developing software using IBM middleware and hardware. As part of this, I worked with one specific business partner undertaking a variety of tasks. I worked on individual projects, which included the design and development of software applications. How has your work placement helped you? My work placement enabled me to gain many more technical skills as well as enhancing the skills I already had. These extra skills have given me a boost in my final years at university. My placement has also enabled me to understand the business aspect of industry and be exposed to work in the real world. The experience and knowledge obtained from my

placement has helped me in my final years at university and get a graduate job after graduation. Would you recommend a work placement year and why? I would recommend a work placement to anybody undertaking a degree. It provides you with a vital opportunity to develop both technical and business skills, all of which can be used later in your career. It also provides you experience within an industry environment, which has been vital in me being offered a job in the Technical Solutions arm of Accenture.

30

School of Computer Science

International study opportunities


Experience new cultures, meet new people, see more of the world all while continuing your studies. Thats what a year of study abroad can offer you enhancing your learning, expanding your horizons and offering you an experience to be remembered throughout your university and professional life.

The Benefits The benefits from participating in a year abroad include: o Developing relevant, marketable skills problem solving, communication, patience and perseverance, determination, self- motivation, analytical and study skills o Academic or subject related reasons experience a different academic environment and way of teaching o Enhanced career prospects employers more likely to choose you with additional offerings other than just your degree o Language and culture opportunity to be genuinely immersed into another culture rather than just being a traveller o Personal development increased confidence and ability to deal with difficult situations and unfamiliar surroundings

Contacts build worldwide relationships that can last a lifetime and benefit you in years to come o Students that have studied abroad say that it is the best year of their lives Am I eligible? All students enrolled on the BSc Computer Science course are eligible to take part in the Erasmus or Universitas 21 Student Mobility Programme. This means that you will spend your third year at an approved institution in another country, returning to Birmingham for a fourth year. During your year abroad you will study computer science topics that are appropriate to a second-year computer science student at the University of Birmingham.

What are my options? Birmingham University has an excellent international reputation and we are proud of the growing opportunities for our computer science students to study overseas at one of our partner institutions. Erasmus (Europe) Erasmus (European Community Action Scheme for the Mobility of University Students) is the European Commission's educational programme for Higher Education students, teachers and institutions. As one of the largest exchange programmes in the UK, Erasmus encourages students to move around within the EU, strengthening educational, cultural and linguistic interchange. As part of this, the University of Birmingham has more than 140 partner institutions throughout Europe.

School of Computer Science

31

Within the School of Computer Science in particular, the programme is available at several European universities, including: o Germany (Darmstadt, Dresden) o France (Lyon) o Italy (Pisa) o Sweden (Gothenburg) o Greece (Thessaloniki) Universitas 21 (Global) Formed in 1997, Universitas 21 is an international network of 16 leading universities in ten countries, which enables students to complete exchange programmes. At the University of Birmingham, students compete for a limited number of places on the basis of academic performance in the first two years of study. Places you could study include:

o o o o o o o


o o

Lund University, Sweden The University of Virginia, USA McGill University, Canada The University of British Columbia, Canada Beijing University, China The University of Hong Kong, Hong Kong The National University of Singapore, Singapore The University of Melbourne, Australia The University of Auckland, New Zealand

Studying or working abroad allows you to become genuinely immersed in another culture and to develop as a person as you learn to deal with unfamiliar situations and a different academic and cultural environment. Ninetystudy abroad nine percent of students quotation tbc returning from a year abroad say it has been the best year of their lives and they have built worldwide relationships that will last a lifetime and benefit them for many years to come.
Rachel King Head of Study Abroad and Exchanges

Learn more Contact the Study Abroad and Exchanges Office: Tel: +44 (0)121 414 7696 Email: studyabroad@bham.ac.uk www.international.bham.ac.uk/sae/

32

School of Computer Science

Applications and admissions


At the School of Computer Science, we welcome applications from highly motivated and well-qualified students. We understand that this is most likely an unfamiliar experience for you, therefore if you have any questions about your application please do not hesitate to contact our admissions team, who will do all they can to help.

How to apply All applications for undergraduate degree programmes must be made through the Universities and Colleges Admissions Service (UCAS) using their secure online application system at www.ucas.com/students/apply. When completing your UCAS application form you will need our institution codes which are: o Institution Code Name: BIRM o Institution Code: B32 When to apply The majority of applications to our school are received during the months of September to early November each year. There is the opportunity to apply up until the 15 January, however an early application is recommended so that you can take full advantage of the Applicant Visit Days offered from November each year.

Invitations to attend a School of Computer Science Applicant Visit Day are made to all students who have applied to our school and are made an offer. This event will provide you with the opportunity to ask questions of academic staff and current students, attend subject talks, and view our exceptional school and campus facilities. You will also have the opportunity to secure a 500 scholarship enhancement and demonstrate your knowledge of computing and computer applications in a subject-specific interview and Aptitude Test. For details of the range of scholarships offered by the School of Computer Science, including scholarship terms and conditions, see page 34. Campus tours If you cant attend your applicant visit day, the University also offers guided tours every

Tuesday and Thursday at 11.00am and 2.00pm, when you will be shown around by a current Birmingham student. Places are strictly limited and need to be booked one week in advance. To receive an information pack or book a place, please contact Student Recruitment and Outreach. Tel: +44 (0)121 414 2242 Email: c.abbey@bham.ac.uk UCAS key dates o 1 September Opening date for receipt by the UCAS office of applications for admission o 15 January Last date for receipt of applications from all home/EU students o 30 June Last date for receipt of applications from international students

School of Computer Science

33

Graduate profile

Tom Greenwood
Award gained: First Class Pre-University qualifications: A levels in Computing, Physics, Mathematics and General Studies Degree: BSc Computer Science

The best tip that I could give any university applicant would be to do your research. League tables and rankings are important; however visiting a place will give you a whole other perspective. Open Days are useful for getting an overall picture of the university, but many departments host specific events for university applicants, which are often the most helpful when you are trying to choose between your five choices. I also found the chance to talk to current students really helpful, as it gave me a more honest perspective of what it would be like to study there.

English Language requirements If English isnt your first language you will need to have: o  TOEFL 550* with a minimum score of 4.0 in TWE o  TOEFL IBT** 80 overall with no less than 17 in any band o IELTS 6.0 overall (with at least 5.5 in each band) o Pre-sessional English courses are available if you would like to improve your English language skills before the start of term
* paper-based test ** internet-based test

Learn more Undergraduate Admissions Team School of Computer Science Tel: +44 (0)121 415 8742 Email: ug-admissions@cs.bham.ac.uk www.cs.bham.ac.uk

34

School of Computer Science

Money matters: Fees, funding, scholarships and bursaries


Our School is proud to offer an impressive range of scholarships and bursaries for both Home/EU and International students wishing to study for an undergraduate degree in a Computer Science subject. Scholarships are awarded to students who have, or expect to achieve, excellent academic results.

At Birmingham, we ensure that financial barriers to entry are removed by offering a wide range of additional financial support packages in the form of bursaries, grants and scholarships. For further details on fees and funding support, visit www.undergraduate.bham.ac.uk/finance Paying your tuition fees We recognise that our students have different requirements for paying their tuition fees. This is why we are committed to providing a range of payment options to suit everyone. These allow you either to pay your fee in full before or at registration, or to spread the cost over manageable instalments by direct debit.

For further details on the range of payment options available, visit www.payments.bham.ac.uk Financial support for Home/EU student Home/EU students can take advantage of financial support offered by the Student Loans Company (SLC), the agency that administers grants and loans to students in higher education. EU students can apply for a tuition fee loan. There are two kinds of student loan available; one to cover your tuition fee and the other to contribute towards your living costs.
o

money will be paid directly to the University on your behalf (EU students are eligible to apply for this loan only) o Maintenance loan: A maintenance loan can contribute towards your living costs. The amount that you can borrow will be determined by your household income and where you are intending to study If you have dependent children, or you have a disability or learning difficulties, extra support will be available. For more information visit www.direct.gov.uk/studentfinance Learn more www.cs.bham.ac.uk/admissions/ undergraduate/scholarships

Tuition fee loan: You can apply for a loan to meet all or part of your tuition fee. The

School of Computer Science

35

www.birmingham.ac.uk
This brochure was written several months in advance of the start of the academic year. It is intended to provide prospective students with a general picture of the programmes and courses offered by the School. Please note that not all programmes or all courses are offered every year. Also, because our research is constantly exploring new areas and directions of study some courses may be dropped and new ones offered in their place.

Edgbaston, Birmingham

B15 2TT, United Kingdom

www.cs.bham.ac.uk

6977 University of Birmingham 2012. Printed on a recycled grade paper containing 100% post-consumer waste.

SCAN ME

You might also like