Serwis Infona wykorzystuje pliki cookies (ciasteczka). Są to wartości tekstowe, zapamiętywane przez przeglądarkę na urządzeniu użytkownika. Nasz serwis ma dostęp do tych wartości oraz wykorzystuje je do zapamiętania danych dotyczących użytkownika, takich jak np. ustawienia (typu widok ekranu, wybór języka interfejsu), zapamiętanie zalogowania. Korzystanie z serwisu Infona oznacza zgodę na zapis informacji i ich wykorzystanie dla celów korzytania z serwisu. Więcej informacji można znaleźć w Polityce prywatności oraz Regulaminie serwisu. Zamknięcie tego okienka potwierdza zapoznanie się z informacją o plikach cookies, akceptację polityki prywatności i regulaminu oraz sposobu wykorzystywania plików cookies w serwisie. Możesz zmienić ustawienia obsługi cookies w swojej przeglądarce.
We present a development environment that proactively and interactively assists the software engineer in modeling complex reactive systems. Our framework repeatedly analyzes models of the system under development at various levels of abstraction, and then reasons about these models in order to detect possible errors and to derive emergent properties of interest. Upon request, the environment can then...
The Unix operating system stands out as a major engineering achievement due to its exemplary design, technical contributions, impact, development model, and widespread use. Its evolution is made available as a revision management repository, covering the period from its inception in 1970 until today. The data set is being used for empirical research in the evolution of code, programming practices,...
Program assertions are useful for many program analysis tasks. They are however often missing in practice. In this work, we develop a novel approach for generating likely assertions automatically based on active learning. Our target is complex Java programs which cannot be symbolically executed (yet). Our key idea is to generate candidate assertions based on test cases and then apply active learning...
The chance to influence the lives of a million children does not come often. Through a partnership between the BBC and several technology companies, a small instructional computing device called the BBC micro:bit will be given to a million children in the UK in 2016. Moreover, using the micro:bit will be part of the CS curriculum. We describe how Microsoft's Touch Develop programming platform works...
Recent device shipment trends strongly indicate that the number of Web-enabled devices other than PCs and smart phones are growing rapidly. Marking the end of the dominant era of these two traditional device categories, people will soon commonly use various types of Internet-connected devices in their daily lives, where no single device will dominate. Since today's devices are mostly standalone and...
Compute Unified Device Architecture (CUDA) is an attractive alternative for our ever growing need for high performance computing. However to extract the full potential of CUDA one should, at the least be familiar with the programming model and should have a fair understanding of the memory and the cache architecture. Yet most of the domain experts from domains that warrant high performance computing...
This paper presents the development and assessment of a computer organization course for undergraduate students in computer science that has been infused with data security concepts. The infusion gives an opportunity for students to learn essential cybersecurity topics in an introductory computer science course. Specifically, students were introduced to the well-known data encryption algorithm called...
We describe the process of approving an online course teaching C++ introductory programming. This document will highlight the actions carried out to satisfy the different standards required by Quality Matters. The course was approved by internal informal reviewers at our institution.
Traditional way of learning programming is often tedious and fearsome to students, especially to kids. In most cases this results reluctance and uptake, while programming is the core of modern technology. Game is the signature of immersion. With its intense power of engaging players, it can wipe out the aversion and motivate students on coding. Here we have described a better way of learning programming...
A study of educational approaches to higher education computing curricula using publicly available data from a representative sample of 27 public colleges in the State University of New York (SUNY) system is performed. Data and text analysis techniques were applied to a corpus built from course descriptions and listed prerequisites across school, department, school type (2- or 4- year or graduate)...
Computer Science (CS) seems to be everywhere - in our smartphones, apps, cars, watches and so much more. It is integrated into almost every discipline and has a growing importance in our daily lives, yet even with top salaries, exciting companies, and promising careers, the job market remains underpopulated and under-representative of women. Though its applications are everywhere, CS is an often misunderstood...
A MapReduce system gradually becomes a popular platform for developing cloud applications while MapReduce is the de facto standard programming model of the applications. However, a MapReduce system may suffer intermediate data skew to degrade performances because input data is unpredictable and the Map function of the application may generate different quantities of intermediate data according to...
Teachers' role in 21st century is undergoing a transition from the orthodox ‘chalk and talk’ method to a student-centered, activity-based approach that maximizes students' active-learning opportunities and engages them to solve various problems. Teachers play an important role in today's technology-rich classrooms that significantly affect students' learning. For this reason it is time for the students,...
In this article, we have argued that a programming language can be improved for both teaching and learning by extracting its simpler subset, and by enforcing some useful constraints. We have further chosen a well known first programming language C++, and have defined its pedagogically effective subset, named Eazy, for teaching a first course in computer programming, generally known as CS1. In order...
Bilevel programming deals with hierarchical decision processes with two decision levels, in which the upper level (leader) and the lower level (follower) decision makers control different sets of variables and pursue different objective functions. The problem is even more complicated when multiple objective functions are considered in the lower level (semivectorial bilevel problem) since a set of...
Notations and techniques from discrete mathematics play an important role in computer science. In this paper, by applying the concatenation of some restricted lattice paths, we derive the combinatorial interpretations of several identities.
A process graph is a graph designed to visually explain the action of programs which make use of the fork and wait system calls. We outline a tool that automatically generates process graphs for a class of C programs. The key idea behind our tool is to use a program's control flow graph (CFG) to determine its process graph.
For linear time-invariant systems with nonnegative impulse responses, much research has been devoted to studying their positive realizations. However, the limitations in the eigenvalue positions of positive systems suggest that they are not adequately powerful as a modeling tool. Thus in this paper we propose a more powerful projected spectrahedral cone-invariant (PSCI) realization of a system with...
Scientific applications (SciApps) are broadly used in all science domains. For more accurate results, they have been increasingly demanding computational power and extremely agile networks. These applications are usually implemented using numerical methods presenting well-behaved patterns to exchange data across its computing nodes. This paper presents SpateN, a tool that exploits the spatial communication...
Computer programming courses are major contributor to non-passing rates and teaching the subject is significantly challenging. MOOC (Massive Open Online Course), a web-based LMS providing online courses, is a new popular learning media expected to facilitate better teaching-learning process for improving learning outcomes. Unfortunately, most of the current MOOCs are intended only for non-vocational...
Podaj zakres dat dla filtrowania wyświetlonych wyników. Możesz podać datę początkową, końcową lub obie daty. Daty możesz wpisać ręcznie lub wybrać za pomocą kalendarza.