waashk/dblp huggingface dataset:
software engineering in south africa. the tourist slogan used to market south africa a world in one country cuts across many more dimensions than just those of interest to tourists. everywhere in the country, there is evidence of both a highly advanced and sophisticated economy and lifestyle, as well as of poverty and underdevelopment. the purpose of this session is to reflect on whether and how this peculiar positioning of the country impacts on the it industry in general, and on software engineering in particular. based on their experience of south african it in general, and on the practice, teaching and research of software engineering in particular, session panelists will give their perspectives on what is being done and on what should be done. are the challenges and opportunities significantly different from elsewhere? are there the opportunities, threats and challenges for disseminating it skills into the underdeveloped contexts in south africa and africa? what does south africa need to do to become the outsourcing point of choice for north atlantic it? how do companies that operate both in south africa and elsewhere spread the development load, and what are the challenges in doing this?
lsdiff: a program differencing tool to identify systematic structural differences. program differencing tools such as gnu diff identify individual differences but do not determine how those differences are related to each other. for example, an extract superclass refactoring on several subclasses will be represented by diff as a scattered collection of line additions and deletions which must be manually pieced together. in our previous work, we developed lsdiff, a novel program differencing technique that automatically identifies systematic structural differences as logic rules. this paper presents an lsdiff eclipse plug-in that provides a summary of systematic structural differences along with textual differences within an eclipse integrated development environment. this plugin provides several additional features to allow developers to interpret lsdiff rules easily, to select the abstraction level of program differencing analysis, and to reduce its running time through incremental program analysis.
storm: static unit checking of concurrent programs. concurrency is inherent in today's software. unexpected interactions between concurrently executing threads often cause subtle bugs in concurrent programs. such bugs are hard to discover using traditional testing techniques since they require executing a program on a particular unit test (i.e. input) through a particular thread interleaving. a promising solution to this problem is static program analysis since it can simultaneously check a concurrent program on all inputs as well as through all possible thread interleavings. this paper describes a scalable, automatic, and precise approach to static unit checking of concurrent programs implemented in a tool called storm. storm has been applied on a number of real-world windows device drivers, and the tool found a previously undiscovered concurrency bug in a driver from microsoft's driver development kit.
code canvas: zooming towards better development environments. the user interfaces of today's development environments have a "bento box" design that partitions information into separate areas. this design makes it difficult to stay oriented in the open documents and to synthesize information shown in different areas. code canvas takes a new approach by providing an infinite zoomable surface for software development. a canvas both houses editable forms of all of a project's documents and allows multiple layers of visualization over those documents. by uniting the content of a project and information about it onto a single surface, code canvas is designed to leverage spatial memory to keep developers oriented and to make it easy to synthesize information.
an incremental methodology for quantitative software architecture evaluation with probabilistic models. probabilistic models are crucial in the quantification of non-functional attributes in safety-and mission-critical software systems. these models are often re-evaluated in assessing the design decisions. evaluation of such models is computationally expensive and exhibits exponential complexity with the problem size. this research aims at constructing an incremental quality evaluation framework and delta evaluation scheme to address this issue. the proposed technique will provide a computational advantage for the probabilistic quality evaluations enabling their use in automated design space exploration by architecture optimization algorithms. the expected research outcomes are to be validated with a range of realistic architectures and case studies from automotive industry.
synthesized essence: what game jams teach about prototyping of new software products. the development of video games comprises engineering teams within various disciplines, e.g., software engineering, game production, and creative arts. game jams are a promising approach for (software+) development projects to foster on new product development. this paper evaluates the concept of game jam, a community design/development activity, and its positive effects on new software product development with tight schedules in time-oriented, competitive environments. game jams have received more public attention in recent times, but the concept itself has not been formally discussed so far. a game jam is a composition of design and development strategies: new product development, participatory design, lightweight construction, rapid experience prototyping, product-value focusing, aesthetics and technology, concurrent development and multidisciplinarity. although game jams are normally used for rapid prototyping of small computer games, the constellation of the mentioned elements provides a powerful technique for rapidly prototyping new product ideas and disruptive innovations.
refresh: weak privacy model for rfid systems. privacy-preserving authentication (ppa) is crucial for radio frequency identifcation (rfid)-enabled applications. without appropriate formal privacy models, it is difficult for existing ppa schemes to explicitly prove their privacy. even worse, rfid systems cannot discover potential security flaws that are vulnerable to new attacking patterns. recently, researchers propose a formal model, termed as strong privacy, which strictly requires tags randomly generate their output. adopting the strong privacy model, ppa schemes have to employ brute-force search in tags' authentications, which incurs unacceptable overhead and delay to large-scale rfid systems. instead of adopting strong privacy, most ppa schemes improve the authentication efficiency at the cost of the privacy degradation. due to the lack of proper formal models, it cannot be theoretically proven that the degraded ppa schemes can achieve acceptable privacy in practical rfid systems. to address these issues, we propose a weak privacy model, refresh, for designing ppa schemes with high efficiency as well as acceptable privacy. based on refresh, we show that many well-known ppa schemes do not provide satisfied privacy protection, even though they achieve relatively high authentication efficiency. we further propose a light-weight privacy-preserving authentication scheme, last, which can guarantee the privacy based on the refresh model and realize o(1) authentication efficiency, simultaneously.
topbt: a topology-aware and infrastructure-independent bittorrent client. bittorrent (bt) has carried out a significant and continuously increasing portion of internet traffic. while several designs have been recently proposed and implemented to improve the resource utilization by bridging the application layer (overlay) and the network layer (underlay), these designs are largely dependent on internet infrastructures, such as isps and cdns. in addition, they also demand large-scale deployments of their systems to work effectively. consequently, they require multiefforts far beyond individual users' ability to be widely used in the internet. in this paper, aiming at building an infrastructure-independent user-level facility, we present our design, implementation, and evaluation of a topology-aware bt system, called topbt, to significantly improve the overall internet resource utilization without degrading user downloading performance. the unique feature of topbt client lies in that a topbt client actively discovers network proximities (to connected peers), and uses both proximities and transmission rates to maintain fast downloading while reducing the transmitting distance of the bt traffic and thus the internet traffic. as a result, a topbt client neither requires feeds from major internet infrastructures, such as isps or cdns, nor requires large-scale deployment of other topbt clients on the internet to work effectively. we have implemented topbt based on widely used open-source bt client code base, and made the software publicly available. by deploying topbt and other bittorrent clients on hundreds of internet hosts, we show that on average topbt can reduce about 25% download traffic while achieving a 15% faster download speed compared to several prevalent bt clients. topbt has been widely used in the internet by many users all over the world.
energy efficient algorithms for the rfid estimation problem. rfid has been gaining popularity for inventory control, object tracking, and supply chain management in warehouses, retail stores, hospitals, etc. periodically and automatically estimating the number of rfid tags deployed in a large area has many important applications in inventory management and theft detection. the prior work focuses on designing time-efficient algorithms that can estimate tens of thousands of tags in seconds. we observe that, for a rfid reader to access tags in a large area, active tags are likely to be used. these tags are batterypowered and use their own energy for information transmission. however, recharging batteries for tens of thousands of tags is laborious. unlike the prior work, this paper studies the rfid estimation problem from the energy angle. our goal is to reduce the amount of energy that is consumed by the tags during the estimation procedure. we design several energy-efficient probabilistic algorithms that iteratively refine a control parameter to optimize the information carried in the transmissions from the tags, such that both the number and the size of the transmissions are minimized.
capacity of data collection in arbitrary wireless sensor networks. how to efficiently collect sensing data from all sensor nodes is critical to the performance of wireless sensor networks. in this paper, we aim to understand the theoretical limitations of data collection in terms of possible and achievable maximum capacity. previously, the study of data collection capacity [1]-[6] has only concentrated on large-scale random networks. however, in most of practical sensor applications, the sensor network is not deployed uniformly and the number of sensors may not be as huge as in theory. therefore, it is necessary to study the capacity of data collection in an arbitrary network. in this paper, we derive the upper and constructive lower bounds for data collection capacity in arbitrary networks. the proposed data collection method can lead to order-optimal performance for any arbitrary sensor networks. we also examine the design of data collection under a general graph model and discuss performance implications.
how do superpeer networks emerge? in this paper, we develop an analytical framework which explains the emergence of superpeer networks on execution of the commercial peer-to-peer bootstrapping protocols by incoming nodes. bootstrapping protocols exploit physical properties of the online peers like resource content, processing power, storage space, connectivity etc as well as take the finiteness of bandwidth of each online peer into consideration. with the help of rate equations, we show that execution of these protocols results in the emergence of superpeer nodes in the network - the exact degree distribution is evaluated. we validate the framework developed in this paper through extensive simulation. the analysis of the results shows that the amount of superpeers produced in the network depends on the protocol as well as the properties of the joining nodes. interestingly, our analysis reveals that increase in the amount of resource and the number of resourceful nodes do not always help to increase the fraction of superpeer nodes in the network. the impact of the frequent leaving of the peers on the topology of the emerging network is also evaluated. as an application study, we show that our framework can explain the topological configuration of commercial gnutella networks. the developed model can almost perfectly match the degree distribution of gnutella network.
toward the practical use of network tomography for internet topology discovery. accurate and timely identification of the routerlevel topology of the internet is one of the major unresolved problems in internet research. topology recovery via tomographic inference is potentially an attractive complement to standard methods that use ttl-limited probes. in this paper, we describe new techniques that aim toward the practical use of tomographic inference for accurate router-level topology measurement. specifically, prior tomographic techniques have required an infeasible number of probes for accurate, large scale topology recovery. we introduce a depth-first search (dfs) ordering algorithm that clusters end host probe targets based on shared infrastructure, and enables the logical tree topology of the network to be recovered accurately and efficiently. we evaluate the capabilities of our dfs ordering topology recovery algorithm in simulation and find that our method uses 94% fewer probes than exhaustive methods and 50% fewer than the current state-of-the-art. we also present results from a case study in the live internet where we show that dfs ordering can recover the logical router-level topology more accurately and with fewer probes than prior techniques.
scalable nids via negative pattern matching and exclusive pattern matching. in this paper, we identify the unique challenges in deploying parallelism on tcam-based pattern matching for network intrusion detection systems (nidses). we resolve two critical issues when designing scalable parallelism specifically for pattern matching modules: 1) how to enable fine-grained parallelism in pursuit of effective load balancing and desirable speedup simultaneously; and 2) how to reconcile the tension between parallel processing speedup and prohibitive tcam power consumption. to this end, we first propose the novel concept of negative pattern matching to partition flows, by which the number of tcam lookups can be significantly reduced, and the resulting (fine-grained) flow segments can be inspected in parallel without incurring false negatives. then we propose the notion of exclusive pattern matching to divide the entire pattern set into multiple subsets which can later be matched against selectively and independently without affecting the correctness. we show that exclusive pattern matching enables the adoption of smaller and faster tcam blocks and improves both the pattern matching speed and scalability. finally, our theoretical and experimental results validate that the above two concepts are inherently complementary, enabling our integrated scheme to provide performance gain in any scenario (with either clean or dirty traffic).
password strength: an empirical analysis. it is a well known fact that user-chosen passwords are somewhat predictable: by using tools such as dictionaries or probabilistic models, attackers and password recovery tools can drastically reduce the number of attempts needed to guess a password. quite surprisingly, however, existing literature does not provide a satisfying answer to the following question: given a number of guesses, what is the probability that a state-of-the-art attacker will be able to break a password? to answer the former question, we compare and evaluate the effectiveness of currently known attacks using various datasets of known passwords. we find that a "diminishing returns" principle applies: in the absence of an enforced password strength policy, weak passwords are common; on the other hand, as the attack goes on, the probability that a guess will succeed decreases by orders of magnitude. even extremely powerful attackers won't be able to guess a substantial percentage of the passwords. the result of this work will help in evaluating the security of authentication means based on user-chosen passwords, and our methodology for estimating password strength can be used as a basis for creating more effective proactive password checkers for users and security auditing tools for administrators.
cross-layer optimization for wireless networks with deterministic channel models. existing work on cross-layer optimization for wireless networks adopts simple physical-layer models, i.e., treating interference as noise. in this paper, we adopt a deterministic channel model proposed in [11, 12], a simple abstraction of the physical layer that effectively captures the effect of channel strength, broadcast and superposition in wireless channels. within the network utility maximization (num) framework, we study the cross-layer optimization for wireless networks based on this deterministic channel model. first, we extend the well-applied conflict graph model to capture the flow interactions over the deterministic channels and characterize the feasible rate region. then we study distributed algorithms for general wireless multi-hop networks. the convergence of algorithms is proved by lyapunov stability theorem and stochastic approximation method. further, we show the convergence to the bounded neighborhood of optimal solutions with probability one under constant steps and constant update intervals. our numerical evaluation validates the analytical results.
analyzing nonblocking switching networks using linear programming (duality). the main task in analyzing a switching network design (including circuit-, multirate-, and photonic-switching) is to determine the minimum number of some switching components so that the design is non-blocking in some sense (e.g., strictor wide-sense). we show that, in many cases, this task can be accomplished with a simple two-step strategy: (1) formulate a linear program whose optimum value is a bound for the minimum number we are seeking, and (2) specify a solution to the dual program, whose objective value by weak duality immediately yields a sufficient condition for the design to be non-blocking. we illustrate this technique through a variety of examples, ranging from circuit to multirate to photonic switching, from unicast to f-cast and multicast, and from strict- to wide-sense non-blocking. the switching architectures in the examples are of clos-type and banyan-type, which are the two most popular architectural choices for designing non-blocking switching networks. to prove the result in the multirate clos network case, we formulate a new problem called dynamic weighted edge coloring which generalizes the dynamic bin packing problem. we then design an algorithm with competitive ratio 5.6355 for the problem. the algorithm is analyzed using the linear programming technique. we also show that no algorithm can have competitive ratio better than 4 - o(log n/n) for this problem. new lower- and upper-bounds for multirate wide-sense non-blocking clos networks follow, improving upon a couple of 10-year-old bounds on the same problem.
from theory to practice: evaluating static channel assignments on a wireless mesh network. multi-radio nodes in wireless mesh networks introduce extra complexity in utilizing channel resources. depending on the configuration of the radios, bad mappings between radio to wireless frequencies may result in sub-optimal network topologies. static channel assignments in wireless mesh networks have been studied in theory and through simulation but very little work has been done through experiments. this paper focuses on evaluating static channel assignments on a live wireless mesh network. we chose three popular types of static channel assignment algorithms for implementation and comparison purposes. the three types are breadth-first search, priority-based selection and integer linear programming. we find that there is no single channel assignment algorithm that does well overall. bfs algorithm can create the shortest paths to the gateway and also generate balanced channel usage topologies. the pbs algorithm can use all the best links in the network but have poor performance from each radio to the gateway. overall, we find the channel assignments given by the algorithms to be suboptimal when applied to a live mesh network because temporal variations in the link quality metrics are not taken into account. looking at the interflow and intraflow performance of these channel assignment algorithms in a live mesh network, we can conclude that routing protocols must be modified to take advantage of the underlying channel assignment algorithms.
on scheduling for minimizing end-to-end buffer usage over multihop wireless networks. while there has been much progress in designing backpressure based stabilizing algorithms for multihop wireless networks, end-to-end performance (e.g., end-to-end buffer usage) results have not been as forthcoming. in this paper, we study the end-to-end buffer usage (sum of buffer utilization along a flow path) over a network with general topology and with fixed, loopfree routes using a large-deviations approach. we first derive bounds on the best performance that any scheduling algorithm can achieve. based on the intuition from the bounds, we propose a class of (backpressure-like) scheduling algorithms called αβ-algorithms. we show that the parameters α and β can be chosen such that the system under the αβ-algorithm performs arbitrarily closely to the best possible scheduler (formally the decay rate function for end-to-end buffer overflow is shown to be arbitrarily close to optimal in the large-buffer regime). we also develop variants which have the same asymptotic optimality property, and also provide good performance in the small-buffer regime. our results are substantiated using both analysis and simulation.
group device pairing based secure sensor association and key management for body area networks. body area networks (ban) is a key enabling technology in e-healthcare such as remote health monitoring. an important security issue during bootstrap phase of the ban is to securely associate a group of sensor nodes to a patient, and generate necessary secret keys to protect the subsequent wireless communications. due to the the ad hoc nature of the ban and the extreme resource constraints of sensor devices, providing secure, fast, efficient and user-friendly secure sensor association is a challenging task. in this paper, we propose a lightweight scheme for secure sensor association and key management in ban. a group of sensor nodes, having no prior shared secrets before they meet, establish initial trust through group device pairing (gdp), which is an authenticated group key agreement protocol where the legitimacy of each member node can be visually verified by a human. various kinds of secret keys can be generated on demand after deployment. the gdp supports batch deployment of sensor nodes to save setup time, does not rely on any additional hardware devices, and is mostly based on symmetric key cryptography, while allowing batch node addition and revocation. we implemented gdp on a sensor network testbed and evaluated its performance. experimental results show that that gdp indeed achieves the expected design goals.