ugcs brochure x

Upload: gigigradinariu2682

Post on 14-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 UGCS Brochure x

    1/36

    Undergraduate study

    in Computer Science

    School of 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.

  • 7/30/2019 UGCS Brochure x

    2/36

    2 School of Computer Science

    Contents

    3 Welcome

    4 What is Computer Science?

    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 Articial 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

    Come along to an Open Day:www.birmingham.ac.uk/opendays

    Learn more

    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.

    KEEP UP TO DATE!

    Follow us on facebook

    www.cs.bham.ac.uk/go/acebook

    Follow us on twitter @uobcompsci

    Undergraduate Student Admissions Team

    Tel: +44 (0)121 415 8742

    Email: [email protected]

    www.cs.bham.ac.uk

    SCAN ME

  • 7/30/2019 UGCS Brochure x

    3/36

    School of Computer Science 3

    Welcome

    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 fromhighly 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 universityto 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 informativeApplicant Visit Day to assist your decision-

    making. 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.

    Proessor Jonathan RoweHead o the School o Computer Science

    The University of Birmingham is a great university in a great city.Founded as Englands first truly civic university over a centuryago, in a glorious campus close to the centre of Englandssecond city, the University of Birmingham is now not only oneof Britains leading universities, but internationally acclaimedand globally recognised.

    Coming to Birmingham was the best thing that couldhave happened to me. I have secured a better job thanI could have ever hoped to have got, I have really enjoyed

    my degree, and I have had such a fantastic student lifeexperience all because I came to Birmingham!

    Selina Tindall

    Graduate Trainee in Global Markets (Technology), Royal Bank of Scotland

    BSc Computer Science

  • 7/30/2019 UGCS Brochure x

    4/36

    I started at Birminghamwith a blank sheet oncomputing. My degreeallowed me to begina successful technicalcareer in the industry.

    Caleb Kam Kong TangAdvisory IT Specialist

    IBM China/Hong Kong

    BEng Computer Science

    and Software Engineering

    Computers are a core part of our lives: social networking, mediastreaming, computer games, office applications and onlineshopping are all obvious examples of things that computerscience has brought us that many people are very familiar with.

    What is Computer Science?

    4 School of Computer Science

    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 21stcentury 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 makeuse of it. This can have a far more signicant

    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 specic to your interests

    on social networking sites to identifying trends

    in nancial markets. Computer Science is at

    the heart of this industry. The role of the

    computer scientist in this process is notjust about writing computer programmes to

    perform a particular task (although this can

    be a signicant 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.

  • 7/30/2019 UGCS Brochure x

    5/36

    School of Computer Science 5

    Thinking about problems from a computationalperspective 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 ocking 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 articial neural networks, and

    by drawing on our knowledge of informationprocessing 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 efciency

    of a company's operations

    So, at its most fundamental level ComputerScience 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 nancialtrading; 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.

  • 7/30/2019 UGCS Brochure x

    6/36

    Why Birmingham?

    Birmingham has a long history of research excellence,a stunning campus with exceptional facilities, and offersstudents a culturally diverse academic experience, setwithin 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 areglobal experts in their field, with five Nobel

    Prize winners amongst our alumni and

    academic staff.

    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

    6 School of Computer Science

    o 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.

    o 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

    o 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).

    o 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 throughoutthe world.

    o We are a top three sporting university

    and have some of the best facilities

  • 7/30/2019 UGCS Brochure x

    7/36

    School of Computer Science 7

    An oasis of green spaceand red brick amid thebustle of Englands secondbiggest city. Set in 250acres of parkland, themain campus is largelyself-contained with lawns,

    trees and a lake.

    The Independent

  • 7/30/2019 UGCS Brochure x

    8/36

    Birmingham city

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

    8 School of Computer Science

    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 nancial 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 tolibraries. View photos, read blogs, watch

    lms 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 signicant

    investment. The landscape of the area has

    changed, and stylish apartments and ofces

    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.

  • 7/30/2019 UGCS Brochure x

    9/36

    School of Computer Science 9

    Factle: The city of Birmingham

    o Birmingham is the safest major city

    in England and Wales according toa recent report by the Reform group

    www.reform.co.uk

    o The NEC Group welcomes over ve

    million visitors to its Birmingham venues

    each year, staging more exhibitions than

    any other European centre

    o 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

    o Sherlock Holmess creator, Sir Arthur

    Conan Doyle, also lived in the city

    o 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 nowfringed 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

    nest 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 lms under one roof.

    Sporting city

    Birmingham is home to Premier League

    football clubs Aston Villa and Birmingham Cityand 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.

  • 7/30/2019 UGCS Brochure x

    10/36

    Why Computer Scienceat Birmingham?

    Birmingham is one of the top universities for studying computerscience in the UK, with a strong international reputation forexcellence in teaching and research. We offer a broad rangeof flexible courses giving the opportunity for a challengingacademic 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 QualityAssurance 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 thebest 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 fexibility

    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 carefullystructured 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 mouldedas 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 pairedwith 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 acilities

    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 networko Subject-specific library

    o Student common room and five

    departmental seminar and meeting rooms

    0 School of Computer Science

    I treasure my time at Birmingham. My degree equippedme with the computer science theory as well as the more

    practical software engineering skills. Birmingham providedan excellent foundation for my career.

    Ernest Wong, Senior Web Developer, Yahoo! Holdings,

    BSc Computer Science and Software Engineering

  • 7/30/2019 UGCS Brochure x

    11/36

    School of Computer Science 11

    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 willmake you attractive to potential employers in

    what is an increasingly competitive job market.

    Proessional 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 ofexperience 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

    o Birmingham was one o the best

    decisions Ive ever made. While

    attending an open day, I instantly

    elt at home. The campus was

    beautiul and the people were

    so warm and riendly. I knew then

    that this was where I wanted to

    spend the next three years o my lie.

    The course has been rigorous

    and challenging, but immensely

    gratiying. At the University o

    Birmingham, students are taught

    by brilliant minds which inspires

    you to be the best you can be.

    Ater 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 AdefuyeIT AnalystDeutsche BankBSc Computer Scienceand Software Engineering

    Award-winning development

    At the School of Computer Science we are

    not just renowned for teaching and researchexcellence. 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 weorganise 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 CommercialProgramming 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.

  • 7/30/2019 UGCS Brochure x

    12/36

    2 School of Computer Science

    Studying Computer Scienceat Birmingham

    Some 50 years later, we now provide

    specialist teaching and conduct world-leading

    research in fundamental and applied computer

    science, articial 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 industry-

    informed curriculum that is appropriately

    accredited by the British Computer Society

    (BCS) and the Institute of Engineering

    Technology (IET).

    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 thearray of optional modules on offer.

    Below you will nd 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: [email protected]

    Computer Science at Birmingham dates back to the late 1950swith the School of Computer Science becoming one of the firstacademic departments in the UK to undertake research andteaching in this field.

    Programme title Computer Science Computer Science and

    Sotware Engineering

    Articial Intelligence

    and Computer Science

    Computer Science with

    Business Management

    Award BSc MEng BSc BScUCAS code G400 GG46 GG47 G4N1

    Duration 3 years; 4 years with a

    year abroad or in industry

    4 years for a MEng;

    5 years with a year

    abroad or in industry

    3 years; 4 years with

    a year abroad or in

    industry

    3 years; 4 years with

    a year in industry

    Proessional accreditation British Computer Society

    (BCS)

    British Computer Society

    (BCS) and the Institute of

    Engineering Technology

    (IET)

    British Computer

    Society (BCS)

    British Computer

    Society (BCS)

    Teaching quality QAA: Excellent QAA: Excellent QAA: Excellent QAA: Excellent

    Entry requirements

    A level grades AAB AAB AAB AAB

    A level/GCSE subjects Mathematics GCSE

    grade B if not at A level

    Mathematics GCSE

    grade B if not at A level

    Mathematics GCSE

    grade B if not at A level

    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)

    At least one A level or

    equivalent in a science

    subject is required

    (Mathematics, Physics or

    Computing preferred)

    At least one A level

    or equivalent in a

    science subject is

    required (Mathematics,

    Physics, Computing or

    Psychology preferred)

    General Studies accepted? Yes No Yes Yes

    IB grades required 3436 points 3236 points 3034 points 3436 points

    IB subjects required Mathematics, Physics

    or Computer Science

    at HL; SL Mathematics

    if not at HL

    Mathematics, Physics

    or Computer Science

    at HL; SL Mathematics

    if not at HL

    Mathematics, Physics

    or Computer Science

    at HL; SL Mathematics

    if not at HL

    Mathematics at SL

  • 7/30/2019 UGCS Brochure x

    13/36

    School of Computer Science 13

    Undergraduate degreesin Computer Science

    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 analyticalmethods 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

    Sotware 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 managementand 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 Articial 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 intelligenceis 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 theoriesof 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 systemsinvolving 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 years3 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 toStudy Abroad see page 30.

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

  • 7/30/2019 UGCS Brochure x

    14/36

    4 School of Computer Science

    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 usedin the related programming workshop modules.

    Software Workshop One

    A rst 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 AICovering its techniques and main subelds,

    and providing a foundation for further study

    in specic areas of articial 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

    nancial analysis techniques related to the

    appraisal of company nancial performance.

    It will cover: The content and format ofaccounting statements, accounting concepts

    and valuation approaches; appraising company

    nancial 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 ManagementThe 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 socio-

    economics; 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 rm.

    Module title BSc Computer

    Science

    MEng Computer

    Science/Sotware

    Engineering

    BSc Articial

    Intelligence and

    Computer Science

    BSc Computer

    Science with Business

    ManagementCompulsory 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

    Overview of year one

    We understand the pressures that many students can feel when facedwith the prospect of deciding upon one specific route of study. Thereforeall of our programmes have been carefully constructed to allow you asmuch flexibility as possible. Based around the study of core computerscience principles, our year one structure allows your course and careerdirection to be moulded as your ideas and interests evolve.

    Year one syllabus

  • 7/30/2019 UGCS Brochure x

    15/36

    When I started my degree I really

    liked the act that they teach you

    programming rom scratch. I had

    never programmed beore coming

    to the department and I was worriedthat I would get let behind but that

    couldnt have been urther rom the

    truth. Admittedly about two thirds o

    the class had some prior programming

    experience, but there was so much

    help available that I never elt

    overwhelmed.

    Also a very unique aspect o the

    department is the riendliness o the

    sta; rom speaking to my riends in

    other degree disciplines, unlike their

    lecturers, you can actually talk to these they are not just a ace at the ront

    o the lecture theatre, but really people

    you can have a conversation with.

    Graduate proile

    Selina TindallAward gained:2.1Pre-University qualiications:A levels in Mathematics, Informationand Communication Technology, French,Drama and General StudiesDegree:BSc Computer Science

    School of Computer Science 15

    International Economy

    This module will cover: National income

    accounting; macroeconomic theory; theory

    of monetary and scal 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 exerciseswill 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

    sufcient to understand a range of computer

    science topics.

    This module takes all the relevant topics

    covered at GCSE and builds upon themto act as a foundation for further study of

    mathematics relevant to computer science.

    Without the skills I gained from my course at BirminghamUniversity 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

  • 7/30/2019 UGCS Brochure x

    16/36

    6 School of Computer Science

    Software System Components 1

    This module presents more advanced software

    development techniques, enabling the design

    and development of programs of medium-scalesize 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 nal

    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 softwaredevelopment 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 designedto equip students with programming abilities

    which may be needed in an individual nal 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 IssuesThe 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 ve people.

    Models of Computation

    The module will introduce various automata

    theoretic models of computation and discuss

    their practical and theoretical signicance.

    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 alsobe a section on the Lambda Calculus and its

    connection with Functional Programming.

    Module title BSc Computer

    Science

    MEng Computer

    Science/Sotware

    Engineering

    BSc Articial

    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

    Year two syllabus

    Overview of year two

  • 7/30/2019 UGCS Brochure x

    17/36

    Mathematical Techniques forComputer 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, conguration management,

    quality management, process improvement).

    Overview of requirements engineering,requirements elicitation and analysis,

    requirements denition and specication,

    requirements validation, requirements

    management, overview of specication

    techniques. Object-oriented analysis and

    design using Unied 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 eld, emphasising commonthemes, principles and techniques. It lays the

    foundations for further advanced study of

    specic areas (such as neural networks

    and evolutionary algorithms).

    Software Workshop PrologThe 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 unication 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 exercisesare 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 tocomputer 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 andappropriate algorithms for their computational

    implementation. Examples are mostly given

    using Prolog.

    Financial Decision MakingExamines 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 programminglanguage 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.

    School of Computer Science 17

  • 7/30/2019 UGCS Brochure x

    18/36

    8 School of Computer Science

    Software Project

    The nal 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 bywriting 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. Eachspeaker 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 normallyinclude mainly the early phases of the software

    lifecycle (requirements analysis and software

    Module title BSc Computer

    Science

    BEng Computer

    Science/Sotware

    Engineering

    MEng Computer

    Science/Sotware

    Engineering

    BSc Articial

    Intelligence and

    Computer Science

    BSc Computer

    Science with Business

    Management

    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: 80 credits 70 credits 80 credits 80 credits 40 creditsCommercial 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

    Year three syllabus

    Overview of year three

  • 7/30/2019 UGCS Brochure x

    19/36

    design), but may also include the further

    development of prototype software and/or

    demonstration software. The nal 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 nance, with the main emphasis

    placed on understanding how technical

    methods can be applied. Topics include:gearing; dividend policies and nancial options.

    Strategic Management A

    In the rst 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 rst 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.

    Over the 3 years while I was reading

    CSBM, I gained signicant knowledge

    in dierent programming languages

    that improved my analytical thinking,

    important or my current role at

    Goldman Sachs. The businessdisciplines that I studied as part o

    my degree introduced me to the

    world o nance. For example, I

    eel comortable to perorm various

    strategic analyses o companies and

    industries globally. These skills are

    very important to me because I work

    in the nancial sector and need to

    be able to deal with various nancial

    problems everyday. Working in a team

    and presenting the team ndings to

    large audiences have been a big part o

    several modules that I studied, such asStrategic Management and Robotics.

    Additionally, extra curricular activities

    at university such as being a Computer

    Science Ambassador improved my

    communication skills signicantly and

    made it easier

    or me to settle

    into a new

    environment

    and work closely

    with other team

    members.

    Graduate proile

    Marija SmirnovaPosition:New Associate ProgrammeAnalyst in the Technology DivisionEmployer:Goldman SachsQualifcation:BSc Computer Sciencewith Business Management

    School of Computer Science 19

  • 7/30/2019 UGCS Brochure x

    20/36

    20 School of Computer Science

    Supply Chain ManagementIn their attempts to achieve superior protability

    for their rms, managers need to consider two

    critical tasks. First, rms need to position

    themselves by matching their internal

    capabilities with external market opportunities

    to maximise the revenue owing into the

    organisation. Second, rms need to organise

    themselves so that as little of that revenue as

    possible ows 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 ofrelational 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 efciency. In the nal 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 distributedsystems, 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 articialevolution, evolutionary, chromosome

    representations, search operators,

    co-evolution, constraint handling techniques,

    niching and speciation, genetic programming,

    classier systems and theoretical foundations.

    Graphics 23D constructive graphics (co-ordinate

    systems, object and scene design, graphics

    transformations in 3D translations, scaling,

    rotation, viewing); Animation; 2D raster

    graphics (algorithms for efcient 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 human-

    computer 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 ofthe 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-the-

    art techniques in the elds 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 reneweb search, construct more robust spam

    lters, or uncover principal trends in the

    evolution of a variety of stock indexes.

    Intelligent Robotics

    Articial 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 nd that all kinds of new

    problems and opportunities arise. We will try

    to understand some of these in the context ofrobotics. 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.

    Natural Language Processing and ApplicationsThe 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 designby 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 largeneural 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 difcult

    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,

  • 7/30/2019 UGCS Brochure x

    21/36

    I credit the University o Birmingham or giving me the knowledge and

    conidence to start my own business. I am charged with several roleswithin the company spanning both web and sotware development inaddition to sales and accounts. Since we began Ive oten ound mysel

    drawing on skills acquired rom nearly all aspects o my study and beyond.

    Tariq El-HossWeb Media Works, BSc Computer Science

    School of Computer Science 21

    and hierarchical task networks. The modulelooks 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 fundamentalprinciples of programming languages, such

    as stack, environment, store and type. We

    do this for a toy language called call-by-push-

    value, 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, le

    systems and threading, and introduces the toolsand 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.

  • 7/30/2019 UGCS Brochure x

    22/36

    22 School of Computer Science

    Software Project

    The MEng nal 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 object-

    oriented programming, the module introduces

    students to the concept of building software

    systems from independently developed

    components. Current technologies and

    standards will be reviewed. Exercises andother coursework will be used to give practical

    experience of constructing component-based

    software systems.

    Computational Modelling with MATLAB

    This module introduces practical computational

    techniques used for modelling dynamic

    (especially biological) systems. The module

    covers both equation-based and individual-

    based 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 SystemsThis 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 andcountermeasures. Both theory and practice

    are covered, through lectures and seminars.

    CryptographyThe 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-the-

    art techniques in the elds 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 hiddenpatterns in the data that can help us to rene

    web search, construct more robust spam

    lters, 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 SystemsProgramming in C/C++

    This module covers basic operating system

    concepts including memory management, le

    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 andthe 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.

    Module title MEng Computer Science/

    Sotware Engineering

    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)

    Year our syllabus

    Overview of year four

  • 7/30/2019 UGCS Brochure x

    23/36

    Software TestingThe 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 investigateshow 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 studentis by negotiation between the student and

    supervisor early in the semester.

    Intelligent Robotics (Extended)

    Articial 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 nd 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 articial

    evolution, evolutionary, chromosome

    representations, search operators, co-evolution,constraint handling techniques, niching and

    speciation, genetic programming, classier

    systems and theoretical foundations.

    Introduction to Neural ComputationThis 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 andother 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 nature-

    inspired 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 approachesare discussed.

    School of Computer Science 23

  • 7/30/2019 UGCS Brochure x

    24/36

    Artificial Intelligenceexplained

    As an A level or equivalent student, artificial intelligence isprobably one of the areas of computer science that you mayknow least about. Thats perfectly understandable given thatit is surrounded by so much Hollywood hype. Here you willfind 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 fewexamples 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

    o 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 experienceo Robotics focusing on constructing intelligent

    robots that adapt to their environment

    o Vision focusing on tasks such as

    face recognition

    The applications o 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

    24 School of Computer Science

    o 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 dealwith 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

  • 7/30/2019 UGCS Brochure x

    25/36

    Robot cars become realityUntil 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 theGolf 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 brakeshave done in recent years.

    Source: Volkswagen

    NASA Planetary Rovers get AIScientists 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 artificialintelligence 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

    School of Computer Science 25

  • 7/30/2019 UGCS Brochure x

    26/36

    26 School of Computer Science

    What can you do with adegree in Computer Science?

    There is so much potential in the real world for Birminghamscomputing graduates. A survey commissioned by The Guardianshowed that Birmingham is one of the top six universities targetedby personnel managers when looking for new employees. So whilegraduation may seem a long time away, it is worth considering thecompetitive 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 softwaresystems 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.

    o Operating Systems and Networks

    Developing the basic software computers

    use to supervise themselves or to

    communicate with other computers.

    o Software Applications Applyingcomputing and technology to solving

    problems outside the computer field

    in education or medicine, for example.

    Source: Adapted rom IEEE Computer Society

    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 willbe 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 alsoa 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 airly

    recent development: designed

    using the human brain as a

    template, they are actually able

    to learn rom their environment.

    They are currently being used in

    a variety o applications, or example

    University o Birmingham alumnusDaniel Birks is working with West

    Midlands Police to create sotware

    to predict where crimes are likely

    to occur.

    Since joining the Jill Dando

    Institute lab at its inception in

    November 2002, Dans work

    has ocused on crime analysis

    techniques, especially in the areas

    o domestic burglary and car crime,

    criminal networks analysis and

    the use o Geographic InormationSystems (GIS) in analysing spatial

    and temporal patterns o crime.

    Currently, Dan is working on creating

    a sotware test-bed or predictive

    crime-mapping techniques. His

    research interests include such

    predictive models o crime, data-

    mining applications in crime and

    agent-based simulations o crime.

    Graduate proile

    Daniel BirksPosition:Crime Science ResearcherEmployer:West Midlands Police/Jill Dando Institute of Crime ScienceDegree:BSc (Hons) Artificial Intelligenceand Computer Science

  • 7/30/2019 UGCS Brochure x

    27/36

    School of Computer Science 27

    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 anddevelopment 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.

    Al