<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel rdf:about="http://hdl.handle.net/10023/58">
    <title>DSpace Community:</title>
    <link>http://hdl.handle.net/10023/58</link>
    <description />
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3503" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3486" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3412" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3332" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3272" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3225" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3205" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3200" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3199" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3193" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3176" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3175" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3170" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3155" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3090" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3066" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3057" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/3055" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2841" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2761" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2607" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2540" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2533" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2449" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2438" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2437" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2436" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2426" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2415" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2411" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2124" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2100" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2095" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2037" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2036" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2034" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2033" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2032" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2027" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2023" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2022" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2020" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2019" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2018" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2017" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2016" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2014" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2013" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2011" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2010" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/2000" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1967" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1899" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1844" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1812" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1811" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1810" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1809" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1808" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1807" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1806" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1804" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1803" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1798" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1797" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1796" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1795" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1794" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1793" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1792" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1791" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1790" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1789" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1788" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1787" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1786" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1785" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1784" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1768" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1761" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1760" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1759" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1758" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1745" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1744" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1743" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1742" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1741" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1740" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1739" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1738" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1737" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1736" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1735" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1734" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1733" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1732" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1731" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1730" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1729" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1728" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1727" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1726" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1725" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1724" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1722" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1721" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1718" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1711" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1702" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1683" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1675" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1673" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1671" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1670" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1669" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1668" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1667" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1666" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1665" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1664" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1663" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1661" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1660" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1659" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1658" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1657" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1656" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1655" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1654" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1653" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1614" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1596" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1594" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1417" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1350" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1295" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1130" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1072" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1046" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/1045" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/973" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/933" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/930" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/926" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/923" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/763" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/759" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/702" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/564" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/522" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/435" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/319" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/223" />
        <rdf:li rdf:resource="http://hdl.handle.net/10023/154" />
      </rdf:Seq>
    </items>
    <dc:date>2013-05-21T18:21:55Z</dc:date>
  </channel>
  <item rdf:about="http://hdl.handle.net/10023/3503">
    <title>Short and long supports for constraint propagation</title>
    <link>http://hdl.handle.net/10023/3503</link>
    <description>Abstract: Special-purpose constraint propagation algorithms frequently make implicit use of short supports -- by examining a subset of the variables, they can infer support (a justification that a variable-value pair may still form part of an assignment that satisfies the constraint) for all other variables and values and save substantial work -- but short supports have not been studied in their own right. The two main contributions of this paper are the identification of short supports as important for constraint propagation, and the introduction of HaggisGAC, an efficient and effective general purpose propagation algorithm for exploiting short supports. Given the complexity of HaggisGAC, we present it as an optimised version of a simpler algorithm ShortGAC. Although experiments demonstrate the efficiency of ShortGAC compared with other general-purpose propagation algorithms where a compact set of short supports is available, we show theoretically and experimentally that HaggisGAC is even better. We also find that HaggisGAC performs better than GAC-Schema on full-length supports. We also introduce a variant algorithm HaggisGAC-Stable, which is adapted to avoid work on backtracking and in some cases can be faster and have significant reductions in memory use. All the proposed algorithms are excellent for propagating disjunctions of constraints. In all experiments with disjunctions we found our algorithms to be faster than Constructive Or and GAC-Schema by at least an order of magnitude, and up to three orders of magnitude.</description>
    <dc:date>2013-01-01T00:00:00Z</dc:date>
    <dc:creator>Nightingale, Peter</dc:creator>
    <dc:creator>Gent, Ian Philip</dc:creator>
    <dc:creator>Jefferson, Christopher Anthony</dc:creator>
    <dc:creator>Miguel, Ian James</dc:creator>
    <dc:description>Special-purpose constraint propagation algorithms frequently make implicit use of short supports -- by examining a subset of the variables, they can infer support (a justification that a variable-value pair may still form part of an assignment that satisfies the constraint) for all other variables and values and save substantial work -- but short supports have not been studied in their own right. The two main contributions of this paper are the identification of short supports as important for constraint propagation, and the introduction of HaggisGAC, an efficient and effective general purpose propagation algorithm for exploiting short supports. Given the complexity of HaggisGAC, we present it as an optimised version of a simpler algorithm ShortGAC. Although experiments demonstrate the efficiency of ShortGAC compared with other general-purpose propagation algorithms where a compact set of short supports is available, we show theoretically and experimentally that HaggisGAC is even better. We also find that HaggisGAC performs better than GAC-Schema on full-length supports. We also introduce a variant algorithm HaggisGAC-Stable, which is adapted to avoid work on backtracking and in some cases can be faster and have significant reductions in memory use. All the proposed algorithms are excellent for propagating disjunctions of constraints. In all experiments with disjunctions we found our algorithms to be faster than Constructive Or and GAC-Schema by at least an order of magnitude, and up to three orders of magnitude.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3486">
    <title>Memorability of pre-designed and user-defined gesture sets</title>
    <link>http://hdl.handle.net/10023/3486</link>
    <dc:date>2013-01-01T00:00:00Z</dc:date>
    <dc:creator>Nacenta, Miguel</dc:creator>
    <dc:creator>Kamber, Yemliha</dc:creator>
    <dc:creator>Qiang, Yizhou</dc:creator>
    <dc:creator>Kristensson, Per Ola</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3412">
    <title>Supporting system deployment decisions in public clouds</title>
    <link>http://hdl.handle.net/10023/3412</link>
    <description>Abstract: Decisions to deploy IT systems on public Infrastructure-as-a-Service clouds can be complicated as evaluating the benefits, risks and costs of using such clouds is not straightforward. The aim of this project was to investigate the challenges that enterprises face when making system deployment decisions in public clouds, and to develop vendor-neutral tools to inform decision makers during this process. Three tools were developed to support decision makers:&#xD;
1. Cloud Suitability Checklist: a simple list of questions to provide a rapid assessment of the suitability of public IaaS clouds for a specific IT system.&#xD;
2. Benefits and Risks Assessment tool: a spreadsheet that includes the general benefits and risks of using public clouds; this provides a starting point for risk assessment and helps organisations start discussions about cloud adoption.&#xD;
3. Elastic Cost Modelling: a tool that enables decision makers to model their system deployment options in public clouds and forecast their costs. These three tools collectively enable decision makers to investigate the benefits, risks and costs of using public clouds, and effectively support them in making system deployment decisions.&#xD;
Data was collected from five case studies and hundreds of users to evaluate the effectiveness of the tools. This data showed that the cost effectiveness of using public clouds is situation dependent rather than universally less expensive than traditional forms of IT provisioning. Running systems on the cloud using a traditional 'always on' approach can be less cost effective than on-premise servers, and the elastic nature of the cloud has to be considered if costs are to be reduced. Decision makers have to model the variations in resource usage and their systems' deployment options to obtain accurate cost estimates. Performing upfront cost modelling is beneficial as there can be significant cost differences between different cloud providers, and different deployment options within a single cloud. During such modelling exercises, the variations in a system's load (over time) must be taken into account to produce more accurate cost estimates, and the notion of elasticity patterns that is presented in this thesis provides one simple way to do this.</description>
    <dc:date>2013-06-26T00:00:00Z</dc:date>
    <dc:creator>Khajeh-Hosseini, Ali</dc:creator>
    <dc:description>Decisions to deploy IT systems on public Infrastructure-as-a-Service clouds can be complicated as evaluating the benefits, risks and costs of using such clouds is not straightforward. The aim of this project was to investigate the challenges that enterprises face when making system deployment decisions in public clouds, and to develop vendor-neutral tools to inform decision makers during this process. Three tools were developed to support decision makers:&#xD;
1. Cloud Suitability Checklist: a simple list of questions to provide a rapid assessment of the suitability of public IaaS clouds for a specific IT system.&#xD;
2. Benefits and Risks Assessment tool: a spreadsheet that includes the general benefits and risks of using public clouds; this provides a starting point for risk assessment and helps organisations start discussions about cloud adoption.&#xD;
3. Elastic Cost Modelling: a tool that enables decision makers to model their system deployment options in public clouds and forecast their costs. These three tools collectively enable decision makers to investigate the benefits, risks and costs of using public clouds, and effectively support them in making system deployment decisions.&#xD;
Data was collected from five case studies and hundreds of users to evaluate the effectiveness of the tools. This data showed that the cost effectiveness of using public clouds is situation dependent rather than universally less expensive than traditional forms of IT provisioning. Running systems on the cloud using a traditional 'always on' approach can be less cost effective than on-premise servers, and the elastic nature of the cloud has to be considered if costs are to be reduced. Decision makers have to model the variations in resource usage and their systems' deployment options to obtain accurate cost estimates. Performing upfront cost modelling is beneficial as there can be significant cost differences between different cloud providers, and different deployment options within a single cloud. During such modelling exercises, the variations in a system's load (over time) must be taken into account to produce more accurate cost estimates, and the notion of elasticity patterns that is presented in this thesis provides one simple way to do this.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3332">
    <title>Living history with Open Virtual Worlds : Reconstructing St Andrews Cathedral as a stage for historic narrative</title>
    <link>http://hdl.handle.net/10023/3332</link>
    <description>Abstract: St Andrews Cathedral is located on the East Coast of Scotland, construction started in 1160 and spanned Romanesque and Gothic architectural styles. It was consecrated in 1318, four years after the battle of Bannockburn in the presence of King Robert the Bruce. For several hundred years, the Cathedral was one of the most important religious buildings in Europe and the centre of religious life in Scotland. During the Scottish Reformation, John Knox lead reformers in divesting the Cathedral of much of its finery. Thereafter it fell into disuse and decline. Today the impressive remains only hint at the former glory of this important building. Cultural Heritage encompasses physical aspects such as architecture and artifacts along with less tangible culture such as music, songs and stories. Open virtual worlds offer an extensible collaborative environment for developing historic scenes against the background of which material and ephemeral aspects of cultural heritage associated with a site may be explored through engagement with historic narratives. They offer the potential to reconstruct within a 3D computer environment both the physical structures of the past and important aspects of the light, music and life that once filled those structures. Virtual reconstructions enable scenarios to be created where individual pieces of art can be located and appreciated within the audio, visual and spacial contexts for which they were originally created. Bringing together architecture, sculpture, illumination, stained-glass, music, procession and lighting into a scene which can be explored from multiple spatial perspectives enables holistic experience and appreciation. Historic reconstructions may be created upon virtual stages allowing new and engaging Cultural Heritage perspectives to be accessible to diverse audiences. Through the example of St Andrews Cathedral reconstruction this paper presents an example of Open Virtual Worlds as a technology for supporting the creation and use of virtual reconstructions as a platform that promotes understanding of and engagement with Cultural Heritage. The use contexts discussed range from research based exploration of 3D spaces, to primary schools students using the reconstructions as a backdrop for tag. The digital literacies of the audience and goals of the use case impact on the appropriateness of the user interface. A range of interfaces are explored including games controllers, touch screens, tablets that provide location aware views into the model and hands free gesture control systems.</description>
    <dc:date>2012-12-01T00:00:00Z</dc:date>
    <dc:creator>Kennedy, Sarah</dc:creator>
    <dc:creator>Dow, Lisa</dc:creator>
    <dc:creator>Oliver, Iain Angus</dc:creator>
    <dc:creator>Sweetman, Rebecca Jane</dc:creator>
    <dc:creator>Miller, Alan Henry David</dc:creator>
    <dc:creator>Campbell, Anne</dc:creator>
    <dc:creator>Davies, Christopher John</dc:creator>
    <dc:creator>McCaffery, John Philip</dc:creator>
    <dc:creator>Allison, Colin</dc:creator>
    <dc:creator>Green, Daryl</dc:creator>
    <dc:creator>Luxford, Julian Marcus</dc:creator>
    <dc:creator>Fawcett, Richard</dc:creator>
    <dc:description>St Andrews Cathedral is located on the East Coast of Scotland, construction started in 1160 and spanned Romanesque and Gothic architectural styles. It was consecrated in 1318, four years after the battle of Bannockburn in the presence of King Robert the Bruce. For several hundred years, the Cathedral was one of the most important religious buildings in Europe and the centre of religious life in Scotland. During the Scottish Reformation, John Knox lead reformers in divesting the Cathedral of much of its finery. Thereafter it fell into disuse and decline. Today the impressive remains only hint at the former glory of this important building. Cultural Heritage encompasses physical aspects such as architecture and artifacts along with less tangible culture such as music, songs and stories. Open virtual worlds offer an extensible collaborative environment for developing historic scenes against the background of which material and ephemeral aspects of cultural heritage associated with a site may be explored through engagement with historic narratives. They offer the potential to reconstruct within a 3D computer environment both the physical structures of the past and important aspects of the light, music and life that once filled those structures. Virtual reconstructions enable scenarios to be created where individual pieces of art can be located and appreciated within the audio, visual and spacial contexts for which they were originally created. Bringing together architecture, sculpture, illumination, stained-glass, music, procession and lighting into a scene which can be explored from multiple spatial perspectives enables holistic experience and appreciation. Historic reconstructions may be created upon virtual stages allowing new and engaging Cultural Heritage perspectives to be accessible to diverse audiences. Through the example of St Andrews Cathedral reconstruction this paper presents an example of Open Virtual Worlds as a technology for supporting the creation and use of virtual reconstructions as a platform that promotes understanding of and engagement with Cultural Heritage. The use contexts discussed range from research based exploration of 3D spaces, to primary schools students using the reconstructions as a backdrop for tag. The digital literacies of the audience and goals of the use case impact on the appropriateness of the user interface. A range of interfaces are explored including games controllers, touch screens, tablets that provide location aware views into the model and hands free gesture control systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3272">
    <title>Growing the use of Virtual Worlds in education : an OpenSim perspective</title>
    <link>http://hdl.handle.net/10023/3272</link>
    <description>Abstract: The growth in the range of disciplines that Virtual Worlds support for educational purposes is evidenced by recent applications in the fields of cultural heritage, humanitarian aid, space exploration, virtual laboratories in the physical sciences, archaeology, computer science and coastal geography. This growth is due in part to the flexibility of OpenSim, the open source virtual world platform which by adopting Second Life protocols and norms has created a de facto standard for open virtual worlds that is supported by a growing number of third party open source viewers. Yet while this diversity of use-cases is impressive and Virtual Worlds for open learning are highly popular with lecturers and learners alike immersive education remains an essentially niche activity. This paper identifies functional challenges in terms of Management, Network Infrastructure, the Immersive 3D Web and Programmability that must be addressed to enable the wider adoption of Open Virtual Worlds as a routine learning technology platform. We refer to specific use-cases based on OpenSim and abstract generic requirements which should be met to enable the growth in use of Open Virtual Worlds as a mainstream educational facility. A case study of a deployment to support a formal education curriculum and associated informal learning is used to illustrate key points.</description>
    <dc:date>2012-11-25T00:00:00Z</dc:date>
    <dc:creator>Allison, Colin</dc:creator>
    <dc:creator>Campbell, Anne</dc:creator>
    <dc:creator>Davies, Christopher John</dc:creator>
    <dc:creator>Dow, Lisa</dc:creator>
    <dc:creator>Kennedy, Sarah</dc:creator>
    <dc:creator>McCaffery, John Philip</dc:creator>
    <dc:creator>Miller, Alan Henry David</dc:creator>
    <dc:creator>Oliver, Iain Angus</dc:creator>
    <dc:creator>Perera, Galhenage Indika Udaya Shantha</dc:creator>
    <dc:description>The growth in the range of disciplines that Virtual Worlds support for educational purposes is evidenced by recent applications in the fields of cultural heritage, humanitarian aid, space exploration, virtual laboratories in the physical sciences, archaeology, computer science and coastal geography. This growth is due in part to the flexibility of OpenSim, the open source virtual world platform which by adopting Second Life protocols and norms has created a de facto standard for open virtual worlds that is supported by a growing number of third party open source viewers. Yet while this diversity of use-cases is impressive and Virtual Worlds for open learning are highly popular with lecturers and learners alike immersive education remains an essentially niche activity. This paper identifies functional challenges in terms of Management, Network Infrastructure, the Immersive 3D Web and Programmability that must be addressed to enable the wider adoption of Open Virtual Worlds as a routine learning technology platform. We refer to specific use-cases based on OpenSim and abstract generic requirements which should be met to enable the growth in use of Open Virtual Worlds as a mainstream educational facility. A case study of a deployment to support a formal education curriculum and associated informal learning is used to illustrate key points.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3225">
    <title>Using self-reported social networks to improve opportunistic networking</title>
    <link>http://hdl.handle.net/10023/3225</link>
    <description>Abstract: Opportunistic networks provide an ad hoc communication medium without the need for an infrastructure network, by leveraging human encounters and mobile devices. Routing protocols in opportunistic networks frequently rely upon encounter histories to build up meaningful data to use for informed routing decisions. This thesis shows that it is possible to use pre-existing social-network information to improve existing opportunistic routing protocols, and that these self-reported social networks have a particular benefit when used to bootstrap an opportunistic routing protocol. Frequently, opportunistic routing protocols require users to relay messages on behalf of one another: an act that incurs a cost to the relaying node. Nodes may wish to avoid this forwarding cost by not relaying messages. Opportunistic networks need to incentivise participation and discourage the selfish behaviour. This thesis further presents an incentive mechanism that uses self-reported social networks to construct and maintain reputation and trust relationships between participants, and demonstrates its superior performance over existing incentive mechanisms.</description>
    <dc:date>2012-06-19T00:00:00Z</dc:date>
    <dc:creator>Bigwood, Greg</dc:creator>
    <dc:description>Opportunistic networks provide an ad hoc communication medium without the need for an infrastructure network, by leveraging human encounters and mobile devices. Routing protocols in opportunistic networks frequently rely upon encounter histories to build up meaningful data to use for informed routing decisions. This thesis shows that it is possible to use pre-existing social-network information to improve existing opportunistic routing protocols, and that these self-reported social networks have a particular benefit when used to bootstrap an opportunistic routing protocol. Frequently, opportunistic routing protocols require users to relay messages on behalf of one another: an act that incurs a cost to the relaying node. Nodes may wish to avoid this forwarding cost by not relaying messages. Opportunistic networks need to incentivise participation and discourage the selfish behaviour. This thesis further presents an incentive mechanism that uses self-reported social networks to construct and maintain reputation and trust relationships between participants, and demonstrates its superior performance over existing incentive mechanisms.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3205">
    <title>Enabling network mobility support</title>
    <link>http://hdl.handle.net/10023/3205</link>
    <description>Abstract: As computing devices become increasingly portable, it is becoming necessary to support&#xD;
Mobility as a core network functionality. The availability of devices such as smartphones,&#xD;
tablets, laptops as well as wireless network infrastructure is opening up the possibility&#xD;
of using Network Mobility to cater for multiple mobile nodes simultaneously. Network&#xD;
mobility may be useful in a number of mobile scenarios, where a large number of mobile&#xD;
nodes are moving in unison. A number of operational benefits stand to be gained by&#xD;
aggregating these nodes into a single mobile unit.&#xD;
Unfortunately, the current state for network mobility support, especially in terms of network&#xD;
layer protocols, is limited. This is in part due to the inherent complexity of mobile&#xD;
network scenarios, the high cost of testing mobile network protocols in operational environments&#xD;
and the difficulties in implementing such protocols.&#xD;
This thesis looks at how network mobility support may be better enabled by making experimentation&#xD;
with mobile networks more accessible. It shows this by first showing how&#xD;
analytical approaches can be useful in mobile network applications, as they abstract away&#xD;
from experimental details and allow for more straight forward protocol comparisons. It&#xD;
then goes on to look at the tools available to study mobile network protocols, where it&#xD;
introduces and extends an existing tool that uses virtual machines to allow for the study&#xD;
of mobile network protocols. Finally, it demonstrates a practical method in which mobile&#xD;
network support may be easily enabled in a practical setting.</description>
    <dc:date>2012-11-30T00:00:00Z</dc:date>
    <dc:creator>Rehunathan, Devan</dc:creator>
    <dc:description>As computing devices become increasingly portable, it is becoming necessary to support&#xD;
Mobility as a core network functionality. The availability of devices such as smartphones,&#xD;
tablets, laptops as well as wireless network infrastructure is opening up the possibility&#xD;
of using Network Mobility to cater for multiple mobile nodes simultaneously. Network&#xD;
mobility may be useful in a number of mobile scenarios, where a large number of mobile&#xD;
nodes are moving in unison. A number of operational benefits stand to be gained by&#xD;
aggregating these nodes into a single mobile unit.&#xD;
Unfortunately, the current state for network mobility support, especially in terms of network&#xD;
layer protocols, is limited. This is in part due to the inherent complexity of mobile&#xD;
network scenarios, the high cost of testing mobile network protocols in operational environments&#xD;
and the difficulties in implementing such protocols.&#xD;
This thesis looks at how network mobility support may be better enabled by making experimentation&#xD;
with mobile networks more accessible. It shows this by first showing how&#xD;
analytical approaches can be useful in mobile network applications, as they abstract away&#xD;
from experimental details and allow for more straight forward protocol comparisons. It&#xD;
then goes on to look at the tools available to study mobile network protocols, where it&#xD;
introduces and extends an existing tool that uses virtual machines to allow for the study&#xD;
of mobile network protocols. Finally, it demonstrates a practical method in which mobile&#xD;
network support may be easily enabled in a practical setting.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3200">
    <title>Corporate social responsibility reporting in mainland China</title>
    <link>http://hdl.handle.net/10023/3200</link>
    <description>Abstract: Although CSR has been the subject of substantial academic research for more than half a&#xD;
century, the CSR literature is dominated by empirical studies in the industrialized countries.&#xD;
There is limited knowledge on how CSR is perceived and implemented by companies in&#xD;
developing countries. This research is trying to answer those questions: what has been&#xD;
reported in China? Which stakeholder groups are the most important stakeholder groups in&#xD;
China? What is the content of CSR reports in China? And what factors are associated with&#xD;
CSR reporting in China, in terms of culture, political and legal system, ownership, size and&#xD;
industry? Based on a content analysis approach, this paper aims to identify the determinants&#xD;
of corporate social responsibility (CSR) reporting in China using stand-alone reports of the&#xD;
top 500 Chinese companies from 2006 to 2010. It is found that CSR reporting is positive&#xD;
associated with various factors. In addition, companies in environmental sensitive industries&#xD;
tend to report more environmental responsibility information than others. State-Owned&#xD;
Enterprises are not doing better than other types of companies. Laws, regulations or&#xD;
guidelines have little impacts on the reporting in China. Also the government is not one of&#xD;
the most important stakeholders in China. The research results support the stakeholder&#xD;
theory in an emerging market with important and relevant insights for enterprise managers&#xD;
interested in exploiting the reports as a tool to communicate with their stakeholders.</description>
    <dc:date>2012-11-30T00:00:00Z</dc:date>
    <dc:creator>Du, Yaning</dc:creator>
    <dc:description>Although CSR has been the subject of substantial academic research for more than half a&#xD;
century, the CSR literature is dominated by empirical studies in the industrialized countries.&#xD;
There is limited knowledge on how CSR is perceived and implemented by companies in&#xD;
developing countries. This research is trying to answer those questions: what has been&#xD;
reported in China? Which stakeholder groups are the most important stakeholder groups in&#xD;
China? What is the content of CSR reports in China? And what factors are associated with&#xD;
CSR reporting in China, in terms of culture, political and legal system, ownership, size and&#xD;
industry? Based on a content analysis approach, this paper aims to identify the determinants&#xD;
of corporate social responsibility (CSR) reporting in China using stand-alone reports of the&#xD;
top 500 Chinese companies from 2006 to 2010. It is found that CSR reporting is positive&#xD;
associated with various factors. In addition, companies in environmental sensitive industries&#xD;
tend to report more environmental responsibility information than others. State-Owned&#xD;
Enterprises are not doing better than other types of companies. Laws, regulations or&#xD;
guidelines have little impacts on the reporting in China. Also the government is not one of&#xD;
the most important stakeholders in China. The research results support the stakeholder&#xD;
theory in an emerging market with important and relevant insights for enterprise managers&#xD;
interested in exploiting the reports as a tool to communicate with their stakeholders.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3199">
    <title>The architecture of an autonomic, resource-aware, workstation-based distributed database system</title>
    <link>http://hdl.handle.net/10023/3199</link>
    <description>Abstract: Distributed software systems that are designed to run over workstation machines&#xD;
within organisations are termed workstation-based. Workstation-based systems are&#xD;
characterised by dynamically changing sets of machines that are used primarily for&#xD;
other, user-centric tasks. They must be able to adapt to and utilize spare capacity when&#xD;
and where it is available, and ensure that the non-availability of an individual machine&#xD;
does not affect the availability of the system.&#xD;
This thesis focuses on the requirements and design of a workstation-based database&#xD;
system, which is motivated by an analysis of existing database architectures that are&#xD;
typically run over static, specially provisioned sets of machines.&#xD;
A typical clustered database system — one that is run over a number of specially&#xD;
provisioned machines — executes queries interactively, returning a synchronous&#xD;
response to applications, with its data made durable and resilient to the failure of&#xD;
machines. There are no existing workstation-based databases. Furthermore, other&#xD;
workstation-based systems do not attempt to achieve the requirements of interactivity&#xD;
and durability, because they are typically used to execute asynchronous batch&#xD;
processing jobs that tolerate data loss — results can be re-computed. These systems use&#xD;
external servers to store the final results of computations rather than workstation&#xD;
machines.&#xD;
This thesis describes the design and implementation of a workstation-based database&#xD;
system and investigates its viability by evaluating its performance against existing&#xD;
clustered database systems and testing its availability during machine failures.</description>
    <dc:date>2012-11-30T00:00:00Z</dc:date>
    <dc:creator>Macdonald, Angus</dc:creator>
    <dc:description>Distributed software systems that are designed to run over workstation machines&#xD;
within organisations are termed workstation-based. Workstation-based systems are&#xD;
characterised by dynamically changing sets of machines that are used primarily for&#xD;
other, user-centric tasks. They must be able to adapt to and utilize spare capacity when&#xD;
and where it is available, and ensure that the non-availability of an individual machine&#xD;
does not affect the availability of the system.&#xD;
This thesis focuses on the requirements and design of a workstation-based database&#xD;
system, which is motivated by an analysis of existing database architectures that are&#xD;
typically run over static, specially provisioned sets of machines.&#xD;
A typical clustered database system — one that is run over a number of specially&#xD;
provisioned machines — executes queries interactively, returning a synchronous&#xD;
response to applications, with its data made durable and resilient to the failure of&#xD;
machines. There are no existing workstation-based databases. Furthermore, other&#xD;
workstation-based systems do not attempt to achieve the requirements of interactivity&#xD;
and durability, because they are typically used to execute asynchronous batch&#xD;
processing jobs that tolerate data loss — results can be re-computed. These systems use&#xD;
external servers to store the final results of computations rather than workstation&#xD;
machines.&#xD;
This thesis describes the design and implementation of a workstation-based database&#xD;
system and investigates its viability by evaluating its performance against existing&#xD;
clustered database systems and testing its availability during machine failures.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3193">
    <title>Cross-display attention switching in mobile interaction with large displays</title>
    <link>http://hdl.handle.net/10023/3193</link>
    <description>Abstract: Mobile devices equipped with features (e.g., camera, network connectivity and media player) are increasingly being used for different tasks such as web browsing, document reading and photography. While the portability of mobile devices makes them desirable for pervasive access to information, their small screen real-estate often imposes restrictions on the amount of information that can be displayed and manipulated on them. On the other hand, large displays have become commonplace in many outdoor as well as indoor environments. While they provide an efficient way of presenting and disseminating information, they provide little support for digital interactivity or physical accessibility. Researchers argue that mobile phones provide an efficient and portable way of interacting with large displays, and the latter can overcome the limitations of the small screens of mobile devices by providing a larger presentation and interaction space. However, distributing user interface (UI) elements across a mobile device and a large display can cause switching of visual attention and that may affect task performance. &#xD;
&#xD;
This thesis specifically explores how the switching of visual attention across a handheld mobile device and a vertical large display can affect a single user's task performance during mobile interaction with large displays. It introduces a taxonomy based on the factors associated with the visual arrangement of Multi Display User Interfaces (MDUIs) that can influence visual attention switching during interaction with MDUIs. It presents an empirical analysis of the effects of different distributions of input and output across mobile and large displays on the user's task performance, subjective workload and preference in the multiple-widget selection task, and in visual search tasks with maps, texts and photos. Experimental results show that the selection of multiple widgets replicated on the mobile device as well as on the large display, versus those shown only on the large display, is faster despite the cost of initial attention switching in the former. On the other hand, a hybrid UI configuration where the visual output is distributed across the mobile and large displays is the worst, or equivalent to the worst, configuration in all the visual search tasks. A mobile device-controlled large display configuration performs best in the map search task and equal to best (i.e., tied with a mobile-only configuration) in text- and photo-search tasks.</description>
    <dc:date>2012-11-30T00:00:00Z</dc:date>
    <dc:creator>Rashid, Umar</dc:creator>
    <dc:description>Mobile devices equipped with features (e.g., camera, network connectivity and media player) are increasingly being used for different tasks such as web browsing, document reading and photography. While the portability of mobile devices makes them desirable for pervasive access to information, their small screen real-estate often imposes restrictions on the amount of information that can be displayed and manipulated on them. On the other hand, large displays have become commonplace in many outdoor as well as indoor environments. While they provide an efficient way of presenting and disseminating information, they provide little support for digital interactivity or physical accessibility. Researchers argue that mobile phones provide an efficient and portable way of interacting with large displays, and the latter can overcome the limitations of the small screens of mobile devices by providing a larger presentation and interaction space. However, distributing user interface (UI) elements across a mobile device and a large display can cause switching of visual attention and that may affect task performance. &#xD;
&#xD;
This thesis specifically explores how the switching of visual attention across a handheld mobile device and a vertical large display can affect a single user's task performance during mobile interaction with large displays. It introduces a taxonomy based on the factors associated with the visual arrangement of Multi Display User Interfaces (MDUIs) that can influence visual attention switching during interaction with MDUIs. It presents an empirical analysis of the effects of different distributions of input and output across mobile and large displays on the user's task performance, subjective workload and preference in the multiple-widget selection task, and in visual search tasks with maps, texts and photos. Experimental results show that the selection of multiple widgets replicated on the mobile device as well as on the large display, versus those shown only on the large display, is faster despite the cost of initial attention switching in the former. On the other hand, a hybrid UI configuration where the visual output is distributed across the mobile and large displays is the worst, or equivalent to the worst, configuration in all the visual search tasks. A mobile device-controlled large display configuration performs best in the map search task and equal to best (i.e., tied with a mobile-only configuration) in text- and photo-search tasks.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3176">
    <title>Socio-technical analysis of system-of-systems using responsibility modelling</title>
    <link>http://hdl.handle.net/10023/3176</link>
    <description>Abstract: Society is challenging systems engineers by demanding increasingly complex and integrated IT systems (Northrop et al., 2006; RAE, 2004) e.g. integrated&#xD;
enterprise resource planning systems, integrated healthcare systems and business&#xD;
critical services provisioned using cloud based resources. These types of IT&#xD;
system are often systems-of-systems (SoS). That is to say they are composed of&#xD;
multiple systems that are operated and managed by independent parties and are&#xD;
distributed across multiple organisational boundaries, geographies or legal&#xD;
jurisdictions (Maier, 1998).&#xD;
SoS are notorious for becoming problematic due to interconnected technical and&#xD;
social issues. Practitioners claim that they are ill equipped to deal with the sociotechnical&#xD;
challenges posed by system-of-systems. One of these challenges is to&#xD;
identify the socio-technical threats associated with building, operating and&#xD;
managing systems whose parts are distributed across organisational boundaries.&#xD;
Another is how to troubleshoot these systems when they exhibit undesirable&#xD;
behaviour.&#xD;
This thesis aims to provide a modelling abstraction and an extensible technique&#xD;
that enables practitioners to identify socio-technical threats prior to&#xD;
implementation and troubleshoot SoS post-implementation. This thesis evaluates&#xD;
existing modelling abstractions for their suitability to represent SoS and suggests&#xD;
that an agent-responsibility based modelling abstraction may provide a practical&#xD;
and scalable way of representing SoS for socio-technical threat identification and&#xD;
troubleshooting. The practicality and scalability of the abstraction is explored&#xD;
through the use of case studies that motivate the extension of existing&#xD;
responsibility-based techniques so that new classes of system (coalitions-of-systems)&#xD;
and new classes of threat (agent-related threats) may be analysed.&#xD;
This thesis concludes that the notion of ‘responsibility’ is a promising abstraction&#xD;
for representing and analysing systems that are composed of parts that are&#xD;
independently managed and maintained by agents spanning multiple&#xD;
organisational boundaries e.g. systems-of-systems, enterprise-scale systems.</description>
    <dc:date>2012-01-01T00:00:00Z</dc:date>
    <dc:creator>Greenwood, David</dc:creator>
    <dc:description>Society is challenging systems engineers by demanding increasingly complex and integrated IT systems (Northrop et al., 2006; RAE, 2004) e.g. integrated&#xD;
enterprise resource planning systems, integrated healthcare systems and business&#xD;
critical services provisioned using cloud based resources. These types of IT&#xD;
system are often systems-of-systems (SoS). That is to say they are composed of&#xD;
multiple systems that are operated and managed by independent parties and are&#xD;
distributed across multiple organisational boundaries, geographies or legal&#xD;
jurisdictions (Maier, 1998).&#xD;
SoS are notorious for becoming problematic due to interconnected technical and&#xD;
social issues. Practitioners claim that they are ill equipped to deal with the sociotechnical&#xD;
challenges posed by system-of-systems. One of these challenges is to&#xD;
identify the socio-technical threats associated with building, operating and&#xD;
managing systems whose parts are distributed across organisational boundaries.&#xD;
Another is how to troubleshoot these systems when they exhibit undesirable&#xD;
behaviour.&#xD;
This thesis aims to provide a modelling abstraction and an extensible technique&#xD;
that enables practitioners to identify socio-technical threats prior to&#xD;
implementation and troubleshoot SoS post-implementation. This thesis evaluates&#xD;
existing modelling abstractions for their suitability to represent SoS and suggests&#xD;
that an agent-responsibility based modelling abstraction may provide a practical&#xD;
and scalable way of representing SoS for socio-technical threat identification and&#xD;
troubleshooting. The practicality and scalability of the abstraction is explored&#xD;
through the use of case studies that motivate the extension of existing&#xD;
responsibility-based techniques so that new classes of system (coalitions-of-systems)&#xD;
and new classes of threat (agent-related threats) may be analysed.&#xD;
This thesis concludes that the notion of ‘responsibility’ is a promising abstraction&#xD;
for representing and analysing systems that are composed of parts that are&#xD;
independently managed and maintained by agents spanning multiple&#xD;
organisational boundaries e.g. systems-of-systems, enterprise-scale systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3175">
    <title>Interfacing Coq + SSReflect with GAP</title>
    <link>http://hdl.handle.net/10023/3175</link>
    <description>Abstract: We report on an extendable implementation of the communication interface connecting Coq proof assistant to the computational algebra system GAP using the Symbolic Computation Software Composability Protocol (SCSCP). It allows Coq to issue OpenMath requests to a local or remote GAP instances and represent server responses as Coq terms.
Description: Presentation slides and preprint both provided by author. Preprint published in Electronic Notes in Theoretical Computer Science: Proceedings of the 9th International Workshop On User Interfaces for Theorem Provers (UITP10).</description>
    <dc:date>2012-09-19T00:00:00Z</dc:date>
    <dc:creator>Komendantsky, Vladimir</dc:creator>
    <dc:creator>Konovalov, Alexander</dc:creator>
    <dc:creator>Linton, Stephen Alexander</dc:creator>
    <dc:description>We report on an extendable implementation of the communication interface connecting Coq proof assistant to the computational algebra system GAP using the Symbolic Computation Software Composability Protocol (SCSCP). It allows Coq to issue OpenMath requests to a local or remote GAP instances and represent server responses as Coq terms.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3170">
    <title>Collaborative and evolutionary ontology development &amp; its application in IM system for enhanced presence</title>
    <link>http://hdl.handle.net/10023/3170</link>
    <description>Abstract: This research contributes to the field of ontology-based semantic matching techniques and also to the field of Instant Messaging (IM) based enhanced presence. It aims to achieve a mutually beneficial development of two fields through interactions in their use of data and their functionality.&#xD;
    With respect to semantic matching this research has developed a collaborative and self-evolutionary approach based on user involvement in order to overcome disadvantages of traditional ontology-based approaches. At the same time, enhanced semantic matching algorithms were also explored and developed to achieve better performance when searching and querying through the ontology. In order to realize this automatic, dynamic and collaborative approach, a Jabber-based IM system was built to support its development with specific data and to evaluate its performance. In the prototype of the system, Computer Science area is selected to be the domain of the ontology in order to demonstrate the practicability of the new approach.&#xD;
    With respect to enhanced presence an efficient semantic-based contacts search engine which can feature context-based search ranking is provided to support academic researchers. It is especially designed to help new academic researchers to find potential contacts who share a common research interest. It enriches the IM system’s presence information, and helps the user to pick the most suitable contacts and conveniently organize meetings or co-operating with others.&#xD;
    Consequently, this research improves the efficiency of users’ academic researching, and extends users’ relationship radius during their academic research careers. The contributions are particularly highlighted by the comprehensive support during the academic user’s self-educational process.</description>
    <dc:date>2012-08-28T00:00:00Z</dc:date>
    <dc:creator>Zhai, Ying</dc:creator>
    <dc:description>This research contributes to the field of ontology-based semantic matching techniques and also to the field of Instant Messaging (IM) based enhanced presence. It aims to achieve a mutually beneficial development of two fields through interactions in their use of data and their functionality.&#xD;
    With respect to semantic matching this research has developed a collaborative and self-evolutionary approach based on user involvement in order to overcome disadvantages of traditional ontology-based approaches. At the same time, enhanced semantic matching algorithms were also explored and developed to achieve better performance when searching and querying through the ontology. In order to realize this automatic, dynamic and collaborative approach, a Jabber-based IM system was built to support its development with specific data and to evaluate its performance. In the prototype of the system, Computer Science area is selected to be the domain of the ontology in order to demonstrate the practicability of the new approach.&#xD;
    With respect to enhanced presence an efficient semantic-based contacts search engine which can feature context-based search ranking is provided to support academic researchers. It is especially designed to help new academic researchers to find potential contacts who share a common research interest. It enriches the IM system’s presence information, and helps the user to pick the most suitable contacts and conveniently organize meetings or co-operating with others.&#xD;
    Consequently, this research improves the efficiency of users’ academic researching, and extends users’ relationship radius during their academic research careers. The contributions are particularly highlighted by the comprehensive support during the academic user’s self-educational process.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3155">
    <title>Large-scale complex IT systems</title>
    <link>http://hdl.handle.net/10023/3155</link>
    <description>Abstract: This paper explores the issues around the construction of large-scale complex systems which are built as 'systems of systems' and suggests that there are fundamental reasons, derived from the inherent complexity in these systems, why our current software engineering methods and techniques cannot be scaled up to cope with the engineering challenges of constructing such systems. It then goes on to propose a research and education agenda for software engineering that identifies the major challenges and issues in the development of large-scale complex, software-intensive systems. Central to this is the notion that we cannot separate software from the socio-technical environment in which it is used.
