230 research outputs found

    Ada as a design specification language

    Get PDF
    The primary thesis objective is research into current approaches to design specification languages, emphasizing Ada. Requirements specification is touched upon. Design specification is explored and related to requirements and implementation. The role of language in design is discussed, as well as objectives of the design specification and features that a specification language should provide in order to meet those objectives. Formal language is contrasted with natural language. Some formal specification languages are described, both Ada related and not Ada related. The secondary objective, the thesis project, is to illustrate a design specification in a formal language, Ada. The purpose of the project is to compare the Ada expression of an example design with the natural language specification for the same system

    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

    Global testing under sparse alternatives: ANOVA, multiple comparisons and the higher criticism

    Get PDF
    Testing for the significance of a subset of regression coefficients in a linear model, a staple of statistical analysis, goes back at least to the work of Fisher who introduced the analysis of variance (ANOVA). We study this problem under the assumption that the coefficient vector is sparse, a common situation in modern high-dimensional settings. Suppose we have pp covariates and that under the alternative, the response only depends upon the order of p1−αp^{1-\alpha} of those, 0≀α≀10\le\alpha\le1. Under moderate sparsity levels, that is, 0≀α≀1/20\le\alpha\le1/2, we show that ANOVA is essentially optimal under some conditions on the design. This is no longer the case under strong sparsity constraints, that is, α>1/2\alpha>1/2. In such settings, a multiple comparison procedure is often preferred and we establish its optimality when α≄3/4\alpha\geq3/4. However, these two very popular methods are suboptimal, and sometimes powerless, under moderately strong sparsity where 1/2<α<3/41/2<\alpha<3/4. We suggest a method based on the higher criticism that is powerful in the whole range α>1/2\alpha>1/2. This optimality property is true for a variety of designs, including the classical (balanced) multi-way designs and more modern "p>np>n" designs arising in genetics and signal processing. In addition to the standard fixed effects model, we establish similar results for a random effects model where the nonzero coefficients of the regression vector are normally distributed.Comment: Published in at http://dx.doi.org/10.1214/11-AOS910 the Annals of Statistics (http://www.imstat.org/aos/) by the Institute of Mathematical Statistics (http://www.imstat.org

    Requirements, design and business process reengineering as vital parts of any system development methodology

    Get PDF
    This thesis analyzes different aspects of system development life cycle, concentrating on the requirements and design stages. It describes various methodologies, methods and tools that have been developed over the years. It evaluates them and compares them against each other. Finally a conclusion is made that there is a very important stage missing in the system development life cycle, which is the Business Process Reengineering Stage

    An Object Oriented Paradigm for Requirements Specifications.

    Get PDF
    Software engineering defines a formalized five-step life-cycle for software development. These steps are: requirements specification, design, implementation, testing and maintenance. The requirements specification phase of the software development life-cycle is responsible for determining the functionality of the proposed system. In this work, a methodology is developed that enhances the generation of accurate requirements specifications, utilizing an object-oriented paradigm. This research realizes four objectives. First, the process of information transferral between the user and the specification team is enhanced. Second, a working base of knowledge containing the domain-specific information within the initial requirements document is established for use by the specification team. Third, techniques for evaluating the overall quality of the initial requirements document are addressed. Specifically, the problems associated with document ambiguity, completeness, consistency and structure are examined. Finally, a specification paradigm is defined utilizing this knowledge-based specification environment. The paradigm permits the automatic generation of an object-oriented specification model. This model may then be used as an input for the design phase. This paradigm defines a methodology for the establishment and evaluation of the knowledge-based specification environment. The environment permits the incorporation of an object-oriented development strategy into the specification process. In addition, the concept of information traceability throughout the specification process is enhanced

    Quality measures and assurance for AI (Artificial Intelligence) software

    Get PDF
    This report is concerned with the application of software quality and evaluation measures to AI software and, more broadly, with the question of quality assurance for AI software. Considered are not only the metrics that attempt to measure some aspect of software quality, but also the methodologies and techniques (such as systematic testing) that attempt to improve some dimension of quality, without necessarily quantifying the extent of the improvement. The report is divided into three parts Part 1 reviews existing software quality measures, i.e., those that have been developed for, and applied to, conventional software. Part 2 considers the characteristics of AI software, the applicability and potential utility of measures and techniques identified in the first part, and reviews those few methods developed specifically for AI software. Part 3 presents an assessment and recommendations for the further exploration of this important area

    Google Play apps ERM: (energy rating model) multi-criteria evaluation model to generate tentative energy ratings for Google Play store apps

    Get PDF
    A common issue that is shared among Android smartphones users was and still related to saving their batteries power and to avoid the need of using any recharging resources. The tremendous increase in smartphone usage is clearly accompanied by an increase in the need for more energy. This preoperational relationship between modern technology and energy generates energy-greedy apps, and therefore power-hungry end users. With many apps falling under the same category in an app store, these apps usually share similar functionality. Because developers follow different design and development schools, each app has its own energy-consumption habits. Since apps share similar features, an end-user with limited access to recharging resources would prefer an energy-friendly app rather than a popular energy-greedy app. However, app stores give no indication about the energy behaviour of the apps they offer, which causes users to randomly choose apps without understanding their energy-consumption behaviour. Furthermore, with regard to the research questions about the fact that power saving application consumes a lot of electricity, past studies clearly indicate that there is a lot of battery depletion due to several factors. This problem has become a major concern for smartphone users and manufacturers. The main contribution of our research is to design a tool that can act as an effective decision support factor for end users to have an initial indication of the energy-consumption behaviour of an application before installing it. The core idea of the “before-installation” philosophy is simplified by the contradicting concept of installing the app and then having it monitored and optimized. Since processing requires power, avoiding the consumption of some power in order to conserve a larger amount of power should be our priority. So instead, we propose a preventive strategy that requires no processing on any layer of the smartphone. To address this issue, we propose a star-rating evaluation model (SREM), an approach that generates a tentative energy rating label for each app. To that end, SREM adapts current energy-aware refactoring tools to demonstrate the level of energy consumption of an app and presents it in a star-rating schema similar to the Ecolabels used on electrical home appliances. The SREM will also inspire developers and app providers to come up with multiple energy-greedy versions of the same app in order to suit the needs of different categories of users and rate their own apps. We proposed adding SREM to Google Play store in order to generate the energy-efficiency label for each app which will act as a guide for both end users and developers without running any processes on the end-users smartphone. Our research also reviews relevant existing literature specifically those covering various energy-saving techniques and tools proposed by various authors for Android smartphones. A secondary analysis has been done by evaluating the past research papers and surveys that has been done to assess the perception of the users regarding the phone power from their battery. In addition, the research highlights an issue that the notifications regarding the power saving shown on the screen seems to exploit a lot of battery. Therefore, this study has been done to reflect the ways that could help the users to save the phone battery without using any power from the same battery in an efficient manner. The research offers an insight into new ways that could be used to more effectively conserve smartphone energy, proposing a framework that involves end users on the process.Um problema comum entre utilizadores de smartphones Android tem sido a necessidade de economizar a energia das baterias, de modo a evitar a utilização de recursos de recarga. O aumento significativo no uso de smartphones tem sido acompanhado por um aumento, tambĂ©m significativo, na necessidade de mais energia. Esta relação operacional entre tecnologia moderna e energia gera aplicaçÔes muito exigentes no seu consumo de energia e, portanto, perfis de utilizadores que requerem nĂ­veis de energia crescentes. Com muitos das aplicaçÔes que se enquadram numa mesma categoria da loja de aplicaçÔes (Google Store), essas aplicaçÔes geralmente tambĂ©m partilham funcionalidades semelhantes. Como os criadores destas aplicaçÔes seguem abordagens diferentes de diversas escolas de design e desenvolvimento, cada aplicação possui as suas prĂłprias caraterĂ­sticas de consumo de energia. Como as aplicaçÔes partilham recursos semelhantes, um utilizador final com acesso limitado a recursos de recarga prefere uma aplicação que consome menos energia do que uma aplicação mais exigente em termos de consumo energĂ©tico, ainda que seja popular. No entanto, as lojas de aplicaçÔes nĂŁo fornecem uma indicação sobre o comportamento energĂ©tico das aplicaçÔes oferecidas, o que faz com que os utilizadores escolham aleatoriamente as suas aplicaçÔes sem entenderem o correspondente comportamento de consumo de energia. Adicionalmente, no que diz respeito Ă  questĂŁo de investigação, a solução de uma aplicação de economia de energia consume muita eletricidade, o que a torna limitada; estudos anteriores indicam claramente que hĂĄ muita perda de bateria devido a vĂĄrios fatores, nĂŁo constituindo solução para muitos utilizadores e para os fabricantes de smartphones. A principal contribuição de nossa pesquisa Ă© projetar uma ferramenta que possa atuar como um fator de suporte Ă  decisĂŁo eficaz para que os utilizadores finais tenham uma indicação inicial do comportamento de consumo de energia de uma aplicação, antes de a instalar. A ideia central da filosofia proposta Ă© a de atuar "antes da instalação", evitando assim a situação em se instala uma aplicação para perceber Ă  posteriori o seu impacto no consumo energĂ©tico e depois ter que o monitorizar e otimizar (talvez ainda recorrendo a uma aplicação de monitorização do consumo da bateria, o que agrava ainda mais o consumo energĂ©tico). Assim, como o processamento requer energia, Ă© nossa prioridade evitar o consumo de alguma energia para conservar uma quantidade maior de energia. Portanto, Ă© proposta uma estratĂ©gia preventiva que nĂŁo requer processamento em nenhuma camada do smartphone. Para resolver este problema, Ă© proposto um modelo de avaliação por classificação baseado em nĂ­veis e identificado por estrelas (SREM). Esta abordagem gera uma etiqueta de classificação energĂ©tica provisĂłria para cada aplicação. Para isso, o SREM adapta as atuais ferramentas de refatoração com reconhecimento de energia para demonstrar o nĂ­vel de consumo de energia de uma aplicação, apresentando o resultado num esquema de classificação por estrelas semelhante ao dos rĂłtulos ecolĂłgicos usados em eletrodomĂ©sticos. O SREM tambĂ©m se propĂ”e influenciar quem desenvolve e produz as aplicaçÔes, a criarem diferentes versĂ”es destas, com diferentes perfis de consumo energĂ©tico, de modo a atender Ă s necessidades de diferentes categorias de utilizadores e assim classificar as suas prĂłprias aplicaçÔes. Para avaliar a eficiĂȘncia do modelo como um complemento Ă s aplicaçÔes da loja Google Play, que atuam como uma rotulagem para orientação dos utilizadores finais. A investigação tambĂ©m analisa a literatura existente relevante, especificamente a que abrange as vĂĄrias tĂ©cnicas e ferramentas de economia de energia, propostas para smartphones Android. Uma anĂĄlise secundĂĄria foi ainda realizada, focando nos trabalhos de pesquisa que avaliam a perceção dos utilizadores em relação Ă  energia do dispositivo, a partir da bateria. Em complemento, a pesquisa destaca um problema de que as notificaçÔes sobre a economia de energia mostradas na tela parecem explorar muita bateria. Este estudo permitiu refletir sobre as formas que podem auxiliar os utilizadores a economizar a bateria do telefone sem usar energia da mesma bateria e, mesmo assim, o poderem fazer de maneira eficiente. A pesquisa oferece uma visĂŁo global das alternativas que podem ser usadas para conservar com mais eficiĂȘncia a energia do smartphone, propondo um modelo que envolve os utilizadores finais no processo.Un problĂšme frĂ©quent rencontrĂ© par les utilisateurs de smartphones Android a Ă©tĂ©, tout en l’étant toujours, d’économiser leur batterie et d’éviter la nĂ©cessitĂ© d’utiliser des ressources de recharge. La croissance considĂ©rable de l’utilisation des smartphones s’accompagne clairement d’une augmentation des besoins en Ă©nergie. Cette relation prĂ©opĂ©rationnelle entre la technologie moderne et l’énergie gĂ©nĂšre des applications gourmandes en Ă©nergie, et donc des utilisateurs finaux qui le sont tout autant. De nombreuses applications relevant de la mĂȘme catĂ©gorie dans une boutique partagent gĂ©nĂ©ralement des fonctionnalitĂ©s similaires. Étant donnĂ© que les dĂ©veloppeurs adoptent diffĂ©rentes approches de conception et de dĂ©veloppement, chaque application a ses propres caractĂ©ristiques de consommation d’énergie. Comme les applications partagent des fonctionnalitĂ©s similaires, un utilisateur final disposant d’un accĂšs limitĂ© aux ressources de recharge prĂ©fĂ©rerait une application Ă©coĂ©nergĂ©tique plutĂŽt qu’une autre gourmande en Ă©nergie. Cependant, les boutiques d’applications ne donnent aucune indication sur le comportement Ă©nergĂ©tique des applications qu’elles proposent, ce qui incite les utilisateurs Ă  choisir des applications au hasard sans comprendre leurs caractĂ©ristiques en ce domaine. En outre, en ce qui concerne les questions de recherche sur le fait que les applications d’économie d’énergie consomment beaucoup d’électricitĂ©, des Ă©tudes antĂ©rieures indiquent clairement que la dĂ©charge d’une batterie est due Ă  plusieurs facteurs. Ce problĂšme est devenu une prĂ©occupation majeure pour les utilisateurs et les fabricants de smartphones. La principale contribution de notre Ă©tude est de concevoir un outil qui peut agir comme un facteur d’aide efficace Ă  la dĂ©cision pour que les utilisateurs finaux aient une indication initiale du comportement de consommation d’énergie d’une application avant de l’installer. L’idĂ©e de base de la philosophie « avant l’installation » est simplifiĂ©e par le concept contradictoire d’installer l’application pour ensuite la contrĂŽler et l’optimiser. Puisque les opĂ©rations de traitement exigent de l’énergie, Ă©viter la consommation d’une partie d’entre elles pour l’économiser devrait ĂȘtre notre prioritĂ©. Nous proposons donc une stratĂ©gie prĂ©ventive qui ne nĂ©cessite aucun traitement sur une couche quelconque du smartphone. Pour rĂ©soudre ce problĂšme, nous proposons un modĂšle d’évaluation au moyen d’étoiles (star-rating evaluation model ou SREM), une approche qui gĂ©nĂšre une note Ă©nergĂ©tique indicative pour chaque application. À cette fin, le SREM adapte les outils actuels de refactoring sensibles Ă  l’énergie pour dĂ©montrer le niveau de consommation d’énergie d’une application et la prĂ©sente dans un schĂ©ma de classement par Ă©toiles similaire aux labels Ă©cologiques utilisĂ©s sur les appareils Ă©lectromĂ©nagers. Le SREM incitera Ă©galement les dĂ©veloppeurs et les fournisseurs d’applications Ă  mettre au point plusieurs versions avides d’énergie d’une mĂȘme application afin de rĂ©pondre aux besoins des diffĂ©rentes catĂ©gories d’utilisateurs et d’évaluer leurs propres applications. Nous avons proposĂ© d’ajouter le SREM au Google Play Store afin de gĂ©nĂ©rer le label d’efficacitĂ© Ă©nergĂ©tique pour chaque application. Celui-ci servira de guide Ă  la fois pour les utilisateurs finaux et les dĂ©veloppeurs sans exĂ©cuter de processus sur le smartphone des utilisateurs finaux. Notre recherche passe Ă©galement en revue la littĂ©rature existante pertinente, en particulier celle qui couvre divers outils et techniques d’économie d’énergie proposĂ©s par divers auteurs pour les smartphones Android. Une analyse secondaire a Ă©tĂ© effectuĂ©e en Ă©valuant les documents de recherche et les enquĂȘtes antĂ©rieurs qui ont Ă©tĂ© rĂ©alisĂ©s pour Ă©valuer la perception des utilisateurs concernant l’alimentation tĂ©lĂ©phonique depuis leur batterie. En outre, l’étude met en Ă©vidence un problĂšme selon lequel les notifications concernant les Ă©conomies d’énergie affichĂ©es Ă  l’écran semblent elles-mĂȘmes soumettre les batteries Ă  une forte utilisation. Par consĂ©quent, cette Ă©tude a Ă©tĂ© entreprise pour reflĂ©ter les façons qui pourraient aider les utilisateurs Ă  Ă©conomiser efficacement la batterie de leur tĂ©lĂ©phone sans pour autant la dĂ©charger. L’étude offre un bon aperçu des nouvelles façons d’économiser plus efficacement l’énergie des smartphones, en proposant un cadre qui implique les utilisateurs finaux dans le processus
    • 

    corecore