Unity-inspired object-oriented concurrent system development

Show simple item record

dc.contributor.advisor Kourie, Derrick G. en
dc.contributor.coadvisor Van den Heever, Roelf en
dc.contributor.postgraduate Ross, Marlene Maria en
dc.date.accessioned 2013-09-06T13:45:08Z
dc.date.available 2006-03-03 en
dc.date.available 2013-09-06T13:45:08Z
dc.date.created 2001-09-01 en
dc.date.issued 2007-03-03 en
dc.date.submitted 2006-02-24 en
dc.description Thesis (PhD (Computer Science))--University of Pretoria, 2007. en
dc.description.abstract The design of correct software remains difficult, especially when dealing with concurrency. The primary goal of the research presented here is to devise a pragmatic software development method which  aids the software designer in producing reliable software,  is scalable,  is understandable,  follows a unified approach towards software development (is applicable to different implementation architectures),  promotes reuse,  has seamless transitions between the software development phases,  guarantees general availability and minimises developmental resources. The two main characteristics of the proposed new development method are captured in its name, viz. Single Location Object-Oriented Programming (SLOOP) . It is an object-oriented method, but its computational model is that of a set of statements that execute infinitely often and in any order. A program with such a computational model is called a Single Location Program (SLP). A UNITY program can also be classified as a Single Location Program. In the UNITY theory of programming it was demonstrated how this computational model could simplify correctness reasoning, particularly for concurrent systems. It is this simplification, together with the structuring and reuse features of object-orientation, that is leveraged in the SLOOP method to produce a mechanism whereby ordinary software practitioners can take advantage of the benefits of a more rigorous approach towards software development without requiring an in-depth understanding of the underlying mathematics. The following features of the SLOOP method contribute towards achieving the above goals:  its computational model (it simplifies correctness reasoning, thereby promoting understandability and scalability, and also facilitates designs that are independent of the target implementation architectures),  its object-oriented nature (apart from promoting reuse of frameworks, design patterns and classes, the SLOOP method provides the necessary mechanisms to facilitate reuse of correctness properties, correctness arguments as well as mappings to implementation architectures),  its emphasis on correctness reasoning throughout the software development life cycle (its "constructive approach" aids reliability and seamlessness),  the unique way in which the correctness properties can be specified, reused and reasoned about (this contributes towards understandability and scalability),  the checklist of useful correctness properties that is provided (this promotes reliability),  the incorporation of existing notations into the SLOOP syntax (this guarantees general availability, minimises developmental resources and aids understandability). The main contribution of this thesis is that it presents a unique way of incorporating the SLP computational model into an object-oriented method with the specific aim of simplifying informal correctness reasoning and promoting reuse. The notation used for the specification of correctness properties facilitates reuse of correctness properties, ensures the integrity of these specifications and allows one to specify correctness properties at a higher level of abstraction. The SLOOP method offers a unique way of modelling concurrency in object-oriented systems (via its parallel methods), which takes full advantage of the encapsulation and inheritance features of object-orientation. The issues surrounding mappings to implementation architectures are addressed, showing how even mappings can be reused. Finally, the general applicability of the SLOOP method is demonstrated. en
dc.description.availability unrestricted en
dc.description.department Computer Science en
dc.identifier.citation Ross, MM 2001, Unity-inspired object-oriented concurrent system development , DPhil thesis, University of Pretoria, Pretoria, viewed yymmdd < http://hdl.handle.net/2263/22782 > en
dc.identifier.other H559/ag en
dc.identifier.upetdurl http://upetd.up.ac.za/thesis/available/etd-02242006-115239/ en
dc.identifier.uri http://hdl.handle.net/2263/22782
dc.language.iso en
dc.publisher University of Pretoria en_ZA
dc.rights © 2001, University of Pretoria. All rights reserved. The copyright in this work vests in the University of Pretoria. No part of this work may be reproduced or transmitted in any form or by any means, without the prior written permission of the University of Pretoria. en
dc.subject Object-oriented programming (computer science) en
dc.subject UCTD en_US
dc.title Unity-inspired object-oriented concurrent system development en
dc.type Thesis en


Files in this item

This item appears in the following Collection(s)

Show simple item record