Description: 12 pages, 2 figures</description>
    <dc:date>2012-07-01T00:00:00Z</dc:date>
    <dc:creator>Sommerville, Ian</dc:creator>
    <dc:creator>Cliff, Dave</dc:creator>
    <dc:creator>Calinescu, Radu</dc:creator>
    <dc:creator>Keen, Justin</dc:creator>
    <dc:creator>Kelly, Tim</dc:creator>
    <dc:creator>Kwiatkowska, Marta</dc:creator>
    <dc:creator>McDermid, John</dc:creator>
    <dc:creator>Paige, Richard</dc:creator>
    <dc:description>This paper explores the issues around the construction of large-scale complex systems which are built as 'systems of systems' and suggests that there are fundamental reasons, derived from the inherent complexity in these systems, why our current software engineering methods and techniques cannot be scaled up to cope with the engineering challenges of constructing such systems. It then goes on to propose a research and education agenda for software engineering that identifies the major challenges and issues in the development of large-scale complex, software-intensive systems. Central to this is the notion that we cannot separate software from the socio-technical environment in which it is used.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3090">
    <title>Adaptive network traffic management for multi user virtual environments</title>
    <link>http://hdl.handle.net/10023/3090</link>
    <description>Abstract: Multi User Virtual Environments (MUVE) are a new class of Internet application with a significant user base. This  thesis adds to our understanding of how MUVE network traffic fits into the mix of Internet traffic, and how this relates to the application's needs.&#xD;
&#xD;
MUVEs differ from established Internet traffic types in their requirements from  the network. They differ from traditional data traffic in that they have soft real-time constraints, from game traffic in that their bandwidth requirements are higher, and from audio and video streaming traffic in that their data streams can be decomposed into elements that require different qualities of service. This work shows how real-time adaptive measurement  based congestion control can be applied to MUVE streams so that they can be made more&#xD;
responsive to changes in network  conditions than other real-time traffic and existing MUVE clients. It is shown that a combination of adaptive congestion control and  differential Quality of Service (QoS)&#xD;
can increase the range of conditions under  which MUVEs both get sufficient bandwidth and are Transport Control Protocol (TCP) fair.&#xD;
&#xD;
The  design, implementation and evaluation of an adaptive traffic management system is described. The system has been implemented in a modified client, which allows the MUVE to be made TCP fair without changing the server.</description>
    <dc:date>2011-11-30T00:00:00Z</dc:date>
    <dc:creator>Oliver, Iain Angus</dc:creator>
    <dc:description>Multi User Virtual Environments (MUVE) are a new class of Internet application with a significant user base. This  thesis adds to our understanding of how MUVE network traffic fits into the mix of Internet traffic, and how this relates to the application's needs.&#xD;
&#xD;
MUVEs differ from established Internet traffic types in their requirements from  the network. They differ from traditional data traffic in that they have soft real-time constraints, from game traffic in that their bandwidth requirements are higher, and from audio and video streaming traffic in that their data streams can be decomposed into elements that require different qualities of service. This work shows how real-time adaptive measurement  based congestion control can be applied to MUVE streams so that they can be made more&#xD;
responsive to changes in network  conditions than other real-time traffic and existing MUVE clients. It is shown that a combination of adaptive congestion control and  differential Quality of Service (QoS)&#xD;
can increase the range of conditions under  which MUVEs both get sufficient bandwidth and are Transport Control Protocol (TCP) fair.&#xD;
&#xD;
The  design, implementation and evaluation of an adaptive traffic management system is described. The system has been implemented in a modified client, which allows the MUVE to be made TCP fair without changing the server.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3066">
    <title>Visual ageing of human faces in three dimensions using morphable models and projection to latent structures</title>
    <link>http://hdl.handle.net/10023/3066</link>
    <description>Abstract: We present an approach to synthesising the effects of ageing on human face images using three-dimensional modelling. We extract a set of three dimensional face models from a set of two-dimensional face images by fitting a Morphable Model. We propose a method to age these face models using Partial Least Squares to extract from the data-set those factors most related to ageing. These ageing related factors are used to train an individually weighted linear model. We show that this is an effective means of producing an aged face image and compare this method to two other linear ageing methods for ageing face models. This is demonstrated both quantitatively and with perceptual evaluation using human raters.</description>
    <dc:date>2009-02-01T00:00:00Z</dc:date>
    <dc:creator>Hunter, David William</dc:creator>
    <dc:creator>Tiddeman, Bernard Paul</dc:creator>
    <dc:description>We present an approach to synthesising the effects of ageing on human face images using three-dimensional modelling. We extract a set of three dimensional face models from a set of two-dimensional face images by fitting a Morphable Model. We propose a method to age these face models using Partial Least Squares to extract from the data-set those factors most related to ageing. These ageing related factors are used to train an individually weighted linear model. We show that this is an effective means of producing an aged face image and compare this method to two other linear ageing methods for ageing face models. This is demonstrated both quantitatively and with perceptual evaluation using human raters.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3057">
    <title>Self-managed distributed mediation networks</title>
    <link>http://hdl.handle.net/10023/3057</link>
    <description>Abstract: A distributed mediation network and method of employing such is provided, having a plurality of different types of network module. Each module has a non-reciprocal path therethrough for network traffic and the distribution of network traffic across the network is managed by an autonomic control plane.</description>
    <dc:date>2008-01-17T00:00:00Z</dc:date>
    <dc:description>A distributed mediation network and method of employing such is provided, having a plurality of different types of network module. Each module has a non-reciprocal path therethrough for network traffic and the distribution of network traffic across the network is managed by an autonomic control plane.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/3055">
    <title>Requirements for educational support tools in Virtual Worlds</title>
    <link>http://hdl.handle.net/10023/3055</link>
    <description>Abstract: Virtual Worlds have been used for online gaming, socialising, business advertising and education. As the educational uses become more sophisticated from early information advertising and teaching resources to simulated laboratory and scenarios, it is necessary to determine requirements for tools and virtual systems to achieve the optimal support possible. This paper discusses the current educational uses of Virtual Worlds and applies this to a set of support requirements derived for an evaluated support tool for learning to program. The result is a layered approach, or checklist, to support learning and evaluation for effective and adaptive online educational support tools including virtual world educational systems.
Description: Paper number 65</description>
    <dc:date>2012-04-18T00:00:00Z</dc:date>
    <dc:creator>Duncan, Ishbel Mary Macdonald</dc:creator>
    <dc:creator>Coull, Natalie, J</dc:creator>
    <dc:description>Virtual Worlds have been used for online gaming, socialising, business advertising and education. As the educational uses become more sophisticated from early information advertising and teaching resources to simulated laboratory and scenarios, it is necessary to determine requirements for tools and virtual systems to achieve the optimal support possible. This paper discusses the current educational uses of Virtual Worlds and applies this to a set of support requirements derived for an evaluated support tool for learning to program. The result is a layered approach, or checklist, to support learning and evaluation for effective and adaptive online educational support tools including virtual world educational systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2841">
    <title>On algorithm selection, with an application to combinatorial search problems</title>
    <link>http://hdl.handle.net/10023/2841</link>
    <description>Abstract: The Algorithm Selection Problem is to select the most appropriate way for solving a problem given a choice of different ways. Some of the most prominent and successful applications come from Artificial Intelligence and in particular combinatorial search problems. Machine Learning has established itself as the de facto way of tackling the Algorithm Selection Problem. Yet even after a decade of intensive research, there are no established guidelines as to what kind of Machine Learning to use and how.&#xD;
&#xD;
This dissertation presents an overview of the field of Algorithm Selection and associated research and highlights the fundamental questions left open and problems facing practitioners. In a series of case studies, it underlines the difficulty of doing Algorithm Selection in practice and tackles issues related to this. The case studies apply Algorithm Selection techniques to new problem domains and show how to achieve significant performance improvements. Lazy learning in constraint solving and the implementation of the alldifferent constraint are the areas in which we improve on the performance of current state of the art systems. The case studies furthermore provide empirical evidence for the effectiveness of using the misclassification penalty as an input to Machine Learning.&#xD;
&#xD;
After having established the difficulty, we present an effective technique for reducing it. Machine Learning ensembles are a way of reducing the background knowledge and experimentation required from the researcher while increasing the robustness of the system. Ensembles do not only decrease the difficulty, but can also increase the performance of Algorithm Selection systems. They are used to much the same ends in Machine Learning itself.&#xD;
&#xD;
We finally tackle one of the great remaining challenges of Algorithm Selection -- which Machine Learning technique to use in practice. Through a large-scale empirical evaluation on diverse data taken from Algorithm Selection applications in the literature, we establish recommendations for Machine Learning algorithms that are likely to perform well in Algorithm Selection for combinatorial search problems. The recommendations are based on strong empirical evidence and additional statistical simulations.&#xD;
&#xD;
The research presented in this dissertation significantly reduces the knowledge threshold for researchers who want to perform Algorithm Selection in practice. It makes major contributions to the field of Algorithm Selection by investigating fundamental issues that have been largely ignored by the research community so far.</description>
    <dc:date>2012-06-20T00:00:00Z</dc:date>
    <dc:creator>Kotthoff, Lars</dc:creator>
    <dc:description>The Algorithm Selection Problem is to select the most appropriate way for solving a problem given a choice of different ways. Some of the most prominent and successful applications come from Artificial Intelligence and in particular combinatorial search problems. Machine Learning has established itself as the de facto way of tackling the Algorithm Selection Problem. Yet even after a decade of intensive research, there are no established guidelines as to what kind of Machine Learning to use and how.&#xD;
&#xD;
This dissertation presents an overview of the field of Algorithm Selection and associated research and highlights the fundamental questions left open and problems facing practitioners. In a series of case studies, it underlines the difficulty of doing Algorithm Selection in practice and tackles issues related to this. The case studies apply Algorithm Selection techniques to new problem domains and show how to achieve significant performance improvements. Lazy learning in constraint solving and the implementation of the alldifferent constraint are the areas in which we improve on the performance of current state of the art systems. The case studies furthermore provide empirical evidence for the effectiveness of using the misclassification penalty as an input to Machine Learning.&#xD;
&#xD;
After having established the difficulty, we present an effective technique for reducing it. Machine Learning ensembles are a way of reducing the background knowledge and experimentation required from the researcher while increasing the robustness of the system. Ensembles do not only decrease the difficulty, but can also increase the performance of Algorithm Selection systems. They are used to much the same ends in Machine Learning itself.&#xD;
&#xD;
We finally tackle one of the great remaining challenges of Algorithm Selection -- which Machine Learning technique to use in practice. Through a large-scale empirical evaluation on diverse data taken from Algorithm Selection applications in the literature, we establish recommendations for Machine Learning algorithms that are likely to perform well in Algorithm Selection for combinatorial search problems. The recommendations are based on strong empirical evidence and additional statistical simulations.&#xD;
&#xD;
The research presented in this dissertation significantly reduces the knowledge threshold for researchers who want to perform Algorithm Selection in practice. It makes major contributions to the field of Algorithm Selection by investigating fundamental issues that have been largely ignored by the research community so far.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2761">
    <title>Facebook or fakebook? : The effects of simulated mobile applications on simulated mobile networks</title>
    <link>http://hdl.handle.net/10023/2761</link>
    <description>Abstract: The credibility of mobile ad hoc network simulations depends on accurate characterisations of user behaviour, e.g., mobility and application usage. If simulated nodes communicate at different rates to real nodes, or move in an unrealistic fashion, this may have a large impact on the network protocols being simulated and tested. Many future mobile network protocols, however, may also depend on future mobile applications. Different applications may be used at different rates or in different manners. But how can we determine realistic user behaviour for such applications that do not yet exist? One common solution is again simulation, but this time simulation of these future applications. This paper examines differences in user behaviour between a real and simulated mobile social networking application through a user study (n=80). We show that there are distinct differences in privacy behaviour between the real and simulated groups. We then simulate a mobile opportunistic network application using two real-world traces to demonstrate the impact of using real and simulated applications. We find large differences between using real and synthetic models of privacy behaviour, but smaller differences between models derived from the real and simulated applications.
Description: This work was supported by the Engineering and Physical Sciences Research Council [grant number EP/G002606/1].</description>
    <dc:date>2012-01-01T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain Siraj</dc:creator>
    <dc:creator>Ben Abdesslem, Fehmi</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>The credibility of mobile ad hoc network simulations depends on accurate characterisations of user behaviour, e.g., mobility and application usage. If simulated nodes communicate at different rates to real nodes, or move in an unrealistic fashion, this may have a large impact on the network protocols being simulated and tested. Many future mobile network protocols, however, may also depend on future mobile applications. Different applications may be used at different rates or in different manners. But how can we determine realistic user behaviour for such applications that do not yet exist? One common solution is again simulation, but this time simulation of these future applications. This paper examines differences in user behaviour between a real and simulated mobile social networking application through a user study (n=80). We show that there are distinct differences in privacy behaviour between the real and simulated groups. We then simulate a mobile opportunistic network application using two real-world traces to demonstrate the impact of using real and simulated applications. We find large differences between using real and synthetic models of privacy behaviour, but smaller differences between models derived from the real and simulated applications.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2607">
    <title>Mongoose : throughput redistributing virtual world</title>
    <link>http://hdl.handle.net/10023/2607</link>
    <description>Abstract: Metaverses provide a framework for developing distributed 3D Internet applications where users gain presence through the proxy of an avatar. They offer much of the engagement of on line 3D games but support heterogeneous applications. From the network perspective metaverses are similar to games in that timeliness is important but differ in that their traffic is less regular and requires more bandwidth. The motivation for our study flows from using virtual worlds to support experiential learning and to promote cultural heritage; the applicability of the results is wider. The responsiveness of the system is effected by interactions between avatar activity, application traffic regulation and network conditions. Through measurement and analysis current virtual world traffic regulation is evaluated and compared with Transmission Control Protocol fair rate. The measurement study motivates the design of Mongoose, which adds measurement based packet regulation to open virtual world clients and servers. Mongoose combines isolating distinct functional components with efficient use of network esources and fairness to other traffic.</description>
    <dc:date>2012-08-30T00:00:00Z</dc:date>
    <dc:creator>Oliver, Iain Angus</dc:creator>
    <dc:creator>Miller, Alan Henry David</dc:creator>
    <dc:creator>Allison, Colin</dc:creator>
    <dc:description>Metaverses provide a framework for developing distributed 3D Internet applications where users gain presence through the proxy of an avatar. They offer much of the engagement of on line 3D games but support heterogeneous applications. From the network perspective metaverses are similar to games in that timeliness is important but differ in that their traffic is less regular and requires more bandwidth. The motivation for our study flows from using virtual worlds to support experiential learning and to promote cultural heritage; the applicability of the results is wider. The responsiveness of the system is effected by interactions between avatar activity, application traffic regulation and network conditions. Through measurement and analysis current virtual world traffic regulation is evaluated and compared with Transmission Control Protocol fair rate. The measurement study motivates the design of Mongoose, which adds measurement based packet regulation to open virtual world clients and servers. Mongoose combines isolating distinct functional components with efficient use of network esources and fairness to other traffic.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2540">
    <title>Load balancing of irregular parallel applications on heterogeneous computing environments</title>
    <link>http://hdl.handle.net/10023/2540</link>
    <description>Abstract: Large-scale heterogeneous distributed computing environments (such as Computational&#xD;
Grids and Clouds) offer the promise of access to a vast amount of computing&#xD;
resources at a relatively low cost. In order to ease the application development and&#xD;
deployment on such complex environments, high-level parallel programming languages&#xD;
exist that need to be supported by sophisticated runtime systems. One of the main&#xD;
problems that these runtime systems need to address is dynamic load balancing that&#xD;
ensures that no resources in the environment are underutilised or overloaded with&#xD;
work.&#xD;
This thesis deals with the problem of obtaining good speedups for irregular applications&#xD;
on heterogeneous distributed computing environments. It focuses on workstealing&#xD;
techniques that can be used for load balancing during the execution of irregular&#xD;
applications. It specifically addresses two problems that arise during work-stealing:&#xD;
where thieves should look for work during the application execution and how victims&#xD;
should respond to steal attempts.&#xD;
In particular, we describe and implement a new Feudal Stealing algorithm and&#xD;
also we describe and implement new granularity-driven task selection policies in the&#xD;
SCALES simulator, which is a work-stealing simulator developed for this thesis. In addition,&#xD;
we present the comprehensive evaluation of the Feudal Stealing algorithm and&#xD;
the granularity-driven task selection policies using the simulations of a large class of&#xD;
regular and irregular parallel applications on a wide range of computing environments.&#xD;
We show how the Feudal Stealing algorithm and the granularity-driven task selection&#xD;
policies bring significant improvements in speedups of irregular applications, compared&#xD;
to the state-of-the-art work-stealing algorithms. Furthermore, we also present the implementation&#xD;
of the task selection policies in the Grid-GUM runtime system [AZ06]&#xD;
for Glasgow Parallel Haskell (GpH) [THLPJ98], in addition to the implementation in&#xD;
SCALES, and we also present the evaluation of this implementation on a large set of&#xD;
synthetic applications.</description>
    <dc:date>2012-01-01T00:00:00Z</dc:date>
    <dc:creator>Janjic, Vladimir</dc:creator>
    <dc:description>Large-scale heterogeneous distributed computing environments (such as Computational&#xD;
Grids and Clouds) offer the promise of access to a vast amount of computing&#xD;
resources at a relatively low cost. In order to ease the application development and&#xD;
deployment on such complex environments, high-level parallel programming languages&#xD;
exist that need to be supported by sophisticated runtime systems. One of the main&#xD;
problems that these runtime systems need to address is dynamic load balancing that&#xD;
ensures that no resources in the environment are underutilised or overloaded with&#xD;
work.&#xD;
This thesis deals with the problem of obtaining good speedups for irregular applications&#xD;
on heterogeneous distributed computing environments. It focuses on workstealing&#xD;
techniques that can be used for load balancing during the execution of irregular&#xD;
applications. It specifically addresses two problems that arise during work-stealing:&#xD;
where thieves should look for work during the application execution and how victims&#xD;
should respond to steal attempts.&#xD;
In particular, we describe and implement a new Feudal Stealing algorithm and&#xD;
also we describe and implement new granularity-driven task selection policies in the&#xD;
SCALES simulator, which is a work-stealing simulator developed for this thesis. In addition,&#xD;
we present the comprehensive evaluation of the Feudal Stealing algorithm and&#xD;
the granularity-driven task selection policies using the simulations of a large class of&#xD;
regular and irregular parallel applications on a wide range of computing environments.&#xD;
We show how the Feudal Stealing algorithm and the granularity-driven task selection&#xD;
policies bring significant improvements in speedups of irregular applications, compared&#xD;
to the state-of-the-art work-stealing algorithms. Furthermore, we also present the implementation&#xD;
of the task selection policies in the Grid-GUM runtime system [AZ06]&#xD;
for Glasgow Parallel Haskell (GpH) [THLPJ98], in addition to the implementation in&#xD;
SCALES, and we also present the evaluation of this implementation on a large set of&#xD;
synthetic applications.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2533">
    <title>Numerical evidence for phase transitions of NP-complete problems for instances drawn from Lévy-stable distributions</title>
    <link>http://hdl.handle.net/10023/2533</link>
    <description>Abstract: Random NP-Complete problems have come under study as an important tool used in the analysis&#xD;
of optimization algorithms and help in our understanding of how to properly address issues of&#xD;
computational intractability.&#xD;
In this thesis, the Number Partition Problem and the Hamiltonian Cycle Problem are taken as&#xD;
representative NP-Complete classes. Numerical evidence is presented for a phase transition in the&#xD;
probability of solution when a modified Lévy-Stable distribution is used in instance creation for each.&#xD;
Numerical evidence is presented that show hard random instances exist near the critical threshold&#xD;
for the Hamiltonian Cycle problem. A choice of order parameter for the Number Partition Problem’s&#xD;
phase transition is also given.&#xD;
Finding Hamiltonian Cycles in Erdös-Rényi random graphs is well known to have almost sure polynomial time algorithms, even near the critical threshold. To the author’s knowledge, the graph&#xD;
ensemble presented is the first candidate, without specific graph structure built in, to generate&#xD;
graphs whose Hamiltonicity is intrinsically hard to determine. Random graphs are chosen via their&#xD;
degree sequence generated from a discretized form of Lévy-Stable distributions. Graphs chosen from&#xD;
this distribution still show a phase transition and appear to have a pickup in search cost for the&#xD;
algorithms considered. Search cost is highly dependent on the particular algorithm used and the&#xD;
graph ensemble is presented only as a potential graph ensemble to generate intrinsically hard graphs&#xD;
that are difficult to test for Hamiltonicity.&#xD;
Number Partition Problem instances are created by choosing each element in the list from a modified&#xD;
Lévy-Stable distribution. The Number Partition Problem has no known good approximation algorithms and so only numerical evidence to show the phase transition is provided without considerable&#xD;
focus on pickup in search cost for the solvers used. The failure of current approximation algorithms&#xD;
and potential candidate approximation algorithms are discussed.</description>
    <dc:date>2011-11-01T00:00:00Z</dc:date>
    <dc:creator>Connelly, Abram</dc:creator>
    <dc:description>Random NP-Complete problems have come under study as an important tool used in the analysis&#xD;
of optimization algorithms and help in our understanding of how to properly address issues of&#xD;
computational intractability.&#xD;
In this thesis, the Number Partition Problem and the Hamiltonian Cycle Problem are taken as&#xD;
representative NP-Complete classes. Numerical evidence is presented for a phase transition in the&#xD;
probability of solution when a modified Lévy-Stable distribution is used in instance creation for each.&#xD;
Numerical evidence is presented that show hard random instances exist near the critical threshold&#xD;
for the Hamiltonian Cycle problem. A choice of order parameter for the Number Partition Problem’s&#xD;
phase transition is also given.&#xD;
Finding Hamiltonian Cycles in Erdös-Rényi random graphs is well known to have almost sure polynomial time algorithms, even near the critical threshold. To the author’s knowledge, the graph&#xD;
ensemble presented is the first candidate, without specific graph structure built in, to generate&#xD;
graphs whose Hamiltonicity is intrinsically hard to determine. Random graphs are chosen via their&#xD;
degree sequence generated from a discretized form of Lévy-Stable distributions. Graphs chosen from&#xD;
this distribution still show a phase transition and appear to have a pickup in search cost for the&#xD;
algorithms considered. Search cost is highly dependent on the particular algorithm used and the&#xD;
graph ensemble is presented only as a potential graph ensemble to generate intrinsically hard graphs&#xD;
that are difficult to test for Hamiltonicity.&#xD;
Number Partition Problem instances are created by choosing each element in the list from a modified&#xD;
Lévy-Stable distribution. The Number Partition Problem has no known good approximation algorithms and so only numerical evidence to show the phase transition is provided without considerable&#xD;
focus on pickup in search cost for the solvers used. The failure of current approximation algorithms&#xD;
and potential candidate approximation algorithms are discussed.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2449">
    <title>Human ovarian reserve from conception to the menopause</title>
    <link>http://hdl.handle.net/10023/2449</link>
    <description>Abstract: The human ovary contains a fixed number of non-growing follicles (NGFs) established before birth that decline with increasing age culminating in the menopause at 50-51 years. The objective of this study is to model the age-related population of NGFs in the human ovary from conception to menopause. Data were taken from eight separate quantitative histological studies (n = 325) in which NGF populations at known ages from seven weeks post conception to 51 years ( median 32 years) were calculated. The data set was fitted to 20 peak function models, with the results ranked by obtained r(2) correlation coefficient. The highest ranked model was chosen. Our model matches the log-adjusted NGF population from conception to menopause to a five-parameter asymmetric double Gaussian cumulative (ADC) curve (r(2) = 0.81). When restricted to ages up to 25 years, the ADC curve has r(2) = 0.95. We estimate that for 95% of women by the age of 30 years only 12% of their maximum pre-birth NGF population is present and by the age of 40 years only 3% remains. Furthermore, we found that the rate of NGF recruitment towards maturation for most women increases from birth until approximately age 14 years then decreases towards the menopause. To our knowledge, this is the first model of ovarian reserve from conception to menopause. This model allows us to estimate the number of NGFs present in the ovary at any given age, suggests that 81% of the variance in NGF populations is due to age alone, and shows for the first time, to our knowledge, that the rate of NGF recruitment increases from birth to age 14 years then declines with age until menopause. An increased understanding of the dynamics of human ovarian reserve will provide a more scientific basis for fertility counselling for both healthy women and those who have survived gonadotoxic cancer treatments.</description>
    <dc:date>2010-01-27T00:00:00Z</dc:date>
    <dc:creator>Wallace, W. Hamish B.</dc:creator>
    <dc:creator>Kelsey, Tom W</dc:creator>
    <dc:description>The human ovary contains a fixed number of non-growing follicles (NGFs) established before birth that decline with increasing age culminating in the menopause at 50-51 years. The objective of this study is to model the age-related population of NGFs in the human ovary from conception to menopause. Data were taken from eight separate quantitative histological studies (n = 325) in which NGF populations at known ages from seven weeks post conception to 51 years ( median 32 years) were calculated. The data set was fitted to 20 peak function models, with the results ranked by obtained r(2) correlation coefficient. The highest ranked model was chosen. Our model matches the log-adjusted NGF population from conception to menopause to a five-parameter asymmetric double Gaussian cumulative (ADC) curve (r(2) = 0.81). When restricted to ages up to 25 years, the ADC curve has r(2) = 0.95. We estimate that for 95% of women by the age of 30 years only 12% of their maximum pre-birth NGF population is present and by the age of 40 years only 3% remains. Furthermore, we found that the rate of NGF recruitment towards maturation for most women increases from birth until approximately age 14 years then decreases towards the menopause. To our knowledge, this is the first model of ovarian reserve from conception to menopause. This model allows us to estimate the number of NGFs present in the ovary at any given age, suggests that 81% of the variance in NGF populations is due to age alone, and shows for the first time, to our knowledge, that the rate of NGF recruitment increases from birth to age 14 years then declines with age until menopause. An increased understanding of the dynamics of human ovarian reserve will provide a more scientific basis for fertility counselling for both healthy women and those who have survived gonadotoxic cancer treatments.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2438">
    <title>Tree parsing with synchronous tree-adjoining grammars</title>
    <link>http://hdl.handle.net/10023/2438</link>
    <description>Abstract: Restricting the input or the output of a grammar-induced translation to a given set of trees plays an important role in statistical machine translation. The problem for practical systems is to find a compact (and in particular, finite) representation of said restriction. For the class of synchronous tree adjoining grammars, partial solutions to this problem have been described, some being restricted to the unweighted case, some to the monolingual case. We introduce a formulation of this class of grammars which is effectively closed under input and output restrictions to regular tree languages, i.e., the restricted translations can again be represented by grammars. Moreover, we present an algorithm that constructs these grammars for input and output restriction, which is inspired by Earley’s algorithm.</description>
    <dc:date>2011-10-05T00:00:00Z</dc:date>
    <dc:creator>B¨uchse, Matthias</dc:creator>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Vogler, Heiko</dc:creator>
    <dc:description>Restricting the input or the output of a grammar-induced translation to a given set of trees plays an important role in statistical machine translation. The problem for practical systems is to find a compact (and in particular, finite) representation of said restriction. For the class of synchronous tree adjoining grammars, partial solutions to this problem have been described, some being restricted to the unweighted case, some to the monolingual case. We introduce a formulation of this class of grammars which is effectively closed under input and output restrictions to regular tree languages, i.e., the restricted translations can again be represented by grammars. Moreover, we present an algorithm that constructs these grammars for input and output restriction, which is inspired by Earley’s algorithm.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2437">
    <title>Prefix probabilities for linear context-free rewriting systems</title>
    <link>http://hdl.handle.net/10023/2437</link>
    <description>Abstract: We present a novel method for the computation of prefix probabilities for linear context-free rewriting systems. Our approach streamlines previous procedures to compute prefix probabilities for context-free grammars, synchronous context-free grammars and tree adjoining grammars. In addition, the methodology is general enough to be used for a wider range of problems involving, for example, several prefixes.</description>
    <dc:date>2011-10-05T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
    <dc:description>We present a novel method for the computation of prefix probabilities for linear context-free rewriting systems. Our approach streamlines previous procedures to compute prefix probabilities for context-free grammars, synchronous context-free grammars and tree adjoining grammars. In addition, the methodology is general enough to be used for a wider range of problems involving, for example, several prefixes.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2436">
    <title>Parsing of partially bracketed structures for parse selection</title>
    <link>http://hdl.handle.net/10023/2436</link>
    <description>Abstract: We consider the problem of parsing a sentence that is partially annotated with information about where phrases start and end. The application domain is interactive parse selection with probabilistic grammars. It is explained that the main obstacle is spurious ambiguity. The proposed solution is first described in terms of appropriately constrained synchronous grammars, and then in terms of a computational model for parsing. Experiments show the feasibility for a practical grammar.</description>
    <dc:date>2011-10-05T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>S´anchez-S´aez, Ricardo</dc:creator>
    <dc:description>We consider the problem of parsing a sentence that is partially annotated with information about where phrases start and end. The application domain is interactive parse selection with probabilistic grammars. It is explained that the main obstacle is spurious ambiguity. The proposed solution is first described in terms of appropriately constrained synchronous grammars, and then in terms of a computational model for parsing. Experiments show the feasibility for a practical grammar.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2426">
    <title>Computation of infix probabilities for probabilistic context-free grammars</title>
    <link>http://hdl.handle.net/10023/2426</link>
    <description>Abstract: The notion of infix probability has been introduced in the literature as a generalization of the notion of prefix (or initial substring) probability, motivated by applications in speech recognition and word error correction. For the case where a probabilistic context-free grammar is used as language model, methods for the computation of infix probabilities have been presented in the literature, based on various simplifying assumptions. Here we present a solution that applies to the problem in its full generality.</description>
    <dc:date>2011-07-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
    <dc:description>The notion of infix probability has been introduced in the literature as a generalization of the notion of prefix (or initial substring) probability, motivated by applications in speech recognition and word error correction. For the case where a probabilistic context-free grammar is used as language model, methods for the computation of infix probabilities have been presented in the literature, based on various simplifying assumptions. Here we present a solution that applies to the problem in its full generality.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2415">
    <title>Splittability of bilexical context-free grammars is undecidable</title>
    <link>http://hdl.handle.net/10023/2415</link>
    <description>Abstract: Bilexical context-free grammars (2-LCFGs) have proved to be accurate models for statistical natural language parsing. Existing dynamic programming algorithms used to parse sentences under these models have running time of O(|w|^4), where w is the input string. A 2-LCFG is splittable if the left arguments of a lexical head are always independent of the right arguments, and vice versa. When a 2-LCFGs is splittable, parsing time can be asymptotically improved to O(|w|^3). Testing this propertyis therefore of central interest to parsing efficiency. In this article, however, we show the negative result that splittability of 2-LCFGs is undecidable.</description>
    <dc:date>2011-12-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
    <dc:description>Bilexical context-free grammars (2-LCFGs) have proved to be accurate models for statistical natural language parsing. Existing dynamic programming algorithms used to parse sentences under these models have running time of O(|w|^4), where w is the input string. A 2-LCFG is splittable if the left arguments of a lexical head are always independent of the right arguments, and vice versa. When a 2-LCFGs is splittable, parsing time can be asymptotically improved to O(|w|^3). Testing this propertyis therefore of central interest to parsing efficiency. In this article, however, we show the negative result that splittability of 2-LCFGs is undecidable.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2411">
    <title>Reliable online social network data collection</title>
    <link>http://hdl.handle.net/10023/2411</link>
    <description>Abstract: Large quantities of information are shared through online social networks, making them attractive sources of data for social network research. When studying the usage of online social networks, these data may not describe properly users’ behaviours. For instance, the data collected often include content shared by the users only, or content accessible to the researchers, hence obfuscating a large amount of data that would help understanding users’ behaviours and privacy concerns. Moreover, the data collection methods employed in experiments may also have an effect on data reliability when participants self-report inacurrate information or are observed while using a simulated application. Understanding the effects of these collection methods on data reliability is paramount for the study of social networks; for understanding user behaviour; for designing socially-aware applications and services; and for mining data collected from such social networks and applications. This chapter reviews previous research which has looked at social network data collection and user behaviour in these networks. We highlight shortcomings in the methods used in these studies, and introduce our own methodology and user study based on the Experience Sampling Method; we claim our methodology leads to the collection of more reliable data by capturing both those data which are shared and not shared. We conclude with suggestions for collecting and mining data from online social networks.</description>
    <dc:date>2012-01-01T00:00:00Z</dc:date>
    <dc:creator>Abdesslem, Fehmi Ben</dc:creator>
    <dc:creator>Parris, Iain</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>Large quantities of information are shared through online social networks, making them attractive sources of data for social network research. When studying the usage of online social networks, these data may not describe properly users’ behaviours. For instance, the data collected often include content shared by the users only, or content accessible to the researchers, hence obfuscating a large amount of data that would help understanding users’ behaviours and privacy concerns. Moreover, the data collection methods employed in experiments may also have an effect on data reliability when participants self-report inacurrate information or are observed while using a simulated application. Understanding the effects of these collection methods on data reliability is paramount for the study of social networks; for understanding user behaviour; for designing socially-aware applications and services; and for mining data collected from such social networks and applications. This chapter reviews previous research which has looked at social network data collection and user behaviour in these networks. We highlight shortcomings in the methods used in these studies, and introduce our own methodology and user study based on the Experience Sampling Method; we claim our methodology leads to the collection of more reliable data by capturing both those data which are shared and not shared. We conclude with suggestions for collecting and mining data from online social networks.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2124">
    <title>Facial feature detection and tracking with a 3D constrained local model</title>
    <link>http://hdl.handle.net/10023/2124</link>
    <description>Abstract: This thesis establishes a framework for facial feature detection and human&#xD;
face movement tracking. Statistical models of shape and appearance are&#xD;
built to represent the human face structure and interpret target images of&#xD;
human faces. The approach is a patch-based method derived from an earlier&#xD;
proposed method, the constrained local model (CLM) [1] algorithm.&#xD;
In order to increase the ability to track face movements with large head&#xD;
rotations, a 3D shape model is used in the system. And multiple texture&#xD;
models from different viewpoints are used to model the appearance. During&#xD;
fitting or tracking, the current estimate of pose (shape coordinates) is used&#xD;
to select the appropriate texture model. The algorithm uses the shape model&#xD;
and a texture model to generate a set of region template detectors. A search&#xD;
is then performed in the global pose / shape space using these detectors.&#xD;
Different optimisation frameworks are used in the implementation. The&#xD;
training images are created by rendering expressive 3D face models with&#xD;
different scales, rotations, expressions, brightness, etc.&#xD;
Experimental results are demonstrated by fitting the model to image&#xD;
sequences with large head rotations to evaluate the performance of the&#xD;
algorithm. To evaluate the stability and selection of factors of the algorithm,&#xD;
more experiments are carried out. The results show that the proposed 3D&#xD;
constrained local model algorithm improves the performance of the original&#xD;
CLM algorithm for videos with large out-of-plane head rotations.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Yu, Meng</dc:creator>
    <dc:description>This thesis establishes a framework for facial feature detection and human&#xD;
