678 research outputs found
From Project Management to the ‘Management of Projects’: What motivated Peter Morris to create a new paradigm?
This paper suggests that were three main motivations driving Peter Morris to develop the Management of Projects (MoP) as an alternative approach to traditional project management: first, the need to improve the performance and practice of project management; second, the need to understand the history, context and challenges facing society; and third the need to engage with theory and scholarship. The paper draws upon Peter’s three main single or co-authored books which form the corpus of his work on MoP
HTTP/2: Analysis and measurements
The upgrade of HTTP, the protocol that powers the Internet of the people, was published
as RFC on May of 2015. HTTP/2 aims to improve the users experience by solving wellknow
problems of HTTP/1.1 and also introducing new features. The main goal of this
project is to study HTTP/2 protocol, the support in the software, its deployment and implementation
on the Internet and how the network reacts to an upgrade of the existing
protocol.
To shed some light on this question we build two experiments. We build a crawler
to monitor the HTTP/2 adoption across Internet using the Alexa top 1 million websites
as sample. We find that 22,653 servers announce support for HTTP/2, but only 10,162
websites are served over it. The support for HTTP/2 Upgrade is minimal, just 16 servers
support it and only 10 of them load the content of the websites over HTTP/2 on plain
TCP.
Motivated by those numbers, we investigate how the new protocol behaves with the
middleboxes along the path in the network. We build a platform to evaluate it across
67 different ports for TLS connections, HTTP/2 Upgrade and over plain TCP. Considering
both fixed line and mobile network, we use a crowdsourcing platform to recruit users.
Middleboxes affect HTTP/2, especially on port 80 for plain TCP connections. HTTP/2 Upgrades
requests are affected by proxies, failing to upgrade to the new protocol. Over TLS
on port 443 on the other hand, all the connections are successful.Ingeniería Técnica en Sistemas de Telecomunicació
Human Factors in Agile Software Development
Through our four years experiments on students' Scrum based agile software
development (ASD) process, we have gained deep understanding into the human
factors of agile methodology. We designed an agile project management tool -
the HASE collaboration development platform to support more than 400 students
self-organized into 80 teams to practice ASD. In this thesis, Based on our
experiments, simulations and analysis, we contributed a series of solutions and
insights in this researches, including 1) a Goal Net based method to enhance
goal and requirement management for ASD process, 2) a novel Simple Multi-Agent
Real-Time (SMART) approach to enhance intelligent task allocation for ASD
process, 3) a Fuzzy Cognitive Maps (FCMs) based method to enhance emotion and
morale management for ASD process, 4) the first large scale in-depth empirical
insights on human factors in ASD process which have not yet been well studied
by existing research, and 5) the first to identify ASD process as a
human-computation system that exploit human efforts to perform tasks that
computers are not good at solving. On the other hand, computers can assist
human decision making in the ASD process.Comment: Book Draf
Recommended from our members
A no-thin-air memory model for programming languages
Many hardware and compiler optimisations introduced to speed up single-threaded programs also introduce additional, sometimes surprising, behaviours for concurrent programs with shared mutable state. How many of these extra behaviours occur in practice depends on the combination of the hardware, compiler, runtime, etc. that make up the platform. A memory model, which prescribes what values each read of a concurrent program can read, allows programmers to determine whether a program behaves as expected without having to worry about the details of the platform. However, capturing these behaviours in a memory model without also including undesirable "out-of-thin-air" behaviours that do not occur in practice has proved elusive. The memory model of C and C++ allows out-of-thin-air behaviour, while the Java memory model fails to capture some behaviours that are introduced in practice by compiler optimisations.
In this thesis, we propose a memory model that forbids out-of-thin-air behaviour, yet allows the behaviours that do occur. Our memory model follows operational intuitions of how the hardware and compilers operate. We illustrate that it behaves as desired on a series of litmus tests. We show that it captures at least some of the expected behaviours, that it forms an envelope around some common compiler optimisations, and that it is implementable on common hardware using the expected compilation schemes. We also show that it supports some established programming idioms.EPSRC Programme Grant REMS: Rigorous Engineering for Mainstream Systems, EP/K008628/1
Computer Laboratory Premium Research Studentshi
Language Design for Reactive Systems: On Modal Models, Time, and Object Orientation in Lingua Franca and SCCharts
Reactive systems play a crucial role in the embedded domain. They continuously interact with their environment, handle concurrent operations, and are commonly expected to provide deterministic behavior to enable application in safety-critical systems. In this context, language design is a key aspect, since carefully tailored language constructs can aid in addressing the challenges faced in this domain, as illustrated by the various concurrency models that prevent the known pitfalls of regular threads. Today, many languages exist in this domain and often provide unique characteristics that make them specifically fit for certain use cases. This thesis evolves around two distinctive languages: the actor-oriented polyglot coordination language Lingua Franca and the synchronous statecharts dialect SCCharts. While they take different approaches in providing reactive modeling capabilities, they share clear similarities in their semantics and complement each other in design principles. This thesis analyzes and compares key design aspects in the context of these two languages. For three particularly relevant concepts, it provides and evaluates lean and seamless language extensions that are carefully aligned with the fundamental principles of the underlying language. Specifically, Lingua Franca is extended toward coordinating modal behavior, while SCCharts receives a timed automaton notation with an efficient execution model using dynamic ticks and an extension toward the object-oriented modeling paradigm
The Evolution of Sociology of Software Architecture
The dialectical interplay of technology and sociological development goes back to the early days of human development, starting with stone tools and fire, and coming through the scientific and industrial revolutions; but it has never been as intense or as rapid as in the modern information age of software development and accelerating knowledge society (Mansell and Wehn, 1988; and Nico, 1994, p. 1602-1604). Software development causes social change, and social challenges demand software solutions. In turn, software solutions demand software application architecture. Software architecture (“SA”) (Fielding and Taylor, 2000) is a process for “defining a structural solution that meets all the technical and operations requirements...” (Microsoft, 2009, Chapter I). In the SA process, there is neither much emphasis on the sociological requirements of all social stakeholders nor on the society in w hich these stakeholders use, operate, group, manage, transact, dispute, and resolve social conflicts. For problems of society demanding sociological as well as software solutions, this study redefines software application architecture as “the process of defining a structured solution that meets all of the sociological , technical, and operational requirements…”
This investigation aims to l ay the groundwork for, evolve, and develop an innovative and novel sub-branch of scientific study we name the “Sociology of Software Architecture” (hereinafter referred to as “SSA”). SSA is an interdisciplinary and comparative study integrating, synthesizing, and combining elements of the disciplines of sociology, sociology of technology, history of technology, sociology of knowledge society, epistemology, science methodology (philosophy of science), and software architecture. Sociology and technology have a strong, dynamic, and dialectical relationship and interplay, especially in software development. This thesis investigates and answers important and relevant questions, evolves and develops new scientific knowledge, proposes solutions, demonstrates and validates its benefits, shares its case studies and experiences, and advocates, promotes, and helps the future and further development of this novel method of science
- …