469,500 research outputs found

    Formalising responsibility modelling for automatic analysis

    Get PDF
    Modelling the structure of social-technical systems as a basis for informing software system design is a difficult compromise. Formal methods struggle to capture the scale and complexity of the heterogeneous organisations that use technical systems. Conversely, informal approaches lack the rigour needed to inform the software design and construction process or enable automated analysis. We revisit the concept of responsibility modelling, which models social technical systems as a collection of actors who discharge their responsibilities, whilst using and producing resources in the process. Responsibility modelling is formalised as a structured approach for socio-technical system requirements specification and modelling, with well-defined semantics and support for automated structure and validity analysis. The effectiveness of the approach is demonstrated by two case studies of software engineering methodologies

    A rapid simulation modelling process for novice software process simulation modellers

    Get PDF
    In recent years, simulation modelling of software processes have has promoted as a tool to understand, study, control, and manage software development processes. Claims have been made that simulation models are useful and effective at gaining insight into software development processes. However, little has been said about the process of developing simulation models for software engineering problems. Simulation modelling is a young discipline in software engineering. Consequently, many number software process simulation modellers are thought to be novices. The simulation modelling process is believed to have had an effect on the quality of a simulation study. Although there is a body of knowledge available in the general simulation literature to guide and educate novices, the software process simulation modelling literature lacks information for novice software process simulation modellers to understand and adopt a simulation modelling process. This thesis aims to develop a simulation modelling process for novice software process simulation modellers. This thesis reports how the development and evaluation of a simulation modelling process for novice software process simulation modellers. The rapid simulation modelling process (RSMP) is based on an empirical study of the contexts and practices of expert simulation modellers in SPSM and Operational Research (OR). The RSMP is intended to be independent of a particular simulation technique (i. e. system dynamics or discrete event simulation) and guides novice software process simulation modellers through a set of steps that should be undertaken during a simulation study; the RSMP emphasises heavy client contact and provides guidelines for model documentation. The RSMP has been evaluated through controlled experiments with novice software process simulation modellers using system dynamics (SD) modelling. In the future, it will be further evaluated with software process simulation modellers using discrete event simulation. The RSMP has also been evaluated with a panel of expert software process simulation modellers. The main contribution of this study lies in providing novice software process simulation modellers with a simulation modelling process, which embodies real world simulation practice and is intended to be independent of a particular simulation technique

    3rd international workshop on advances and applications of problem frames

    Get PDF
    Michael Jackson's Problem Frames are a highly promising approach to early life-cycle software engineering. Their focus moves the engineer back to the problem to be solved rather than forward to the software and solving a poorly defined problem. By applying the Problem Frames approach, the software engineer can understand the problem context and how it is to be affected by the proposed software, and ultimately work towards the right solution for the problem. The influence of the Problem Frames approach and related work is spreading in the fields of domain modelling, business process modelling, requirements engineering, software architecture as well as software engineering in general

    Teaching mathematical modelling: a research based approach

    Get PDF
    A collaborative, research based laboratory experiment in mathematical modelling was included in a bioprocess engineering laboratory module, taught as part of an interdisciplinary program in biotechnology. The class was divided into six groups of three students and given the task of investigating a novel diafiltration process that is currently the focus of international research. Different aspects of the problem were assigned to each group and inter-group communication via email was required to ensure that there was a coherent set of objectives for each group and for the class as a whole. The software package, Berkeley Madonna, was used for all calculations. As well as giving the students an introduction to mathematical modelling and computer programming, this approach helped to illustrate the importance of research in bioprocess engineering. In general, the experiment was well received by the students and the fact that they were discovering new knowledge generated a degree of enthusiasm. However, many students were consumed by the technical demands of computer programming, especially the attention to detail required. Thus, they did not think too deeply about the physical aspects of the system they were modelling. In future years, therefore, consideration will be given to giving the student prior instruction in the use of the software

    Feature Nets: behavioural modelling of software product lines

    Get PDF
    Software product lines (SPL) are diverse systems that are developed using a dual engineering process: (a)family engineering defines the commonality and variability among all members of the SPL, and (b) application engineering derives specific products based on the common foundation combined with a variable selection of features. The number of derivable products in an SPL can thus be exponential in the number of features. This inherent complexity poses two main challenges when it comes to modelling: Firstly, the formalism used for modelling SPLs needs to be modular and scalable. Secondly, it should ensure that all products behave correctly by providing the ability to analyse and verify complex models efficiently. In this paper we propose to integrate an established modelling formalism (Petri nets) with the domain of software product line engineering. To this end we extend Petri nets to Feature Nets. While Petri nets provide a framework for formally modelling and verifying single software systems, Feature Nets offer the same sort of benefits for software product lines. We show how SPLs can be modelled in an incremental, modular fashion using Feature Nets, provide a Feature Nets variant that supports modelling dynamic SPLs, and propose an analysis method for SPL modelled as Feature Nets. By facilitating the construction of a single model that includes the various behaviours exhibited by the products in an SPL, we make a significant step towards efficient and practical quality assurance methods for software product lines

    Software reliability and dependability: a roadmap

    Get PDF
    Shifting the focus from software reliability to user-centred measures of dependability in complete software-based systems. Influencing design practice to facilitate dependability assessment. Propagating awareness of dependability issues and the use of existing, useful methods. Injecting some rigour in the use of process-related evidence for dependability assessment. Better understanding issues of diversity and variation as drivers of dependability. Bev Littlewood is founder-Director of the Centre for Software Reliability, and Professor of Software Engineering at City University, London. Prof Littlewood has worked for many years on problems associated with the modelling and evaluation of the dependability of software-based systems; he has published many papers in international journals and conference proceedings and has edited several books. Much of this work has been carried out in collaborative projects, including the successful EC-funded projects SHIP, PDCS, PDCS2, DeVa. He has been employed as a consultant t

    The use of the concept of event in enterprise ontologies and requirements engineering literature.

    Get PDF
    The concept of event is used in a lot of meanings. It can be the possible outcome of doing something (probability theory), it can be a business transaction (accounting), or just a plain happening. In software engineering, the concept of event is also used a lot. It is used to accomplish loose coupling between software components or to realise interaction between different services. There is however not a consensus on the meaning of `an event'. In enterprise ontologies, an event is defined as a happening at one point in time, or as an activity which takes time to complete. In requirement engineering, the same different uses can be found, together with an event as a request for something that needs to be done. These differences can also be found in implementation. All these distinct purposes of the word event make it difficult to integrate and use different requirement engineering techniques. Comparison or transformations between models drawn in different grammars is impossible because of the ambiguity of the concept of event. We define three meanings for an event that are used by enterprise ontologies and requirement engineering techniques: an achievement (happening at one point in time), an activity (happening over time) and a request (a demand for something that needs to be done). We also identify a missing link between real economic events, the events defined in the requirements model and the events used in implementation.Requirements modelling; Enterprise ontology; Process modelling; Dynamic; Event;

    Building on CHASM: A Study of Using Counts for the Analysis of Static Models of Processes

    Get PDF
    Process modelling is gaining increasing acceptance by software engineers as a useful discipline to facilitate both process understanding and improvement activities. This position paper builds upon previous work reported at the 1997 ICSE workshop on process models and empirical studies of software engineering (Phalp and Counsell 1997). In the previous paper, we argued that simple counts could be used to support analysis of static process models. We also illustrated the idea with a coupling measure for Role Activity Diagrams, a graphical process modelling notation adapted from Petri Nets. At that time only limited empirical work had been carried out, based upon a single industrial study, where we found high levels of coupling in an inefficient process (a more thorough description may be found in (Phalp and Shepperd 1999)). We now summarise a more recent study, which uses a similar analysis of process coupling again based on simple counts. In the study, we compared ten software prototyping processes drawn from eight different organisations. We found that this approach does yield insights into process problems, which could potentially be missed by qualitative analysis alone. This is particularly so when analysing real world processes, which are frequently more complex than their text book counterparts. One notable finding was that despite differences in size and domain, role types across the organisations exhibited similar levels of coupling. Furthermore, where there were deviations in one particular role type, this led the authors to discover a relationship between project size and the coupling levels within that type of role. Given the simplicity of our approach and the complexity of many real world processes we argue that quantitative analysis of process models should be considered as a process analysis technique
    corecore