face movement tracking. Statistical models of shape and appearance are&#xD;
built to represent the human face structure and interpret target images of&#xD;
human faces. The approach is a patch-based method derived from an earlier&#xD;
proposed method, the constrained local model (CLM) [1] algorithm.&#xD;
In order to increase the ability to track face movements with large head&#xD;
rotations, a 3D shape model is used in the system. And multiple texture&#xD;
models from different viewpoints are used to model the appearance. During&#xD;
fitting or tracking, the current estimate of pose (shape coordinates) is used&#xD;
to select the appropriate texture model. The algorithm uses the shape model&#xD;
and a texture model to generate a set of region template detectors. A search&#xD;
is then performed in the global pose / shape space using these detectors.&#xD;
Different optimisation frameworks are used in the implementation. The&#xD;
training images are created by rendering expressive 3D face models with&#xD;
different scales, rotations, expressions, brightness, etc.&#xD;
Experimental results are demonstrated by fitting the model to image&#xD;
sequences with large head rotations to evaluate the performance of the&#xD;
algorithm. To evaluate the stability and selection of factors of the algorithm,&#xD;
more experiments are carried out. The results show that the proposed 3D&#xD;
constrained local model algorithm improves the performance of the original&#xD;
CLM algorithm for videos with large out-of-plane head rotations.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2100">
    <title>Improving the efficiency of learning CSP solvers</title>
    <link>http://hdl.handle.net/10023/2100</link>
    <description>Abstract: Backtracking CSP solvers provide a powerful framework for search and reasoning.&#xD;
The aim of constraint learning is increase global reasoning power by learning&#xD;
new constraints to boost reasoning and hopefully reduce search effort. In this&#xD;
thesis constraint learning is developed in several ways to make it faster and&#xD;
more powerful.&#xD;
&#xD;
First, lazy explanation generation is introduced, where explanations are&#xD;
generated as needed rather than continuously during propagation. This technique&#xD;
is shown to be effective is reducing the number of explanations generated&#xD;
substantially and consequently reducing the amount of time taken to complete a&#xD;
search, over a wide selection of benchmarks.&#xD;
&#xD;
Second, a series of experiments are undertaken investigating constraint&#xD;
forgetting, where constraints are discarded to avoid time and space costs&#xD;
associated with learning new constraints becoming too large.  A major empirical&#xD;
investigation into the overheads introduced by unbounded constraint learning in&#xD;
CSP is conducted. This is the first such study in either CSP or SAT.  Two&#xD;
significant results are obtained.  The first is that typically a small percentage of&#xD;
learnt constraints do most propagation.  While this is conventional wisdom, it&#xD;
has not previously been the subject of empirical study.  The second is that even&#xD;
constraints that do no effective propagation can incur significant time&#xD;
overheads.  Finally, the use of forgetting techniques from the literature is&#xD;
shown to significantly improve the performance of modern learning CSP solvers,&#xD;
contradicting some previous research.&#xD;
&#xD;
Finally, learning is generalised to use disjunctions of arbitrary constraints,&#xD;
where before only disjunctions of assignments and disassignments have been used&#xD;
in practice (g-nogood learning).  The details of the implementation undertaken&#xD;
show that major gains in expressivity are available, and this is confirmed by a&#xD;
proof that it can save an exponential amount of search in practice compared with&#xD;
g-nogood learning. Experiments demonstrate the promise of the technique.</description>
    <dc:date>2011-05-01T00:00:00Z</dc:date>
    <dc:creator>Moore, Neil C.A.</dc:creator>
    <dc:description>Backtracking CSP solvers provide a powerful framework for search and reasoning.&#xD;
The aim of constraint learning is increase global reasoning power by learning&#xD;
new constraints to boost reasoning and hopefully reduce search effort. In this&#xD;
thesis constraint learning is developed in several ways to make it faster and&#xD;
more powerful.&#xD;
&#xD;
First, lazy explanation generation is introduced, where explanations are&#xD;
generated as needed rather than continuously during propagation. This technique&#xD;
is shown to be effective is reducing the number of explanations generated&#xD;
substantially and consequently reducing the amount of time taken to complete a&#xD;
search, over a wide selection of benchmarks.&#xD;
&#xD;
Second, a series of experiments are undertaken investigating constraint&#xD;
forgetting, where constraints are discarded to avoid time and space costs&#xD;
associated with learning new constraints becoming too large.  A major empirical&#xD;
investigation into the overheads introduced by unbounded constraint learning in&#xD;
CSP is conducted. This is the first such study in either CSP or SAT.  Two&#xD;
significant results are obtained.  The first is that typically a small percentage of&#xD;
learnt constraints do most propagation.  While this is conventional wisdom, it&#xD;
has not previously been the subject of empirical study.  The second is that even&#xD;
constraints that do no effective propagation can incur significant time&#xD;
overheads.  Finally, the use of forgetting techniques from the literature is&#xD;
shown to significantly improve the performance of modern learning CSP solvers,&#xD;
contradicting some previous research.&#xD;
&#xD;
Finally, learning is generalised to use disjunctions of arbitrary constraints,&#xD;
where before only disjunctions of assignments and disassignments have been used&#xD;
in practice (g-nogood learning).  The details of the implementation undertaken&#xD;
show that major gains in expressivity are available, and this is confirmed by a&#xD;
proof that it can save an exponential amount of search in practice compared with&#xD;
g-nogood learning. Experiments demonstrate the promise of the technique.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2095">
    <title>A new, robust, and generic method for the quick creation of smooth paths and near time-optimal path tracking</title>
    <link>http://hdl.handle.net/10023/2095</link>
    <description>Abstract: Robotics has been the subject of academic study from as early as 1948. For much of this time, study has focused on very specific applications in very well controlled environments. For example, the first commercial robots (1961) were introduced in order to improve the efficiency of production lines. The tasks undertaken by these robots were simple, and all that was required of a control algorithm was speed, repetitiveness and reliability in these environments.&#xD;
Now however, robots are being used to move around autonomously in increasingly unpredictable environments, and the need for robotic control algorithms that can successfully react to such conditions is ever increasing. In addition to this there is an ever-increasing array of robots available, the control algorithms for which are often incompatible. This can result in extensive redesign and large sections of code being re-written for use on different architectures.&#xD;
The thesis presented here is that a new generic approach can be created that provides robust high quality smooth paths and time-optimal path tracking to substantially increase applicability and efficiency of autonomous motion plans.&#xD;
The control system developed to support this thesis is capable of producing high quality smooth paths, and following these paths to a high level of accuracy in a robust and near time-optimal manner. The system can control a variety of robots in environments that contain 2D obstacles of various shapes and sizes. The system is also resilient to sensor error, spatial drift, and wheel-slip.&#xD;
In achieving the above, this system provides previously unavailable functionality by generically creating and tracking high quality paths so that only minor and clear adjustments are required between different robots and also be being capable of operating in environments that contain high levels of perturbation.&#xD;
The system is comprised of five separate novel component algorithms in order to cater for five different motion challenges facing modern robots. Each algorithm provides guaranteed functionality that has previously been unavailable in respect to its challenges. The challenges are: high quality smooth movement to reach n-dimensional goals in regions without obstacles, the navigation of 2D obstacles with guaranteed completeness, high quality smooth movement for ground robots carrying out 2D obstacle navigation, near time-optimal path tracking, and finally, effective wheel-slip detection and compensation. In meeting these challenges the algorithms have tackled adherence to non-holonomic constraints, applicability to a wide range of robots and tasks, fast real-time creation of paths and controls, sensor error compensation, and compensation for perturbation.&#xD;
This thesis presents each of the above algorithms individually. It is shown that existing methods are unable to produce the results provided by this thesis, before detailing the operation of each algorithm. The methodology employed is varied in accordance with each of the five core challenges. However, a common element of methodology throughout the thesis is that of gradient descent within a new type of potential field, which is dynamic and capable of the simultaneous creation of high-quality paths and the controls required to execute them. By relating global to local considerations through subgoals, this methodology (combined with other elements) is shown to be fully capable of achieving the aims of the thesis.&#xD;
It is concluded that the produced system represents a novel and significant contribution as there is no other system (to the author’s knowledge) that provides all of the functionality given. For each component algorithm there are many control systems that provide one or more of its features, but none that are capable of all of the features. Applications for this work are wide ranging as it is comprised of five component algorithms each applicable in their own right. For example, high quality smooth paths may be created and followed in any dimensionality of space if time optimality and obstacle avoidance are not required. Broadly speaking, and in summary, applications are to ground-based robotics in the areas of smooth path planning, time optimal travel, and compensation for unpredictable perturbation.</description>
    <dc:date>2011-11-30T00:00:00Z</dc:date>
    <dc:creator>Bott, M. P.</dc:creator>
    <dc:description>Robotics has been the subject of academic study from as early as 1948. For much of this time, study has focused on very specific applications in very well controlled environments. For example, the first commercial robots (1961) were introduced in order to improve the efficiency of production lines. The tasks undertaken by these robots were simple, and all that was required of a control algorithm was speed, repetitiveness and reliability in these environments.&#xD;
Now however, robots are being used to move around autonomously in increasingly unpredictable environments, and the need for robotic control algorithms that can successfully react to such conditions is ever increasing. In addition to this there is an ever-increasing array of robots available, the control algorithms for which are often incompatible. This can result in extensive redesign and large sections of code being re-written for use on different architectures.&#xD;
The thesis presented here is that a new generic approach can be created that provides robust high quality smooth paths and time-optimal path tracking to substantially increase applicability and efficiency of autonomous motion plans.&#xD;
The control system developed to support this thesis is capable of producing high quality smooth paths, and following these paths to a high level of accuracy in a robust and near time-optimal manner. The system can control a variety of robots in environments that contain 2D obstacles of various shapes and sizes. The system is also resilient to sensor error, spatial drift, and wheel-slip.&#xD;
In achieving the above, this system provides previously unavailable functionality by generically creating and tracking high quality paths so that only minor and clear adjustments are required between different robots and also be being capable of operating in environments that contain high levels of perturbation.&#xD;
The system is comprised of five separate novel component algorithms in order to cater for five different motion challenges facing modern robots. Each algorithm provides guaranteed functionality that has previously been unavailable in respect to its challenges. The challenges are: high quality smooth movement to reach n-dimensional goals in regions without obstacles, the navigation of 2D obstacles with guaranteed completeness, high quality smooth movement for ground robots carrying out 2D obstacle navigation, near time-optimal path tracking, and finally, effective wheel-slip detection and compensation. In meeting these challenges the algorithms have tackled adherence to non-holonomic constraints, applicability to a wide range of robots and tasks, fast real-time creation of paths and controls, sensor error compensation, and compensation for perturbation.&#xD;
This thesis presents each of the above algorithms individually. It is shown that existing methods are unable to produce the results provided by this thesis, before detailing the operation of each algorithm. The methodology employed is varied in accordance with each of the five core challenges. However, a common element of methodology throughout the thesis is that of gradient descent within a new type of potential field, which is dynamic and capable of the simultaneous creation of high-quality paths and the controls required to execute them. By relating global to local considerations through subgoals, this methodology (combined with other elements) is shown to be fully capable of achieving the aims of the thesis.&#xD;
It is concluded that the produced system represents a novel and significant contribution as there is no other system (to the author’s knowledge) that provides all of the functionality given. For each component algorithm there are many control systems that provide one or more of its features, but none that are capable of all of the features. Applications for this work are wide ranging as it is comprised of five component algorithms each applicable in their own right. For example, high quality smooth paths may be created and followed in any dimensionality of space if time optimality and obstacle avoidance are not required. Broadly speaking, and in summary, applications are to ground-based robotics in the areas of smooth path planning, time optimal travel, and compensation for unpredictable perturbation.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2037">
    <title>Scaling measurement experiments to planet-scale : ethical, regulatory and cultural considerations</title>
    <link>http://hdl.handle.net/10023/2037</link>
    <description>Abstract: Conducting planet-scale mobility experiments and measurements is of great interest to network researchers for building the next generation of wireless networking technologies, or for studying inter-disciplinary problems in complex networks. There are many technical challenges that need to be addressed before such experiments can take place. But at the same time, there are many non-technical issues that need to be tackled in order to preserve the welfare of participants in these studies. While some of these issues have been addressed in previous small-scale studies, they become increasingly complex when differences between countries need to be taken into account. This position paper highlights some of these issues and argues that they need to be addressed before planet-scale measurement experiments can be conducted. We discuss ethical, regulatory, cultural and privacy issues, and consider how to design measurement systems that will scale up to planet-wide experiments. We motivate our approach by discussing work in measurement of mobile and online social networks.
Description: Workshop held as part of 7th Annual International Conference on Mobile Systems, Applications and Services (MobiSys 2009)</description>
    <dc:date>2009-06-01T00:00:00Z</dc:date>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:creator>Ben Abdesslem, Fehmi</dc:creator>
    <dc:description>Conducting planet-scale mobility experiments and measurements is of great interest to network researchers for building the next generation of wireless networking technologies, or for studying inter-disciplinary problems in complex networks. There are many technical challenges that need to be addressed before such experiments can take place. But at the same time, there are many non-technical issues that need to be tackled in order to preserve the welfare of participants in these studies. While some of these issues have been addressed in previous small-scale studies, they become increasingly complex when differences between countries need to be taken into account. This position paper highlights some of these issues and argues that they need to be addressed before planet-scale measurement experiments can be conducted. We discuss ethical, regulatory, cultural and privacy issues, and consider how to design measurement systems that will scale up to planet-wide experiments. We motivate our approach by discussing work in measurement of mobile and online social networks.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2036">
    <title>Planet-scale human mobility measurement</title>
    <link>http://hdl.handle.net/10023/2036</link>
    <description>Abstract: Research into, and design and construction of mobile systems and algorithms requires access to large-scale mobility data. Unfortunately, the research community lacks such data. For instance, the largest available human contact traces contain only 100 nodes with very sparse connectivity, limited by experimental logistics. In this paper we pose a challenge to the community: how can we collect mobility data from billions of human participants? We re-assert the importance of large-scale datasets in communication network design, and claim that this could impact fundamental studies in other academic disciplines. In effect, we argue that planet-scale mobility measurements can help to save the world. For example, through understanding large-scale human mobility, we can track and model and contain the spread of epidemics of various kinds.
Description: Workshop held as part of the 8th Annual International Conference on Mobile Systems, Applications and Services (MobiSys 2010)</description>
    <dc:date>2010-06-10T00:00:00Z</dc:date>
    <dc:creator>Hui, Pan</dc:creator>
    <dc:creator>Mortier, Richard</dc:creator>
    <dc:creator>Piorkowski, Michal</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:creator>Crowcroft, Jon</dc:creator>
    <dc:description>Research into, and design and construction of mobile systems and algorithms requires access to large-scale mobility data. Unfortunately, the research community lacks such data. For instance, the largest available human contact traces contain only 100 nodes with very sparse connectivity, limited by experimental logistics. In this paper we pose a challenge to the community: how can we collect mobility data from billions of human participants? We re-assert the importance of large-scale datasets in communication network design, and claim that this could impact fundamental studies in other academic disciplines. In effect, we argue that planet-scale mobility measurements can help to save the world. For example, through understanding large-scale human mobility, we can track and model and contain the spread of epidemics of various kinds.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2034">
    <title>Privacy-enhanced social-network routing</title>
    <link>http://hdl.handle.net/10023/2034</link>
    <description>Abstract: Opportunistic networking—forwarding messages in a disconnected mobile ad hoc network via any encountered nodes — offers a new mechanism for exploiting the mobile devices that many users now carry. Forwarding messages in such a network often involves the use of social-network routing— sending messages via nodes in the sender or recipient’s friends list. Simple social-network routing, however, may broadcast these friends lists, which introduces privacy concerns. This paper presents a threat analysis of the privacy risks in social-network routing. We introduce two complementary methods for enhancing privacy in social-network routing by obfuscating the friends lists used to inform routing decisions. We evaluate these methods using three real-world datasets, and find that it is possible to obfuscate the friends lists without leading to a significant decrease in routing performance, as measured by delivery cost, delay and ratio. We quantify the increase in security provided by this obfuscation, with reference to classes of attack which are mitigated.
Description: This work is supported by the UK Engineering and Physical Sciences Research Council and the Technology Strategy Board as part of the Privacy Value Networks project, EP/G002606/1.</description>
    <dc:date>2012-01-01T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain Siraj</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:description>Opportunistic networking—forwarding messages in a disconnected mobile ad hoc network via any encountered nodes — offers a new mechanism for exploiting the mobile devices that many users now carry. Forwarding messages in such a network often involves the use of social-network routing— sending messages via nodes in the sender or recipient’s friends list. Simple social-network routing, however, may broadcast these friends lists, which introduces privacy concerns. This paper presents a threat analysis of the privacy risks in social-network routing. We introduce two complementary methods for enhancing privacy in social-network routing by obfuscating the friends lists used to inform routing decisions. We evaluate these methods using three real-world datasets, and find that it is possible to obfuscate the friends lists without leading to a significant decrease in routing performance, as measured by delivery cost, delay and ratio. We quantify the increase in security provided by this obfuscation, with reference to classes of attack which are mitigated.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2033">
    <title>Trust and privacy in distributed work groups</title>
    <link>http://hdl.handle.net/10023/2033</link>
    <description>Abstract: Trust plays an important role in both group cooperation and economic exchange. As new technologies emerge for communication and exchange, established mechanisms of trust are disrupted or distorted, which can lead to the breakdown of cooperation or to increasing fraud in exchange. This paper examines whether and how personal privacy information about members of distributed work groups influences individuals' cooperation and privacy behavior in the group. Specifically, we examine whether people use others' privacy settings as signals of trustworthiness that affect group cooperation. In addition, we examine how individual privacy preferences relate to trustworthy behavior. Understanding how people interact with others in online settings, in particular when they have limited information, has important implications for geographically distributed groups enabled through new information technologies. In addition, understanding how people might use information gleaned from technology usage, such as personal privacy settings, particularly in the absence of other information, has implications for understanding many potential situations that arise in pervasively networked environments.
Description: Proceedings of the 2nd International Workshop on Social Computing, Behavioral Modeling and Prediction</description>
    <dc:date>2009-03-01T00:00:00Z</dc:date>
    <dc:creator>Anthony, Denise</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:creator>Kitts, James</dc:creator>
    <dc:description>Trust plays an important role in both group cooperation and economic exchange. As new technologies emerge for communication and exchange, established mechanisms of trust are disrupted or distorted, which can lead to the breakdown of cooperation or to increasing fraud in exchange. This paper examines whether and how personal privacy information about members of distributed work groups influences individuals' cooperation and privacy behavior in the group. Specifically, we examine whether people use others' privacy settings as signals of trustworthiness that affect group cooperation. In addition, we examine how individual privacy preferences relate to trustworthy behavior. Understanding how people interact with others in online settings, in particular when they have limited information, has important implications for geographically distributed groups enabled through new information technologies. In addition, understanding how people might use information gleaned from technology usage, such as personal privacy settings, particularly in the absence of other information, has implications for understanding many potential situations that arise in pervasively networked environments.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2032">
    <title>The ambient loo - caught short when nature calls?</title>
    <link>http://hdl.handle.net/10023/2032</link>
    <description>Abstract: On numerous occasions, trips to the facilities coincide with an important mobile phone call. Due to the sleek and polished nature of modern phones, attempting to promptly deal with such calls can occasionally lead to the phone sliding through the owner's hands, surrendering to the force of gravity and flying down the hole. This is a disaster, and often an expensive incident. It can also be a health and safety hazard, with the owner desperately attempting to retrieve their phone and re-using it. This paper provides a first attempt at a cell phone recovery system using the modern functionalities of Toto Japanese toilets.(1) In our approach, the phone is calmly recovered, sanitized and retrieved by the user. This can all happen without the call even being dropped, with possibility of secure backup of the user data by embedded sensor and Wi-Fi network connectivity in the toilet. We envision that such an approach will increase the collaboration between Japanese, European and American mobile operators, network researchers and hardware manufacturers.
Description: This article is an editorial note submitted to CCR. It has not been peer reviewed. The author takes full responsibility for this article’s technical content. Comments can be posted through CCR Online.</description>
    <dc:date>2010-04-01T00:00:00Z</dc:date>
    <dc:creator>Haddadi, Hamed</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:creator>Crowcroft, Jon</dc:creator>
    <dc:description>On numerous occasions, trips to the facilities coincide with an important mobile phone call. Due to the sleek and polished nature of modern phones, attempting to promptly deal with such calls can occasionally lead to the phone sliding through the owner's hands, surrendering to the force of gravity and flying down the hole. This is a disaster, and often an expensive incident. It can also be a health and safety hazard, with the owner desperately attempting to retrieve their phone and re-using it. This paper provides a first attempt at a cell phone recovery system using the modern functionalities of Toto Japanese toilets.(1) In our approach, the phone is calmly recovered, sanitized and retrieved by the user. This can all happen without the call even being dropped, with possibility of secure backup of the user data by embedded sensor and Wi-Fi network connectivity in the toilet. We envision that such an approach will increase the collaboration between Japanese, European and American mobile operators, network researchers and hardware manufacturers.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2027">
    <title>Targeted advertising on the handset : Privacy and security challenges</title>
    <link>http://hdl.handle.net/10023/2027</link>
    <description>Abstract: Online advertising is currently a rich source of revenue for many Internet giants. With the ever-increasing number of smart phones, there is a fertile market for personalised and localised advertising. A key benefit of using mobile phones is to take advantage of the significant amount of information on phones — such as locations of interest to the user — in order to provide personalised advertisements. Preservation of user privacy, however, is essential for successful deployment of such a system. In this chapter we provide an overview of existing advertising systems and privacy concerns on mobile phones, in addition to a system, MobiAd, which includes protocols for scalable local advertisement download and privacy-aware click report dissemination. In the final section of this chapter we describe some of the security mechanisms used in detecting click-through fraud, and techniques that can be used to ensure that the extra privacy protections of MobiAd are not abused to defraud advertisers.</description>
    <dc:date>2011-01-01T00:00:00Z</dc:date>
    <dc:creator>Haddadi, Hamed</dc:creator>
    <dc:creator>Hui, Pan</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:creator>Brown, Ian</dc:creator>
    <dc:description>Online advertising is currently a rich source of revenue for many Internet giants. With the ever-increasing number of smart phones, there is a fertile market for personalised and localised advertising. A key benefit of using mobile phones is to take advantage of the significant amount of information on phones — such as locations of interest to the user — in order to provide personalised advertisements. Preservation of user privacy, however, is essential for successful deployment of such a system. In this chapter we provide an overview of existing advertising systems and privacy concerns on mobile phones, in addition to a system, MobiAd, which includes protocols for scalable local advertisement download and privacy-aware click report dissemination. In the final section of this chapter we describe some of the security mechanisms used in detecting click-through fraud, and techniques that can be used to ensure that the extra privacy protections of MobiAd are not abused to defraud advertisers.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2023">
    <title>Context-based personalised settings for mobile location sharing</title>
    <link>http://hdl.handle.net/10023/2023</link>
    <description>Abstract: Location-Based Services (LBSes) are increasing in popularity, but create many privacy concerns for users. LBSes usually rely on the same default privacy settings for all users. In this position paper, we claim that such settings are inappropriate for location sharing and that settings should instead rely on contextual information to recommend personalised privacy settings for users. We present results of an initial user study (n=80) to corroborate this position, and suggest avenues for further research.
Description: This work was supported by the Engineering and Physical Sciences Research Council [grant number EP/G002606/1].</description>
    <dc:date>2011-10-27T00:00:00Z</dc:date>
    <dc:creator>Abdesslem, Fehmi Ben</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:creator>Brostoff, Sacha</dc:creator>
    <dc:creator>Sasse, M. Angela</dc:creator>
    <dc:description>Location-Based Services (LBSes) are increasing in popularity, but create many privacy concerns for users. LBSes usually rely on the same default privacy settings for all users. In this position paper, we claim that such settings are inappropriate for location sharing and that settings should instead rely on contextual information to recommend personalised privacy settings for users. We present results of an initial user study (n=80) to corroborate this position, and suggest avenues for further research.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2022">
    <title>IRONMAN : Using social networks to add incentives and reputation to opportunistic networks</title>
    <link>http://hdl.handle.net/10023/2022</link>
    <description>Abstract: Opportunistic networks enable users to communicate in the absence of network infrastructure. But forwarding messages in such a network incurs costs for nodes in terms of energy and storage. This may lead to nodes being selfish and not forwarding messages for other nodes, resulting in degraded network performance. This paper presents a novel incentive mechanism for opportunistic networks that uses pre-existing social-network information to detect and punish selfish nodes, incentivising them to participate in the network. Trace-driven simulations demonstrate that our mechanism performs better than existing mechanisms, and that social-network information can also be used to improve existing incentive mechanisms.
Description: Paper published in IEEE Proceedings of SocialCom 2011.</description>
    <dc:date>2011-10-09T00:00:00Z</dc:date>
    <dc:creator>Bigwood, Greg</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>Opportunistic networks enable users to communicate in the absence of network infrastructure. But forwarding messages in such a network incurs costs for nodes in terms of energy and storage. This may lead to nodes being selfish and not forwarding messages for other nodes, resulting in degraded network performance. This paper presents a novel incentive mechanism for opportunistic networks that uses pre-existing social-network information to detect and punish selfish nodes, incentivising them to participate in the network. Trace-driven simulations demonstrate that our mechanism performs better than existing mechanisms, and that social-network information can also be used to improve existing incentive mechanisms.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2020">
    <title>Less is more : energy-efficient mobile sensing with SenseLess</title>
    <link>http://hdl.handle.net/10023/2020</link>
    <description>Abstract: We present SenseLess, a system that leverages the different energy consumption characteristics of sensors to maximise battery life in mobile-sensing applications. We use the less expensive sensors more often, thereby enabling us to use the more expensive sensors less frequently. In the context of location-aware services, experimental results indicate that for a typical indoor and outdoor walk, compared to a simple GPS-based system, our SenseLess system can reduce energy consumption by more than 58% when determining a user's location, while maintaining the fidelity of the sensed data. This extends the battery life of a typical handheld device from 9 hours to 22 hours.
Description: Workshop held as part of ACM SIGCOMM 2009</description>
    <dc:date>2009-08-01T00:00:00Z</dc:date>
    <dc:creator>Ben Abdesslem, Fehmi</dc:creator>
    <dc:creator>Phillips, Andrew</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>We present SenseLess, a system that leverages the different energy consumption characteristics of sensors to maximise battery life in mobile-sensing applications. We use the less expensive sensors more often, thereby enabling us to use the more expensive sensors less frequently. In the context of location-aware services, experimental results indicate that for a typical indoor and outdoor walk, compared to a simple GPS-based system, our SenseLess system can reduce energy consumption by more than 58% when determining a user's location, while maintaining the fidelity of the sensed data. This extends the battery life of a typical handheld device from 9 hours to 22 hours.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2019">
    <title>Social delay-tolerant network routing</title>
    <link>http://hdl.handle.net/10023/2019</link>
    <description>Abstract: Routing in mobile delay-tolerant networks faces new challenges such as mobility and the dynamic nature of the network. Social network information may be useful for routing since mobile nodes in the same social network may be encountered more often and thus be more successful at message-passing. Collecting this social network information, however, can be challenging. We compare a social network traced from user encounters with a user-declared social network, and show some of the differences between these two networks.
Description: Paper presented at the 2nd ICC Winter Workshop on Complexity in Social Systems</description>
    <dc:date>2009-01-01T00:00:00Z</dc:date>
    <dc:creator>Bigwood, Gregory John</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:creator>Bhatti, Saleem Noel</dc:creator>
    <dc:description>Routing in mobile delay-tolerant networks faces new challenges such as mobility and the dynamic nature of the network. Social network information may be useful for routing since mobile nodes in the same social network may be encountered more often and thus be more successful at message-passing. Collecting this social network information, however, can be challenging. We compare a social network traced from user encounters with a user-declared social network, and show some of the differences between these two networks.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2018">
    <title>Usable data-driven privacy research : should we be afraid of the Big (Bad?) Data Wolf?</title>
    <link>http://hdl.handle.net/10023/2018</link>
    <dc:date>2010-11-01T00:00:00Z</dc:date>
    <dc:creator>Henderson, Tristan</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2017">
    <title>Understanding mobile social behaviour using smartphones</title>
    <link>http://hdl.handle.net/10023/2017</link>
    <description>Abstract: Understanding the behaviour of users as they share information with mobile social applications is important for enhancing their experiences and improving the services provided. In this paper, we present an approach to studying users’ behaviour with the Experience Sampling Method, using a single mobile device to ask questions of users and simultaneously monitor their activities and contexts. While our approach presents benefits compared to traditional questionnaires, we also present the challenges faced, and the problems still to be explored.
Description: This work is funded by the EPSRC/TSB Privacy Value Networks project (EP/G002606/1).</description>
    <dc:date>2010-10-17T00:00:00Z</dc:date>
    <dc:creator>Abdesslem, Fehmi Ben</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:description>Understanding the behaviour of users as they share information with mobile social applications is important for enhancing their experiences and improving the services provided. In this paper, we present an approach to studying users’ behaviour with the Experience Sampling Method, using a single mobile device to ask questions of users and simultaneously monitor their activities and contexts. While our approach presents benefits compared to traditional questionnaires, we also present the challenges faced, and the problems still to be explored.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2016">
    <title>Mobile experience sampling : Reaching the parts of Facebook other methods cannot reach</title>
    <link>http://hdl.handle.net/10023/2016</link>
    <description>Abstract: Location-aware Social Network Sites (SNS) are now widely used by mobile phone users, enabling users to share their location in real time to their social network. Such location-sharing may introduce privacy concerns depending on the user, the location being shared, and the people to whom they are shared. The study of such privacy concerns is difficult, as a user filling out a questionnaire may forget the exact reasons for sharing. We have explored the Experience Sampling Method (ESM) for in situ capture of users’ experiences. This paper describes our mobile phone ESM testbed and presents preliminary results obtained from a 2-week experiment with 40 students sharing their location in real time on Facebook, a popular SNS.
Description: Paper presented at the Privacy and Usability Methods Pow-wow (PUMP) workshop, in conjunction with the 24th BCS International Conference on Human-Computer Interaction. This work is funded by the EPSRC/TSB Privacy Value Networks project (EP/G002606/1).</description>
    <dc:date>2010-09-06T00:00:00Z</dc:date>
    <dc:creator>Abdesslem, Fehmi Ben</dc:creator>
    <dc:creator>Parris, Iain</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:description>Location-aware Social Network Sites (SNS) are now widely used by mobile phone users, enabling users to share their location in real time to their social network. Such location-sharing may introduce privacy concerns depending on the user, the location being shared, and the people to whom they are shared. The study of such privacy concerns is difficult, as a user filling out a questionnaire may forget the exact reasons for sharing. We have explored the Experience Sampling Method (ESM) for in situ capture of users’ experiences. This paper describes our mobile phone ESM testbed and presents preliminary results obtained from a 2-week experiment with 40 students sharing their location in real time on Facebook, a popular SNS.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2014">
    <title>Facebook or Fakebook? : The effect of simulation on location privacy user studies</title>
    <link>http://hdl.handle.net/10023/2014</link>
    <description>Description: Paper presented at the Privacy and Usability Methods Pow-wow (PUMP) workshop, in conjunction with the 24th BCS International Conference on Human-Computer Interaction. This work is supported by the EPSRC Privacy Value Networks project, EP/G002606/1.</description>
    <dc:date>2010-09-06T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain</dc:creator>
    <dc:creator>Abdesslem, Fehmi Ben</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2013">
    <title>The impact of location privacy on opportunistic networks</title>
    <link>http://hdl.handle.net/10023/2013</link>
    <description>Abstract: Opportunistic networking involves forwarding messages between proximate users, who may or may not know one another. This assumes that users are willing to forward messages to each other. This assumption may not hold if users are concerned about using the opportunistic network service. One such concern may be due to privacy; for instance, users' locations may be leaked. A privacy-concerned user may therefore disable their mobile device's opportunistic-networking features at various times, to preserve their privacy. This paper studies the impact of location privacy concerns on the performance of an opportunistic network. Using data from a real-world location-aware user study to develop a privacy model, we conduct trace-based simulations of various opportunistic routing protocols with two real-world traces. We find that users' location privacy preferences may potentially reduce the delivery performance of an opportunistic network to zero.</description>
    <dc:date>2011-06-23T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>Opportunistic networking involves forwarding messages between proximate users, who may or may not know one another. This assumes that users are willing to forward messages to each other. This assumption may not hold if users are concerned about using the opportunistic network service. One such concern may be due to privacy; for instance, users' locations may be leaked. A privacy-concerned user may therefore disable their mobile device's opportunistic-networking features at various times, to preserve their privacy. This paper studies the impact of location privacy concerns on the performance of an opportunistic network. Using data from a real-world location-aware user study to develop a privacy model, we conduct trace-based simulations of various opportunistic routing protocols with two real-world traces. We find that users' location privacy preferences may potentially reduce the delivery performance of an opportunistic network to zero.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2011">
    <title>Practical privacy-aware opportunistic networking</title>
    <link>http://hdl.handle.net/10023/2011</link>
    <description>Abstract: Opportunistic networks have been the study of much research — in particular on making end-to-end routing efficient. Users’ privacy concerns, however, have not been the subject of much research. What privacy concerns might opportunistic network users have? Is it possible to build opportunistic networks that can mitigate users’ privacy concerns while maintaining routing performance? Our work-to-date has tackled the problem of creating privacy-preserving routing protocols, with less emphasis on discovering users’ actual privacy concerns. We summarise our current results, and describe a future experiment that we have planned to better understand users’ privacy concerns.</description>
    <dc:date>2011-07-05T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>Opportunistic networks have been the study of much research — in particular on making end-to-end routing efficient. Users’ privacy concerns, however, have not been the subject of much research. What privacy concerns might opportunistic network users have? Is it possible to build opportunistic networks that can mitigate users’ privacy concerns while maintaining routing performance? Our work-to-date has tackled the problem of creating privacy-preserving routing protocols, with less emphasis on discovering users’ actual privacy concerns. We summarise our current results, and describe a future experiment that we have planned to better understand users’ privacy concerns.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2010">
    <title>Bootstrapping opportunistic networks using social roles</title>
    <link>http://hdl.handle.net/10023/2010</link>
    <description>Abstract: Opportunistic routing protocols can enable message delivery in disconnected networks of mobile devices. To conserve energy in mobile environments, such routing protocols must minimise unnecessary message-forwarding. This paper presents an opportunistic routing protocol that leverages social role information. We compute node roles from a social network graph to identify nodes with similar contact relationships, and use these roles to determine routing decisions. By using pre-existing social network information, such as online social network friends, to determine roles, we show that our protocol can bootstrap a new opportunistic network without the delay incurred by encounter-history-based routing protocols such as SimbetTS. Simulations with four real-world datasets show improved performance over SimbetTS, with performance approaching Epidemic routing in some scenarios.</description>
    <dc:date>2011-06-23T00:00:00Z</dc:date>
    <dc:creator>Bigwood, Greg</dc:creator>
    <dc:creator>Henderson, Tristan</dc:creator>
    <dc:description>Opportunistic routing protocols can enable message delivery in disconnected networks of mobile devices. To conserve energy in mobile environments, such routing protocols must minimise unnecessary message-forwarding. This paper presents an opportunistic routing protocol that leverages social role information. We compute node roles from a social network graph to identify nodes with similar contact relationships, and use these roles to determine routing decisions. By using pre-existing social network information, such as online social network friends, to determine roles, we show that our protocol can bootstrap a new opportunistic network without the delay incurred by encounter-history-based routing protocols such as SimbetTS. Simulations with four real-world datasets show improved performance over SimbetTS, with performance approaching Epidemic routing in some scenarios.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/2000">
    <title>On convex permutations</title>
    <link>http://hdl.handle.net/10023/2000</link>
    <description>Abstract: A selection of points drawn from a convex polygon, no two with the same vertical or horizontal coordinate, yields a permutation in a canonical fashion. We characterise and enumerate those permutations which arise in this manner and exhibit some interesting structural properties of the permutation class they form. We conclude with a permutation analogue of the celebrated Happy Ending Problem.</description>
    <dc:date>2011-05-01T00:00:00Z</dc:date>
    <dc:creator>Albert, M.H.</dc:creator>
    <dc:creator>Linton, Stephen Alexander</dc:creator>
    <dc:creator>Ruskuc, Nik</dc:creator>
    <dc:creator>Vatter, V</dc:creator>
    <dc:creator>Waton, S</dc:creator>
    <dc:description>A selection of points drawn from a convex polygon, no two with the same vertical or horizontal coordinate, yields a permutation in a canonical fashion. We characterise and enumerate those permutations which arise in this manner and exhibit some interesting structural properties of the permutation class they form. We conclude with a permutation analogue of the celebrated Happy Ending Problem.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1967">
    <title>Dominion : an architecture-driven approach to generating efficient constraint solvers</title>
    <link>http://hdl.handle.net/10023/1967</link>
    <description>Abstract: Constraints are used to solve combinatorial problems in a variety of industrial and academic disciplines. However most constraint solvers are designed to be general and monolithic, leading to problems with efficiency, scalability and extensibility. We propose a novel, architecture-driven constraint solver generation framework called Dominion to tackle these issues. For any given problem, Dominion generates a lean and efficient solver tailored to that problem. In this paper, we outline the Dominion approach and its implications for software architecture specification of the solver.
Description: This work is supported by the EPSRC grant “A Constraint Solver Synthesiser” (EP/H004092/1) and SICSA studentships.</description>
    <dc:date>2011-06-01T00:00:00Z</dc:date>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>De Silva, Lakshitha Ramesh</dc:creator>
    <dc:creator>Jefferson, Christopher Anthony</dc:creator>
    <dc:creator>Kotthoff, Lars</dc:creator>
    <dc:creator>Miguel, Ian James</dc:creator>
    <dc:creator>Nightingale, Peter</dc:creator>
    <dc:description>Constraints are used to solve combinatorial problems in a variety of industrial and academic disciplines. However most constraint solvers are designed to be general and monolithic, leading to problems with efficiency, scalability and extensibility. We propose a novel, architecture-driven constraint solver generation framework called Dominion to tackle these issues. For any given problem, Dominion generates a lean and efficient solver tailored to that problem. In this paper, we outline the Dominion approach and its implications for software architecture specification of the solver.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1899">
    <title>PoRAP : an energy aware protocol for cyclic monitoring WSNs</title>
    <link>http://hdl.handle.net/10023/1899</link>
    <description>Abstract: This work starts from the proposition that it is beneficial to conserve communication energy in Wireless Sensor Networks (WSNs). For WSNs there is an added incentive for energy-efficient communication. The power supply of a sensor is often finite and small. Replenishing the power may be impractical and is likely to be costly.   &#xD;
