23 research outputs found

    Utilising the Software Engineering Methods and Theory framework to critically evaluate software engineering practice in the South African banking industry

    Get PDF
    A research report submitted to the Faculty of Engineering and The Built Environment of the University of Witwatersrand, Johannesburg In partial fulfilment of the requirements for the Degree of Master of Science in Engineering September 2015In recent years, software has become the cornerstone of banking and new business products are directly dependant on software. The delivery cycles for new features is now related to market share. This drive to use software as a vehicle for competitive advantage has created an environment in which software development of new business systems are increasingly on the critical path of many projects. An organisation’s portfolio of software intensive projects is situated within this complexity and organisations attempt to mitigate the risks associated with these complexities by implementing software development processes and practices. A key problem facing the modern bank is how to define and build a software development process that caters for both the traditional and increasingly agile genres of software development characteristics in a consistent and manageable way. The banks attempt to address this problem through continuous methodology and process improvements. Comparing and assessing non-standardised software engineering lifecycle models without a common framework is a complex and subjective task. A standardised language is important for simplifying the task for developing new methods and practices or for analysing and documenting existing practices. The Software Engineering Methods and Theory (SEMAT) initiative has developed a standardised kernel of essential concepts, together with a language that describes the essence of software engineering. This kernel, called the Essence, has recently become an Object Management Group (OMG) standard. The Essence kernel, together with its language, can be used as the underpinning theory to analyse an existing method and help provide insights that can drive method enhancements. The research report proposes a simple, actionable analysis framework to assist organisations to assess, review and develop their software engineering methods. The core concepts of the methodology are identified and mapped to the Essence concepts. The governance model of the Essence is mapped to the governance model of the industry model and a set of practices is identified and documented in the Essence language. The mapping and resulting analysis can be used to test the validity of the Essence theory in practice and identify areas for improvement in both the method and the Essence standard. The analysis framework has been applied to an operational software development lifecycle of a large South African bank. A mapping of the Essence concepts to the governance model and method documented in the lifecycle was completed. This mapping revealed that the Essence is a valid tool and can be used to describe a method in practice. Furthermore it is useful as an analysis framework to assess the governance model that manages and measures the progress of an endeavour in the Bank. The case study and resulting analysis demonstrate that the Essence standard can be used to analyse a methodology and identify areas for improvement. The analysis also identified areas for improvement in the Essence specification

    VENUS meets SEMAT : How do they compare?

    Get PDF
    SEMAT (Software Engineering Methods And Theory) is an initiative to define a generic foundation for software engineering as a rigorous discipline. The so-called SEMAT kernel provides a thinking framework for software engineers that is not constrained to certain methods and processes but aims to encompass all kinds of proven principles and best practices. Our own interdisciplinary VENUS development method is designed to achieve similar generality and compatibility objectives, although the chosen application domain in VENUS has a much narrower scope. In this paper we compare the VENUS development method with SEMAT. The main contributions are positioning the VENUS development concepts within the SEMAT conceptual framework, and investigating whether SEMAT is an appropriate framework for dealing with inherently interdisciplinary development processes. In the end we present suggestions for the improvement of both approaches.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    VENUS meets SEMAT : How do they compare?

    Get PDF
    SEMAT (Software Engineering Methods And Theory) is an initiative to define a generic foundation for software engineering as a rigorous discipline. The so-called SEMAT kernel provides a thinking framework for software engineers that is not constrained to certain methods and processes but aims to encompass all kinds of proven principles and best practices. Our own interdisciplinary VENUS development method is designed to achieve similar generality and compatibility objectives, although the chosen application domain in VENUS has a much narrower scope. In this paper we compare the VENUS development method with SEMAT. The main contributions are positioning the VENUS development concepts within the SEMAT conceptual framework, and investigating whether SEMAT is an appropriate framework for dealing with inherently interdisciplinary development processes. In the end we present suggestions for the improvement of both approaches.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    A standard-based framework to integrate software work in small settings

    Get PDF
    Small software companies have to work hard in order to survive. They usually find it challenging to spend time and effort on improving there operations and processes. Therefore, it is important to address such needs by the introduction of a proposed framework that specifies ways of getting things done while consciously encourage them to enhance their ability to improve. Although there are many software process improvement approaches, none of them address the human factors of small companies in a comprehensive and holistic way. Samay is a proposed framework to integrate human factors in the daily work as a way to deal with that challenge. This study suggests managing human factors but pointing out the software process life cycle. The purpose is to converge toward a continuous improvement by means of alternative mechanisms that impact on people. This framework was developed based upon reviews of relevant standards (such as ISO/IEC 29110, ISO 10018, OMG Essence and ISO/IEC 33014) and previously published studies in this field. Moreover, an expert review and validation findings supported the view that Samay could support practitioners when small software companies want to start improving their ways of work

    VENUS meets SEMAT : How do they compare?

    Get PDF
    SEMAT (Software Engineering Methods And Theory) is an initiative to define a generic foundation for software engineering as a rigorous discipline. The so-called SEMAT kernel provides a thinking framework for software engineers that is not constrained to certain methods and processes but aims to encompass all kinds of proven principles and best practices. Our own interdisciplinary VENUS development method is designed to achieve similar generality and compatibility objectives, although the chosen application domain in VENUS has a much narrower scope. In this paper we compare the VENUS development method with SEMAT. The main contributions are positioning the VENUS development concepts within the SEMAT conceptual framework, and investigating whether SEMAT is an appropriate framework for dealing with inherently interdisciplinary development processes. In the end we present suggestions for the improvement of both approaches.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Project management in social data science : integrating lessons from research practice and software engineering

    Get PDF
    Online platforms, transaction processing systems, mobile sensors and other novel sources of data have shaped many areas of social research. The emerging discipline of social data science is subject to questions of epistemology, politics, ethics and responsibility, while the practice of doing social data science raises significant project management issues that include logistics, team communication, software system integration and stakeholder engagement. Keeping track of such a multitude of individual concerns while maintaining an overview of a social data science project as a whole is not trivial. This calls for provision of appropriate guidance for holistic project management. The project management issues in social data science are strikingly similar to those arising in software engineering. In this thesis, I adapt a particular software engineering project management tool – the SEMAT Essence model (Jacobson et al., 2013) – to the needs of social data science. This model offers a holistic management approach by addressing key project aspects, including the often overlooked yet crucially important ones such as maintaining stakeholder engagement and establishing the ways of working. The SEMAT Essence is a progress tracking model and does not assume any specific work process, which is valuable given the great diversity of social data science projects. To achieve this goal, I study the practice of doing social data science through participant observation of social data science projects and by providing ethnographic accounts for those. Using the ethnographic findings and the basic content and structure of the SEMAT model, I develop the Social Science Scorecard Deck – an agile project management tool for social data science. To assess the Scorecard Deck, I use the tool in management of a social data science project and then subject the tool to external validation by interviewing experts in social data science

    The Essence of Software Engineering

    Get PDF
    Software Engineering; Software Development; Software Processes; Software Architectures; Software Managemen

    Omission of quality software development practices : a systematic literature review

    Get PDF
    Software deficiencies are minimized by utilizing recommended software development and quality assurance practices. However, these recommended practices (i.e., quality practices) become ineffective if software professionals purposefully ignore them. Conducting a systematic literature review (n = 4,838), we discovered that only a small number of previous studies, within software engineering and information systems literature, have investigated the omission of quality practices. These studies explain the omission of quality practices mainly as a result of organizational decisions and trade-offs made under resource constraints or market pressure. However, our study indicates that different aspects of this phenomenon deserve further research. In particular, future research must investigate the conditions triggering the omission of quality practices and the processes through which this phenomenon occurs. Especially, since software development is a human-centric phenomenon, the psychological and behavioral aspects of this process deserve in-depth empirical investigation. In addition, futures research must clarify the social, organizational, and economical consequences of ignoring quality practices. Gaining in-depth theoretically sound and empirically grounded understandings about different aspects of this phenomenon enables research and practice to suggest interventions to overcome this issue.fi=vertaisarvioitu|en=peerReviewed
    corecore