Databases 28 March 2017

Birkbeck, University of London MAL 351

Databases: an introduction to design and development. 

Time: 11.00am-5.00pm

Sharon Webb (Sussex)

This workshop is led by Dr Sharon Webb, Lecturer in Digital Humanities at the Sussex Humanities Lab, University of Sussex, where is involved with a number of research projects and contributes to undergraduate lecturing in the History department. Sharon has contributed to two major digital humanities projects in Ireland, the Digital Repository of Ireland (DRI) and the Digital Arts and Humanities Structured PhD Programme (DAH). As DRI’s Requirements Analyst (2011-2014) she specified the functional and non-functional requirements to develop DRI’s trusted digital repository and played a key role in informing policy related to the building of a trusted digital repository as well as developing guidelines for metadata, copyright and intellectual property, and business sustainability.

Workshop description and layout:

Databases are integral to the information world we live and study in. They “run” the web and are the backbone of many digital humanities projects and resources. While there exists many different types of databases and databases systems, in general relational databases, as proposed by Codd in the 1970s, remain predominate. However, database systems, and databases, are not “one size fits all” and require careful consideration in terms of their design, structure and current, as well as future, uses.

This workshop, therefore, will consider the preliminary steps of databases development, that of requirements analysis and data modelling, and will consider the basic features or characteristics of a database (e.g. entities, tables, foreign keys), before looking at some popular databases available to use and their query languages. This strategic approach will provide participants with a methodical workflow for database development.

Preliminary outline:

Introduction: what is data, what is a database, why are they important (theory)

Requirements analysis I: understanding users needs and how to specify requirements using use case and actor analysis (theory)

Requirements engineering is part of the software development process. In the traditional software development cycle it is the first, and most important step. In recent years, agile processes mean that requirements analysis and specification are iterative and form part of user testing and acceptance. Understanding what is required is the crucial first step that will ensure proper functioning of a system (or a database).

Requirements analysis II: use case development (practical)

Data modeling I: understanding your data (linked to requirements analysis and user needs), document versus data model, hierarchical versus relational (theory)

Data modeling is the process by which we give meaning and value to numbers and/or text. It is the process by which we give data, context. Data modeling considers how we interpret “things” and how we expect them to be interpreted by a computer programme. This process ensures that we can manipulate, interrogate and preserve information.

Database theory: what is a relational database, connecting data – entities, attributes, foreign keys, tables, etc., normalisation and redundancy (theory)

Data modeling II: using Entity-Relational (ER) diagrams and UML (Universal Modeling Language) to create a data model (practical)

Data modeling relies on a careful consideration of both the users’ needs (current and future), and the data. Data models typically use specific notation and modeling paradigms so that they can be effectively communicated and documented. Examples of specific models for database design include ER diagrams and class diagrams from the UML.

Development: which database/system, preservation and sustainability, visibility.

A brief look at MySQL and the query language SQL.

Audience: This workshop assumes no prior knowledge of database design and/or development.

Required downloads and bookmarks:


Slides and materials from the workshop can be downloaded from the following link