&#xD;
Wireless Sensor Networks are an important area of research. Data about the physical environment may be collected from hostile or friendly environments. Data is then transmitted to a destination without the need for communication cables. There are power and resource constraints upon WSNs, in addition WSN networks are often application specific. Different applications will often have different requirements. Further, WSNs are a shared medium system. The features of the MAC (Medium Access Control) protocol together with the application behaviour shape the communication states of the node. As each of these states have different power requirements the MAC protocol impacts upon the operation and power consumption efficiency.&#xD;
&#xD;
This work focuses on the development of an energy conservation protocol for WSNs where direct communication between sources and a base station is feasible. Whilst the multi-hop approach has been regarded as the underlying communication paradigm in WSNs, there are some scenarios where direct communication is applicable and a significant amount of communication energy can be saved. The Power &amp; Reliability Aware Protocol has been developed. Its main objectives are to provide efficient data communication by means of energy conservation without sacrificing required reliability. This has been achieved by using direct communication, adaptive power adaptation and intelligent scheduling. &#xD;
&#xD;
The results of simulations illustrate the significance of communication energy and adaptive transmission. The relationship between Received Signal Strength Indicator (RSSI) and Packet Reception Rate (PRR) metrics is established and used to identify when power adaptation is required. The experimental results demonstrate an optimal region where lower power can be used without further reduction in the PRR. Communication delays depend upon the packet size whilst two-way propagation delay is very small. Accurate scheduling is achieved through monitoring the clock drift.&#xD;
&#xD;
A set of experiments were carried out to study benefits of direct vs. multi-hop communication. Significant transmitting current can be conserved if the direct communication is used. PoRAP is compared to Sensor-MAC (S-MAC), Berkeley-MAC (B-MAC) and Carrier Sense Multiple Access (CSMA). Parameter settings used in the Great Duck Island (GDI) a production habitat monitoring WSNs were applied. PoRAP consumes the least amount of energy.</description>
    <dc:date>2011-06-23T00:00:00Z</dc:date>
    <dc:creator>Khemapech, Ittipong</dc:creator>
    <dc:description>This work starts from the proposition that it is beneficial to conserve communication energy in Wireless Sensor Networks (WSNs). For WSNs there is an added incentive for energy-efficient communication. The power supply of a sensor is often finite and small. Replenishing the power may be impractical and is likely to be costly.   &#xD;
&#xD;
Wireless Sensor Networks are an important area of research. Data about the physical environment may be collected from hostile or friendly environments. Data is then transmitted to a destination without the need for communication cables. There are power and resource constraints upon WSNs, in addition WSN networks are often application specific. Different applications will often have different requirements. Further, WSNs are a shared medium system. The features of the MAC (Medium Access Control) protocol together with the application behaviour shape the communication states of the node. As each of these states have different power requirements the MAC protocol impacts upon the operation and power consumption efficiency.&#xD;
&#xD;
This work focuses on the development of an energy conservation protocol for WSNs where direct communication between sources and a base station is feasible. Whilst the multi-hop approach has been regarded as the underlying communication paradigm in WSNs, there are some scenarios where direct communication is applicable and a significant amount of communication energy can be saved. The Power &amp; Reliability Aware Protocol has been developed. Its main objectives are to provide efficient data communication by means of energy conservation without sacrificing required reliability. This has been achieved by using direct communication, adaptive power adaptation and intelligent scheduling. &#xD;
&#xD;
The results of simulations illustrate the significance of communication energy and adaptive transmission. The relationship between Received Signal Strength Indicator (RSSI) and Packet Reception Rate (PRR) metrics is established and used to identify when power adaptation is required. The experimental results demonstrate an optimal region where lower power can be used without further reduction in the PRR. Communication delays depend upon the packet size whilst two-way propagation delay is very small. Accurate scheduling is achieved through monitoring the clock drift.&#xD;
&#xD;
A set of experiments were carried out to study benefits of direct vs. multi-hop communication. Significant transmitting current can be conserved if the direct communication is used. PoRAP is compared to Sensor-MAC (S-MAC), Berkeley-MAC (B-MAC) and Carrier Sense Multiple Access (CSMA). Parameter settings used in the Great Duck Island (GDI) a production habitat monitoring WSNs were applied. PoRAP consumes the least amount of energy.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1844">
    <title>A scalable architecture for the demand-driven deployment of location-neutral software services</title>
    <link>http://hdl.handle.net/10023/1844</link>
    <description>Abstract: This thesis presents a scalable service-oriented architecture for the demand-driven deployment of location-neutral software services, using an end-to-end or ‘holistic’ approach to address identified shortcomings of the traditional Web Services model. The architecture presents a multi-endpoint Web Service environment which abstracts over Web Service location and technology and enables the dynamic provision of highly-available Web Services. The model describes mechanisms which provide a framework within which Web Services can be reliably addressed, bound to, and utilized, at any time and from any location. The presented model eases the task of providing a Web Service by consuming deployment and management tasks. It eases the development of consumer agent applications by letting developers program against what a service does, not where it is or whether it is currently deployed. It extends the platform-independent ethos of Web Services by providing deployment mechanisms which can be used independent of implementation and deployment technologies. Crucially, it maintains the Web Service goal of universal interoperability, preserving each actor’s view upon the system so that existing Service Consumers and Service Providers can participate without any modifications to provider agent or consumer agent application code. Lastly, the model aims to enable the efficient consumption of hosting resources by providing mechanisms to dynamically apply and reclaim resources based upon measured consumer demand.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>MacInnis, Robert F.</dc:creator>
    <dc:description>This thesis presents a scalable service-oriented architecture for the demand-driven deployment of location-neutral software services, using an end-to-end or ‘holistic’ approach to address identified shortcomings of the traditional Web Services model. The architecture presents a multi-endpoint Web Service environment which abstracts over Web Service location and technology and enables the dynamic provision of highly-available Web Services. The model describes mechanisms which provide a framework within which Web Services can be reliably addressed, bound to, and utilized, at any time and from any location. The presented model eases the task of providing a Web Service by consuming deployment and management tasks. It eases the development of consumer agent applications by letting developers program against what a service does, not where it is or whether it is currently deployed. It extends the platform-independent ethos of Web Services by providing deployment mechanisms which can be used independent of implementation and deployment technologies. Crucially, it maintains the Web Service goal of universal interoperability, preserving each actor’s view upon the system so that existing Service Consumers and Service Providers can participate without any modifications to provider agent or consumer agent application code. Lastly, the model aims to enable the efficient consumption of hosting resources by providing mechanisms to dynamically apply and reclaim resources based upon measured consumer demand.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1812">
    <title>On the selection of connectivity-based metrics for WSNs using a classification of application behaviour</title>
    <link>http://hdl.handle.net/10023/1812</link>
    <description>Abstract: This paper addresses a subset of Wireless Sensor Network (WSN) applications in which data is produced by a set of resource-constrained source nodes and forwarded to one or more sink nodes. The performance of such applications is affected by the connectivity of the WSN, since nodes must remain connected in order to transfer data from sources to sinks. Designers use metrics to measure and improve the efficacy of WSN applications. We aim to facilitate the choice of connectivity-based metrics by introducing a classification of WSN applications based on their data collection behaviour and indicating the metrics best suited to the evaluation of particular application classes. We argue that no suitable metric currently exists for a significant class of applications with the following characteristics: 1) application data is periodically routed or disseminated from source nodes to one or more sink nodes, and 2) the application can continue to function with the loss of source nodes although its useful network lifetime diminishes as a result. We present a new metric, known as Connectivity Weighted Transfer, which may be used to evaluate WSN applications with these characteristics.</description>
    <dc:date>2010-06-07T00:00:00Z</dc:date>
    <dc:creator>Boyd, Alan</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>This paper addresses a subset of Wireless Sensor Network (WSN) applications in which data is produced by a set of resource-constrained source nodes and forwarded to one or more sink nodes. The performance of such applications is affected by the connectivity of the WSN, since nodes must remain connected in order to transfer data from sources to sinks. Designers use metrics to measure and improve the efficacy of WSN applications. We aim to facilitate the choice of connectivity-based metrics by introducing a classification of WSN applications based on their data collection behaviour and indicating the metrics best suited to the evaluation of particular application classes. We argue that no suitable metric currently exists for a significant class of applications with the following characteristics: 1) application data is periodically routed or disseminated from source nodes to one or more sink nodes, and 2) the application can continue to function with the loss of source nodes although its useful network lifetime diminishes as a result. We present a new metric, known as Connectivity Weighted Transfer, which may be used to evaluate WSN applications with these characteristics.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1811">
    <title>A component-based model and language for wireless sensor network applications</title>
    <link>http://hdl.handle.net/10023/1811</link>
    <description>Abstract: Wireless sensor networks are often used by experts in many different fields to gather data pertinent to their work. Although their expertise may not include software engineering, these users are expected to produce low-level software for a concurrent, real-time and resource-constrained computing environment. In this paper, we introduce a component-based model for wireless sensor network applications and a language, Insense, for supporting the model. An application is modelled as a composition of interacting components and the application model is preserved in the Insense implementation where active components communicate via typed channels. The primary design criteria for Insense include: to abstract over low-level concerns for ease of programming; to permit worst-case space and time usage of programs to be determinable; to support the fractal composition of components whilst eliminating implicit dependencies between them; and, to facilitate the construction of low footprint programs suitable for resource-constrained devices. This paper presents an overview of the component model and Insense, and demonstrates how they meet the above criteria.</description>
    <dc:date>2008-07-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Lewis, Jonathan Peter</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>Wireless sensor networks are often used by experts in many different fields to gather data pertinent to their work. Although their expertise may not include software engineering, these users are expected to produce low-level software for a concurrent, real-time and resource-constrained computing environment. In this paper, we introduce a component-based model for wireless sensor network applications and a language, Insense, for supporting the model. An application is modelled as a composition of interacting components and the application model is preserved in the Insense implementation where active components communicate via typed channels. The primary design criteria for Insense include: to abstract over low-level concerns for ease of programming; to permit worst-case space and time usage of programs to be determinable; to support the fractal composition of components whilst eliminating implicit dependencies between them; and, to facilitate the construction of low footprint programs suitable for resource-constrained devices. This paper presents an overview of the component model and Insense, and demonstrates how they meet the above criteria.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1810">
    <title>A collaborative wireless sensor network routing scheme for reducing energy wastage</title>
    <link>http://hdl.handle.net/10023/1810</link>
    <description>Abstract: A Wireless Sensor Network (WSN) is a network of battery-powered nodes in which data is routed from sources to sinks. Each node consumes energy in order to transmit or receive on its radio. Consequently, an intermediate node that is used by multiple sources will quickly expire. If some sources are unable to route without the presence of that node, any remaining energy they have is wasted. We present a new routing scheme known as node reliance, which rates the degree to which nodes are relied upon in routing. The use of node reliance reduces the contention for intermediate nodes, permitting sources to route to sinks for longer and thus maximising the useful lifetime of the network.</description>
    <dc:date>2010-05-01T00:00:00Z</dc:date>
    <dc:creator>Boyd, Alan</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:description>A Wireless Sensor Network (WSN) is a network of battery-powered nodes in which data is routed from sources to sinks. Each node consumes energy in order to transmit or receive on its radio. Consequently, an intermediate node that is used by multiple sources will quickly expire. If some sources are unable to route without the presence of that node, any remaining energy they have is wasted. We present a new routing scheme known as node reliance, which rates the degree to which nodes are relied upon in routing. The use of node reliance reduces the contention for intermediate nodes, permitting sources to route to sinks for longer and thus maximising the useful lifetime of the network.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1809">
    <title>ArchWare ADL release 1 : A user reference manual</title>
    <link>http://hdl.handle.net/10023/1809</link>
    <description>Abstract: This documentation of deliverable D4.3 is intended to serve as a user reference manual for the first release of ArchWare ADL.</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Mickan, K</dc:creator>
    <dc:creator>Norcross, Stuart John</dc:creator>
    <dc:description>This documentation of deliverable D4.3 is intended to serve as a user reference manual for the first release of ArchWare ADL.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1808">
    <title>ProcessBase Standard Library Reference Manual (Version 1.0.4)</title>
    <link>http://hdl.handle.net/10023/1808</link>
    <description>Abstract: This describes the library mechanism for the ProcessBase language being developed as part of the Compliant System Architecture project.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:creator>Balasubramaniam, D.</dc:creator>
    <dc:creator>Greenwood, M.</dc:creator>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Mayes, K.</dc:creator>
    <dc:creator>Munro, D. S.</dc:creator>
    <dc:creator>Warboys, B. C.</dc:creator>
    <dc:description>This describes the library mechanism for the ProcessBase language being developed as part of the Compliant System Architecture project.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1807">
    <title>ProcessBase Abstract Machine Manual (Version 2.0.6)</title>
    <link>http://hdl.handle.net/10023/1807</link>
    <description>Abstract: This describes the ProcessBase abstract machine being developed as part of the Compliant System Architecture project.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:creator>Balasubramaniam, D.</dc:creator>
    <dc:creator>Greenwood, M.</dc:creator>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Mayes, K.</dc:creator>
    <dc:creator>Munro, D. S.</dc:creator>
    <dc:creator>Warboys, B. C.</dc:creator>
    <dc:description>This describes the ProcessBase abstract machine being developed as part of the Compliant System Architecture project.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1806">
    <title>ProcessBase Reference Manual (Version 1.0.6)</title>
    <link>http://hdl.handle.net/10023/1806</link>
    <description>Abstract: This describes the ProcessBase language being developed as part of the Compliant System Architecture project.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:creator>Balasubramaniam, D.</dc:creator>
    <dc:creator>Greenwood, M.</dc:creator>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Mayes, K.</dc:creator>
    <dc:creator>Munro, D. S.</dc:creator>
    <dc:creator>Warboys, B. C.</dc:creator>
    <dc:description>This describes the ProcessBase language being developed as part of the Compliant System Architecture project.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1804">
    <title>Towards verifying correctness of wireless sensor network applications using insense and spin</title>
    <link>http://hdl.handle.net/10023/1804</link>
    <description>Abstract: The design and implementation of wireless sensor network applications often require domain experts, who may lack expertise in software engineering, to produce resource-constrained, concurrent, real-time software without the support of high-level software engineering facilities. The Insense language aims to address this mismatch by allowing the complexities of synchronisation, memory management and event-driven programming to be borne by the language implementation rather than by the programmer. The main contribution of this paper is all initial step towards verifying the correctness of WSN applications with a focus on concurrency. We model part of the synchronisation mechanism of the Insense language implementation using Promela constructs and verify its correctness using SPIN. We demonstrate how a previously published version of the mechanism is shown to be incorrect by SPIN, and give complete verification results for the revised mechanism.</description>
    <dc:date>2009-01-01T00:00:00Z</dc:date>
    <dc:creator>Sharma, Oliver</dc:creator>
    <dc:creator>Lewis, Jonathan</dc:creator>
    <dc:creator>Miller, Alice</dc:creator>
    <dc:creator>Dearle, Al</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Sventek, Joe</dc:creator>
    <dc:description>The design and implementation of wireless sensor network applications often require domain experts, who may lack expertise in software engineering, to produce resource-constrained, concurrent, real-time software without the support of high-level software engineering facilities. The Insense language aims to address this mismatch by allowing the complexities of synchronisation, memory management and event-driven programming to be borne by the language implementation rather than by the programmer. The main contribution of this paper is all initial step towards verifying the correctness of WSN applications with a focus on concurrency. We model part of the synchronisation mechanism of the Insense language implementation using Promela constructs and verify its correctness using SPIN. We demonstrate how a previously published version of the mechanism is shown to be incorrect by SPIN, and give complete verification results for the revised mechanism.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1803">
    <title>Collaboration and composition : Issues for a second generation process language</title>
    <link>http://hdl.handle.net/10023/1803</link>
    <description>Abstract: Over the past decade a variety of process languages have been defined and applied to software engineering environments. The idea of using a process language to encode a software process as a "process model", and enacting this using a process-sensitive environment is now well established. Many prototype process-sensitive environments have been developed; but their use in earnest has been limited. We are designing a second generation process language which is a significant departure from current conventional thinking. Firstly a process is viewed as a set of mediated collaborations rather than a set of partially ordered activities. Secondly emphasis is given to how process models are developed, used, and enhanced over a potentially long lifetime. In particular the issue of composing both new and existing model fragments is central to our development approach. This paper outlines these features, and gives the motivations behind them. It also presents a view of process support for software engineering drawing on our decade of experience in exploiting a "first generation" process language, and our experience in designing and exploiting programming languages.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Warboys, B C</dc:creator>
    <dc:creator>Balasubramaniam, D</dc:creator>
    <dc:creator>Greenwood, R M</dc:creator>
    <dc:creator>Kirby, G N C</dc:creator>
    <dc:creator>Mayes, K</dc:creator>
    <dc:creator>Morrison, R</dc:creator>
    <dc:creator>Munro, D S</dc:creator>
    <dc:description>Over the past decade a variety of process languages have been defined and applied to software engineering environments. The idea of using a process language to encode a software process as a "process model", and enacting this using a process-sensitive environment is now well established. Many prototype process-sensitive environments have been developed; but their use in earnest has been limited. We are designing a second generation process language which is a significant departure from current conventional thinking. Firstly a process is viewed as a set of mediated collaborations rather than a set of partially ordered activities. Secondly emphasis is given to how process models are developed, used, and enhanced over a potentially long lifetime. In particular the issue of composing both new and existing model fragments is central to our development approach. This paper outlines these features, and gives the motivations behind them. It also presents a view of process support for software engineering drawing on our decade of experience in exploiting a "first generation" process language, and our experience in designing and exploiting programming languages.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1798">
    <title>Active architecture for pervasive contextual services</title>
    <link>http://hdl.handle.net/10023/1798</link>
    <description>Abstract: Pervasive services may be defined as services that are available "to any client (anytime, anywhere)". Here we focus on the software and network infrastructure required to support pervasive contextual services operating over a wide area. One of the key requirements is a matching service capable of as-similating and filtering information from various sources and determining matches relevant to those services. We consider some of the challenges in engineering a globally distributed matching service that is scalable, manageable, and able to evolve incrementally as usage patterns, data formats, services, network topologies and deployment technologies change. We outline an approach based on the use of a peer-to-peer architecture to distribute user events and data, and to support the deployment and evolution of the infrastructure itself.
Description: International Workshop on Middleware for Pervasive and Ad-hoc Computing (MPAC 2003), ACM/IFIP/USENIX International Middleware Conference (Middleware 2003), Rio de Janeiro, Brazil</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Dunlop, Mark</dc:creator>
    <dc:creator>Connor, Richard</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:description>Pervasive services may be defined as services that are available "to any client (anytime, anywhere)". Here we focus on the software and network infrastructure required to support pervasive contextual services operating over a wide area. One of the key requirements is a matching service capable of as-similating and filtering information from various sources and determining matches relevant to those services. We consider some of the challenges in engineering a globally distributed matching service that is scalable, manageable, and able to evolve incrementally as usage patterns, data formats, services, network topologies and deployment technologies change. We outline an approach based on the use of a peer-to-peer architecture to distribute user events and data, and to support the deployment and evolution of the infrastructure itself.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1797">
    <title>ACT : a tool for performance driven evolution of distributed applications</title>
    <link>http://hdl.handle.net/10023/1797</link>
    <description>Abstract: There are two main stages to evolving distributed applications in the manner desired by application builders: first deciding which changes are required and when, and second making the changes. Understanding the performance characteristics of distributed applications is essential for the first stage, while structural reflection over the source code may be used to achieve the latter. Here we present an automated configuring tool, ACT, that may be used to explore the need for change by empirically measuring application performance. We aim to use the data generated by ACT as input to the evolution process, informing the system how to evolve to new and improved architectural configurations. ACT is designed to be generic in that it may aid performance-driven evolution for a wide range of applications. As a case study we use DC-Mailbox, a back-end mail server from Data Connection Limited (DCL) that stores, retrieves and manages e-mail messages for a potentially large number of users.</description>
    <dc:date>2001-01-01T00:00:00Z</dc:date>
    <dc:creator>Sage, Aled</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>There are two main stages to evolving distributed applications in the manner desired by application builders: first deciding which changes are required and when, and second making the changes. Understanding the performance characteristics of distributed applications is essential for the first stage, while structural reflection over the source code may be used to achieve the latter. Here we present an automated configuring tool, ACT, that may be used to explore the need for change by empirically measuring application performance. We aim to use the data generated by ACT as input to the evolution process, informing the system how to evolve to new and improved architectural configurations. ACT is designed to be generic in that it may aid performance-driven evolution for a wide range of applications. As a case study we use DC-Mailbox, a back-end mail server from Data Connection Limited (DCL) that stores, retrieves and manages e-mail messages for a potentially large number of users.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1796">
    <title>A recursive software architecture for location-aware services</title>
    <link>http://hdl.handle.net/10023/1796</link>
    <description>Abstract: A GLObal Smart Space (GLOSS) provides support for interaction amongst people, artefacts and places while taking account of both context and movement on a global scale. Crucial to the definition of a GLOSS is the provision of a set of services, which we term location-aware services, that detect, convey, store and exploit location information. We first describe a framework (ontology), using a small set of concepts, for defining a GLOSS. This allows different services to be implemented without duplication of the basic mechanisms, and abstracts over specific details of the technologies used, thereby accommodating both heterogeneity and evolution. Secondly, we introduce a set of location-aware metaphors that are defined in terms of the GLOSS concepts. Thirdly, we propose a recursive software architecture to support the implementation of the metaphors within the framework. Finally we outline how the software architecture may be applied recursively to provide scalability for location-aware services in the global context.
Description: Submitted to UbiComp 2002</description>
    <dc:date>2002-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Mullen, Kevin</dc:creator>
    <dc:creator>Yang, Y</dc:creator>
    <dc:creator>Connor, R C H</dc:creator>
    <dc:creator>Welen, P</dc:creator>
    <dc:creator>Wilson, A</dc:creator>
    <dc:description>A GLObal Smart Space (GLOSS) provides support for interaction amongst people, artefacts and places while taking account of both context and movement on a global scale. Crucial to the definition of a GLOSS is the provision of a set of services, which we term location-aware services, that detect, convey, store and exploit location information. We first describe a framework (ontology), using a small set of concepts, for defining a GLOSS. This allows different services to be implemented without duplication of the basic mechanisms, and abstracts over specific details of the technologies used, thereby accommodating both heterogeneity and evolution. Secondly, we introduce a set of location-aware metaphors that are defined in terms of the GLOSS concepts. Thirdly, we propose a recursive software architecture to support the implementation of the metaphors within the framework. Finally we outline how the software architecture may be applied recursively to provide scalability for location-aware services in the global context.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1795">
    <title>The ArchWare ADL : Definition of the textual concrete syntax</title>
    <link>http://hdl.handle.net/10023/1795</link>
    <description>Abstract: This deliverable presents the textual concrete syntax of the core and stylebased ArchWare Architecture Description Language (ADL).</description>
    <dc:date>2002-01-01T00:00:00Z</dc:date>
    <dc:creator>Oquendo, F.</dc:creator>
    <dc:creator>Cîmpan, S.</dc:creator>
    <dc:creator>Balasubramaniam, D.</dc:creator>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:description>This deliverable presents the textual concrete syntax of the core and stylebased ArchWare Architecture Description Language (ADL).</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1794">
    <title>Report on the XBase project</title>
    <link>http://hdl.handle.net/10023/1794</link>
    <description>Abstract: This project addressed the conceptual fundamentals of data storage, investigating techniques for provision of highly generic storage facilities that can be tailored to produce various individually customised storage infrastructures, compliant to the needs of particular applications. This requires the separation of mechanism and policy wherever possible. Aspirations include: actors, whether users or individual processes, should be able to bind to, update and manipulate data and programs transparently with respect to their respective locations; programs should be expressed independently of the storage and network technology involved in their execution; storage facilities should be structure-neutral so that actors can impose multiple interpretations over information, simultaneously and safely; information should not be discarded so that arbitrary historical views are supported; raw stored information should be open to all; where security restrictions on its use are required this should be achieved using cryptographic techniques. The key advances of the research were:1) the identification of a candidate set of minimal storage system building blocks, which are sufficiently simple to avoid encapsulating policy where it cannot be customised by applications, and composable to build highly flexible storage architectures 2) insight into the nature of append-only storage components, and the issues arising from their application to common storage use-cases.</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:description>This project addressed the conceptual fundamentals of data storage, investigating techniques for provision of highly generic storage facilities that can be tailored to produce various individually customised storage infrastructures, compliant to the needs of particular applications. This requires the separation of mechanism and policy wherever possible. Aspirations include: actors, whether users or individual processes, should be able to bind to, update and manipulate data and programs transparently with respect to their respective locations; programs should be expressed independently of the storage and network technology involved in their execution; storage facilities should be structure-neutral so that actors can impose multiple interpretations over information, simultaneously and safely; information should not be discarded so that arbitrary historical views are supported; raw stored information should be open to all; where security restrictions on its use are required this should be achieved using cryptographic techniques. The key advances of the research were:1) the identification of a candidate set of minimal storage system building blocks, which are sufficiently simple to avoid encapsulating policy where it cannot be customised by applications, and composable to build highly flexible storage architectures 2) insight into the nature of append-only storage components, and the issues arising from their application to common storage use-cases.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1793">
    <title>Current directions in hyper-programming</title>
    <link>http://hdl.handle.net/10023/1793</link>
    <description>Abstract: The traditional representation of a program is as a linear sequence of text. At some stage in the execution sequence the source text is checked for type correctness and its translated form is linked to values in the environment. When this is performed early in the execution process, confidence in the correctness of the program is raised. During program execution, tools such as debuggers are used to inspect the running state of programs. Relating this state to the linear text is often problematical. We have developed a technique, hyperprogramming, that allows the representations of source programs to include direct links (hyper-links) to values, including code, that already exist in the environment. Hyperprogramming achieves our two objectives of being able to link earlier than before, at program composition time, and to represent sharing and thus closure and through this the run-time state of a program. This paper reviews our work on hyper-programming and proposes some current research areas.</description>
    <dc:date>2000-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, R</dc:creator>
    <dc:creator>Connor, R C H</dc:creator>
    <dc:creator>Cutts, Q I</dc:creator>
    <dc:creator>Dearle, A</dc:creator>
    <dc:creator>Farkas, A</dc:creator>
    <dc:creator>Kirby, G N C</dc:creator>
    <dc:creator>McGettrick, R</dc:creator>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:description>The traditional representation of a program is as a linear sequence of text. At some stage in the execution sequence the source text is checked for type correctness and its translated form is linked to values in the environment. When this is performed early in the execution process, confidence in the correctness of the program is raised. During program execution, tools such as debuggers are used to inspect the running state of programs. Relating this state to the linear text is often problematical. We have developed a technique, hyperprogramming, that allows the representations of source programs to include direct links (hyper-links) to values, including code, that already exist in the environment. Hyperprogramming achieves our two objectives of being able to link earlier than before, at program composition time, and to represent sharing and thus closure and through this the run-time state of a program. This paper reviews our work on hyper-programming and proposes some current research areas.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1792">
    <title>A reflective approach to providing flexibility in application distribution</title>
    <link>http://hdl.handle.net/10023/1792</link>
    <description>Abstract: Current middleware systems suffer from drawbacks. Often one is forced to make decisions early in the design process about which classes may participate in inter-machine communication. Further, application level and middleware specific semantics cannot be separated forcing an unnatural design. The RAFDA project proposes to adress these deficiencies by creating an adaptive, reflective framework that enables the transformation of non-distributed applications into isomorphic applications whose distribution architecture is flexible. This paper describes the code transformation techniques that have been developed as part of the project. The system enables the distribution of a program according to a flexible configuration without user intervention. Proxy objects can then be substituted, permitting cross-address space communication. The distributed program can adapt to its environment by dynamically altering its distribution boundaries.
Description: 2nd International Workshop on Reflective and Adaptive Middleware</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Rebón Portillo, Álvaro</dc:creator>
    <dc:creator>Walker, Scott</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:description>Current middleware systems suffer from drawbacks. Often one is forced to make decisions early in the design process about which classes may participate in inter-machine communication. Further, application level and middleware specific semantics cannot be separated forcing an unnatural design. The RAFDA project proposes to adress these deficiencies by creating an adaptive, reflective framework that enables the transformation of non-distributed applications into isomorphic applications whose distribution architecture is flexible. This paper describes the code transformation techniques that have been developed as part of the project. The system enables the distribution of a program according to a flexible configuration without user intervention. Proxy objects can then be substituted, permitting cross-address space communication. The distributed program can adapt to its environment by dynamically altering its distribution boundaries.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1791">
    <title>Reflection and reification in process system evolution : experience and opportunity</title>
    <link>http://hdl.handle.net/10023/1791</link>
    <description>Abstract: Process systems aim to support many people involved in many processes over a long period of time. They provide facilities for storing and manipulating processes in both the representation and enactment domains. This paper argues that process systems should support ongoing transformations between these domains, at any level of granularity. The notion of creating a enactment model instance from a representation is merely one restricted transformation. Especially when process evolution is considered the case for thinking in terms of model instances is weak. This argument is supported by our experience of the ProcessWeb process system facilities for developing and evolving process models. The idea of hyper-code, which supports very general transformations between representation and enactment domains, is described. This offers the prospect of further improvements in this area.</description>
    <dc:date>2001-01-01T00:00:00Z</dc:date>
    <dc:creator>Greenwood, RM</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Mayes, K</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Seet, W</dc:creator>
    <dc:creator>Warboys, BC</dc:creator>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:description>Process systems aim to support many people involved in many processes over a long period of time. They provide facilities for storing and manipulating processes in both the representation and enactment domains. This paper argues that process systems should support ongoing transformations between these domains, at any level of granularity. The notion of creating a enactment model instance from a representation is merely one restricted transformation. Especially when process evolution is considered the case for thinking in terms of model instances is weak. This argument is supported by our experience of the ProcessWeb process system facilities for developing and evolving process models. The idea of hyper-code, which supports very general transformations between representation and enactment domains, is described. This offers the prospect of further improvements in this area.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1790">
    <title>Hyper-code revisited : unifying program source, executable and data</title>
    <link>http://hdl.handle.net/10023/1790</link>
    <description>Abstract: The technique of hyper-programming allows program representations held in a persistent store to contain embedded links to persistent code and data. In 1994, Connor et al proposed extending this to hyper-code, in which program source, executable code and data are all represented to the user in exactly the same form. Here we explore the concept of hyper-code in greater detail and present a set of abstract language-independent operations on which various concrete systems can be based. These operations (explode, implode, evaluate, root and edit) are provided by a single user interface tool that subsumes the functions of both an object browser and a program editor. We then describe a particular implementation using PJama (persistent Java) and examine the impact of several language features on the resulting system.</description>
    <dc:date>2001-01-01T00:00:00Z</dc:date>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>The technique of hyper-programming allows program representations held in a persistent store to contain embedded links to persistent code and data. In 1994, Connor et al proposed extending this to hyper-code, in which program source, executable code and data are all represented to the user in exactly the same form. Here we explore the concept of hyper-code in greater detail and present a set of abstract language-independent operations on which various concrete systems can be based. These operations (explode, implode, evaluate, root and edit) are provided by a single user interface tool that subsumes the functions of both an object browser and a program editor. We then describe a particular implementation using PJama (persistent Java) and examine the impact of several language features on the resulting system.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1789">
    <title>Process support for evolving active architectures</title>
    <link>http://hdl.handle.net/10023/1789</link>
    <description>Abstract: Long-lived, architecture-based software. systems are increasingly important. Effective process support for these systems depends upon recognising their compositional nature and the active, role of their architecture in guiding evolutionary development. Current process approaches have difficulty with run-time architecture changes that are not known a priori, and dealing with extant data during system evolution. This paper describes an approach that deals with these issues. It is based on a process-aware architecture description language (ADL), with explicit compose and decompose constructs, and with a hyper-code representation for dealing with extant data and code. An example is given to illustrate the ease-of-use benefits of this approach.</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Greenwood, R M</dc:creator>
    <dc:creator>Balasubramaniam, D</dc:creator>
    <dc:creator>Cimpan, S</dc:creator>
    <dc:creator>Kirby, G N C</dc:creator>
    <dc:creator>Mickan, K</dc:creator>
    <dc:creator>Morrison, R</dc:creator>
    <dc:creator>Oquendo, F</dc:creator>
    <dc:creator>Robertson, I</dc:creator>
    <dc:creator>Seet, W</dc:creator>
    <dc:creator>Snowdon, B</dc:creator>
    <dc:creator>Warboys, B C</dc:creator>
    <dc:creator>Zirintsis, E</dc:creator>
    <dc:description>Long-lived, architecture-based software. systems are increasingly important. Effective process support for these systems depends upon recognising their compositional nature and the active, role of their architecture in guiding evolutionary development. Current process approaches have difficulty with run-time architecture changes that are not known a priori, and dealing with extant data during system evolution. This paper describes an approach that deals with these issues. It is based on a process-aware architecture description language (ADL), with explicit compose and decompose constructs, and with a hyper-code representation for dealing with extant data and code. An example is given to illustrate the ease-of-use benefits of this approach.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1788">
    <title>Architectural support for Global Smart Spaces</title>
    <link>http://hdl.handle.net/10023/1788</link>
    <description>Abstract: A GLObal Smart Space (GLOSS) provides support for interaction amongst people, artefacts and places while taking account of both context and movement on a global scale. Crucial to the definition of a GLOSS is the provision of a set of location-aware services that detect, convey, store and exploit location information. We use one of these services, hearsay, to illustrate the implementation dimensions of a GLOSS. The focus of the paper is on both local and global software architecture to support the implementation of such services. The local architecture is based on XML,pipelines and is used to construct location-aware components. The global architecture is based on a hybrid peer-to-peer routing scheme and provides the local architectures with the means to communicate in the global context.</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, A</dc:creator>
    <dc:creator>Kirby, G</dc:creator>
    <dc:creator>Morrison, R</dc:creator>
    <dc:creator>McCarthy, Andrew John</dc:creator>
    <dc:creator>Mullen, Kevin Matthew</dc:creator>
    <dc:creator>Yang, Yang</dc:creator>
    <dc:creator>Connor, R</dc:creator>
    <dc:creator>Welen, P</dc:creator>
    <dc:creator>Wilson, A</dc:creator>
    <dc:description>A GLObal Smart Space (GLOSS) provides support for interaction amongst people, artefacts and places while taking account of both context and movement on a global scale. Crucial to the definition of a GLOSS is the provision of a set of location-aware services that detect, convey, store and exploit location information. We use one of these services, hearsay, to illustrate the implementation dimensions of a GLOSS. The focus of the paper is on both local and global software architecture to support the implementation of such services. The local architecture is based on XML,pipelines and is used to construct location-aware components. The global architecture is based on a hybrid peer-to-peer routing scheme and provides the local architectures with the means to communicate in the global context.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1787">
    <title>A persistent hyper-programming system</title>
    <link>http://hdl.handle.net/10023/1787</link>
    <description>Abstract: We demonstrate the use of a hyper-programming system in building persistent applications. This allows program representations to contain type-safe links to persistent objects embedded directly within the source code. The benefits include improved efficiency and potential for static program checking, reduced programming effort and the ability to display meaningful source-level representations for first-class procedure values. Hyper-programming represents a completely new style of programming which is only possible in a persistent programming system.</description>
    <dc:date>1997-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Munro, DS</dc:creator>
    <dc:creator>Connor, RCH</dc:creator>
    <dc:creator>Cutts, QI</dc:creator>
    <dc:description>We demonstrate the use of a hyper-programming system in building persistent applications. This allows program representations to contain type-safe links to persistent objects embedded directly within the source code. The benefits include improved efficiency and potential for static program checking, reduced programming effort and the ability to display meaningful source-level representations for first-class procedure values. Hyper-programming represents a completely new style of programming which is only possible in a persistent programming system.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1786">
    <title>Evolving database systems : a persistent view</title>
    <link>http://hdl.handle.net/10023/1786</link>
    <description>Abstract: Orthogonal persistence ensures that information will exist for as long as it is useful, for which it must have the ability to evolve with the growing needs of the application systems that use it. This may involve evolution of the data, meta-data, programs and applications, as well as the users' perception of what the information models. The need for evolution has been well recognised in the traditional (data processing) database community and the cost of failing to evolve can be gauged by the resources being invested in interfacing with legacy systems. Zdonik has identified new classes of application, such as scientific, financial and hypermedia, that require new approaches to evolution. These applications are characterised by their need to store large amounts of data whose structure must evolve as it is discovered by the applications that use it. This requires that the data be mapped dynamically to an evolving schema. Here, we discuss the problems of evolution in these new classes of application within an orthogonally persistent environment and outline some approaches to these problems.
