South African Computer Journal - Volume 2010, Issue 46, 2010
Volumes & issues
Volume 2010, Issue 46, 2010
Author Stefan GrunerSource: South African Computer Journal 2010, pp 1 –2 (2010)More Less
There is wide-spread agreement amongst software engineers that Formal Methods (FM) are generally too slow in their application, whereas Agile Methods (AM) in their extreme form cannot sufficiently produce the degree of software reliability which is needed, for example, for safety- and industry-critical software systems, including embedded systems in various environments. Consequently it makes sense to search for feasible combinations of the best of both worlds, with the goal of making the application of FM faster and the application of AM more formally sound. This is the purpose of the workshop FM+AM'11 which is going to be held for the 3rd time (after FM+AM'09 in Brasil and FM+AM'10 in Italy).
Source: South African Computer Journal 2010, pp 3 –13 (2010)More Less
The collocation of software development teams is common, especially in agile software development environments. However little is known about the impact of collocation on the team's effectiveness. This paper explores the impact of collocating agile software development teams on a number of team effectiveness factors. The study focused on South African software development teams and gathered data through the use of questionnaires and interviews.
The key finding was that collocation has a positive impact on a number of team effectiveness factors which can be categorised under team composition, team support, team management and structure and team communication. Some of the negative impact collocation had on team effectiveness relate to the fact that team members perceived that less emphasis was placed on roles, that morale of the group was influenced by individuals, and that collocation was invasive, reduced level of privacy and increased frequency of interruptions. Overall through it is proposed that companies should consider collocating their agile software development teams, as collocation might leverage overall team effectiveness.
From procedural to object-oriented programming (OOP) - an exploratory study of teachers' performanceSource: South African Computer Journal 2010, pp 14 –23 (2010)More Less
This exploratory study of introductory pre- and in-service teachers' performance in object-oriented programming (OOP) assessments reveals important issues with regard to learning and teaching OOP, using Java. The study is set against the backdrop of the country's transition of its national IT curriculum from a procedural to an object-oriented programming language. The effect of prior programming experience and performances in different types of questions are examined. A combination of quantitative and qualitative methods is used to analyse the data. The effect of prior programming experience of a procedural kind and the type of assessments given is shown to have a marked influence on the performance in programming assessments and teaching of OOP. Many introductory OOP courses are in effect taught procedurally as courses in the small. Therefore educating teachers how to teach programming is an important educational challenge. Some implications for teaching are therefore suggested.
Truth in advertising : reporting performance of computer programs, algorithms and the impact of architecture and systems environmentAuthor Scott HazelhurstSource: South African Computer Journal 2010, pp 24 –37 (2010)More Less
The level of detail and precision that appears in the experimental methodology section computer science papers is usually much less than in natural science disciplines. This is partially justified by different nature of experiments. The experimental evidence presented here shows that the time taken by the same program varies so significantly on different CPUs that without knowing the exact model of CPU, it is difficult to compare the results. This is placed in context by analysing a cross-section of experimental results reported in the literature. The reporting of experimental results is sometimes insufficient to allow experiments to be replicated, and in some case is insufficient to support the claims made for the algorithms. Comparing the computational costs of two programs by running them on different computers - even with similar labels and nominal ratings − can be very misleading. New standards for reporting on algorithms results are suggested.
Source: South African Computer Journal 2010, pp 38 –48 (2010)More Less
World wide, a number of far-reaching decisions regarding ways to address the ICT skills shortage are made by both the public and private sectors. These are based on information obtained from various sources and in various ways including quantitative research reports commissioned by government authorities. This paper reports on findings of a systematic textual examination of existing ICT skills shortage research reports with the South African reports receiving particular attention. This analysis shows that the collection of accurate data on ICT skills availability is extremely difficult, if not impossible, as the skills categories used in a diverse, ever-changing ICT environment are ill-defined, the data collection procedures are flawed and the results are difficult to interpret. In addition, successive reports frequently note the weaknesses of the data, but then use it as the basis for their findings. A recommendation from this research is that a Research Methodologies group be formed specifically to discuss this and with the brief to suggest some guidelines and to monitor and endorse future data collection and analysis.
Author Laban MwansaSource: South African Computer Journal 2010, pp 49 –58 (2010)More Less
The goal of this work is to present a specific device key translation solution among different identifications of devices based on the DHT (Distributed Hash Table) technology. Whereas nodes in DHTs are obviously used to store data identified by a single identification key and their possible failures are resolved by approaches of multiple data copies. This paper presents the Generic Network Location Service based on the Chord DHT.
The provided algorithms guarantee resilience in the presence of dynamism: they guarantee consistent lookup results in the presence of nodes failing and leaving. Generic Network Location Service provides a Location Service system based on DHT technology, which is storing device location records in nodes within a Chord DHT.
Location records are consisting of network device identification keys as attributes, which are used to create replicas of additional location records through established Chord hashing mechanisms. Storing device location records, in places addressable (using the DHT lookup) by individual location record keys provides a simple way of implementing translation functions similar to well known network services (e.g. ARP, DNS, ENUM).
The generic network location service presented in the paper is not supposed to be a substitution of the existing translation techniques (e.g. ARP, DNS, ENUM), but it is considered as an overlay service that uses data available in existing systems and provides some translations currently unavailable.