2,256 research outputs found

    On the engineering of crucial software

    Get PDF
    The various aspects of the conventional software development cycle are examined. This cycle was the basis of the augmented approach contained in the original grant proposal. This cycle was found inadequate for crucial software development, and the justification for this opinion is presented. Several possible enhancements to the conventional software cycle are discussed. Software fault tolerance, a possible enhancement of major importance, is discussed separately. Formal verification using mathematical proof is considered. Automatic programming is a radical alternative to the conventional cycle and is discussed. Recommendations for a comprehensive approach are presented, and various experiments which could be conducted in AIRLAB are described

    [Subject benchmark statement]: computing

    Get PDF

    Automated analysis of feature models: Quo vadis?

    Get PDF
    Feature models have been used since the 90's to describe software product lines as a way of reusing common parts in a family of software systems. In 2010, a systematic literature review was published summarizing the advances and settling the basis of the area of Automated Analysis of Feature Models (AAFM). From then on, different studies have applied the AAFM in different domains. In this paper, we provide an overview of the evolution of this field since 2010 by performing a systematic mapping study considering 423 primary sources. We found six different variability facets where the AAFM is being applied that define the tendencies: product configuration and derivation; testing and evolution; reverse engineering; multi-model variability-analysis; variability modelling and variability-intensive systems. We also confirmed that there is a lack of industrial evidence in most of the cases. Finally, we present where and when the papers have been published and who are the authors and institutions that are contributing to the field. We observed that the maturity is proven by the increment in the number of journals published along the years as well as the diversity of conferences and workshops where papers are published. We also suggest some synergies with other areas such as cloud or mobile computing among others that can motivate further research in the future.Ministerio de EconomĂ­a y Competitividad TIN2015-70560-RJunta de AndalucĂ­a TIC-186

    Intelligence student advising system - an implementation using object-oriented C++

    Get PDF
    This paper present an approach for developing a consistent student course-advising system for undergraduate students using knowledge-based technology. A prototype system has been implemented in object-oriented technique using C++. The prototype system was designed for undergraduate Computing students. The prototype is able to give consultation and advice on some important aspect of student advising problems. Knowledgeable behaviour was produced where the ‘expert’ and ‘knowledge’ is stored separately from the inference engine. Object-oriented programming technique was found to enhance the development of the system

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Unit testing of AngularJS : A look into writing tests for web application

    Get PDF
    This task was assigned by Protacon Solutions Oy with the objective set to study and implement unit testing in AngularJS JavaScript framework as part of the development process of the customer’s application. The thesis focuses on studying the AngularJS framework and if and how its design philosophy complements the unit testing principles. The focus was on studying unit testing via developing unit tests iteratively onto the application created beforehand. The tests were created with Jasmine testing framework, a tool recommended by the AngularJS development team. Other testing frameworks were studied before the thesis, however Jasmine was chosen to be examined more closely. The thesis results in several unit tests created for the customer’s application, and knowledge was provided for the company about the unit testing of a modern JavaScript web application to be distributed among the co-workers in the company. In addition, the backbone for developing and expanding the unit tests for the application and other future applications developed with AngularJS was laid down. The tests were created with trial-and-error method, and best practices were recorded to be expanded upon, determined by the nature of the application and what was best suited for it.OpinnĂ€ytetyön toimeksiantajana toimi Protacon Solutions Oy. TehtĂ€vĂ€nĂ€ oli tutkia ja kehittÀÀ yksikkötestejĂ€ AngularJS- sovelluskehyksellĂ€ kehitettyyn web-pohjaiseen asiakkaalle toteutettuun sovellukseen. Työ keskittyi AngularJS-sovelluskehyksen ominaisuuksien tutkimiseen ja miten niitĂ€ pystyi hyödyntĂ€mÀÀn sovelluksen yksikkötestejĂ€ kehitettĂ€essĂ€, ja kuinka AngularJS sovelluskehyksen rakenne tuki yksikkötestien suunnitelun teesejĂ€. Testit kehitettiin kĂ€yttĂ€en Jasmine-testaussovelluskehystĂ€, mikĂ€ on AngularJS-kehittĂ€jien suosittelema työkalu testien kehitykseen. Muita testaussovelluskehyksiĂ€ tutkittiin pikaisesti ennen työn aloittamista, mutta niistĂ€ pÀÀtettiin luopua ennen työtĂ€. Tuloksena syntyi useita yksikkötestejĂ€ asiakkaan AngularJS-sovellukseen, ja osaamista ja tietotaitoa yritykselle yksikkötestien tekemisestĂ€ AngularJS-sovelluskehyksellĂ€ kehitettyyn sovellukseen. Tarkoituksena on jakaa tĂ€tĂ€ tietotaitoa eteenpĂ€in. LisĂ€ksi tuloksena oli pohjustus uusien testien tekemiseen ja vanhojen lisĂ€kehitykselle asiakkaan sovelluksessa. Testit kehitettiin yrityksen ja erehdyksen kautta, josta voi jatkaa parhaaksi todetuin menetelmin testien kehitystĂ€. Testit suunniteltiin ja toteutettiin juuri kyseiseen sovellukseen sopiviksi

    Dagstuhl News January - December 2005

    Get PDF
    "Dagstuhl News" is a publication edited especially for the members of the Foundation "Informatikzentrum Schloss Dagstuhl" to thank them for their support. The News give a summary of the scientific work being done in Dagstuhl. Each Dagstuhl Seminar is presented by a small abstract describing the contents and scientific highlights of the seminar as well as the perspectives or challenges of the research topic

    Fuzzy specification in software engineering

    Get PDF
    Judging quality of any decision making procedure is a key problem whenever there is no possibility of developing a sequence of experiments allowing some kind of ratio relative to good results. It may be the case that we have only chances for a unique experiment or no similar experiences are available, but it may be also the case that no standard experiment allows the observation of such a good behavior, simply because such good behavior can not be properly defined. This situation is quite often associated to complex decision making problems. Then the only support we can find for our decision is the decision process itself, the consistency of the arguments leading to such a decision. Checking the quality of such a procedure is therefore a key issue. In this paper we postulate that the design and formal specification of algorithms and processes require a fuzzy approach, since quite often specification is being poorly dened
    • 

    corecore