Description: Submitted to POS7</description>
    <dc:date>1997-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:creator>Connor, R. C. H.</dc:creator>
    <dc:creator>Zdonik, S. B.</dc:creator>
    <dc:description>Orthogonal persistence ensures that information will exist for as long as it is useful, for which it must have the ability to evolve with the growing needs of the application systems that use it. This may involve evolution of the data, meta-data, programs and applications, as well as the users' perception of what the information models. The need for evolution has been well recognised in the traditional (data processing) database community and the cost of failing to evolve can be gauged by the resources being invested in interfacing with legacy systems. Zdonik has identified new classes of application, such as scientific, financial and hypermedia, that require new approaches to evolution. These applications are characterised by their need to store large amounts of data whose structure must evolve as it is discovered by the applications that use it. This requires that the data be mapped dynamically to an evolving schema. Here, we discuss the problems of evolution in these new classes of application within an orthogonally persistent environment and outline some approaches to these problems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1785">
    <title>Flask : an architecture supporting concurrent distributed persistent applications</title>
    <link>http://hdl.handle.net/10023/1785</link>
    <description>Abstract: Distributed application systems have become a popular and provenly viable computing paradigm. There are a number of reasons for this such as: the geographical dispersal of information; the improved reliability of multiple computer systems; and the possibility of concurrent execution of applications. As yet no single model of distribution has been pervasive and since the impact of failure semantics varies with the software architecture of applications, it is unlikely that one model will ever dominate. It is difficult to assess or even to compare the attributes of different models especially when run over the same data. This is often made more difficult in that most implementations of distributed models are closed systems with built-in protocols, failure reporting and concurrency control. The Flask architecture, presented here, takes the approach of providing a layered architecture which has the flexibility to support different models of distribution that can run over the same data. To demonstrate the feasibility of Flask an example distributed application is described using the architecture.
Description: Submitted to BNCOD96</description>
    <dc:date>1997-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Connor, R. C. H.</dc:creator>
    <dc:creator>Cutts, Q. I.</dc:creator>
    <dc:creator>Morrison, R.</dc:creator>
    <dc:creator>Munro, D. S.</dc:creator>
    <dc:creator>Scheuerl, S.</dc:creator>
    <dc:description>Distributed application systems have become a popular and provenly viable computing paradigm. There are a number of reasons for this such as: the geographical dispersal of information; the improved reliability of multiple computer systems; and the possibility of concurrent execution of applications. As yet no single model of distribution has been pervasive and since the impact of failure semantics varies with the software architecture of applications, it is unlikely that one model will ever dominate. It is difficult to assess or even to compare the attributes of different models especially when run over the same data. This is often made more difficult in that most implementations of distributed models are closed systems with built-in protocols, failure reporting and concurrency control. The Flask architecture, presented here, takes the approach of providing a layered architecture which has the flexibility to support different models of distribution that can run over the same data. To demonstrate the feasibility of Flask an example distributed application is described using the architecture.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1784">
    <title>OCB : An object/class browser for Java</title>
    <link>http://hdl.handle.net/10023/1784</link>
    <description>Abstract: This paper describes an interactive browser used for exploring the structure of Java objects and their classes. It is implemented in Java and uses JDK 1.1 core reflection classes to discover details of the objects passed to it. The initial motivation for development arose from the need to browse persistent Java stores; the browser may also be useful as a symbolic debugging and visualisation tool.</description>
    <dc:date>1997-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>This paper describes an interactive browser used for exploring the structure of Java objects and their classes. It is implemented in Java and uses JDK 1.1 core reflection classes to discover details of the objects passed to it. The initial motivation for development arose from the need to browse persistent Java stores; the browser may also be useful as a symbolic debugging and visualisation tool.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1768">
    <title>Linguistic reflection in Java : a quantitative assessment</title>
    <link>http://hdl.handle.net/10023/1768</link>
    <description>Abstract: Linguistic reflection allows a running program to generate new program fragments and to integrate these into its own execution. The advantages of the technique include attaining high levels of genericity and accommodating system evolution. Here its use to provide generic programs in Java is compared for a particular example, natural join, against alternative implementation approaches.</description>
    <dc:date>1998-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Stemple, D</dc:creator>
    <dc:description>Linguistic reflection allows a running program to generate new program fragments and to integrate these into its own execution. The advantages of the technique include attaining high levels of genericity and accommodating system evolution. Here its use to provide generic programs in Java is compared for a particular example, natural join, against alternative implementation approaches.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1761">
    <title>Instances and connectors : issues for a second generation process language</title>
    <link>http://hdl.handle.net/10023/1761</link>
    <description>Abstract: Over the past decade a variety of process languages have been defined, used and evaluated. It is now possible to consider second generation languages based on this experience. Rather than develop a second generation wish list this position paper explores two issues: instances and connectors. Instances relate to the relationship between a process model as a description and the, possibly multiple, enacting instances which are created from it. Connectors refers to the issue of concurrency control and achieving a higher level of abstraction in how parts of a model interact. We believe that these issues are key to developing systems which can effectively support business processes, and that they have not received sufficient attention within the process modelling community. Through exploring these issues we also illustrate our approach to designing a second generation process language.
Description: This work is supported by UK EPSRC grants GR/L34433 and GR/L32699</description>
    <dc:date>1998-01-01T00:00:00Z</dc:date>
    <dc:creator>Warboys, BC</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Greenwood, RM</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Mayes, K</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Munro, DS</dc:creator>
    <dc:description>Over the past decade a variety of process languages have been defined, used and evaluated. It is now possible to consider second generation languages based on this experience. Rather than develop a second generation wish list this position paper explores two issues: instances and connectors. Instances relate to the relationship between a process model as a description and the, possibly multiple, enacting instances which are created from it. Connectors refers to the issue of concurrency control and achieving a higher level of abstraction in how parts of a model interact. We believe that these issues are key to developing systems which can effectively support business processes, and that they have not received sufficient attention within the process modelling community. Through exploring these issues we also illustrate our approach to designing a second generation process language.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1760">
    <title>A persistent view of encapsulation</title>
    <link>http://hdl.handle.net/10023/1760</link>
    <description>Abstract: Orthogonal persistence ensures that information will exist for as long as it is useful, for which it must have the ability to evolve with the growing needs of the application systems that use it. The need for evolution has been well recognised in the traditional (data processing) database community and the cost of failing to evolve can be gauged by the resources being invested in interfacing with legacy systems. Zdonik has identified new classes of application, such as scientific, financial and hypermedia, that require new approaches to evolution. These applications are characterised by their need to store large amounts of data whose structure must evolve as it is discovered. Here, we discuss one particular problem of evolution in these new classes of application in relation to Object-Oriented Database Systems (OODBS): that of the tension between the encapsulation of data within objects and the need for the data be mapped dynamically to an evolving schema. We outline a solution taken from our persistent programming experience and show how it may be used in the O2 OODBS.
Description: This work was supported by EPSRC Grants GR/J67611 “Delivering the Benefits of Persistence” and GR/L32699 “Compliant Systems Architecture”, and the ESPRIT Working Group EP22552 “PASTEL”.</description>
    <dc:date>1998-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>Orthogonal persistence ensures that information will exist for as long as it is useful, for which it must have the ability to evolve with the growing needs of the application systems that use it. The need for evolution has been well recognised in the traditional (data processing) database community and the cost of failing to evolve can be gauged by the resources being invested in interfacing with legacy systems. Zdonik has identified new classes of application, such as scientific, financial and hypermedia, that require new approaches to evolution. These applications are characterised by their need to store large amounts of data whose structure must evolve as it is discovered. Here, we discuss one particular problem of evolution in these new classes of application in relation to Object-Oriented Database Systems (OODBS): that of the tension between the encapsulation of data within objects and the need for the data be mapped dynamically to an evolving schema. We outline a solution taken from our persistent programming experience and show how it may be used in the O2 OODBS.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1759">
    <title>Variadic genericity through linguistic reflection : a performance evaluation</title>
    <link>http://hdl.handle.net/10023/1759</link>
    <description>Abstract: The use of variadic genericity within schema definitions increases the variety of databases that may be captured by a single specification. For example, a class of databases of engineering part objects, in which each database instance varies in the types of the parts and the number of part types, should lend itself to a single definition. However, precise specification of such a schema is beyond the capability of polymorphic type systems and schema definition languages. It is possible to capture such generality by introducing a level of interpretation, in which the variation in types and in the number of fields is encoded in a general data structure. Queries that interpret the encoded information can be written against this general data structure. An alternative approach to supporting such variadic genericity is to generate a precise database containing tailored data structures and queries for each different instance of the virtual schema.1 This involves source code generation and dynamic compilation, a process known as linguistic reflection. The motivation is that once generated, the specific queries may execute more efficiently than their generic counter-parts, since the generic code is “compiled away”. This paper compares the two approaches and gives performance measurements for an example using the persistent languages Napier88 and PJama.
Description: This work is partially supported by the EPSRC through Grant GR/L32699 “Compliant System Architecture” and by ESPRIT through Working Group EP22552 “PASTEL”.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>The use of variadic genericity within schema definitions increases the variety of databases that may be captured by a single specification. For example, a class of databases of engineering part objects, in which each database instance varies in the types of the parts and the number of part types, should lend itself to a single definition. However, precise specification of such a schema is beyond the capability of polymorphic type systems and schema definition languages. It is possible to capture such generality by introducing a level of interpretation, in which the variation in types and in the number of fields is encoded in a general data structure. Queries that interpret the encoded information can be written against this general data structure. An alternative approach to supporting such variadic genericity is to generate a precise database containing tailored data structures and queries for each different instance of the virtual schema.1 This involves source code generation and dynamic compilation, a process known as linguistic reflection. The motivation is that once generated, the specific queries may execute more efficiently than their generic counter-parts, since the generic code is “compiled away”. This paper compares the two approaches and gives performance measurements for an example using the persistent languages Napier88 and PJama.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1758">
    <title>Linguistic reflection in Java</title>
    <link>http://hdl.handle.net/10023/1758</link>
    <description>Abstract: Reflective systems allow their own structures to be altered from within. Here we are concerned with a style of reflection, called linguistic reflection, which is the ability of a running program to generate new program fragments and to integrate these into its own execution. In particular we describe how this kind of reflection may be provided in the compiler-based, strongly typed object-oriented programming language Java. The advantages of the programming technique include attaining high levels of genericity and accommodating system evolution. These advantages are illustrated by an example taken from persistent programming which shows how linguistic reflection allows functionality (program code) to be generated on demand (Just-In-Time) from a generic specification and integrated into the evolving running program. The technique is evaluated against alternative implementation approaches with respect to efficiency, safety and ease of use.</description>
    <dc:date>1998-08-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Stemple, David Wilber</dc:creator>
    <dc:description>Reflective systems allow their own structures to be altered from within. Here we are concerned with a style of reflection, called linguistic reflection, which is the ability of a running program to generate new program fragments and to integrate these into its own execution. In particular we describe how this kind of reflection may be provided in the compiler-based, strongly typed object-oriented programming language Java. The advantages of the programming technique include attaining high levels of genericity and accommodating system evolution. These advantages are illustrated by an example taken from persistent programming which shows how linguistic reflection allows functionality (program code) to be generated on demand (Just-In-Time) from a generic specification and integrated into the evolving running program. The technique is evaluated against alternative implementation approaches with respect to efficiency, safety and ease of use.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1745">
    <title>First Smart Spaces</title>
    <link>http://hdl.handle.net/10023/1745</link>
    <description>Abstract: This document describes the Gloss software currently implemented. The description of the Gloss demonstrator for multi-surface interaction can be found in D17. The ongoing integration activity for the work described in D17and D8 constitutes our development of infrastructure for a first smart space. In this report, the focus is on infrastructure to support the implementation of location aware services. A local architecture provides a framework for constructing Gloss applications, termed assemblies, that run on individual physical nodes. A global architecture defines an overlay network for linking individual assemblies. Both local and global architectures are under active development.</description>
    <dc:date>2002-09-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Mullen, Kevin</dc:creator>
    <dc:creator>Yang, Yanyan</dc:creator>
    <dc:creator>Connor, Richard</dc:creator>
    <dc:creator>Welen, Paula</dc:creator>
    <dc:creator>Wilson, Andy</dc:creator>
    <dc:description>This document describes the Gloss software currently implemented. The description of the Gloss demonstrator for multi-surface interaction can be found in D17. The ongoing integration activity for the work described in D17and D8 constitutes our development of infrastructure for a first smart space. In this report, the focus is on infrastructure to support the implementation of location aware services. A local architecture provides a framework for constructing Gloss applications, termed assemblies, that run on individual physical nodes. A global architecture defines an overlay network for linking individual assemblies. Both local and global architectures are under active development.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1744">
    <title>Constructing active architectures in the ArchWare ADL</title>
    <link>http://hdl.handle.net/10023/1744</link>
    <description>Abstract: Software that cannot change is condemned to atrophy: it cannot accommodate the constant revision and re-negotiation of its business goals nor intercept the potential of new technology. To accommodate change in such systems we have defined an active software architecture to be: dynamic in that the structure and cardinality of the components and interactions are not statically known; updatable in that components can be replaced dynamically; and evolvable in that it permits its executing specification to be changed. Here we describe the facilities of the ArchWare architecture description language (ADL) for specifying active architectures. The contribution of the work is the unique combination of concepts including: a pi-calculus based communication and expression language for specifying executable architectures; hyper-code as an underlying representation of system execution; a decomposition operator to break up and introspect on executing systems; and structural reflection for creating new components and binding them into running systems.
Description: Submitted to ICSE 2004</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Mickan, Kath</dc:creator>
    <dc:creator>Oquendo, Flavio</dc:creator>
    <dc:creator>Cîmpan, Sorana</dc:creator>
    <dc:creator>Warboys, Brian</dc:creator>
    <dc:creator>Snowdon, Bob</dc:creator>
    <dc:creator>Greenwood, Mark</dc:creator>
    <dc:description>Software that cannot change is condemned to atrophy: it cannot accommodate the constant revision and re-negotiation of its business goals nor intercept the potential of new technology. To accommodate change in such systems we have defined an active software architecture to be: dynamic in that the structure and cardinality of the components and interactions are not statically known; updatable in that components can be replaced dynamically; and evolvable in that it permits its executing specification to be changed. Here we describe the facilities of the ArchWare architecture description language (ADL) for specifying active architectures. The contribution of the work is the unique combination of concepts including: a pi-calculus based communication and expression language for specifying executable architectures; hyper-code as an underlying representation of system execution; a decomposition operator to break up and introspect on executing systems; and structural reflection for creating new components and binding them into running systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1743">
    <title>Second set of spaces</title>
    <link>http://hdl.handle.net/10023/1743</link>
    <description>Abstract: This document describes the Gloss infrastructure supporting implementation of location-aware services. The document is in two parts. The first part describes software architecture for the smart space. As described in D8, a local architecture provides a framework for constructing Gloss applications, termed assemblies, that run on individual physical nodes, whereas a global architecture defines an overlay network for linking individual assemblies. The second part outlines the hardware installation for local sensing. This describes the first phase of the installation in Strathclyde University.</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Allen, Ben</dc:creator>
    <dc:creator>MacInnis, Rob</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:creator>Jamieson, Andrew</dc:creator>
    <dc:creator>Nicholson, Chris</dc:creator>
    <dc:creator>Harris, Steven</dc:creator>
    <dc:description>This document describes the Gloss infrastructure supporting implementation of location-aware services. The document is in two parts. The first part describes software architecture for the smart space. As described in D8, a local architecture provides a framework for constructing Gloss applications, termed assemblies, that run on individual physical nodes, whereas a global architecture defines an overlay network for linking individual assemblies. The second part outlines the hardware installation for local sensing. This describes the first phase of the installation in Strathclyde University.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1742">
    <title>An information flow architecture for Global Smart Spaces</title>
    <link>http://hdl.handle.net/10023/1742</link>
    <description>Abstract: In this paper we describe an architecture which: Permits the deployment and execution of components in appropriate geographical locations. Provides security mechanisms that prevent misuse of the architecture. Supports a programming model that is familiar to application programmers. Permits installed components to share data. Permits the deployed components to communicate via communication channels. Provides evolution mechanisms permitting the dynamic rearrangement of inter-connection topologies the components that they connect. Supports the specification and deployment of distributed component deployments.</description>
    <dc:date>2003-11-13T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:creator>Diaz y Carballo, Juan-Carlos</dc:creator>
    <dc:description>In this paper we describe an architecture which: Permits the deployment and execution of components in appropriate geographical locations. Provides security mechanisms that prevent misuse of the architecture. Supports a programming model that is familiar to application programmers. Permits installed components to share data. Permits the deployed components to communicate via communication channels. Provides evolution mechanisms permitting the dynamic rearrangement of inter-connection topologies the components that they connect. Supports the specification and deployment of distributed component deployments.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1741">
    <title>Working document on Gloss ontology</title>
    <link>http://hdl.handle.net/10023/1741</link>
    <description>Abstract: This document describes the Gloss Ontology. The ontology and associated class model are organised into several packages. Section 2 describes each package in detail, while Section 3 contains a summary of the whole ontology.</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Coutaz, Joelle</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Dupuy-Chessa, Sophie</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Lachenal, Christophe</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Rey, Gaetan</dc:creator>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:description>This document describes the Gloss Ontology. The ontology and associated class model are organised into several packages. Section 2 describes each package in detail, while Section 3 contains a summary of the whole ontology.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1740">
    <title>Using generative programming to visualise hypercode in complex and dynamic systems</title>
    <link>http://hdl.handle.net/10023/1740</link>
    <description>Abstract: The research presented here takes place in the context of the EC Funded ArchWare project which focuses on innovative architecture-centric languages, frameworks and tools for engineering evolvable software systems. Of particular interest are complex and dynamic systems characterised by the need to evolve to meet changing requirements without total shutdown or the loss of state information. The ArchWare approach uses the unique combination of a pi-calculus based architecture description language, persistence and hypercode. Hypercode provides the essential base technology for composing and decomposing system components without losing state. The contribution of this work is an implementation of hypercode using generative programming techniques to produce different hypercode visualisations.</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Mickan, K</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Zirintsis, E</dc:creator>
    <dc:description>The research presented here takes place in the context of the EC Funded ArchWare project which focuses on innovative architecture-centric languages, frameworks and tools for engineering evolvable software systems. Of particular interest are complex and dynamic systems characterised by the need to evolve to meet changing requirements without total shutdown or the loss of state information. The ArchWare approach uses the unique combination of a pi-calculus based architecture description language, persistence and hypercode. Hypercode provides the essential base technology for composing and decomposing system components without losing state. The contribution of this work is an implementation of hypercode using generative programming techniques to produce different hypercode visualisations.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1739">
    <title>Support for evolving software architectures in the ArchWare ADL</title>
    <link>http://hdl.handle.net/10023/1739</link>
    <description>Abstract: Software that cannot evolve is condemned to atrophy: it cannot accommodate the constant revision and re-negotiation of its business goals nor intercept the potential of new technology. To accommodate change in software systems we have defined an active software architecture to be: dynamic in that the structure and cardinality of the components and interactions are changeable during execution; updatable in that components can be replaced; decomposable in that an executing system may be (partially) stopped and split up into its components and interactions; and reflective in that the specification of components and interactions may be evolved during execution. Here we describe the facilities of the ArchWare architecture description language (ADL) for specifying active architectures. The contribution of the work is the unique combination of concepts including: a pi-calculus based communication and expression language for specifying executable architectures; hyper-code as an underlying representation of system execution that can be used for introspection; a decomposition operator to incrementally break up executing systems; and structural reflection for creating new components and binding them into running systems.</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Mickan, Kath</dc:creator>
    <dc:creator>Oquendo, Flavio</dc:creator>
    <dc:creator>Cîmpan, Sorana</dc:creator>
    <dc:creator>Warboys, Brian</dc:creator>
    <dc:creator>Snowdon, Bob</dc:creator>
    <dc:creator>Greenwood, Mark</dc:creator>
    <dc:description>Software that cannot evolve is condemned to atrophy: it cannot accommodate the constant revision and re-negotiation of its business goals nor intercept the potential of new technology. To accommodate change in software systems we have defined an active software architecture to be: dynamic in that the structure and cardinality of the components and interactions are changeable during execution; updatable in that components can be replaced; decomposable in that an executing system may be (partially) stopped and split up into its components and interactions; and reflective in that the specification of components and interactions may be evolved during execution. Here we describe the facilities of the ArchWare architecture description language (ADL) for specifying active architectures. The contribution of the work is the unique combination of concepts including: a pi-calculus based communication and expression language for specifying executable architectures; hyper-code as an underlying representation of system execution that can be used for introspection; a decomposition operator to incrementally break up executing systems; and structural reflection for creating new components and binding them into running systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1738">
    <title>A framework for constraint-based deployment and autonomic management of distributed applications (extended abstract)</title>
    <link>http://hdl.handle.net/10023/1738</link>
    <description>Abstract: We propose a framework for the deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.</description>
    <dc:date>2004-05-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>We propose a framework for the deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1737">
    <title>RAFDA : Middleware supporting the separation of application logic from distribution policy</title>
    <link>http://hdl.handle.net/10023/1737</link>
    <description>Abstract: Middleware technologies often limit the way in which object classes may be used in distributed applications due to the fixed distribution policies imposed by the Middleware system. These policies permeate the applications developed using them and force an unnatural encoding of application level semantics. For example, the application programmer has no direct control over inter-address-space parameter passing semantics since it is fixed by the application's distribution topology which is dictated early in the design cycle by the Middleware. This creates applications that are brittle with respect to changes in the way in which the applications are distributed. This paper explores technology permitting arbitrary objects in an application to be dynamically exposed for remote access. Using this, the application can be written without concern for its distribution with object placement and distribution boundaries decided late in the design cycle and even dynamically. Inter-address-space parameter passing semantics may also be decided independently of object implementation and at varying times in the design cycle, again, possibly as late as run-time. Furthermore, transmission policy may be defined on a per-class, per-method or per-parameter basis maximizing plasticity. This flexibility is of utility in the development of new distributed applications and the creation of management and monitoring infrastructures for existing applications.
Description: Submitted to Middleware 2005</description>
    <dc:date>2005-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Walker, Scott</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>Middleware technologies often limit the way in which object classes may be used in distributed applications due to the fixed distribution policies imposed by the Middleware system. These policies permeate the applications developed using them and force an unnatural encoding of application level semantics. For example, the application programmer has no direct control over inter-address-space parameter passing semantics since it is fixed by the application's distribution topology which is dictated early in the design cycle by the Middleware. This creates applications that are brittle with respect to changes in the way in which the applications are distributed. This paper explores technology permitting arbitrary objects in an application to be dynamically exposed for remote access. Using this, the application can be written without concern for its distribution with object placement and distribution boundaries decided late in the design cycle and even dynamically. Inter-address-space parameter passing semantics may also be decided independently of object implementation and at varying times in the design cycle, again, possibly as late as run-time. Furthermore, transmission policy may be defined on a per-class, per-method or per-parameter basis maximizing plasticity. This flexibility is of utility in the development of new distributed applications and the creation of management and monitoring infrastructures for existing applications.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1736">
    <title>RAFDA : A policy-aware middleware supporting the flexible separation of application logic from distribution</title>
    <link>http://hdl.handle.net/10023/1736</link>
    <description>Abstract: Middleware technologies often limit the way in which object classes may be used in distributed applications due to the fixed distribution policies that they impose. These policies permeate applications developed using existing middleware systems and force an unnatural encoding of application level semantics. For example, the application programmer has no direct control over inter-address-space parameter passing semantics. Semantics are fixed by the distribution topology of the application, which is dictated early in the design cycle. This creates applications that are brittle with respect to changes in distribution. This paper explores technology that provides control over the extent to which inter-address-space communication is exposed to programmers, in order to aid the creation, maintenance and evolution of distributed applications. The described system permits arbitrary objects in an application to be dynamically exposed for remote access, allowing applications to be written without concern for distribution. Programmers can conceal or expose the distributed nature of applications as required, permitting object placement and distribution boundaries to be decided late in the design cycle and even dynamically. Inter-address-space parameter passing semantics may also be decided independently of object implementation and at varying times in the design cycle, again possibly as late as run-time. Furthermore, transmission policy may be defined on a per-class, per-method or per-parameter basis, maximizing plasticity. This flexibility is of utility in the development of new distributed applications, and the creation of management and monitoring infrastructures for existing applications.
Description: Submitted to EuroSys 2006</description>
    <dc:date>2006-01-01T00:00:00Z</dc:date>
    <dc:creator>Walker, Scott</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>Middleware technologies often limit the way in which object classes may be used in distributed applications due to the fixed distribution policies that they impose. These policies permeate applications developed using existing middleware systems and force an unnatural encoding of application level semantics. For example, the application programmer has no direct control over inter-address-space parameter passing semantics. Semantics are fixed by the distribution topology of the application, which is dictated early in the design cycle. This creates applications that are brittle with respect to changes in distribution. This paper explores technology that provides control over the extent to which inter-address-space communication is exposed to programmers, in order to aid the creation, maintenance and evolution of distributed applications. The described system permits arbitrary objects in an application to be dynamically exposed for remote access, allowing applications to be written without concern for distribution. Programmers can conceal or expose the distributed nature of applications as required, permitting object placement and distribution boundaries to be decided late in the design cycle and even dynamically. Inter-address-space parameter passing semantics may also be decided independently of object implementation and at varying times in the design cycle, again possibly as late as run-time. Furthermore, transmission policy may be defined on a per-class, per-method or per-parameter basis, maximizing plasticity. This flexibility is of utility in the development of new distributed applications, and the creation of management and monitoring infrastructures for existing applications.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1735">
    <title>Exposing application components as web services</title>
    <link>http://hdl.handle.net/10023/1735</link>
    <description>Abstract: This paper explores technology permitting arbitrary application components to be exposed for remote access from other software. Using this, the application and its constituent components can be written without concern for its distribution. Software running in different address spaces, on different machines, can perform operations on the remotely accessible components. This is of utility in the creation of distributed applications and in permitting tools such as debuggers, component browsers, observers or remote probes access to application components. Current middleware systems do not allow arbitrary exposure of application components: instead, the programmer is forced to decide statically which classes of component will support remote accessibility. In the work described here, arbitrary components of any class can be dynamically exposed via Web Services. Traditional Web Services are extended with a remote reference scheme. This extension permits application components to be invoked using either the traditional pass-by-value semantics supported by Web Services or pass-by-reference semantics. The latter permits the preservation of local call semantics across address space boundaries.
Description: Submitted to SAC05</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Walker, Scott</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:description>This paper explores technology permitting arbitrary application components to be exposed for remote access from other software. Using this, the application and its constituent components can be written without concern for its distribution. Software running in different address spaces, on different machines, can perform operations on the remotely accessible components. This is of utility in the creation of distributed applications and in permitting tools such as debuggers, component browsers, observers or remote probes access to application components. Current middleware systems do not allow arbitrary exposure of application components: instead, the programmer is forced to decide statically which classes of component will support remote accessibility. In the work described here, arbitrary components of any class can be dynamically exposed via Web Services. Traditional Web Services are extended with a remote reference scheme. This extension permits application components to be invoked using either the traditional pass-by-value semantics supported by Web Services or pass-by-reference semantics. The latter permits the preservation of local call semantics across address space boundaries.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1734">
    <title>Promoting component reuse by separating transmission policy from implementation</title>
    <link>http://hdl.handle.net/10023/1734</link>
    <description>Abstract: In this paper we present a methodology and set of tools which assist the construction of applications from components, by separating the issues of transmission policy from component definition and implementation. This promotes a greater degree of software reuse than is possible using traditional middleware environments. Whilst component technologies are usually presented as a mechanism for promoting reuse, reuse is often limited due to design choices that permeate component implementation. The programmer has no direct control over inter-address-space parameter passing semantics: it is fixed by the distributed application's structure, based on the remote accessibility of the components. Using traditional middleware tools and environments, the application designer may be forced to use an unnatural encoding of application level semantics since application parameter passing semantics are tightly coupled with the component deployment topology. This paper describes how inter-address-space parameter passing semantics may be decided independently of component implementation. Transmission policy may be dynamically defined on a per-class, per-method or per-parameter basis.
Description: Submitted to ICDCS 2005</description>
    <dc:date>2005-01-01T00:00:00Z</dc:date>
    <dc:creator>Walker, Scott</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:description>In this paper we present a methodology and set of tools which assist the construction of applications from components, by separating the issues of transmission policy from component definition and implementation. This promotes a greater degree of software reuse than is possible using traditional middleware environments. Whilst component technologies are usually presented as a mechanism for promoting reuse, reuse is often limited due to design choices that permeate component implementation. The programmer has no direct control over inter-address-space parameter passing semantics: it is fixed by the distributed application's structure, based on the remote accessibility of the components. Using traditional middleware tools and environments, the application designer may be forced to use an unnatural encoding of application level semantics since application parameter passing semantics are tightly coupled with the component deployment topology. This paper describes how inter-address-space parameter passing semantics may be decided independently of component implementation. Transmission policy may be dynamically defined on a per-class, per-method or per-parameter basis.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1733">
    <title>Towards adaptable and adaptive policy-free middleware</title>
    <link>http://hdl.handle.net/10023/1733</link>
    <description>Abstract: We believe that to fully support adaptive distributed applications, middleware must itself be adaptable, adaptive and policy-free. In this paper we present a new language-independent adaptable and adaptive policy framework suitable for integration in a wide variety of middleware systems. This framework facilitates the construction of adaptive distributed applications. The framework addresses adaptability through its ability to represent a wide range of specific middleware policies. Adaptiveness is supported by a rich contextual model, through which an application programmer may control precisely how policies should be selected for any particular interaction with the middleware. A contextual pattern mechanism facilitates the succinct expression of both coarse- and fine-grain policy contexts. Policies may be specified and altered dynamically, and may themselves take account of dynamic conditions. The framework contains no hard-wired policies; instead, all policies can be configured.
Description: Submitted to Dependable and Adaptive Distributed Systems Track, ACM SAC 2007</description>
    <dc:date>2006-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:creator>Macdonald, Angus</dc:creator>
    <dc:creator>Bigwood, Greg</dc:creator>
    <dc:description>We believe that to fully support adaptive distributed applications, middleware must itself be adaptable, adaptive and policy-free. In this paper we present a new language-independent adaptable and adaptive policy framework suitable for integration in a wide variety of middleware systems. This framework facilitates the construction of adaptive distributed applications. The framework addresses adaptability through its ability to represent a wide range of specific middleware policies. Adaptiveness is supported by a rich contextual model, through which an application programmer may control precisely how policies should be selected for any particular interaction with the middleware. A contextual pattern mechanism facilitates the succinct expression of both coarse- and fine-grain policy contexts. Policies may be specified and altered dynamically, and may themselves take account of dynamic conditions. The framework contains no hard-wired policies; instead, all policies can be configured.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1732">
    <title>A generic storage API</title>
    <link>http://hdl.handle.net/10023/1732</link>
    <description>Abstract: We present a generic API suitable for provision of highly generic storage facilities that can be tailored to produce various individually customised storage infrastructures. The paper identifies a candidate set of minimal storage system building blocks, which are sufficiently simple to avoid encapsulating policy where it cannot be customised by applications, and composable to build highly flexible storage architectures. Four main generic components are defined: the store, the namer, the caster and the interpreter. It is hypothesised that these are sufficiently general that they could act as building blocks for any information storage and retrieval system. The essential characteristics of each are defined by an interface, which may be implemented by multiple implementing classes.
Description: Submitted to ACSC 2004</description>
    <dc:date>2003-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Zirintsis, Evangelos</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:description>We present a generic API suitable for provision of highly generic storage facilities that can be tailored to produce various individually customised storage infrastructures. The paper identifies a candidate set of minimal storage system building blocks, which are sufficiently simple to avoid encapsulating policy where it cannot be customised by applications, and composable to build highly flexible storage architectures. Four main generic components are defined: the store, the namer, the caster and the interpreter. It is hypothesised that these are sufficiently general that they could act as building blocks for any information storage and retrieval system. The essential characteristics of each are defined by an interface, which may be implemented by multiple implementing classes.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1731">
    <title>A framework for constraint-based deployment and autonomic management of distributed applications</title>
    <link>http://hdl.handle.net/10023/1731</link>
    <description>Abstract: We propose a framework for deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.
Description: Submitted to ICAC-04. Extended abstract available from IEEE at DOI:10.1109/ICAC.2004.1301386</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>We propose a framework for deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1730">
    <title>A middleware framework for constraint-based deployment and autonomic management of distributed applications</title>
    <link>http://hdl.handle.net/10023/1730</link>
    <description>Abstract: We propose a middleware framework for deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.
Description: Submitted to Middleware 04</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>We propose a middleware framework for deployment and subsequent autonomic management of component-based distributed applications. An initial deployment goal is specified using a declarative constraint language, expressing constraints over aspects such as component-host mappings and component interconnection topology. A constraint solver is used to find a configuration that satisfies the goal, and the configuration is deployed automatically. The deployed application is instrumented to allow subsequent autonomic management. If, during execution, the manager detects that the original goal is no longer being met, the satisfy/deploy process can be repeated automatically in order to generate a revised deployment that does meet the goal.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1729">
    <title>A methodology for developing and deploying distributed applications</title>
    <link>http://hdl.handle.net/10023/1729</link>
    <description>Abstract: We describe a methodology for developing and deploying distributed Java applications using a reflective middleware system called RAFDA. We illustrate the methodology by describing how it has been used to develop a peer-to-peer infrastructure, and explain the benefits relative to other techniques. The strengths of the approach are that the application logic can be designed and implemented completely independently of distribution concerns, easing the development task, and that this gives great flexibility to alter distribution decisions late in the development cycle.</description>
    <dc:date>2005-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Walker, Scott Mervyn</dc:creator>
    <dc:creator>Norcross, Stuart John</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:description>We describe a methodology for developing and deploying distributed Java applications using a reflective middleware system called RAFDA. We illustrate the methodology by describing how it has been used to develop a peer-to-peer infrastructure, and explain the benefits relative to other techniques. The strengths of the approach are that the application logic can be designed and implemented completely independently of distribution concerns, easing the development task, and that this gives great flexibility to alter distribution decisions late in the development cycle.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1728">
    <title>A flexible and secure deployment framework for distributed applications</title>
    <link>http://hdl.handle.net/10023/1728</link>
    <description>Abstract: This paper describes an implemented system which is designed to support the deployment of applications offering distributed services, comprising a number of distributed components. This is achieved by creating high level placement and topology descriptions which drive tools that deploy applications consisting of components running on multiple hosts. The system addresses issues of heterogeneity by providing abstractions over host-specific attributes yielding a homogeneous run-time environment into which components may be deployed. The run-time environments provide secure binding mechanisms that permit deployed components to bind to stored data and services on the hosts on which they are running.</description>
    <dc:date>2004-05-20T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:creator>Diaz y Carballo, Juan-Carlos</dc:creator>
    <dc:description>This paper describes an implemented system which is designed to support the deployment of applications offering distributed services, comprising a number of distributed components. This is achieved by creating high level placement and topology descriptions which drive tools that deploy applications consisting of components running on multiple hosts. The system addresses issues of heterogeneity by providing abstractions over host-specific attributes yielding a homogeneous run-time environment into which components may be deployed. The run-time environments provide secure binding mechanisms that permit deployed components to bind to stored data and services on the hosts on which they are running.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1727">
    <title>An active-architecture approach to COTS integration</title>
    <link>http://hdl.handle.net/10023/1727</link>
    <description>Abstract: Commercial off-the-shelf (COTS) software products are increasingly used as standard components within integrated information systems. This creates challenges since both their developers and source code are not usually available, and the ongoing development of COTS cannot be predicted. The ArchWare Framework approach recognises COTS products as part of the ambient environment of an information system and therefore an important part of development is incorporating COTS as effective system components. This integration of COTS components, and the composition of components, is captured by an active architecture model which changes as the system evolves. Indeed the architecture modelling language used enables it to express the monitoring and evolution of a system. This active architecture model is structured using control system principles. By modelling both integration and evolution it can guide the system’s response to both predicted and emergent changes that arise from the use of COTS products.</description>
    <dc:date>2005-07-01T00:00:00Z</dc:date>
    <dc:creator>Warboys, B.C.</dc:creator>
    <dc:creator>Snowdon, R.</dc:creator>
    <dc:creator>Greenwood, R.M.</dc:creator>
    <dc:creator>Seet, W.</dc:creator>
    <dc:creator>Robertson, I.</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Mickan, K.</dc:creator>
    <dc:description>Commercial off-the-shelf (COTS) software products are increasingly used as standard components within integrated information systems. This creates challenges since both their developers and source code are not usually available, and the ongoing development of COTS cannot be predicted. The ArchWare Framework approach recognises COTS products as part of the ambient environment of an information system and therefore an important part of development is incorporating COTS as effective system components. This integration of COTS components, and the composition of components, is captured by an active architecture model which changes as the system evolves. Indeed the architecture modelling language used enables it to express the monitoring and evolution of a system. This active architecture model is structured using control system principles. By modelling both integration and evolution it can guide the system’s response to both predicted and emergent changes that arise from the use of COTS products.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1726">
    <title>Hyper-programming in Java</title>
    <link>http://hdl.handle.net/10023/1726</link>
    <description>Abstract: Hyper-programming is a technology only available in persistent systems since hyper-program source contains both text and links to persistent objects. A hyper-programming system has already been prototyped in the persistent programming language Napier88. Here we report on the transfer of that technology to a more commercial platform, Java. The component technologies required for hyper-programming include linguistic reflection, a persistent store, and a browsing mechanism, all of which have been reported elsewhere. The topics of discussion here are the additional technologies of: the specification of denotable hyper-links in Java; a mechanism for preserving links over traditional compilation; a hyper-program editor; and the integration of the editor and the browser with the hyper-programming user interface. We describe their design and implementation. In total these technologies constitute a hyper-programming system in Java.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Zirintsis, E</dc:creator>
    <dc:creator>Dunstan, VS</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>Hyper-programming is a technology only available in persistent systems since hyper-program source contains both text and links to persistent objects. A hyper-programming system has already been prototyped in the persistent programming language Napier88. Here we report on the transfer of that technology to a more commercial platform, Java. The component technologies required for hyper-programming include linguistic reflection, a persistent store, and a browsing mechanism, all of which have been reported elsewhere. The topics of discussion here are the additional technologies of: the specification of denotable hyper-links in Java; a mechanism for preserving links over traditional compilation; a hyper-program editor; and the integration of the editor and the browser with the hyper-programming user interface. We describe their design and implementation. In total these technologies constitute a hyper-programming system in Java.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1725">
    <title>Generating a family of Byzantine tolerant protocol implementations using a meta-model architecture</title>
    <link>http://hdl.handle.net/10023/1725</link>
    <description>Abstract: We describe an approach to modelling a Byzantine tolerant distributed algorithm as a family of related finite state machines, generated from a single meta-model. Various artefacts are generated from each state machine, including diagrams and source-level protocol implementations. The approach allows a state machine formulation to be applied to problems for which it would not otherwise be suitable, increasing confidence in correctness.</description>
    <dc:date>2007-06-25T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:description>We describe an approach to modelling a Byzantine tolerant distributed algorithm as a family of related finite state machines, generated from a single meta-model. Various artefacts are generated from each state machine, including diagrams and source-level protocol implementations. The approach allows a state machine formulation to be applied to problems for which it would not otherwise be suitable, increasing confidence in correctness.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1724">
    <title>Demonstration of hyper-programming in Java</title>
    <link>http://hdl.handle.net/10023/1724</link>
    <description>Abstract: We demonstrate the use of a hyper-programming system to build persistent Java applications in PJama, an orthogonally persistent version of Java. This allows program representations to contain type-safe links to persistent objects embedded directly within the source code. The potential benefits include greater potential for static program checking, improved efficiency, and reduced programming effort.</description>
    <dc:date>1999-01-01T00:00:00Z</dc:date>
    <dc:creator>Zirintsis, E</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>We demonstrate the use of a hyper-programming system to build persistent Java applications in PJama, an orthogonally persistent version of Java. This allows program representations to contain type-safe links to persistent objects embedded directly within the source code. The potential benefits include greater potential for static program checking, improved efficiency, and reduced programming effort.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1722">
    <title>An approach to compliance in software architectures</title>
    <link>http://hdl.handle.net/10023/1722</link>
    <description>Abstract: Software architectures are designed to meet the needs of the applications that use them. With conventional architectures this is done by predicting the average needs of the majority of the applications they support. In contrast, a compliant software architecture can accommodate the needs of a particular application. As the application evolves, its requirements change and the supporting software components, if compliant, change accordingly to meet these new requirements.
