Upload
gigigradinariu2682
View
219
Download
0
Embed Size (px)
Citation preview
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