5 research outputs found

    Java in Two Semesters

    Get PDF
    Like any student starting out on a ?rst programming module, you will be itching to do just one thing—get started on your ?rst program. We can well understand that, and you won’t be disappointed, because you will be writing programs in this very ?rst chapter

    Human organ re-representation using UML and CMAUT

    Get PDF
    Clinical data was captured and stored data using natural language (NL) in order to describe the human organs, their attributes and behaviour (Olsen et, 1998). Although this was an accurate form of data representation it created information overload, space complexity, inconsistency and erroneous data. To address the issue of data inconsistency and standardisation, clinical coding such as UMLS was used while for clinical interoperability and data exchange between users, NL7 was introduced. A survey conducted by (de Keizer et, 2000a) revealed that these methods are inadequate for clinical data representation hence the data rerepresentation technique (Haimowitz et, 1988) was introduced and used for modelling CIS with Entity Relationship Diagram (ERD) and (FOL)(de Keizer et, 2000b). However this model does not address the issue of information overload and space complexity. Hence, this paper presents an alternative approach where UML is used to capture human organs, their attributes and relationships. A new framework with built in algorithm converts the multiple attributes modelled in the class diagram into mathematical formalisation using the CMAUT. The logical expression serves as input to the optimisation algorithm to determine the optimal amount of data that must be retrieved for primary healthcare investigation. To evaluate the framework, mathematical operations were performed which revealed that the space complexity when using the CMA rerepresentation technique is θ ( n + 1) compared to θ (2n) for nonCMA. This means less space is needed when the CMA with AND connector is used but for substitutable organs with OR connector the space complexity for both CMA and nonCMA representations have the same exponential expansion of θ (2 n ). A ttest conducted on the amount of data required for investigation before and after optimisation gave a pvalue of 0.000 which means there is a significant different between the two data sets. For epidemiological analysis the output of the framework was benchmarked against the output of a web based heart risk calculator and the single sample ttest conducted gave a pvalue of 0.686 meaning there is no difference between two outputs. Thus this framework with data rerepresentation occupies less space as compared to others and can be used to calculate the risk factor of a heart patient

    From VDM to ABC (A Pragmatic Approach to Formal Software Development)

    Get PDF
    The generic term formal method is often used to describe the Vienna Development Method (VDM). However, VDM has recently been more precisely defined as a rigorous or formal specification method and as a rigorous or formal verification method, where the emphasis is upon the discharge of proof obligations. This study explores more pragmatic approaches to software development, using VDM, that place less emphasis on the need to discharge proof obligations and more on constructive guidance. A high level imperative language, ABC, is chosen as the target language for this particular study as model-based methods such as VDM are strongly associated with the development of imperative software, and ABC in particular shares many common features with VDM-SL. A procedure is described to extend the command set of the language to effectively implement the executable subset of VDM in ABC. A semi-automatic method is then developed to use this extended version of ABC to prototype VDM specifications. The method allows specifications to be validated in a pragmatic way, and incorporates important run-time invariant preservation tests. The prototyping method developed is shown to be particularly useful during the educational stages of formal methods training, when there is very often a one-to-one mapping between the specification document and the prototype. Larger specifications require refinement, however, before they are in a form suitable to be executed, and so a pragmatic refinement method is investigated for this purpose. The heuristics of programming methodology and the refinement rules of the refinement calculus are adapted to provide heuristics and refinement rules for the transformation of VDM specifications into ABC programs. These heuristics and refinement rules are supplemented by an investigation into how the logical connectives, found in VDM post-conditions, can be used to guide the refinement process. It is shown how the satisfiability proof obligation, associated with an operation, can be manipulated mechanically to extract sequential decompositions from conjunctions and conditional decompositions from disjunctions, equivalences and implications. It is also shown how this automatic manipulation of the satisfiability proof obligation can be used to guide the application of the refinement rules developed in this study. It is argued that, together, the refinement rules and the manipulations of the satisfiability proof obligation provide a formal development method for the refinement of ABC commands from VDM specifications

    Using ABC to prototype VDM specifications

    No full text
    corecore