Description: Special Issue on Informatics</description>
    <dc:date>2000-08-01T00:00:00Z</dc:date>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Greenwood, RM</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Mayes, K</dc:creator>
    <dc:creator>Munro, DS</dc:creator>
    <dc:creator>Warboys, B</dc:creator>
    <dc:description>Software architectures are designed to meet the needs of the applications that use them. With conventional architectures this is done by predicting the average needs of the majority of the applications they support. In contrast, a compliant software architecture can accommodate the needs of a particular application. As the application evolves, its requirements change and the supporting software components, if compliant, change accordingly to meet these new requirements.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1721">
    <title>System Evolution, Feedback and Compliant Architectures</title>
    <link>http://hdl.handle.net/10023/1721</link>
    <description>Description: Proceedings, International Workshop on Feedback and Evolution in Software and Business Processes (FEAST 2000), Imperial College, London. Supported by EPSRC</description>
    <dc:date>2000-01-01T00:00:00Z</dc:date>
    <dc:creator>Greenwood, RM</dc:creator>
    <dc:creator>Mayes, K</dc:creator>
    <dc:creator>Warboys, BC</dc:creator>
    <dc:creator>Yeomans, BS</dc:creator>
    <dc:creator>Balasubramaniam, Dharini</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1718">
    <title>Automated static symmetry breaking in constraint satisfaction problems</title>
    <link>http://hdl.handle.net/10023/1718</link>
    <description>Abstract: Variable symmetries in constraint satisfaction problems can be broken by&#xD;
adding lexicographic ordering constraints. Existing general methods of generating&#xD;
such sets of ordering constraints can produce a huge number of additional&#xD;
constraints. This adds an unacceptable overhead to the solving process. Methods&#xD;
exist by which this large set of constraints can be reduced to a much smaller&#xD;
set automatically, but their application is also prohibitively costly. In contrast,&#xD;
this thesis takes a bottom up approach to generating symmetry breaking constraints.&#xD;
This will involve examining some commonly-occurring families of&#xD;
mathematical groups and deriving a general formula to produce a minimal set&#xD;
of ordering constraints which are sufficient to break all of the symmetry that&#xD;
each group describes.&#xD;
In some cases it is known that there exists no manageable sized sets of&#xD;
constraints to break all symmetries. One example of this occurs with matrix&#xD;
row and column symmetries. In such cases, incomplete symmetry breaking has&#xD;
been used to great effect. Double lex is a commonly used incomplete symmetry&#xD;
breaking technique for row and column symmetries. This thesis also describes&#xD;
another similar method which compares favourably to double lex.&#xD;
The general formulae investigated are used as building blocks to generate&#xD;
small sets of ordering constraints for more complex groups, constructed by&#xD;
combining smaller groups.&#xD;
Through the utilisation of graph automorphism tools and the groups and&#xD;
permutations software GAP we provide a method of defining variable symmetries&#xD;
in a problem as a group. Where this group can be described as the product&#xD;
of smaller groups, with known general formulae, we can construct a minimal&#xD;
set of ordering constraints for that problem automatically. In summary, this thesis provides the theoretical background necessary to&#xD;
apply efficient static symmetry breaking to constraint satisfaction problems. It&#xD;
also goes further, describing how this process can be automated to remove the&#xD;
necessity of having an expert CP practitioner, thus opening the field to a larger&#xD;
number of potential users.</description>
    <dc:date>2011-01-01T00:00:00Z</dc:date>
    <dc:creator>Grayland, Andrews</dc:creator>
    <dc:description>Variable symmetries in constraint satisfaction problems can be broken by&#xD;
adding lexicographic ordering constraints. Existing general methods of generating&#xD;
such sets of ordering constraints can produce a huge number of additional&#xD;
constraints. This adds an unacceptable overhead to the solving process. Methods&#xD;
exist by which this large set of constraints can be reduced to a much smaller&#xD;
set automatically, but their application is also prohibitively costly. In contrast,&#xD;
this thesis takes a bottom up approach to generating symmetry breaking constraints.&#xD;
This will involve examining some commonly-occurring families of&#xD;
mathematical groups and deriving a general formula to produce a minimal set&#xD;
of ordering constraints which are sufficient to break all of the symmetry that&#xD;
each group describes.&#xD;
In some cases it is known that there exists no manageable sized sets of&#xD;
constraints to break all symmetries. One example of this occurs with matrix&#xD;
row and column symmetries. In such cases, incomplete symmetry breaking has&#xD;
been used to great effect. Double lex is a commonly used incomplete symmetry&#xD;
breaking technique for row and column symmetries. This thesis also describes&#xD;
another similar method which compares favourably to double lex.&#xD;
The general formulae investigated are used as building blocks to generate&#xD;
small sets of ordering constraints for more complex groups, constructed by&#xD;
combining smaller groups.&#xD;
Through the utilisation of graph automorphism tools and the groups and&#xD;
permutations software GAP we provide a method of defining variable symmetries&#xD;
in a problem as a group. Where this group can be described as the product&#xD;
of smaller groups, with known general formulae, we can construct a minimal&#xD;
set of ordering constraints for that problem automatically. In summary, this thesis provides the theoretical background necessary to&#xD;
apply efficient static symmetry breaking to constraint satisfaction problems. It&#xD;
also goes further, describing how this process can be automated to remove the&#xD;
necessity of having an expert CP practitioner, thus opening the field to a larger&#xD;
number of potential users.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1711">
    <title>Self-adaptation applied to peer-set maintenance in Chord via a generic autonomic management framework</title>
    <link>http://hdl.handle.net/10023/1711</link>
    <description>Abstract: Self-adaptation can be achieved by autonomic management of facets of a system’s constituent components. This paper reports on a generic autonomic management frame-work and on its application to a key-based routing protocol as used in the peer-to-peer overlay Chord. The framework implements generic components of the autonomic management cycle. In the work reported here it was used to build a manager which autonomically controls the maintenance scheduling of the peer-set in individual Chord nodes, governed by some high-level policies. This manager improved routing performance and resource consumption in comparison to statically configured Chord nodes in a deployed network which was exposed to various membership churn and workload patterns.</description>
    <dc:date>2010-09-27T00:00:00Z</dc:date>
    <dc:creator>Tauber, M.</dc:creator>
    <dc:creator>Kirby, G. N. C.</dc:creator>
    <dc:creator>Dearle, A.</dc:creator>
    <dc:description>Self-adaptation can be achieved by autonomic management of facets of a system’s constituent components. This paper reports on a generic autonomic management frame-work and on its application to a key-based routing protocol as used in the peer-to-peer overlay Chord. The framework implements generic components of the autonomic management cycle. In the work reported here it was used to build a manager which autonomically controls the maintenance scheduling of the peer-set in individual Chord nodes, governed by some high-level policies. This manager improved routing performance and resource consumption in comparison to statically configured Chord nodes in a deployed network which was exposed to various membership churn and workload patterns.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1702">
    <title>Exploratory learning for wireless networking</title>
    <link>http://hdl.handle.net/10023/1702</link>
    <description>Abstract: This  dissertation  highlights  the  importance  of  computer  networking  education  and  the  challenges  in &#xD;
engaging  and  educating  students.    An  exploratory  learning  approach  is  discussed  with  reference  to &#xD;
other  learning models  and  taxonomies.    It  is  felt  that  an  exploratory  learning  approach  to  wireless &#xD;
networks improves student engagement and perceived educational value. &#xD;
In  order  to  support  exploratory  learning  and  improve  the  effectiveness  of  computer  networking &#xD;
education  the  WiFi  Virtual  Laboratory  (WiFiVL)  has  been  developed.    This  framework  enables &#xD;
students  to access a powerful network simulator without  the barrier of  learning a  specialised systems &#xD;
programming  language.   The WiFiVL has been designed  to provide “anytime anywhere” access  to a &#xD;
self-paced or guided exploratory learning environment. &#xD;
The  initial  framework was  designed  to  enable  users  to  access  a  network  simulator  using  an HTML &#xD;
form embedded in a web page.  Users could construct a scenario wherein multiple wireless nodes were &#xD;
situated.  Traffic links between the nodes were also specified using the form interface.  The scenario is &#xD;
then translated into a portable format, a URL, and simulated using the WiFiVL framework detailed in &#xD;
this  dissertation.    The  resulting  simulation  is  played  back  to  the  user  on  a  web  page,  via  a  Flash &#xD;
animation. &#xD;
This  initial  approach was  extended  to  exploit  the greater potential  for  interaction  afforded by  a Rich &#xD;
Internet Application (RIA), referred to as WiFiVL II.     &#xD;
The  dissertation  also  details  the  expansion  of WiFiVL  into  the  realm  of  3-dimensional,  immersive, &#xD;
virtual  worlds.    It  is  shown  how  these  virtual  worlds  can  be  exploited  to  create  an  engaging  and &#xD;
educational  virtual  laboratory  for  wireless  networks.    Throughout  each  development  the  supporting &#xD;
framework has been re-used and has proved capable of supporting multiple interfaces and views. &#xD;
Each  of  the  implementations  described  in  this  dissertation  has  been  evaluated  with  learners  in &#xD;
undergraduate  and  postgraduate  degrees  at  the  University  of  St  Andrews.    The  results  validate  the &#xD;
efficacy of a virtual laboratory approach for supporting exploratory learning for wireless networks.</description>
    <dc:date>2010-11-30T00:00:00Z</dc:date>
    <dc:creator>Sturgeon, Thomas</dc:creator>
    <dc:description>This  dissertation  highlights  the  importance  of  computer  networking  education  and  the  challenges  in &#xD;
engaging  and  educating  students.    An  exploratory  learning  approach  is  discussed  with  reference  to &#xD;
other  learning models  and  taxonomies.    It  is  felt  that  an  exploratory  learning  approach  to  wireless &#xD;
networks improves student engagement and perceived educational value. &#xD;
In  order  to  support  exploratory  learning  and  improve  the  effectiveness  of  computer  networking &#xD;
education  the  WiFi  Virtual  Laboratory  (WiFiVL)  has  been  developed.    This  framework  enables &#xD;
students  to access a powerful network simulator without  the barrier of  learning a  specialised systems &#xD;
programming  language.   The WiFiVL has been designed  to provide “anytime anywhere” access  to a &#xD;
self-paced or guided exploratory learning environment. &#xD;
The  initial  framework was  designed  to  enable  users  to  access  a  network  simulator  using  an HTML &#xD;
form embedded in a web page.  Users could construct a scenario wherein multiple wireless nodes were &#xD;
situated.  Traffic links between the nodes were also specified using the form interface.  The scenario is &#xD;
then translated into a portable format, a URL, and simulated using the WiFiVL framework detailed in &#xD;
this  dissertation.    The  resulting  simulation  is  played  back  to  the  user  on  a  web  page,  via  a  Flash &#xD;
animation. &#xD;
This  initial  approach was  extended  to  exploit  the greater potential  for  interaction  afforded by  a Rich &#xD;
Internet Application (RIA), referred to as WiFiVL II.     &#xD;
The  dissertation  also  details  the  expansion  of WiFiVL  into  the  realm  of  3-dimensional,  immersive, &#xD;
virtual  worlds.    It  is  shown  how  these  virtual  worlds  can  be  exploited  to  create  an  engaging  and &#xD;
educational  virtual  laboratory  for  wireless  networks.    Throughout  each  development  the  supporting &#xD;
framework has been re-used and has proved capable of supporting multiple interfaces and views. &#xD;
Each  of  the  implementations  described  in  this  dissertation  has  been  evaluated  with  learners  in &#xD;
undergraduate  and  postgraduate  degrees  at  the  University  of  St  Andrews.    The  results  validate  the &#xD;
efficacy of a virtual laboratory approach for supporting exploratory learning for wireless networks.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1683">
    <title>Fulfilling the vision of autonomic computing</title>
    <link>http://hdl.handle.net/10023/1683</link>
    <description>Abstract: Efforts since 2001 to design self-managing systems have yielded many impressive achievements, yet the original vision of autonomic computing remains unfulfilled. Researchers must develop a comprehensive systems engineering approach to create effective solutions for next-generation enterprise and sensor systems.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:creator>Sterritt, Roy</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:creator>Hinchey, Mike</dc:creator>
    <dc:description>Efforts since 2001 to design self-managing systems have yielded many impressive achievements, yet the original vision of autonomic computing remains unfulfilled. Researchers must develop a comprehensive systems engineering approach to create effective solutions for next-generation enterprise and sensor systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1675">
    <title>Multi criteria adaptation mechanisms in homological sensor networks</title>
    <link>http://hdl.handle.net/10023/1675</link>
    <description>Abstract: One fundamental feature of sensor network is unpredictable and this brings us a challenge of how to design an adaptation mechanism to let a sensor network adjust itself based on current "context" and pre-defined network criteria which include coverage density, fault tolerance, system life and so on. The key idea of our work is, based on calculation of nodes coverage, we can let networks be adaptive to ongoing changing network situation. We use system working life as our criterion in this work to demonstrate the potential usage of our system. An algebraic topology tool, homology, is used in our work to calculate sensor nodes coverage since the local properties of a sensor network, obtained by local interactions among nodes, can be captured by certain topological spaces. Also the global properties of the sensor network characteristics correspond to certain topological invariants of these spaces. Unlike other approaches, our work does not need any node location or orientation information and it does not have any assumption about the node deployment control and domain geometry. The only thing that it needs to calculate nodes coverage is a peer to peer communication graph.</description>
    <dc:date>2008-11-01T00:00:00Z</dc:date>
    <dc:creator>Zhang, Hui</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:description>One fundamental feature of sensor network is unpredictable and this brings us a challenge of how to design an adaptation mechanism to let a sensor network adjust itself based on current "context" and pre-defined network criteria which include coverage density, fault tolerance, system life and so on. The key idea of our work is, based on calculation of nodes coverage, we can let networks be adaptive to ongoing changing network situation. We use system working life as our criterion in this work to demonstrate the potential usage of our system. An algebraic topology tool, homology, is used in our work to calculate sensor nodes coverage since the local properties of a sensor network, obtained by local interactions among nodes, can be captured by certain topological spaces. Also the global properties of the sensor network characteristics correspond to certain topological invariants of these spaces. Unlike other approaches, our work does not need any node location or orientation information and it does not have any assumption about the node deployment control and domain geometry. The only thing that it needs to calculate nodes coverage is a peer to peer communication graph.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1673">
    <title>Reflection and hyper-programming in persistent programming systems</title>
    <link>http://hdl.handle.net/10023/1673</link>
    <description>Abstract: In an orthogonally persistent programming system, data is treated in a manner independent of&#xD;
its persistence. This gives simpler semantics, allows the programmer to ignore details of&#xD;
long-term data storage and enables type checking protection mechanisms to operate over the&#xD;
entire lifetime of the data.&#xD;
The ultimate goal of persistent programming language research is to reduce the costs of&#xD;
producing software. The work presented in this thesis seeks to improve programmer&#xD;
productivity in the following ways:&#xD;
• by reducing the amount of code that has to be written to construct an application;&#xD;
• by increasing the reliability of the code written; and&#xD;
• by improving the programmer’s understanding of the persistent environment in which&#xD;
applications are constructed.&#xD;
Two programming techniques that may be used to pursue these goals in a persistent&#xD;
environment are type-safe linguistic reflection and hyper-programming. The first provides a&#xD;
mechanism by which the programmer can write generators that, when executed, produce new&#xD;
program representations. This allows the specification of programs that are highly generic&#xD;
yet depend in non-trivial ways on the types of the data on which they operate. Genericity&#xD;
promotes software reuse which in turn reduces the amount of new code that has to be written.&#xD;
Hyper-programming allows a source program to contain links to data items in the persistent&#xD;
store. This improves program reliability by allowing certain program checking to be&#xD;
performed earlier than is otherwise possible. It also reduces the amount of code written by&#xD;
permitting direct links to data in the place of textual descriptions.&#xD;
Both techniques contribute to the understanding of the persistent environment through&#xD;
supporting the implementation of store browsing tools and allowing source representations to&#xD;
be associated with all executable programs in the persistent store.&#xD;
This thesis describes in detail the structure of type-safe linguistic reflection and hyper-programming,&#xD;
their benefits in the persistent context, and a suite of programming tools that&#xD;
support reflective programming and hyper-programming. These tools may be used in&#xD;
conjunction to allow reflection over hyper-program representations. The implementation of&#xD;
the tools is described.</description>
    <dc:date>1992-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:description>In an orthogonally persistent programming system, data is treated in a manner independent of&#xD;
its persistence. This gives simpler semantics, allows the programmer to ignore details of&#xD;
long-term data storage and enables type checking protection mechanisms to operate over the&#xD;
entire lifetime of the data.&#xD;
The ultimate goal of persistent programming language research is to reduce the costs of&#xD;
producing software. The work presented in this thesis seeks to improve programmer&#xD;
productivity in the following ways:&#xD;
• by reducing the amount of code that has to be written to construct an application;&#xD;
• by increasing the reliability of the code written; and&#xD;
• by improving the programmer’s understanding of the persistent environment in which&#xD;
applications are constructed.&#xD;
Two programming techniques that may be used to pursue these goals in a persistent&#xD;
environment are type-safe linguistic reflection and hyper-programming. The first provides a&#xD;
mechanism by which the programmer can write generators that, when executed, produce new&#xD;
program representations. This allows the specification of programs that are highly generic&#xD;
yet depend in non-trivial ways on the types of the data on which they operate. Genericity&#xD;
promotes software reuse which in turn reduces the amount of new code that has to be written.&#xD;
Hyper-programming allows a source program to contain links to data items in the persistent&#xD;
store. This improves program reliability by allowing certain program checking to be&#xD;
performed earlier than is otherwise possible. It also reduces the amount of code written by&#xD;
permitting direct links to data in the place of textual descriptions.&#xD;
Both techniques contribute to the understanding of the persistent environment through&#xD;
supporting the implementation of store browsing tools and allowing source representations to&#xD;
be associated with all executable programs in the persistent store.&#xD;
This thesis describes in detail the structure of type-safe linguistic reflection and hyper-programming,&#xD;
their benefits in the persistent context, and a suite of programming tools that&#xD;
support reflective programming and hyper-programming. These tools may be used in&#xD;
conjunction to allow reflection over hyper-program representations. The implementation of&#xD;
the tools is described.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1671">
    <title>A peer-to-peer middleware framework for resilient persistent programming</title>
    <link>http://hdl.handle.net/10023/1671</link>
    <description>Abstract: The persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation code to manage the transfer of data to and from non-volatile storage. More importantly, it simplified the programmer's conceptual model of an application, and avoided the many coherency problems that result from multiple cached copies of the same information. Although technically innovative, persistent languages were not widely adopted, perhaps due in part to their closed-world model. Each persistent store was located on a single host, and there were no flexible mechanisms for communication or transfer of data between separate stores. Here we re-open the work on persistence and combine it with modern peer-to-peer techniques in order to provide support for orthogonal persistence in resilient and potentially long-running distributed applications. Our vision is of an infrastructure within which an application can be developed and distributed with minimal modification, whereupon the application becomes resilient to certain failure modes. If a node, or the connection to it, fails during execution of the application, the objects are re-instantiated from distributed replicas, without their reference holders being aware of the failure. Furthermore, we believe that this can be achieved within a spectrum of application programmer intervention, ranging from minimal to totally prescriptive, as desired. The same mechanisms encompass an orthogonally persistent programming model. We outline our approach to implementing this vision, and describe current progress.
Description: Submitted to EuroSys 2006</description>
    <dc:date>2006-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:description>The persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation code to manage the transfer of data to and from non-volatile storage. More importantly, it simplified the programmer's conceptual model of an application, and avoided the many coherency problems that result from multiple cached copies of the same information. Although technically innovative, persistent languages were not widely adopted, perhaps due in part to their closed-world model. Each persistent store was located on a single host, and there were no flexible mechanisms for communication or transfer of data between separate stores. Here we re-open the work on persistence and combine it with modern peer-to-peer techniques in order to provide support for orthogonal persistence in resilient and potentially long-running distributed applications. Our vision is of an infrastructure within which an application can be developed and distributed with minimal modification, whereupon the application becomes resilient to certain failure modes. If a node, or the connection to it, fails during execution of the application, the objects are re-instantiated from distributed replicas, without their reference holders being aware of the failure. Furthermore, we believe that this can be achieved within a spectrum of application programmer intervention, ranging from minimal to totally prescriptive, as desired. The same mechanisms encompass an orthogonally persistent programming model. We outline our approach to implementing this vision, and describe current progress.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1670">
    <title>Hosting Byzantine Fault Tolerant Services on a Chord ring</title>
    <link>http://hdl.handle.net/10023/1670</link>
    <description>Abstract: In this paper we demonstrate how stateful Byzantine Fault Tolerant services may be hosted on a Chord ring. The strategy presented is fourfold: firstly a replication scheme that dissociates the maintenance of replicated service state from ring recovery is developed. Secondly, clients of the ring based services are made replication aware. Thirdly, a consensus protocol is introduced that supports the serialization of updates. Finally Byzantine fault tolerant replication protocols are developed that ensure the integrity of service data hosted on the ring.
Description: Submitted to DSN 2007 Workshop on Architecting Dependable Systems</description>
    <dc:date>2007-01-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Norcross, Stuart</dc:creator>
    <dc:description>In this paper we demonstrate how stateful Byzantine Fault Tolerant services may be hosted on a Chord ring. The strategy presented is fourfold: firstly a replication scheme that dissociates the maintenance of replicated service state from ring recovery is developed. Secondly, clients of the ring based services are made replication aware. Thirdly, a consensus protocol is introduced that supports the serialization of updates. Finally Byzantine fault tolerant replication protocols are developed that ensure the integrity of service data hosted on the ring.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1669">
    <title>Design, implementation and deployment of state machines using a generative approach</title>
    <link>http://hdl.handle.net/10023/1669</link>
    <description>Abstract: We describe an approach to designing and implementing a distributed system as a family of related finite state machines, generated from a single abstract model. Various artefacts are generated from each state machine, including diagrams, source-level protocol implementations and documentation. The state machine family formalises the interactions between the components of the distributed system, allowing increased confidence in correctness. Our methodology facilitates the application of state machines to problems for which they would not otherwise be suitable. We illustrate the technique with the example of a Byzantine-fault-tolerant commit protocol used in a distributed storage system, showing how an abstract model can be defined in terms of an abstract state space and various categories of state transitions. We describe how such an abstract model can be deployed in a concrete system, and propose a general methodology for developing systems in this style.</description>
    <dc:date>2008-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Norcross, Stuart John</dc:creator>
    <dc:description>We describe an approach to designing and implementing a distributed system as a family of related finite state machines, generated from a single abstract model. Various artefacts are generated from each state machine, including diagrams, source-level protocol implementations and documentation. The state machine family formalises the interactions between the components of the distributed system, allowing increased confidence in correctness. Our methodology facilitates the application of state machines to problems for which they would not otherwise be suitable. We illustrate the technique with the example of a Byzantine-fault-tolerant commit protocol used in a distributed storage system, showing how an abstract model can be defined in terms of an abstract state space and various categories of state transitions. We describe how such an abstract model can be deployed in a concrete system, and propose a general methodology for developing systems in this style.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1668">
    <title>Applying constraint solving to the management of distributed applications</title>
    <link>http://hdl.handle.net/10023/1668</link>
    <description>Abstract: We present our approach for deploying and managing distributed component-based applications. A Desired State Description (DSD), written in a high-level declarative language, specifies requirements for a distributed application. Our infrastructure accepts a DSD as input, and from it automatically configures and deploys the distributed application. Subsequent violations of the original requirements are detected and, where possible, automatically rectified by reconfiguration and redeployment of the necessary application components. A constraint solving tool is used to plan deployments that meet the application requirements.
Description: Submitted to DOA08</description>
    <dc:date>2008-01-01T00:00:00Z</dc:date>
    <dc:creator>McCarthy, Andrew</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:description>We present our approach for deploying and managing distributed component-based applications. A Desired State Description (DSD), written in a high-level declarative language, specifies requirements for a distributed application. Our infrastructure accepts a DSD as input, and from it automatically configures and deploys the distributed application. Subsequent violations of the original requirements are detected and, where possible, automatically rectified by reconfiguration and redeployment of the necessary application components. A constraint solving tool is used to plan deployments that meet the application requirements.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1667">
    <title>Automatic alignment of hieroglyphs and transliteration</title>
    <link>http://hdl.handle.net/10023/1667</link>
    <description>Abstract: Automatic alignment has important applications in philology, facilitating study of texts on the basis of electronic resources produced by different scholars. A simple technique is presented to realise such alignment for Ancient Egyptian hieroglyphic texts and transliteration. Preliminary experiments with the technique are reported, and plans for future work are discussed.</description>
    <dc:date>2009-02-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:description>Automatic alignment has important applications in philology, facilitating study of texts on the basis of electronic resources produced by different scholars. A simple technique is presented to realise such alignment for Ancient Egyptian hieroglyphic texts and transliteration. Preliminary experiments with the technique are reported, and plans for future work are discussed.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1666">
    <title>An approach to ad hoc cloud computing</title>
    <link>http://hdl.handle.net/10023/1666</link>
    <description>Abstract: We consider how underused computing resources within an enterprise may be harnessed to improve utilization and create an elastic computing infrastructure. Most current cloud provision involves a data center model, in which clusters of machines are dedicated to running cloud infrastructure software. We propose an additional model, the ad hoc cloud, in which infrastructure software is distributed over resources harvested from machines already in existence within an enterprise. In contrast to the data center cloud model, resource levels are not established a priori, nor are resources dedicated exclusively to the cloud while in use. A participating machine is not dedicated to the cloud, but has some other primary purpose such as running interactive processes for a particular user. We outline the major implementation challenges and one approach to tackling them.</description>
    <dc:date>2010-02-25T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Macdonald, Angus</dc:creator>
    <dc:creator>Fernandes, Alvaro</dc:creator>
    <dc:description>We consider how underused computing resources within an enterprise may be harnessed to improve utilization and create an elastic computing infrastructure. Most current cloud provision involves a data center model, in which clusters of machines are dedicated to running cloud infrastructure software. We propose an additional model, the ad hoc cloud, in which infrastructure software is distributed over resources harvested from machines already in existence within an enterprise. In contrast to the data center cloud model, resource levels are not established a priori, nor are resources dedicated exclusively to the cloud while in use. A participating machine is not dedicated to the cloud, but has some other primary purpose such as running interactive processes for a particular user. We outline the major implementation challenges and one approach to tackling them.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1665">
    <title>Orthogonal persistence revisited</title>
    <link>http://hdl.handle.net/10023/1665</link>
    <description>Abstract: The social and economic importance of large bodies of programs and data that are potentially long-lived has attracted much attention in the commercial and research communities. Here we concentrate on a set of methodologies and technologies called persistent programming. In particular we review programming language support for the concept of orthogonal persistence, a technique for the uniform treatment of objects irrespective of their types or longevity. While research in persistent programming has become unfashionable, we show how the concept is beginning to appear as a major component of modern systems. We relate these attempts to the original principles of orthogonal persistence and give a few hints about how the concept may be utilised in the future.</description>
    <dc:date>2009-07-01T00:00:00Z</dc:date>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:creator>Morrison, Ron</dc:creator>
    <dc:description>The social and economic importance of large bodies of programs and data that are potentially long-lived has attracted much attention in the commercial and research communities. Here we concentrate on a set of methodologies and technologies called persistent programming. In particular we review programming language support for the concept of orthogonal persistence, a technique for the uniform treatment of objects irrespective of their types or longevity. While research in persistent programming has become unfashionable, we show how the concept is beginning to appear as a major component of modern systems. We relate these attempts to the original principles of orthogonal persistence and give a few hints about how the concept may be utilised in the future.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1664">
    <title>Autonomic management of maintenance scheduling in Chord</title>
    <link>http://hdl.handle.net/10023/1664</link>
    <description>Abstract: This paper experimentally evaluates the effects of applying autonomic management to the scheduling of maintenance operations in a deployed Chord network, for various membership churn and workload patterns. Two versions of anautonomic management policy were compared with a static configuration. The autonomic policies varied with respect to the aggressiveness with which they responded to peer access error rates and to wasted maintenance operations. In most experiments, significant improvements due to autonomic management were observed in the performance of routing operations and the quantity of data transmitted between network members. Of the autonomic policies, the more aggressive version gave slightly better results.
Description: Submitted to P2P10.</description>
    <dc:date>2010-06-01T00:00:00Z</dc:date>
    <dc:creator>Tauber, Markus</dc:creator>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:description>This paper experimentally evaluates the effects of applying autonomic management to the scheduling of maintenance operations in a deployed Chord network, for various membership churn and workload patterns. Two versions of anautonomic management policy were compared with a static configuration. The autonomic policies varied with respect to the aggressiveness with which they responded to peer access error rates and to wasted maintenance operations. In most experiments, significant improvements due to autonomic management were observed in the performance of routing operations and the quantity of data transmitted between network members. Of the autonomic policies, the more aggressive version gave slightly better results.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1663">
    <title>H2O : An autonomic, resource-aware distributed database system</title>
    <link>http://hdl.handle.net/10023/1663</link>
    <description>Abstract: This paper presents the design of an autonomic, resource-aware distributed database which enables data to be backed up and shared without complex manual administration. The database, H2O, is designed to make use of unused resources on workstation machines. Creating and maintaining highly-available, replicated database systems can be difficult for untrained users, and costly for IT departments. H2O reduces the need for manual administration by autonomically replicating data and load-balancing across machines in an enterprise. Provisioning hardware to run a database system can be unnecessarily costly as most organizations already possess large quantities of idle resources in workstation machines. H2O is designed to utilize this unused capacity by using resource availability information to place data and plan queries over workstation machines that are already being used for other tasks. This paper discusses the requirements for such a system and presents the design and implementation of H2O.</description>
    <dc:date>2010-06-16T00:00:00Z</dc:date>
    <dc:creator>Macdonald, Angus</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham</dc:creator>
    <dc:description>This paper presents the design of an autonomic, resource-aware distributed database which enables data to be backed up and shared without complex manual administration. The database, H2O, is designed to make use of unused resources on workstation machines. Creating and maintaining highly-available, replicated database systems can be difficult for untrained users, and costly for IT departments. H2O reduces the need for manual administration by autonomically replicating data and load-balancing across machines in an enterprise. Provisioning hardware to run a database system can be unnecessarily costly as most organizations already possess large quantities of idle resources in workstation machines. H2O is designed to utilize this unused capacity by using resource availability information to place data and plan queries over workstation machines that are already being used for other tasks. This paper discusses the requirements for such a system and presents the design and implementation of H2O.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1661">
    <title>Persistent hyper-programs</title>
    <link>http://hdl.handle.net/10023/1661</link>
    <description>Abstract: The traditional representation of a program as a linear sequence of text forces a particular style of program construction to ensure good programming practice. Tools such as syntax directed editors, compilers, linkers and file managers are required to translate and execute these linear sequences of text. At some stage in the execution sequence the source text is checked for type correctness and its translated form linked to values in the environment. When this is performed early in the execution process confidence in the correctness of the program is raised, at the cost of some flexibility of use. Persistent systems allow the persistent environment to participate in the program construction process. This raises the possibility of allowing the representations of source programs to include direct links to values that already exist in the environment. By analogy with hyper-text, where a piece of text contains links to other pieces of text, this source representation is called a hyper-program. This paper outlines how hyper-programming facilities may be provided within a persistent system, discusses advantages of the technique and proposes some outstanding research areas. The advantages of hyper-programming over conventional systems include the following: it allows more convenient program composition mechanisms; it allows earlier checking; it provides more flexible linking mechanisms; it allows more succinct program representations; and it allows procedure closures to be represented at a source code level.</description>
    <dc:date>1992-01-01T00:00:00Z</dc:date>
    <dc:creator>Kirby, Graham Njal Cameron</dc:creator>
    <dc:creator>Connor, RCH</dc:creator>
    <dc:creator>Cutts, QI</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Farkas, AM</dc:creator>
    <dc:creator>Morrison, Ronald</dc:creator>
    <dc:description>The traditional representation of a program as a linear sequence of text forces a particular style of program construction to ensure good programming practice. Tools such as syntax directed editors, compilers, linkers and file managers are required to translate and execute these linear sequences of text. At some stage in the execution sequence the source text is checked for type correctness and its translated form linked to values in the environment. When this is performed early in the execution process confidence in the correctness of the program is raised, at the cost of some flexibility of use. Persistent systems allow the persistent environment to participate in the program construction process. This raises the possibility of allowing the representations of source programs to include direct links to values that already exist in the environment. By analogy with hyper-text, where a piece of text contains links to other pieces of text, this source representation is called a hyper-program. This paper outlines how hyper-programming facilities may be provided within a persistent system, discusses advantages of the technique and proposes some outstanding research areas. The advantages of hyper-programming over conventional systems include the following: it allows more convenient program composition mechanisms; it allows earlier checking; it provides more flexible linking mechanisms; it allows more succinct program representations; and it allows procedure closures to be represented at a source code level.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1660">
    <title>Probabilistic parsing</title>
    <link>http://hdl.handle.net/10023/1660</link>
    <dc:date>2008-01-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1659">
    <title>Computing partition functions of PCFGs</title>
    <link>http://hdl.handle.net/10023/1659</link>
    <description>Abstract: We investigate the problem of computing the partition function of a probabilistic context-free grammar, and consider a number of applicable methods. Particular attention is devoted to PCFGs that result from the intersection of another PCFG and a ﬁnite automaton. We report experiments involving the Wall Street Journal corpus.
Description: Acknowledgement provided in erratum at DOI:10.1007/s11168-009-9062-1</description>
    <dc:date>2008-10-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
    <dc:description>We investigate the problem of computing the partition function of a probabilistic context-free grammar, and consider a number of applicable methods. Particular attention is devoted to PCFGs that result from the intersection of another PCFG and a ﬁnite automaton. We report experiments involving the Wall Street Journal corpus.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1658">
    <title>Computation of distances for regular and context-free probabilistic languages</title>
    <link>http://hdl.handle.net/10023/1658</link>
    <description>Abstract: Several mathematical distances between probabilistic languages have been investigated in the literature, motivated by applications in language modeling, computational biology, syntactic pattern matching and machine learning. In most cases, only pairs of probabilistic regular languages were considered. In this paper we extend the previous results to pairs of languages generated by a probabilistic context-free grammar and a probabilistic finite automaton.</description>
    <dc:date>2008-05-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark-Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
    <dc:description>Several mathematical distances between probabilistic languages have been investigated in the literature, motivated by applications in language modeling, computational biology, syntactic pattern matching and machine learning. In most cases, only pairs of probabilistic regular languages were considered. In this paper we extend the previous results to pairs of languages generated by a probabilistic context-free grammar and a probabilistic finite automaton.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1657">
    <title>Weighted parsing of trees</title>
    <link>http://hdl.handle.net/10023/1657</link>
    <description>Abstract: We show how parsing of trees can be formalized in terms of the intersection of two tree languages. The focus is on weighted regular tree grammars and weighted tree adjoining grammars. Potential applications are discussed, such as parameter estimation across formalisms.</description>
    <dc:date>2009-01-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:description>We show how parsing of trees can be formalized in terms of the intersection of two tree languages. The focus is on weighted regular tree grammars and weighted tree adjoining grammars. Potential applications are discussed, such as parameter estimation across formalisms.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1656">
    <title>Automatic creation of interlinear text for philological purposes</title>
    <link>http://hdl.handle.net/10023/1656</link>
    <description>Abstract: Interlinear text presents a collection of interpretations of a manuscript. Whereas such a form is often compiled by a single author or a single team of scholars, we here consider automatic creation of interlinear text out of independently created linguistic resources. In terms of mathematical structures, we investigate the constraints one may want to impose on the rendering and pair-wise alignment of resources, and present a computer algorithm that solves those constraints, resulting in suitable interlinear text.</description>
    <dc:date>2009-01-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:description>Interlinear text presents a collection of interpretations of a manuscript. Whereas such a form is often compiled by a single author or a single team of scholars, we here consider automatic creation of interlinear text out of independently created linguistic resources. In terms of mathematical structures, we investigate the constraints one may want to impose on the rendering and pair-wise alignment of resources, and present a computer algorithm that solves those constraints, resulting in suitable interlinear text.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1655">
    <title>Transforming lexica as trees</title>
    <link>http://hdl.handle.net/10023/1655</link>
    <description>Abstract: We investigate the problem of structurally changing lexica, while preserving the information. We present a type of lexicon transformation that is complete on an interesting class of lexica. Our work is motivated by the problem of merging one or more lexica into one lexicon. Lexica, lexicon schemas, and lexicon transformations are all seen as particular kinds of trees.</description>
    <dc:date>2010-10-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:description>We investigate the problem of structurally changing lexica, while preserving the information. We present a type of lexicon transformation that is complete on an interesting class of lexica. Our work is motivated by the problem of merging one or more lexica into one lexicon. Lexica, lexicon schemas, and lexicon transformations are all seen as particular kinds of trees.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1654">
    <title>Algorithmic aspects of natural language processing</title>
    <link>http://hdl.handle.net/10023/1654</link>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Nederhof, Mark Jan</dc:creator>
    <dc:creator>Satta, Giorgio</dc:creator>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1653">
    <title>A peer-to-peer infrastructure for resilient web services</title>
    <link>http://hdl.handle.net/10023/1653</link>
    <description>Abstract: This paper describes an infrastructure for the deployment and use of Web Services that are resilient to the failure of the nodes that host those services. The infrastructure presents a single interface that provides mechanisms for users to publish services and to find hosted services. The infrastructure supports the autonomic deployment of services and the brokerage of hosts on which services may be deployed. Once deployed, services are autonomically managed in a number of aspects including load balancing, availability, failure detection and recovery, and lifetime management. Services are published and deployed with associated metadata describing the service type. This same metadata may be used subsequently by interested parties to discover services. The infrastructure uses peer-to-peer (P2P) overlay technologies to abstract over the underlying network to deploy and locate instances of those services. It takes advantage of the P2P network to replicate directory services used to locate service instances (for using a service), Service Hosts (for deployment of services) and Autonomic Managers which manage the deployed services. The P2P overlay network is itself constructed using novel Web Services-based middleware and a variation of the Chord P2P protocol, which is self-managing.</description>
    <dc:date>2006-01-01T00:00:00Z</dc:date>
    <dc:creator>Norcross, Stuart J.</dc:creator>
    <dc:creator>Dearle, Alan</dc:creator>
    <dc:creator>Kirby, Graham N. C.</dc:creator>
    <dc:creator>Walker, Scott M.</dc:creator>
    <dc:description>This paper describes an infrastructure for the deployment and use of Web Services that are resilient to the failure of the nodes that host those services. The infrastructure presents a single interface that provides mechanisms for users to publish services and to find hosted services. The infrastructure supports the autonomic deployment of services and the brokerage of hosts on which services may be deployed. Once deployed, services are autonomically managed in a number of aspects including load balancing, availability, failure detection and recovery, and lifetime management. Services are published and deployed with associated metadata describing the service type. This same metadata may be used subsequently by interested parties to discover services. The infrastructure uses peer-to-peer (P2P) overlay technologies to abstract over the underlying network to deploy and locate instances of those services. It takes advantage of the P2P network to replicate directory services used to locate service instances (for using a service), Service Hosts (for deployment of services) and Autonomic Managers which manage the deployed services. The P2P overlay network is itself constructed using novel Web Services-based middleware and a variation of the Chord P2P protocol, which is self-managing.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1614">
    <title>Using situation lattices in sensor analysis</title>
    <link>http://hdl.handle.net/10023/1614</link>
    <description>Abstract: Highly sensorised systems present two parallel challenges: how to design a sensor suite that can efficiently and cost-effectively support the needs of given services; and to extract the semantically relevant interpretations, or "situations", from the flood of context data collected by the sensors. We describe mathematical structures called situation lattices that can be used to address these two problems simultaneously, allowing designers to both design and refine situation identification whilst offering insights into the design of sensor suites. We validate the accuracy and efficiency of our technique against a third-party data set and demonstrate how it can be used to evaluate sensor suite designs.</description>
    <dc:date>2009-03-01T00:00:00Z</dc:date>
    <dc:creator>Ye, Juan</dc:creator>
    <dc:creator>Coyle, Lorcan</dc:creator>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:description>Highly sensorised systems present two parallel challenges: how to design a sensor suite that can efficiently and cost-effectively support the needs of given services; and to extract the semantically relevant interpretations, or "situations", from the flood of context data collected by the sensors. We describe mathematical structures called situation lattices that can be used to address these two problems simultaneously, allowing designers to both design and refine situation identification whilst offering insights into the design of sensor suites. We validate the accuracy and efficiency of our technique against a third-party data set and demonstrate how it can be used to evaluate sensor suite designs.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1596">
    <title>Prototyping and transforming facial textures for perception research</title>
    <link>http://hdl.handle.net/10023/1596</link>
    <description>Abstract: Transforming facial images along perceived dimensions (such as age, gender, race, or health) has application in areas as diverse as psychology, medicine, and forensics. We can use prototype images to define the salient features of a particular face classification (for example, European female adult or East-Asian male child). We then use the differences between two prototypes to define an axis of transformation, such as younger to older. By applying these changes to a given input face, we can change its apparent age, race, or gender. Psychological investigations reveal a limitation with existing methods that's particularly apparent when changing the age of faces. We relate the problem to the loss of facial textures (such as stubble and wrinkles) in the prototypes due to the blending process. We review the existing face prototyping and transformation methods and present a new, wavelet-based method for prototyping and transforming facial textures.</description>
    <dc:date>2001-09-01T00:00:00Z</dc:date>
    <dc:creator>Tiddeman, Bernard Paul</dc:creator>
    <dc:creator>Perrett, David Ian</dc:creator>
    <dc:creator>Burt, D.M.</dc:creator>
    <dc:description>Transforming facial images along perceived dimensions (such as age, gender, race, or health) has application in areas as diverse as psychology, medicine, and forensics. We can use prototype images to define the salient features of a particular face classification (for example, European female adult or East-Asian male child). We then use the differences between two prototypes to define an axis of transformation, such as younger to older. By applying these changes to a given input face, we can change its apparent age, race, or gender. Psychological investigations reveal a limitation with existing methods that's particularly apparent when changing the age of faces. We relate the problem to the loss of facial textures (such as stubble and wrinkles) in the prototypes due to the blending process. We review the existing face prototyping and transformation methods and present a new, wavelet-based method for prototyping and transforming facial textures.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1594">
    <title>Counting cases in substitope algorithms</title>
    <link>http://hdl.handle.net/10023/1594</link>
    <description>Abstract: We describe how to count the cases that arise in a family of visualization techniques, including Marching Cubes, Sweeping Simplices, Contour Meshing, Interval Volumes, and Separating Surfaces. Counting the cases is the first step toward developing a generic visualization algorithm to produce substitopes ( geometric substitutions of polytopes). We demonstrate the method using "GAP," a software system for computational group theory. The case-counts are organized into a table that provides a taxonomy of members of the family; numbers in the table are derived from actual lists of cases, which are computed by our methods. The calculations confirm previously reported case-counts for four dimensions that are too large to check by hand and predict the number of cases that will arise in substitope algorithms that have not yet been invented. We show how Polya theory produces a closed-form upper bound on the case counts.</description>
    <dc:date>2004-07-01T00:00:00Z</dc:date>
    <dc:creator>Banks, D.C.</dc:creator>
    <dc:creator>Linton, Stephen Alexander</dc:creator>
    <dc:creator>Stockmeyer, P.K.</dc:creator>
    <dc:description>We describe how to count the cases that arise in a family of visualization techniques, including Marching Cubes, Sweeping Simplices, Contour Meshing, Interval Volumes, and Separating Surfaces. Counting the cases is the first step toward developing a generic visualization algorithm to produce substitopes ( geometric substitutions of polytopes). We demonstrate the method using "GAP," a software system for computational group theory. The case-counts are organized into a table that provides a taxonomy of members of the family; numbers in the table are derived from actual lists of cases, which are computed by our methods. The calculations confirm previously reported case-counts for four dimensions that are too large to check by hand and predict the number of cases that will arise in substitope algorithms that have not yet been invented. We show how Polya theory produces a closed-form upper bound on the case counts.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1417">
    <title>Symmetric subgroups in modular group algebras</title>
    <link>http://hdl.handle.net/10023/1417</link>
    <description>Abstract: Let V(KG) be a normalised unit group of the modular group algebra of a finite p-group G over the field K of p elements. We introduce a notion of symmetric subgroups in V(KG) as subgroups invariant under the action of the classical involution of the group algebra KG. We study properties of symmetric subgroups and construct a counterexample to the conjecture by V.Bovdi, which states that V(KG)=&lt;G,S*&gt;, where S* is a set of symmetric units of V(KG).
Description: This preprint is translated from the original journal publication in Russian: A. Konovalov and A. Tsapok, Symmetric subgroups of the normalised unit group of the modular group algebra of a finite p-group, Nauk. Visn. Uzhgorod. Univ., Ser. Mat., 9 (2004), 20–24.</description>
    <dc:date>2008-01-05T00:00:00Z</dc:date>
    <dc:creator>Konovalov, Alexander</dc:creator>
    <dc:creator>G. Krivokhata, A.</dc:creator>
    <dc:description>Let V(KG) be a normalised unit group of the modular group algebra of a finite p-group G over the field K of p elements. We introduce a notion of symmetric subgroups in V(KG) as subgroups invariant under the action of the classical involution of the group algebra KG. We study properties of symmetric subgroups and construct a counterexample to the conjecture by V.Bovdi, which states that V(KG)=&lt;G,S*&gt;, where S* is a set of symmetric units of V(KG).</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1350">
    <title>On the relationship between hypersequent calculi and labelled sequent calculi for intermediate logics with geometric Kripke semantics</title>
    <link>http://hdl.handle.net/10023/1350</link>
    <description>Abstract: In this thesis we examine the relationship between hypersequent and some types of labelled sequent calculi for a subset of intermediate logics—logics between intuitionistic (Int), and classical logics—that have geometric Kripke semantics, which we call Int∗/Geo.&#xD;
&#xD;
We introduce a novel calculus for a fragment of first-order classical logic, which&#xD;
we call partially-shielded formulae (or PSF for short), that is adequate for expressing&#xD;
the semantic validity of formulae in Int∗/Geo, and apply techniques from correspondence theory to provide translations of hypersequents, simply labelled sequents and relational sequents (simply labelled sequents with relational formulae) into PSF. Using these translations, we show that hypersequents and simply labelled sequents for calculi in&#xD;
Int∗/Geo share the same models. We also use these translations to justify various techniques that we introduce for translating simply labelled sequents into relational sequents and vice versa. In particular, we introduce a technique called "transitive unfolding" for translating relational sequents into simply labelled sequents (and by extension, hypersequents) which preserves linear models in Int∗/Geo.&#xD;
&#xD;
We introduce syntactic translations between hypersequent calculi and simply labelled&#xD;
sequent calculi. We apply these translations to a novel hypersequent framework HG3ipm∗&#xD;
for some logics in Int∗/Geo to obtain a corresponding simply labelled sequent framework LG3ipm∗, and to an existing simply labelled calculus for Int from the literature to obtain a novel hypersequent calculus for Int.&#xD;
&#xD;
We introduce methods for translating a simply labelled sequent calculus into a cor-&#xD;
responding relational calculus, and apply these methods to LG3ipm∗ to obtain a novel&#xD;
relational framework RG3ipm∗ that bears similarities to existing calculi from the literature. We use transitive unfolding to translate proofs in RG3ipm∗ into proofs in LG3ipm∗ and HG3ipm∗ with the communication rule, which corresponds to the semantic restriction to linear models.</description>
    <dc:date>2010-06-04T00:00:00Z</dc:date>
    <dc:creator>Rothenberg, Robert</dc:creator>
    <dc:description>In this thesis we examine the relationship between hypersequent and some types of labelled sequent calculi for a subset of intermediate logics—logics between intuitionistic (Int), and classical logics—that have geometric Kripke semantics, which we call Int∗/Geo.&#xD;
&#xD;
We introduce a novel calculus for a fragment of first-order classical logic, which&#xD;
we call partially-shielded formulae (or PSF for short), that is adequate for expressing&#xD;
the semantic validity of formulae in Int∗/Geo, and apply techniques from correspondence theory to provide translations of hypersequents, simply labelled sequents and relational sequents (simply labelled sequents with relational formulae) into PSF. Using these translations, we show that hypersequents and simply labelled sequents for calculi in&#xD;
Int∗/Geo share the same models. We also use these translations to justify various techniques that we introduce for translating simply labelled sequents into relational sequents and vice versa. In particular, we introduce a technique called "transitive unfolding" for translating relational sequents into simply labelled sequents (and by extension, hypersequents) which preserves linear models in Int∗/Geo.&#xD;
&#xD;
We introduce syntactic translations between hypersequent calculi and simply labelled&#xD;
sequent calculi. We apply these translations to a novel hypersequent framework HG3ipm∗&#xD;
for some logics in Int∗/Geo to obtain a corresponding simply labelled sequent framework LG3ipm∗, and to an existing simply labelled calculus for Int from the literature to obtain a novel hypersequent calculus for Int.&#xD;
&#xD;
We introduce methods for translating a simply labelled sequent calculus into a cor-&#xD;
responding relational calculus, and apply these methods to LG3ipm∗ to obtain a novel&#xD;
relational framework RG3ipm∗ that bears similarities to existing calculi from the literature. We use transitive unfolding to translate proofs in RG3ipm∗ into proofs in LG3ipm∗ and HG3ipm∗ with the communication rule, which corresponds to the semantic restriction to linear models.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1295">
    <title>Node reliance : an approach to extending the lifetime of wireless sensor networks</title>
    <link>http://hdl.handle.net/10023/1295</link>
    <description>Abstract: A Wireless Sensor Network (WSN) consists of a number of nodes, each typically having a small amount of non-replenishable energy. Some of the nodes have sensors, which may be used to gather environmental data. A common network abstraction used in WSNs is the (source, sink) architecture in which data is generated at one or more sources and sent to one or more sinks using wireless communication, possibly via intermediate nodes. &#xD;
&#xD;
In such systems, wireless communication is usually implemented using radio. Transmitting or receiving, even on a low power radio, is much more energy-expensive than other activities such as computation and consequently, the radio must be used judiciously to avoid unnecessary depletion of energy. Eventually, the loss of energy at each node will cause it to stop operating, resulting in the loss of data acquisition and data delivery. Whilst the loss of some nodes may be tolerable, albeit undesirable, the loss of certain critical nodes in a multi-hop routing environment may cause network partitions such that data may no longer be deliverable to sinks, reducing the usefulness of the network. &#xD;
&#xD;
This thesis presents a new heuristic known as node reliance and demonstrates its efficacy in prolonging the useful lifetime of WSNs. The node reliance heuristic attempts to keep as many sources and sinks connected for as long as possible. It achieves this using a reliance value that measures the degree to which a node is relied upon in routing data from sources to sinks. By forming routes that avoid high reliance nodes, the usefulness of the network may be extended.&#xD;
&#xD;
The hypothesis of this thesis is that the useful lifetime of a WSN may be improved by node reliance routing in which paths from sources to sinks avoid critical nodes where possible.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Boyd, Alan W. F.</dc:creator>
    <dc:description>A Wireless Sensor Network (WSN) consists of a number of nodes, each typically having a small amount of non-replenishable energy. Some of the nodes have sensors, which may be used to gather environmental data. A common network abstraction used in WSNs is the (source, sink) architecture in which data is generated at one or more sources and sent to one or more sinks using wireless communication, possibly via intermediate nodes. &#xD;
&#xD;
In such systems, wireless communication is usually implemented using radio. Transmitting or receiving, even on a low power radio, is much more energy-expensive than other activities such as computation and consequently, the radio must be used judiciously to avoid unnecessary depletion of energy. Eventually, the loss of energy at each node will cause it to stop operating, resulting in the loss of data acquisition and data delivery. Whilst the loss of some nodes may be tolerable, albeit undesirable, the loss of certain critical nodes in a multi-hop routing environment may cause network partitions such that data may no longer be deliverable to sinks, reducing the usefulness of the network. &#xD;
&#xD;
This thesis presents a new heuristic known as node reliance and demonstrates its efficacy in prolonging the useful lifetime of WSNs. The node reliance heuristic attempts to keep as many sources and sinks connected for as long as possible. It achieves this using a reliance value that measures the degree to which a node is relied upon in routing data from sources to sinks. By forming routes that avoid high reliance nodes, the usefulness of the network may be extended.&#xD;
&#xD;
The hypothesis of this thesis is that the useful lifetime of a WSN may be improved by node reliance routing in which paths from sources to sinks avoid critical nodes where possible.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1130">
    <title>From physical models to well-founded control</title>
    <link>http://hdl.handle.net/10023/1130</link>
    <description>Abstract: Mobile sensors are an attractive proposition forenvironmental sensing, but pose significant engineering problems. Not leastamongst these is the need to match the behaviour of the sensor platform to thephysical environment in which it operates. We present initial work on using modelsof physical processes to generate models for autonomic control, and speculatethat these can be used to improve the confidence we can place in sensed data.</description>
    <dc:date>2009-04-01T00:00:00Z</dc:date>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:creator>Coyle, Lorcan</dc:creator>
    <dc:creator>O'Hare, G. M. P.</dc:creator>
    <dc:creator>Hinchey, Mike</dc:creator>
    <dc:description>Mobile sensors are an attractive proposition forenvironmental sensing, but pose significant engineering problems. Not leastamongst these is the need to match the behaviour of the sensor platform to thephysical environment in which it operates. We present initial work on using modelsof physical processes to generate models for autonomic control, and speculatethat these can be used to improve the confidence we can place in sensed data.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1072">
    <title>Facilitating a well-founded approach to autonomic systems</title>
    <link>http://hdl.handle.net/10023/1072</link>
    <description>Abstract: While it is desirable for all computing and communications systems to have well-defined and verifiable behaviour, autonomic systems must additionally guarantee that their adaptive behaviour is correct, both in the sense of responding appropriately to changes in context and in the sense of continuing to meet the high-level requirements of the system. Ensuring such high levels of "process" correctness poses a significant challenge for system designers. Formal methods provide a valuable tool to assist in the design, analysis and verification processes. The goals of the ACF's semantics working group is to identify formal techniques that may be applicable to the development of autonomic systems, and to promote the understanding of these techniques within the research community.</description>
    <dc:date>2008-04-01T00:00:00Z</dc:date>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:description>While it is desirable for all computing and communications systems to have well-defined and verifiable behaviour, autonomic systems must additionally guarantee that their adaptive behaviour is correct, both in the sense of responding appropriately to changes in context and in the sense of continuing to meet the high-level requirements of the system. Ensuring such high levels of "process" correctness poses a significant challenge for system designers. Formal methods provide a valuable tool to assist in the design, analysis and verification processes. The goals of the ACF's semantics working group is to identify formal techniques that may be applicable to the development of autonomic systems, and to promote the understanding of these techniques within the research community.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1046">
    <title>Privacy-enhanced social network routing in opportunistic networks</title>
    <link>http://hdl.handle.net/10023/1046</link>
    <description>Abstract: Opportunistic networking-forwarding messages in a disconnected mobile ad hoc network via any encountered nodes-offers a new mechanism for exploiting the mobile devices that many users already carry. Forwarding messages in such a network often involves the use of social network routing-sending messages via nodes in the sender or recipient's social network. Simple social network routing, however, may broadcast these social networks, which introduces privacy concerns. This paper introduces two methods for enhancing privacy in social network routing by obfuscating the social network graphs used to inform routing decisions. We evaluate these methods using two real-world datasets, and find that it is possible to obfuscate the social network information without leading to a significant decrease in routing performance.</description>
    <dc:date>2010-03-01T00:00:00Z</dc:date>
    <dc:creator>Parris, Iain Siraj</dc:creator>
    <dc:creator>Bigwood, Gregory John</dc:creator>
    <dc:creator>Henderson, Tristan Nicholas Hoang</dc:creator>
    <dc:description>Opportunistic networking-forwarding messages in a disconnected mobile ad hoc network via any encountered nodes-offers a new mechanism for exploiting the mobile devices that many users already carry. Forwarding messages in such a network often involves the use of social network routing-sending messages via nodes in the sender or recipient's social network. Simple social network routing, however, may broadcast these social networks, which introduces privacy concerns. This paper introduces two methods for enhancing privacy in social network routing by obfuscating the social network graphs used to inform routing decisions. We evaluate these methods using two real-world datasets, and find that it is possible to obfuscate the social network information without leading to a significant decrease in routing performance.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/1045">
    <title>LOC8 : A Location Model and Extensible Framework for Programming with Location</title>
    <link>http://hdl.handle.net/10023/1045</link>
    <description>Abstract: Location is a core concept in most pervasive systems-and one that's surprisingly hard to deal with flexibly. Using a location model supporting a range of expressive representations for spaces, spatial relationships, and positioning systems, the authors constructed LOC8, a programming framework for exploring location data's multifaceted representations and uses. With LOC8, developers can construct complex queries by combining basic queries and additional contextual information.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Stevenson, Graeme</dc:creator>
    <dc:creator>Ye, Juan</dc:creator>
    <dc:creator>Dobson, Simon</dc:creator>
    <dc:creator>Nixon, Paddy</dc:creator>
    <dc:description>Location is a core concept in most pervasive systems-and one that's surprisingly hard to deal with flexibly. Using a location model supporting a range of expressive representations for spaces, spatial relationships, and positioning systems, the authors constructed LOC8, a programming framework for exploring location data's multifaceted representations and uses. With LOC8, developers can construct complex queries by combining basic queries and additional contextual information.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/973">
    <title>Effective compilation of constraint models</title>
    <link>http://hdl.handle.net/10023/973</link>
    <description>Abstract: Constraint Programming is a powerful technique for solving large-scale combinatorial (optimisation)&#xD;
problems. However, it is often inaccessible to users without expert knowledge&#xD;
in the area, precluding the wide-spread use of Constraint Programming techniques. This&#xD;
thesis addresses this issue in three main contributions.&#xD;
First, we propose a simple ‘model-and-solve’ approach, consisting of a framework where&#xD;
the user formulates a solver-independent problem model, which is then automatically tailored&#xD;
to the input format of a selected constraint solver (a process similar to compiling a&#xD;
high-level modelling language to machine code). The solver is then executed on the input,&#xD;
solver, and solutions (if they exist) are returned to the user. This allows the user to&#xD;
formulate constraint models without requiring any particular background knowledge of the&#xD;
respective solver and its solving technique. Furthermore, since the framework can target&#xD;
several solvers, the user can explore different types of solvers.&#xD;
Second, we extend the tailoring process with model optimisations that can compensate for a&#xD;
wide selection of poor modelling choices that novices (and experts) in Constraint Programming&#xD;
often make and hence result in redundancies. The elimination of these redundancies&#xD;
by the proposed optimisation techniques can result in solving time speedups of over an&#xD;
order of magnitude, in both naive and expert models. Furthermore, the optimisations are&#xD;
particularly light-weight, adding negligible overhead to the overall translation process.&#xD;
The third contribution is the implementation of this framework in the tool TAILOR, that&#xD;
currently translates 2 different solver-independent modelling languages to 3 different solver&#xD;
formats and is freely available online. It performs almost all optimisation techniques that&#xD;
are proposed in this thesis and demonstrates its significance in our empirical analysis.&#xD;
In summary, this thesis presents a framework that facilitates modelling for both experts&#xD;
and novices: problems can be formulated in a clear, high-level fashion, without requiring&#xD;
any particular background knowledge about constraint solvers and their solving techniques,&#xD;
while (sometimes naturally occurring) redundancies in the model are eliminated for practically&#xD;
no additional cost, improving the respective model in solving performance by up to&#xD;
an order of magnitude.</description>
    <dc:date>2010-01-01T00:00:00Z</dc:date>
    <dc:creator>Rendl, Andrea</dc:creator>
    <dc:description>Constraint Programming is a powerful technique for solving large-scale combinatorial (optimisation)&#xD;
problems. However, it is often inaccessible to users without expert knowledge&#xD;
in the area, precluding the wide-spread use of Constraint Programming techniques. This&#xD;
thesis addresses this issue in three main contributions.&#xD;
First, we propose a simple ‘model-and-solve’ approach, consisting of a framework where&#xD;
the user formulates a solver-independent problem model, which is then automatically tailored&#xD;
to the input format of a selected constraint solver (a process similar to compiling a&#xD;
high-level modelling language to machine code). The solver is then executed on the input,&#xD;
solver, and solutions (if they exist) are returned to the user. This allows the user to&#xD;
formulate constraint models without requiring any particular background knowledge of the&#xD;
respective solver and its solving technique. Furthermore, since the framework can target&#xD;
several solvers, the user can explore different types of solvers.&#xD;
Second, we extend the tailoring process with model optimisations that can compensate for a&#xD;
wide selection of poor modelling choices that novices (and experts) in Constraint Programming&#xD;
often make and hence result in redundancies. The elimination of these redundancies&#xD;
by the proposed optimisation techniques can result in solving time speedups of over an&#xD;
order of magnitude, in both naive and expert models. Furthermore, the optimisations are&#xD;
particularly light-weight, adding negligible overhead to the overall translation process.&#xD;
The third contribution is the implementation of this framework in the tool TAILOR, that&#xD;
currently translates 2 different solver-independent modelling languages to 3 different solver&#xD;
formats and is freely available online. It performs almost all optimisation techniques that&#xD;
are proposed in this thesis and demonstrates its significance in our empirical analysis.&#xD;
In summary, this thesis presents a framework that facilitates modelling for both experts&#xD;
and novices: problems can be formulated in a clear, high-level fashion, without requiring&#xD;
any particular background knowledge about constraint solvers and their solving techniques,&#xD;
while (sometimes naturally occurring) redundancies in the model are eliminated for practically&#xD;
no additional cost, improving the respective model in solving performance by up to&#xD;
an order of magnitude.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/933">
    <title>Tools and techniques for formalising structural proof theory</title>
    <link>http://hdl.handle.net/10023/933</link>
    <description>Abstract: Whilst results from Structural Proof Theory can be couched in many formalisms, it is&#xD;
the sequent calculus which is the most amenable of the formalisms to metamathematical&#xD;
treatment. Constructive syntactic proofs are  filled with bureaucratic details; rarely are&#xD;
all cases of a proof completed in the literature. Two intermediate results can be used to&#xD;
drastically reduce the amount of effort needed in proofs of Cut admissibility: Weakening&#xD;
and Invertibility. Indeed, whereas there are proofs of Cut admissibility which do not use&#xD;
Invertibility, Weakening is almost always necessary. Use of these results simply shifts the&#xD;
bureaucracy, however; Weakening and Invertibility, whilst more easy to prove, are still not&#xD;
trivial. We give a framework under which sequent calculi can be codified and analysed,&#xD;
which then allows us to prove various results: for a calculus to admit Weakening and for a&#xD;
rule to be invertible in a calculus. For the latter, even though many calculi are investigated,&#xD;
the general condition is simple and easily verified. The results have been applied to G3ip,&#xD;
G3cp, G3s, G3-LC and G4ip.&#xD;
Invertibility is important in another respect; that of proof-search. Should all rules in&#xD;
a calculus be invertible, then terminating root-first proof search gives a decision procedure&#xD;
for formulae without the need for back-tracking. To this end, we present some results&#xD;
about the manipulation of rule sets. It is shown that the transformations do not affect the&#xD;
expressiveness of the calculus, yet may render more rules invertible. These results can guide&#xD;
the design of efficient calculi.&#xD;
When using interactive proof assistants, every case of a proof, however complex, must be&#xD;
addressed and proved before one can declare the result formalised. To do this in a human readable&#xD;
way adds a further layer of complexity; most proof assistants give output which is&#xD;
only legible to a skilled user of that proof assistant. We give human-readable formalisations&#xD;
of Cut admissibility for G3cp and G3ip, Contraction admissibility for G4ip and Craig's&#xD;
Interpolation Theorem for G3i using the Isar vernacular of Isabelle. We also formalise the&#xD;
new invertibility results, in part using the package for reasoning about first-order languages,&#xD;
Nominal Isabelle. Examples are given showing the effectiveness of the formalisation. The&#xD;
formal proof of invertibility using the new methods is drastically shorter than the traditional,&#xD;
direct method.</description>
    <dc:date>2010-06-01T00:00:00Z</dc:date>
    <dc:creator>Chapman, Peter</dc:creator>
    <dc:description>Whilst results from Structural Proof Theory can be couched in many formalisms, it is&#xD;
the sequent calculus which is the most amenable of the formalisms to metamathematical&#xD;
treatment. Constructive syntactic proofs are  filled with bureaucratic details; rarely are&#xD;
all cases of a proof completed in the literature. Two intermediate results can be used to&#xD;
drastically reduce the amount of effort needed in proofs of Cut admissibility: Weakening&#xD;
and Invertibility. Indeed, whereas there are proofs of Cut admissibility which do not use&#xD;
Invertibility, Weakening is almost always necessary. Use of these results simply shifts the&#xD;
bureaucracy, however; Weakening and Invertibility, whilst more easy to prove, are still not&#xD;
trivial. We give a framework under which sequent calculi can be codified and analysed,&#xD;
which then allows us to prove various results: for a calculus to admit Weakening and for a&#xD;
rule to be invertible in a calculus. For the latter, even though many calculi are investigated,&#xD;
the general condition is simple and easily verified. The results have been applied to G3ip,&#xD;
G3cp, G3s, G3-LC and G4ip.&#xD;
Invertibility is important in another respect; that of proof-search. Should all rules in&#xD;
a calculus be invertible, then terminating root-first proof search gives a decision procedure&#xD;
for formulae without the need for back-tracking. To this end, we present some results&#xD;
about the manipulation of rule sets. It is shown that the transformations do not affect the&#xD;
expressiveness of the calculus, yet may render more rules invertible. These results can guide&#xD;
the design of efficient calculi.&#xD;
When using interactive proof assistants, every case of a proof, however complex, must be&#xD;
addressed and proved before one can declare the result formalised. To do this in a human readable&#xD;
way adds a further layer of complexity; most proof assistants give output which is&#xD;
only legible to a skilled user of that proof assistant. We give human-readable formalisations&#xD;
of Cut admissibility for G3cp and G3ip, Contraction admissibility for G4ip and Craig's&#xD;
Interpolation Theorem for G3i using the Isar vernacular of Isabelle. We also formalise the&#xD;
new invertibility results, in part using the package for reasoning about first-order languages,&#xD;
Nominal Isabelle. Examples are given showing the effectiveness of the formalisation. The&#xD;
formal proof of invertibility using the new methods is drastically shorter than the traditional,&#xD;
direct method.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/930">
    <title>An investigation into the use of social network sites to support project communications</title>
    <link>http://hdl.handle.net/10023/930</link>
    <description>Abstract: System deployment projects are extremely complex and with more and more organisations now choosing to configure and deploy off-the-shelf systems, the project teams are presented with new challenges.  The aim of this study was to gain an understanding of the issues faced during such configuration and deployment projects and see if support could be provided.&#xD;
&#xD;
A year long observational study of one of these projects was carried.  While it was initially assumed that it would be technical issues related to the system’s configuration that would be the primary problems, the study revealed communication issues to be at the heart of a large number of the issues.  &#xD;
&#xD;
Online social networks such as Facebook are extremely popular, allowing users to stay in touch with large numbers of distributed people.  Private social network sites were applied to projects to see if they could replicate the benefits the sites provide and support project communications.  A social network site was created for both a distributed research project and an administrative systems project and their use observed.  Statistical data on the use of the sites and qualitative feedback from users is presented to assess the viability of the approach.&#xD;
&#xD;
The experiments showed social network sites to have many benefits when used as a complementary mechanism to traditional channels for project communications.   It is clear however, that social network sites cannot solve all the problems projects may encounter.    If the use of a site is to be a success it is vital it gains a critical mass of users.  The approach taken to the site’s configuration and introduction will be hugely influential in its success.  In order to choose the right approach a clear understanding of what the project’s communication needs are and the possible uses of the site is needed.  A process of configuration and development with a small group of potential users is recommended to ensure it is as user friendly as possible before going live to a large user base.</description>
    <dc:date>2010-06-23T00:00:00Z</dc:date>
    <dc:creator>Harvey, Natalie</dc:creator>
    <dc:description>System deployment projects are extremely complex and with more and more organisations now choosing to configure and deploy off-the-shelf systems, the project teams are presented with new challenges.  The aim of this study was to gain an understanding of the issues faced during such configuration and deployment projects and see if support could be provided.&#xD;
&#xD;
A year long observational study of one of these projects was carried.  While it was initially assumed that it would be technical issues related to the system’s configuration that would be the primary problems, the study revealed communication issues to be at the heart of a large number of the issues.  &#xD;
&#xD;
Online social networks such as Facebook are extremely popular, allowing users to stay in touch with large numbers of distributed people.  Private social network sites were applied to projects to see if they could replicate the benefits the sites provide and support project communications.  A social network site was created for both a distributed research project and an administrative systems project and their use observed.  Statistical data on the use of the sites and qualitative feedback from users is presented to assess the viability of the approach.&#xD;
&#xD;
The experiments showed social network sites to have many benefits when used as a complementary mechanism to traditional channels for project communications.   It is clear however, that social network sites cannot solve all the problems projects may encounter.    If the use of a site is to be a success it is vital it gains a critical mass of users.  The approach taken to the site’s configuration and introduction will be hugely influential in its success.  In order to choose the right approach a clear understanding of what the project’s communication needs are and the possible uses of the site is needed.  A process of configuration and development with a small group of potential users is recommended to ensure it is as user friendly as possible before going live to a large user base.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/926">
    <title>Autonomic management in a distributed storage system</title>
    <link>http://hdl.handle.net/10023/926</link>
    <description>Abstract: This thesis investigates the application of autonomic management to a distributed storage&#xD;
system. Effects on performance and resource consumption were measured in experiments,&#xD;
which were carried out in a local area test-bed. The experiments were conducted with&#xD;
components of one specific distributed storage system, but seek to be applicable to a wide range of such systems, in particular those exposed to varying conditions.&#xD;
The perceived characteristics of distributed storage systems depend on their configuration&#xD;
parameters and on various dynamic conditions. For a given set of conditions, one specific configuration may be better than another with respect to measures such as resource&#xD;
consumption and performance. Here, configuration parameter values were set dynamically&#xD;
and the results compared with a static configuration. It was hypothesised that under non-changing conditions this would allow the system to converge on a configuration that was&#xD;
more suitable than any that could be set a priori. Furthermore, the system could react to&#xD;
a change in conditions by adopting a more appropriate configuration. Autonomic management was applied to the peer-to-peer (P2P) and data retrieval components of ASA, a&#xD;
distributed storage system. The effects were measured experimentally for various workload and churn patterns. The management policies and mechanisms were implemented&#xD;
using a generic autonomic management framework developed during this work.&#xD;
&#xD;
The motivation for both groups of  experiments was to test management policies with the objective to avoid unsatisfactory situations with respect to resource consumption and performance. Such unsatisfactory situations occur when either the P2P layer or the data retrieval mechanism is configured statically. In a statically configured P2P system two unsatisfactory situations can be identified. The first arises when the frequency with which P2P node states are verified is low and  membership churn is high. The P2P node state becomes inaccurate due to a high membership churn, leading to errors during the routing process and a reduction in performance. In this situation it is desirable to increase the frequency to increase P2P state accuracy. The converse situation arises when the frequency is high and churn is low. In this situation network resources are used unnecessarily, which may also reduce performance, making it desirable to decrease the frequency.&#xD;
In ASA’s data retrieval mechanism similar unsatisfactory situations can be identified with respect to the degree of concurrency (DOC). The DOC controls the eagerness with which multiple redundant replicas are retrieved. An unsatisfactory situation arises when the DOC is low and there is a large variation in the times taken to retrieve replicas. In this situation it is desirable to increase the DOC, because by retrieving more replicas in parallel a&#xD;
result can be returned to the user sooner. The converse situation arises when the DOC is&#xD;
high, there is little variation in retrieval time and there is a network bottleneck close to the requesting client. In this situation it is desirable to decrease the DOC, since the low variation removes any benefit in parallel retrieval, and the bottleneck means that decreasing parallelism reduces both bandwidth consumption and elapsed time for the user.&#xD;
The experimental evaluations of autonomic management show promising results, and suggest several future research topics. These include optimisations of the managed mechanisms, alternative management policies, different evaluation methods, and the application of developed management mechanisms to other facets of a distributed storage system. The findings of this thesis could be exploited in building other distributed storage systems that focus on harnessing storage on user workstations, since these are particularly likely to be exposed to varying, unpredictable conditions.</description>
    <dc:date>2010-06-23T00:00:00Z</dc:date>
    <dc:creator>Tauber, Markus</dc:creator>
    <dc:description>This thesis investigates the application of autonomic management to a distributed storage&#xD;
system. Effects on performance and resource consumption were measured in experiments,&#xD;
which were carried out in a local area test-bed. The experiments were conducted with&#xD;
components of one specific distributed storage system, but seek to be applicable to a wide range of such systems, in particular those exposed to varying conditions.&#xD;
The perceived characteristics of distributed storage systems depend on their configuration&#xD;
parameters and on various dynamic conditions. For a given set of conditions, one specific configuration may be better than another with respect to measures such as resource&#xD;
consumption and performance. Here, configuration parameter values were set dynamically&#xD;
and the results compared with a static configuration. It was hypothesised that under non-changing conditions this would allow the system to converge on a configuration that was&#xD;
more suitable than any that could be set a priori. Furthermore, the system could react to&#xD;
a change in conditions by adopting a more appropriate configuration. Autonomic management was applied to the peer-to-peer (P2P) and data retrieval components of ASA, a&#xD;
distributed storage system. The effects were measured experimentally for various workload and churn patterns. The management policies and mechanisms were implemented&#xD;
using a generic autonomic management framework developed during this work.&#xD;
&#xD;
The motivation for both groups of  experiments was to test management policies with the objective to avoid unsatisfactory situations with respect to resource consumption and performance. Such unsatisfactory situations occur when either the P2P layer or the data retrieval mechanism is configured statically. In a statically configured P2P system two unsatisfactory situations can be identified. The first arises when the frequency with which P2P node states are verified is low and  membership churn is high. The P2P node state becomes inaccurate due to a high membership churn, leading to errors during the routing process and a reduction in performance. In this situation it is desirable to increase the frequency to increase P2P state accuracy. The converse situation arises when the frequency is high and churn is low. In this situation network resources are used unnecessarily, which may also reduce performance, making it desirable to decrease the frequency.&#xD;
In ASA’s data retrieval mechanism similar unsatisfactory situations can be identified with respect to the degree of concurrency (DOC). The DOC controls the eagerness with which multiple redundant replicas are retrieved. An unsatisfactory situation arises when the DOC is low and there is a large variation in the times taken to retrieve replicas. In this situation it is desirable to increase the DOC, because by retrieving more replicas in parallel a&#xD;
result can be returned to the user sooner. The converse situation arises when the DOC is&#xD;
high, there is little variation in retrieval time and there is a network bottleneck close to the requesting client. In this situation it is desirable to decrease the DOC, since the low variation removes any benefit in parallel retrieval, and the bottleneck means that decreasing parallelism reduces both bandwidth consumption and elapsed time for the user.&#xD;
The experimental evaluations of autonomic management show promising results, and suggest several future research topics. These include optimisations of the managed mechanisms, alternative management policies, different evaluation methods, and the application of developed management mechanisms to other facets of a distributed storage system. The findings of this thesis could be exploited in building other distributed storage systems that focus on harnessing storage on user workstations, since these are particularly likely to be exposed to varying, unpredictable conditions.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/923">
    <title>Enabling exploratory learning through virtual fieldwork</title>
    <link>http://hdl.handle.net/10023/923</link>
    <description>Abstract: This dissertation presents a framework which supports a group-based exploratory approach to learning&#xD;
and integrates 3D gaming methods and technologies with an institutional learning environment. This&#xD;
provides learners with anytime-anywhere access to interactive learning materials, thereby supporting a&#xD;
self paced and personalised approach to learning.&#xD;
A simulation environment based on real world data has been developed, with a computer games&#xD;
methodology adopted as the means by which users are able to progress through the system. Within a&#xD;
virtual setting users, or groups of users, are faced with a series of dynamic challenges with which they&#xD;
engage until such time as they have shown a certain level of competence. Once a series of domain&#xD;
specific objectives have been met, users are able to progress forward to the next level of the simulation.&#xD;
Through the use of Internet and 3D visualisation technologies, an excavation simulator has been&#xD;
developed which provides the opportunity for students to engage in a virtual excavation project,&#xD;
applying their knowledge and reflecting on the outcomes of their decisions. The excavation simulator&#xD;
enhances the student learning experience by providing opportunities for students to engage with the&#xD;
archaeological excavation process in a customisable, virtual environment. Not only does this provide&#xD;
students with an opportunity to put some of the theories they are familiar with into practice, but it also&#xD;
allows for archaeology courses to place a greater emphasis on the practical application of knowledge&#xD;
that occurs during the excavation process.&#xD;
Laconia Acropolis Virtual Archaeology (LAVA) is a co-operative exploratory learning environment&#xD;
that addresses the need for students to engage with archaeological excavation scenarios. By leveraging&#xD;
the immersive nature of gaming technologies and 3D multi-user virtual environments (MUVEs),&#xD;
LAVA facilitates the adoption of exploratory learning practices in environments which have previously&#xD;
been inaccessible due to barriers of space, time or cost.</description>
    <dc:date>2010-06-23T00:00:00Z</dc:date>
    <dc:creator>Getchell, Kristoffer M.</dc:creator>
    <dc:description>This dissertation presents a framework which supports a group-based exploratory approach to learning&#xD;
and integrates 3D gaming methods and technologies with an institutional learning environment. This&#xD;
provides learners with anytime-anywhere access to interactive learning materials, thereby supporting a&#xD;
self paced and personalised approach to learning.&#xD;
A simulation environment based on real world data has been developed, with a computer games&#xD;
methodology adopted as the means by which users are able to progress through the system. Within a&#xD;
virtual setting users, or groups of users, are faced with a series of dynamic challenges with which they&#xD;
engage until such time as they have shown a certain level of competence. Once a series of domain&#xD;
specific objectives have been met, users are able to progress forward to the next level of the simulation.&#xD;
Through the use of Internet and 3D visualisation technologies, an excavation simulator has been&#xD;
developed which provides the opportunity for students to engage in a virtual excavation project,&#xD;
applying their knowledge and reflecting on the outcomes of their decisions. The excavation simulator&#xD;
enhances the student learning experience by providing opportunities for students to engage with the&#xD;
archaeological excavation process in a customisable, virtual environment. Not only does this provide&#xD;
students with an opportunity to put some of the theories they are familiar with into practice, but it also&#xD;
allows for archaeology courses to place a greater emphasis on the practical application of knowledge&#xD;
that occurs during the excavation process.&#xD;
Laconia Acropolis Virtual Archaeology (LAVA) is a co-operative exploratory learning environment&#xD;
that addresses the need for students to engage with archaeological excavation scenarios. By leveraging&#xD;
the immersive nature of gaming technologies and 3D multi-user virtual environments (MUVEs),&#xD;
LAVA facilitates the adoption of exploratory learning practices in environments which have previously&#xD;
been inaccessible due to barriers of space, time or cost.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/763">
    <title>Synthesis of facial ageing transforms using three-dimensional morphable models</title>
    <link>http://hdl.handle.net/10023/763</link>
    <description>Abstract: The ability to synthesise the effects of ageing in human faces has numerous uses from aiding&#xD;
the search for missing people to improving recognition algorithms and aiding surgical&#xD;
planning.&#xD;
The principal contribution of this thesis is a novel method for synthesising the visual effects&#xD;
of facial ageing using a training set of three-dimensional scans to train a statistical&#xD;
ageing model. This data-base is constructed by fitting a statistical Face Model known as a&#xD;
Morphable Model to a set of two dimensional photographs of a set of subjects at different&#xD;
age points in their lives. We verify the effectiveness of this algorithm with both quantitative&#xD;
and psychological evaluation. Most ageing research has concentrated on building models&#xD;
using two-dimensional images. This has two major shortcomings, firstly some of the information&#xD;
related to shape change may be lost by the projection to two-dimensions; secondly&#xD;
the algorithms are very sensitive to even slight variations in pose and lighting. By using&#xD;
standard face-fitting methods to fit a statistical face model to the image we overcome these&#xD;
problems by reconstructing the lost shape information, and can use a model of physical&#xD;
rotations and light transfer to overcome the issues of pose and rotation. We show that the&#xD;
three-dimensional models captured by face-fitting offer an effective method of synthesising&#xD;
facial ageing.&#xD;
The second contribution is a new algorithm for ageing a face model based on Projection to&#xD;
Latent Structures also known as Partial Least Squares. This method attempts to separate&#xD;
the training set into a set of basis vectors that best explains the shape and colour changes&#xD;
related to ageing from those factors within the training set that are unrelated to ageing. We&#xD;
show that this method is more accurate than other linear techniques at producing a face&#xD;
model that resembles the individual at the target age and of producing a face image of the&#xD;
correct perceived age.&#xD;
The third contribution is a careful evaluation of three well known ageing methods. We use&#xD;
both quantitative evaluation to determine the accuracy of the ageing method, and perceptual&#xD;
evaluation to determine how well the model performs in terms of perceived age increase&#xD;
and also identity retention. We show that linear methods more accurately capture ageing&#xD;
and identity information if they are trained using an individualised model, and that ageing&#xD;
is more accurately captured if PLS is used to train the model.</description>
    <dc:date>2009-11-30T00:00:00Z</dc:date>
    <dc:creator>Hunter, David W.</dc:creator>
    <dc:description>The ability to synthesise the effects of ageing in human faces has numerous uses from aiding&#xD;
the search for missing people to improving recognition algorithms and aiding surgical&#xD;
planning.&#xD;
The principal contribution of this thesis is a novel method for synthesising the visual effects&#xD;
of facial ageing using a training set of three-dimensional scans to train a statistical&#xD;
ageing model. This data-base is constructed by fitting a statistical Face Model known as a&#xD;
Morphable Model to a set of two dimensional photographs of a set of subjects at different&#xD;
age points in their lives. We verify the effectiveness of this algorithm with both quantitative&#xD;
and psychological evaluation. Most ageing research has concentrated on building models&#xD;
using two-dimensional images. This has two major shortcomings, firstly some of the information&#xD;
related to shape change may be lost by the projection to two-dimensions; secondly&#xD;
the algorithms are very sensitive to even slight variations in pose and lighting. By using&#xD;
standard face-fitting methods to fit a statistical face model to the image we overcome these&#xD;
problems by reconstructing the lost shape information, and can use a model of physical&#xD;
rotations and light transfer to overcome the issues of pose and rotation. We show that the&#xD;
three-dimensional models captured by face-fitting offer an effective method of synthesising&#xD;
facial ageing.&#xD;
The second contribution is a new algorithm for ageing a face model based on Projection to&#xD;
Latent Structures also known as Partial Least Squares. This method attempts to separate&#xD;
the training set into a set of basis vectors that best explains the shape and colour changes&#xD;
related to ageing from those factors within the training set that are unrelated to ageing. We&#xD;
show that this method is more accurate than other linear techniques at producing a face&#xD;
model that resembles the individual at the target age and of producing a face image of the&#xD;
correct perceived age.&#xD;
The third contribution is a careful evaluation of three well known ageing methods. We use&#xD;
both quantitative evaluation to determine the accuracy of the ageing method, and perceptual&#xD;
evaluation to determine how well the model performs in terms of perceived age increase&#xD;
and also identity retention. We show that linear methods more accurately capture ageing&#xD;
and identity information if they are trained using an individualised model, and that ageing&#xD;
is more accurately captured if PLS is used to train the model.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/759">
    <title>Consistency and the Quantiﬁed Constraint Satisfaction Problem</title>
    <link>http://hdl.handle.net/10023/759</link>
    <description>Abstract: Constraint satisfaction is a very well studied and fundamental artificial intelligence technique.&#xD;
Various forms of knowledge can be represented with constraints, and reasoning techniques from&#xD;
disparate ﬁelds can be encapsulated within constraint reasoning algorithms. However, problems&#xD;
involving uncertainty, or which have an adversarial nature (for example, games), are difficult to&#xD;
express and solve in the classical constraint satisfaction problem. This thesis is concerned with&#xD;
an extension to the classical problem: the Quantified Constraint Satisfaction Problem (QCSP).&#xD;
QCSP has recently attracted interest. In QCSP, quantifiers are allowed, facilitating the expression&#xD;
of uncertainty.&#xD;
&#xD;
I examine whether QCSP is a useful formalism. This divides into two questions: whether&#xD;
QCSP can be solved efficiently; and whether realistic problems can be represented in QCSP. In&#xD;
attempting to answer these questions, the main contributions of this thesis are the following:&#xD;
&#xD;
- the definition of two new notions of consistency;&#xD;
&#xD;
- four new constraint propagation algorithms (with eight variants in total), along with empirical evaluations;&#xD;
&#xD;
- two novel schemes to implement the pure value rule, which is able to simplify QCSP instances;&#xD;
&#xD;
- a new optimization algorithm for QCSP;&#xD;
&#xD;
- the integration of these algorithms and techniques into a solver named Queso;&#xD;
&#xD;
- and the modelling of the Connect 4 game, and of faulty job shop scheduling, in QCSP.&#xD;
&#xD;
These are set in context by a thorough review of the QCSP literature.</description>
    <dc:date>2007-11-30T00:00:00Z</dc:date>
    <dc:creator>Nightingale, Peter William</dc:creator>
    <dc:description>Constraint satisfaction is a very well studied and fundamental artificial intelligence technique.&#xD;
Various forms of knowledge can be represented with constraints, and reasoning techniques from&#xD;
disparate ﬁelds can be encapsulated within constraint reasoning algorithms. However, problems&#xD;
involving uncertainty, or which have an adversarial nature (for example, games), are difficult to&#xD;
express and solve in the classical constraint satisfaction problem. This thesis is concerned with&#xD;
an extension to the classical problem: the Quantified Constraint Satisfaction Problem (QCSP).&#xD;
QCSP has recently attracted interest. In QCSP, quantifiers are allowed, facilitating the expression&#xD;
of uncertainty.&#xD;
&#xD;
I examine whether QCSP is a useful formalism. This divides into two questions: whether&#xD;
QCSP can be solved efficiently; and whether realistic problems can be represented in QCSP. In&#xD;
attempting to answer these questions, the main contributions of this thesis are the following:&#xD;
&#xD;
- the definition of two new notions of consistency;&#xD;
&#xD;
- four new constraint propagation algorithms (with eight variants in total), along with empirical evaluations;&#xD;
&#xD;
- two novel schemes to implement the pure value rule, which is able to simplify QCSP instances;&#xD;
&#xD;
- a new optimization algorithm for QCSP;&#xD;
&#xD;
- the integration of these algorithms and techniques into a solver named Queso;&#xD;
&#xD;
- and the modelling of the Connect 4 game, and of faulty job shop scheduling, in QCSP.&#xD;
&#xD;
These are set in context by a thorough review of the QCSP literature.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/702">
    <title>Patterns of cooperative interaction: Linking ethnomethodology and design</title>
    <link>http://hdl.handle.net/10023/702</link>
    <description>Abstract: Patterns of Cooperative Interaction are regularities in the organisation of work, activity, and interaction amongst participants, and with, through and around artefacts. These patterns are organised around a framework and are inspired by how such regularities are highlighted in ethnomethodologically-informed ethnographic studies of work and technology. They comprise a high level description and two or more comparable examples drawn from specific studies. Our contention is that these patterns form a useful resource for re-using findings from previous field studies, for enabling analysis and considering design in new settings. Previous work on the relationship between ethnomethodology and design has been concerned primarily in providing presentation frameworks and mechanisms, practical advice, schematisations of the ethnomethodologist's role, different possibilities of input at different stages in development, and various conceptualisations of the relationship between study and design. In contrast, this paper seeks to firstly discuss the position of patterns relative to emergent major topics of interest of these studies. Subsequently it seeks to describe the case for the collection of patterns based on findings, their comparison across studies and their general implications for design problems, rather than the concerns of practical and methodological interest outlined in the other work. Special attention is paid to our evaluations and to how they inform how the patterns collection may be read, used and contributed to, as well as to reflections on the composition of the collection as it has emerged. The paper finishes, firstly, with a discussion of how our work relates to other work on patterns, before some closing comments are made on the role of our patterns and ethnomethodology in systems design.
Description: © ACM, 2004. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Computer-Human Interaction, 11(1): 59-89, 10730516, (March 2004)  http://doi.acm.org/10.1145/972648.972651</description>
    <dc:date>2004-01-01T00:00:00Z</dc:date>
    <dc:creator>Sommerville, I.</dc:creator>
    <dc:creator>Martin, D.</dc:creator>
    <dc:description>Patterns of Cooperative Interaction are regularities in the organisation of work, activity, and interaction amongst participants, and with, through and around artefacts. These patterns are organised around a framework and are inspired by how such regularities are highlighted in ethnomethodologically-informed ethnographic studies of work and technology. They comprise a high level description and two or more comparable examples drawn from specific studies. Our contention is that these patterns form a useful resource for re-using findings from previous field studies, for enabling analysis and considering design in new settings. Previous work on the relationship between ethnomethodology and design has been concerned primarily in providing presentation frameworks and mechanisms, practical advice, schematisations of the ethnomethodologist's role, different possibilities of input at different stages in development, and various conceptualisations of the relationship between study and design. In contrast, this paper seeks to firstly discuss the position of patterns relative to emergent major topics of interest of these studies. Subsequently it seeks to describe the case for the collection of patterns based on findings, their comparison across studies and their general implications for design problems, rather than the concerns of practical and methodological interest outlined in the other work. Special attention is paid to our evaluations and to how they inform how the patterns collection may be read, used and contributed to, as well as to reflections on the composition of the collection as it has emerged. The paper finishes, firstly, with a discussion of how our work relates to other work on patterns, before some closing comments are made on the role of our patterns and ethnomethodology in systems design.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/564">
    <title>Space cost analysis using sized types</title>
    <link>http://hdl.handle.net/10023/564</link>
    <description>Abstract: Programming resource-sensitive systems, such as real-time embedded systems, requires guaranteeing both the functional correctness of computations and also that time and space usage fits within constraints imposed by hardware limits or the environment. Functional programming languages have proved very good at meeting the former logical kind of guarantees but not the latter resource guarantees. &#xD;
This thesis contributes to demonstrate the applicability of functional programming&#xD;
in resource-sensitive systems with an automatic program analysis for obtaining guaranteed upper bounds on dynamic space usage of functional programs.&#xD;
Our analysis is developed for a core subset of Hume, a domain-specific functional&#xD;
language targeting resource-sensitive systems (Hammond et al. 2007), and presented&#xD;
as a type and effect system that builds on previous sized type systems (Hughes et al.&#xD;
1996, Chin and Khoo 2001) and effect systems for costs (Dornic et al. 1992, Reistad&#xD;
and Giord 1994, Hughes and Pareto 1999). It extends previous approaches by using&#xD;
abstract interpretation techniques to automatically infer linear approximations of the sizes of recursive data types and the stack and heap costs of recursive functions.&#xD;
The correctness of the analysis is formally proved with respect to an operational&#xD;
semantics for the language and an inference algorithm that automatically reconstructs&#xD;
size and cost bounds is presented.&#xD;
A prototype implementation of the analysis and operational semantics has been&#xD;
constructed and used to experimentally assess the quality of the cost bounds with some examples, including implementations of textbook functional programming algorithms and simplified embedded systems.</description>
    <dc:date>2008-11-01T00:00:00Z</dc:date>
    <dc:creator>Vasconcelos, Pedro B.</dc:creator>
    <dc:description>Programming resource-sensitive systems, such as real-time embedded systems, requires guaranteeing both the functional correctness of computations and also that time and space usage fits within constraints imposed by hardware limits or the environment. Functional programming languages have proved very good at meeting the former logical kind of guarantees but not the latter resource guarantees. &#xD;
This thesis contributes to demonstrate the applicability of functional programming&#xD;
in resource-sensitive systems with an automatic program analysis for obtaining guaranteed upper bounds on dynamic space usage of functional programs.&#xD;
Our analysis is developed for a core subset of Hume, a domain-specific functional&#xD;
language targeting resource-sensitive systems (Hammond et al. 2007), and presented&#xD;
as a type and effect system that builds on previous sized type systems (Hughes et al.&#xD;
1996, Chin and Khoo 2001) and effect systems for costs (Dornic et al. 1992, Reistad&#xD;
and Giord 1994, Hughes and Pareto 1999). It extends previous approaches by using&#xD;
abstract interpretation techniques to automatically infer linear approximations of the sizes of recursive data types and the stack and heap costs of recursive functions.&#xD;
The correctness of the analysis is formally proved with respect to an operational&#xD;
semantics for the language and an inference algorithm that automatically reconstructs&#xD;
size and cost bounds is presented.&#xD;
A prototype implementation of the analysis and operational semantics has been&#xD;
constructed and used to experimentally assess the quality of the cost bounds with some examples, including implementations of textbook functional programming algorithms and simplified embedded systems.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/522">
    <title>SNOOPIE : development of a learning support tool for novice programmers within a conceptual framework</title>
    <link>http://hdl.handle.net/10023/522</link>
    <description>Abstract: Learning to program is recognised nationally and internationally as a complex task that novices find challenging. There exist many endeavours to support the novice in this activity, including software tools that aim to provide a more supportive environment than that provided by standard software facilities, together with schemes that reduce the underlying complexity of programming by providing accessible micro-worlds in which students develop program code. Existing literature recognises that learning to program is difficult because of the need to learn the rules and operation of the language (program formulation), and the concurrent need to interpret problems and recognise the required components for that problem (problem formulation). This thesis describes a new form of learning support that addresses that dual task of program and problem formulation.  A review of existing teaching tools that support the novice programmer leads to a set of requirements for a support tool that encompasses the processes of both program and problem formulation. This set of requirements is encapsulated in a conceptual framework for software tool development. The framework demonstrates how the requirements of a support tool can be met by performing a series of automated analyses at different stages in the student's development of a solution. An extended series of observations demonstrates the multi-faceted nature of problems that students encounter whilst they are learning to program and how these problems can be mapped onto the different levels of programs and problem formulation. These observations and the framework were used to inform the development of SNOOPIE, a sample instantiation of the framework for learning Java programming. This software tool has been fully evaluated and demonstrated to have a significant impact on the learning process for novice Java programmers. SNOOPIE is fully integrated into a current introductory programming module and a future programme of work is being established that will see SNOOPIE integrated with other established software tools.</description>
    <dc:date>2008-06-25T00:00:00Z</dc:date>
    <dc:creator>Coull, Natalie J.</dc:creator>
    <dc:description>Learning to program is recognised nationally and internationally as a complex task that novices find challenging. There exist many endeavours to support the novice in this activity, including software tools that aim to provide a more supportive environment than that provided by standard software facilities, together with schemes that reduce the underlying complexity of programming by providing accessible micro-worlds in which students develop program code. Existing literature recognises that learning to program is difficult because of the need to learn the rules and operation of the language (program formulation), and the concurrent need to interpret problems and recognise the required components for that problem (problem formulation). This thesis describes a new form of learning support that addresses that dual task of program and problem formulation.  A review of existing teaching tools that support the novice programmer leads to a set of requirements for a support tool that encompasses the processes of both program and problem formulation. This set of requirements is encapsulated in a conceptual framework for software tool development. The framework demonstrates how the requirements of a support tool can be met by performing a series of automated analyses at different stages in the student's development of a solution. An extended series of observations demonstrates the multi-faceted nature of problems that students encounter whilst they are learning to program and how these problems can be mapped onto the different levels of programs and problem formulation. These observations and the framework were used to inform the development of SNOOPIE, a sample instantiation of the framework for learning Java programming. This software tool has been fully evaluated and demonstrated to have a significant impact on the learning process for novice Java programmers. SNOOPIE is fully integrated into a current introductory programming module and a future programme of work is being established that will see SNOOPIE integrated with other established software tools.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/435">
    <title>Applications of Lie methods to computations with polycyclic groups</title>
    <link>http://hdl.handle.net/10023/435</link>
    <description>Abstract: In this thesis we demonstrate the algorithmic usefulness of the so-called&#xD;
Mal'cev correspondence for computations with infinite polycyclic groups.&#xD;
This correspondence between Q-powered nilpotent groups and rational nilpotent&#xD;
Lie algebras was discovered by Anatoly Mal'cev in 1951.&#xD;
We show how the Mal'cev correspondence can be realized on a computer.&#xD;
We explore two possibilities for this purpose and compare them: the first&#xD;
one uses matrix embeddings and the second the Baker-Campbell-Hausdorff&#xD;
formula.&#xD;
Then, we describe a new collection algorithm for polycyclically presented&#xD;
groups, which we call Mal'cev collection. Algorithms for collection lie at the&#xD;
heart of most methods dealing with polycyclically presented groups. The&#xD;
current state of the art is "collection from the left" as recently studied by&#xD;
Gebhardt, Leedham-Green/Soicher and Vaughan-Lee. Mal'cev collection is&#xD;
in some cases dramatically faster than collection from the left, while using&#xD;
less memory.&#xD;
Further, we explore how the Mal'cev correspondence can be used to describe&#xD;
symbolically the collection process in polycyclically presented groups.&#xD;
In particular, we describe an algorithm that computes the collection functions&#xD;
for splittable polycyclic groups. This algorithm is based on work by du Sautoy. We apply it to the computation of pro-p-completions of polycyclic&#xD;
groups.&#xD;
Finally we describe a practical algorithm for testing polycyclicity of finitely&#xD;
generated rational matrix groups. Previously, not only did no such method&#xD;
exist but it was not clear whether this question was decidable at all.&#xD;
Most of the methods described in this thesis are implemented in the&#xD;
computer algebra system GAP and publicly available as part of the GAP&#xD;
packages Guarana and Polenta. Reports on the implementation including&#xD;
runtimes for some examples are given at the appropriate places.</description>
    <dc:date>2007-11-30T00:00:00Z</dc:date>
    <dc:creator>Assmann, Björn</dc:creator>
    <dc:description>In this thesis we demonstrate the algorithmic usefulness of the so-called&#xD;
Mal'cev correspondence for computations with infinite polycyclic groups.&#xD;
This correspondence between Q-powered nilpotent groups and rational nilpotent&#xD;
Lie algebras was discovered by Anatoly Mal'cev in 1951.&#xD;
We show how the Mal'cev correspondence can be realized on a computer.&#xD;
We explore two possibilities for this purpose and compare them: the first&#xD;
one uses matrix embeddings and the second the Baker-Campbell-Hausdorff&#xD;
formula.&#xD;
Then, we describe a new collection algorithm for polycyclically presented&#xD;
groups, which we call Mal'cev collection. Algorithms for collection lie at the&#xD;
heart of most methods dealing with polycyclically presented groups. The&#xD;
current state of the art is "collection from the left" as recently studied by&#xD;
Gebhardt, Leedham-Green/Soicher and Vaughan-Lee. Mal'cev collection is&#xD;
in some cases dramatically faster than collection from the left, while using&#xD;
less memory.&#xD;
Further, we explore how the Mal'cev correspondence can be used to describe&#xD;
symbolically the collection process in polycyclically presented groups.&#xD;
In particular, we describe an algorithm that computes the collection functions&#xD;
for splittable polycyclic groups. This algorithm is based on work by du Sautoy. We apply it to the computation of pro-p-completions of polycyclic&#xD;
groups.&#xD;
Finally we describe a practical algorithm for testing polycyclicity of finitely&#xD;
generated rational matrix groups. Previously, not only did no such method&#xD;
exist but it was not clear whether this question was decidable at all.&#xD;
Most of the methods described in this thesis are implemented in the&#xD;
computer algebra system GAP and publicly available as part of the GAP&#xD;
packages Guarana and Polenta. Reports on the implementation including&#xD;
runtimes for some examples are given at the appropriate places.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/319">
    <title>Normalisation &amp; equivalence in proof theory &amp; type theory</title>
    <link>http://hdl.handle.net/10023/319</link>
    <description>Abstract: At the heart of the connections between Proof Theory and Type Theory, the Curry-Howard correspondence provides proof-terms with computational features and equational theories, i.e. notions of normalisation and equivalence. This dissertation contributes to extend its framework in the directions of proof-theoretic formalisms (such as sequent calculus) that are appealing for logical purposes like proof-search, powerful systems beyond propositional logic such as type theories, and classical (rather than intuitionistic) reasoning.&#xD;
&#xD;
&#xD;
Part I is entitled Proof-terms for Intuitionistic Implicational Logic. Its contributions use rewriting techniques on proof-terms for natural deduction (Lambda-calculus) and sequent calculus, and investigate normalisation and cut-elimination, with call-by-name and call-by-value semantics. In particular, it introduces proof-term calculi for multiplicative natural deduction and for the depth-bounded sequent calculus G4. The former gives rise to the calculus Lambdalxr with explicit substitutions, weakenings and contractions that refines the Lambda-calculus and Beta-reduction, and preserves strong normalisation with a full notion of composition of substitutions. The latter gives a new insight to cut-elimination in G4.&#xD;
&#xD;
&#xD;
Part II, entitled Type Theory in Sequent Calculus develops a theory of Pure Type Sequent Calculi (PTSC), which are sequent calculi that are equivalent (with respect to provability and normalisation) to Pure Type Systems but better suited for proof-search, in connection with proof-assistant tactics and proof-term enumeration algorithms.&#xD;
&#xD;
&#xD;
Part III, entitled Towards Classical Logic, presents some approaches to classical type theory. In particular it develops a sequent calculus for a classical version of System F_omega. Beyond such a type theory, the notion of equivalence of classical proofs becomes crucial and, with such a notion based on parallel rewriting in the Calculus of Structures, we compute canonical representatives of equivalent proofs.</description>
    <dc:date>2006-12-08T00:00:00Z</dc:date>
    <dc:creator>Lengrand, Stéphane J. E.</dc:creator>
    <dc:description>At the heart of the connections between Proof Theory and Type Theory, the Curry-Howard correspondence provides proof-terms with computational features and equational theories, i.e. notions of normalisation and equivalence. This dissertation contributes to extend its framework in the directions of proof-theoretic formalisms (such as sequent calculus) that are appealing for logical purposes like proof-search, powerful systems beyond propositional logic such as type theories, and classical (rather than intuitionistic) reasoning.&#xD;
&#xD;
&#xD;
Part I is entitled Proof-terms for Intuitionistic Implicational Logic. Its contributions use rewriting techniques on proof-terms for natural deduction (Lambda-calculus) and sequent calculus, and investigate normalisation and cut-elimination, with call-by-name and call-by-value semantics. In particular, it introduces proof-term calculi for multiplicative natural deduction and for the depth-bounded sequent calculus G4. The former gives rise to the calculus Lambdalxr with explicit substitutions, weakenings and contractions that refines the Lambda-calculus and Beta-reduction, and preserves strong normalisation with a full notion of composition of substitutions. The latter gives a new insight to cut-elimination in G4.&#xD;
&#xD;
&#xD;
Part II, entitled Type Theory in Sequent Calculus develops a theory of Pure Type Sequent Calculi (PTSC), which are sequent calculi that are equivalent (with respect to provability and normalisation) to Pure Type Systems but better suited for proof-search, in connection with proof-assistant tactics and proof-term enumeration algorithms.&#xD;
&#xD;
&#xD;
Part III, entitled Towards Classical Logic, presents some approaches to classical type theory. In particular it develops a sequent calculus for a classical version of System F_omega. Beyond such a type theory, the notion of equivalence of classical proofs becomes crucial and, with such a notion based on parallel rewriting in the Calculus of Structures, we compute canonical representatives of equivalent proofs.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/223">
    <title>Practical pollsterless remote electronic voting</title>
    <link>http://hdl.handle.net/10023/223</link>
    <description>Abstract: This thesis describes the design of a novel class of  pollsterless voting schemes.  Many cryptographic voting schemes necessitate a pollster because the client side computations are beyond the understanding or ability of the voter.  Such interactions require that the voter trust the software to perform operations on their behalf, and in effect, the pollster acts as the voter.  Conversely, the pollsterless schemes presented here permit voters to interact with an election authority directly, without complex computations. Pollsterless schemes have the additional advantage of permitting voting on virtually any networked device, increasing the potential mobility of voting.&#xD;
&#xD;
The proposed pollsterless schemes are implemented and then evaluated with respect to the particular requirements of the UK public election context.  The flexibility of pollsterless schemes in particular are demonstrated to fulfill the diverse requirements that may arise in this context, whilst the mobility of pollsterless schemes is demonstrated to fulfill requirements to improve the convenience of voting.</description>
    <dc:date>2007-06-19T00:00:00Z</dc:date>
    <dc:creator>Storer, Timothy W.</dc:creator>
    <dc:description>This thesis describes the design of a novel class of  pollsterless voting schemes.  Many cryptographic voting schemes necessitate a pollster because the client side computations are beyond the understanding or ability of the voter.  Such interactions require that the voter trust the software to perform operations on their behalf, and in effect, the pollster acts as the voter.  Conversely, the pollsterless schemes presented here permit voters to interact with an election authority directly, without complex computations. Pollsterless schemes have the additional advantage of permitting voting on virtually any networked device, increasing the potential mobility of voting.&#xD;
&#xD;
The proposed pollsterless schemes are implemented and then evaluated with respect to the particular requirements of the UK public election context.  The flexibility of pollsterless schemes in particular are demonstrated to fulfill the diverse requirements that may arise in this context, whilst the mobility of pollsterless schemes is demonstrated to fulfill requirements to improve the convenience of voting.</dc:description>
  </item>
  <item rdf:about="http://hdl.handle.net/10023/154">
    <title>A flexible, policy-aware middleware system</title>
    <link>http://hdl.handle.net/10023/154</link>
    <description>Abstract: Middleware augments operating systems and network infrastructure to assist in&#xD;
the creation of distributed applications in a heterogeneous environment. Current&#xD;
middleware systems exhibit some or all of the following five main problems:&#xD;
1. Decisions must be made early in the design process.&#xD;
2. Applications are inflexible to dynamic changes in their distribution.&#xD;
3. Application development is complex and error-prone.&#xD;
4. Existing systems force an unnatural encoding of application-level semantics.&#xD;
5. Approaches to the specification of distribution policy are limited.&#xD;
This thesis defines a taxonomy of existing middleware systems and describes their&#xD;
limitations. The requirements that must be met by a third generation middleware system&#xD;
are defined and implemented by a system called the RAFDA Run-Time (RRT). The RRT&#xD;
allows control over the extent to which inter-address-space communication is exposed to&#xD;
programmers, aiding the creation, maintenance and evolution of distributed applications.&#xD;
The RRT permits the introduction of distribution into applications quickly and&#xD;
with minimal programmer effort, allowing for quick application prototyping.&#xD;
Programmers can conceal or expose the distributed nature of applications as required. The RRT allows instances of arbitrary application classes to be exposed to remote access as Web Services, provides control over the parameter-passing semantics applied to &#xD;
remote method calls and permits the creation of flexible distribution policies. The design of the RRT is described and evaluated qualitatively in the context of a case study based around the implementation of a peer-to-peer overlay network. A prototype implementation of the RRT is examined and evaluated quantitatively.&#xD;
Programmers determine the trade off between flexibility and simplicity offered by&#xD;
the RRT on a per-application basis, by concealing or exposing inter-address-space&#xD;
communication. The RRT is a middleware system that adapts to the needs of applications, rather than forcing distributed applications to adapt to the needs of the middleware system.</description>
    <dc:date>2006-01-01T00:00:00Z</dc:date>
    <dc:creator>Walker, Scott Mervyn</dc:creator>
    <dc:description>Middleware augments operating systems and network infrastructure to assist in&#xD;
the creation of distributed applications in a heterogeneous environment. Current&#xD;
middleware systems exhibit some or all of the following five main problems:&#xD;
1. Decisions must be made early in the design process.&#xD;
2. Applications are inflexible to dynamic changes in their distribution.&#xD;
3. Application development is complex and error-prone.&#xD;
4. Existing systems force an unnatural encoding of application-level semantics.&#xD;
5. Approaches to the specification of distribution policy are limited.&#xD;
This thesis defines a taxonomy of existing middleware systems and describes their&#xD;
limitations. The requirements that must be met by a third generation middleware system&#xD;
are defined and implemented by a system called the RAFDA Run-Time (RRT). The RRT&#xD;
allows control over the extent to which inter-address-space communication is exposed to&#xD;
programmers, aiding the creation, maintenance and evolution of distributed applications.&#xD;
The RRT permits the introduction of distribution into applications quickly and&#xD;
with minimal programmer effort, allowing for quick application prototyping.&#xD;
Programmers can conceal or expose the distributed nature of applications as required. The RRT allows instances of arbitrary application classes to be exposed to remote access as Web Services, provides control over the parameter-passing semantics applied to &#xD;
remote method calls and permits the creation of flexible distribution policies. The design of the RRT is described and evaluated qualitatively in the context of a case study based around the implementation of a peer-to-peer overlay network. A prototype implementation of the RRT is examined and evaluated quantitatively.&#xD;
Programmers determine the trade off between flexibility and simplicity offered by&#xD;
the RRT on a per-application basis, by concealing or exposing inter-address-space&#xD;
communication. The RRT is a middleware system that adapts to the needs of applications, rather than forcing distributed applications to adapt to the needs of the middleware system.</dc:description>
  </item>
</rdf:RDF>

