381 |
Patterns of Academic Help-Seeking in Undergraduate Computing StudentsDoebling, Augie 01 March 2022 (has links) (PDF)
Knowing when and how to seek academic help is crucial to the success of undergraduate computing students. While individual help-seeking resources have been studied, little is understood about the factors influencing students to use or avoid certain re- sources. Understanding students’ patterns of help-seeking can help identify factors contributing to utilization or avoidance of help resources by different groups, an important step toward improving the quality and accessibility of resources. We present a mixed-methods study investigating the help-seeking behavior of undergraduate computing students. We collected survey data (n = 138) about students’ frequency of using several resources followed by one-on-one student interviews (n = 15) to better understand why they use those resources. Several notable patterns were found. Women sought help in office hours more frequently than men did and computing majors sought help from their peers more often than non-computing majors. Additionally, interview data revealed a common progression in which students started from easily accessible but low utility resources (online sources and peers) before moving on to less easily accessible, high utility resources (like instructor office hours). Finally, while no differences between racial groups was observed, the lack of diversity in our sample limits these findings.
|
382 |
Secure and Trusted Partial White-box Verification Based on Garbled CircuitsZhong, Hongsheng January 2016 (has links)
Verification is a process that checks whether a program G, implemented by a devel- oper, correctly complies with the corresponding requirement specifications. A verifier, whose interests may be different from the developer, will conduct such verification on G. However, as the developer and the verifier distrust each other probably, either of them may exhibit harmful behavior and take advantage of the verification. Generally, the developer hopes to protect the content privacy of the program, while the verifier wants to conduct effective verification to detect the possible errors. Therefore, a ques- tion inevitably arises: How to conduct an effective and efficient kind of verification, without breaking the security requirements of the two parties?
We treat verification as a process akin to testing, i.e. verifying the design with test cases and checking the results. In order to make the verification more effective, we get rid of the limitations in traditional testing approaches, like black-box and white-box testing, and propose the “partial white-box verification”.
Taking circuits as the description means, we regard the program as a circuit graph. Making the structure of the graph public, we manage to make the verification process in such a graph partially white-box. Via garbled circuits, commitment schemes and other techniques, the security requirements in such verification are guaranteed. / Thesis / Master of Science (MSc)
|
383 |
A metrics study in Virtual RealityRay, Andrew A. 23 August 2004 (has links)
Virtual Reality is a young field and needs more research to mature. In order to help speed the maturity process research was performed to see if knowledge from the domain of software engineering could be applied to the development of Virtual Reality software. Software engineering is a field within computer science that studies how to improve both product and process. One of the sub-fields of software engineering is metrics, which seeks to measure software products and processes. This allows for prediction of certain attributes such as quality. There are several software toolkits that exist in virtual reality that have not had formal software engineering methodologies applied during their development. This research looks at applying knowledge gained from the metrics discipline to the software toolkits used in virtual reality. When metrics are used to measure the toolkits in virtual reality, the metrics seem to behave--produce similar significant correlations--in a similar fashion as when they are applied in previously studied domains. / Master of Science
|
384 |
Optimizing ESRGAN for Mobile Deployment : Enhancing Image Super-Resolution on Android DevicesFredin, Arvid January 2024 (has links)
Rapporten presenterar det arbete som utfördes för en kandidatuppsats i ämnesområdet datavetenskap. Den ursprungliga uppgiften var att undersöka hur djupinlärningsarkitekturen ESRGAN, som används för superupplösning, kan komprimeras så att minimal precision förloras. Projektet resulterade i utvärderingen av tre optimeringsmetoder; dynamic range, full integer och float16-kvantisering. Mätningarna utfördes med hjälp av två mobila enheter; en Samsung Galaxy S9+ surfplatta och en S10+ Android-telefon. Mätningarna genomfördes med hjälp av mätvärdena inferenstid, PSNR, SSIM och kompressionsförhållande. Resultaten visade att Dynamic Range hade en avsevärt långsammare inferenstid jämfört med Full Integer och Float16-kvantisering. Dynamic Range hade ett validerings-PSNR på 27.0 och ett test-PSNR på 22.3. De resulterande SSIM-värdena var 0.81 för valideringsdatasetet och 0.67 för testdatasetet. Full Integer slutade med PSNR-värdena 26.3 och 21.9 för validering respektive test. När det gäller SSIM fick Full Integer poängen 0.77 (validering) och 0.64 (test). Slutligen genererade Float16 PSNR-värdena 27.1 och 22.3, samt SSIM-värdena 0.81 och 0.67. PSNR- och SSIM-utvärderingarna visade att de komprimerade modellerna behövde mer kalibrering för att uppnå högre poäng i dessa metoder, och således högre noggrannhet. / This report presents the work that was carried out for a bachelor’s thesis in computer science. The original task was to investigate how the deep learning architecture ESRGAN used for super resolution can be compressed such that minimal accuracy is lost. The project resulted in the evaluation of three optimization methods; dynamic range, full integer, and float16 quantization. Dynamic range quantizes the weights of the neural network into 8 bits of precision, full integer quantizes all floating point parameters, and float16 reduces halves the floating point precisions. The benchmarks were performed using two mobile devices; a Samsung Galaxy S9+ tablet and an S10+ android phone. Measurements were conducted using metrics inference time, PSNR, SSIM, and compression ratio. The results showed that Dynamic Range had a significantly slower inference time compared to Full Integer and Float16 quantization. Dynamic range had the validation PSNR score of 27.0, and a testing PSNR score of 22.3. The resulting SSIM values were 0.81 for the validation dataset and 0.67 for the testing dataset. Full integer ended up with the PSNR scores 26.3, 21.9 for validation and testing respectively. As for SSIM, Full integer brought the scores 0.77 (validation) and 0.64 (testing). Finally, Float16 generated PSNR scores 27.1 and 22.3, and the SSIM scores 0.81 and 0.67. The PSNR and SSIM evaluations showed that the compressed models needed more calibration for a higher score in these metrics, and consequently a higher level of accuracy.
|
385 |
Modeling Software Developer Expertise and Inexpertise to Handle Diverse Information NeedsClaytor, Frank L. 08 June 2018 (has links)
Expert software developer recommendation is a mature research field with many different techniques being developed to help automate the search for experts to help with development tasks and questions. But all previous research on recommending expert developers has had two constant restrictions. First, all previous expert recommendation work assumed that developers only demonstrate positive expertise. But developers can also make mistakes and demonstrate negative expertise, referred to as inexpertise, and show which concepts they don't know as well. Previous research on developer expertise hasn't taken inexpertise into account. Another restriction is that all previous expert developer recommendation research has focused on recommending developers for a single development task or expertise need, such as fixing a bug report or helping with a change request. But not all expertise needs can be easily classified into one of these groups, and having different techniques for every possible task type would be difficult and confusing to maintain and use. We find that inexpertise exists, can be measured, and that it can be used to direct inspection effort to find potentially incorrect or buggy commits. Additionally we investigate how different expertise finding techniques perform on a diverse set of long and short expertise queries and develop new techniques that can get more consistent cross query performance. / Master of Science / Expert software developers are a useful source of information. There have been many papers that research techniques for recommending expert developers for different tasks and questions. But all previous research on recommending expert developers has had two constant restrictions. First, all previous expert recommendation work assumed that developers only demonstrate positive expertise. But developers can also make mistakes and demonstrate negative expertise, referred to as inexpertise, and show which concepts they don’t know as well. Another restriction is that all previous work on recommending expert developers has focused on recommending developers for a single development task or question. But not all expertise needs can be easily classified into one of these groups, and having different techniques for every possible task type would be difficult and confusing to maintain and use. In our first chapter we show that inexpertise exists, can be measured, and that it can be used to help identify potentially buggy or incorrect code. In the second chapter we investigate how different techniques for finding expert developers perform when evaluated on different kinds of expertise finding tasks to find which technique works well on multiples types of tasks.
|
386 |
Computer aided software engineering.January 1990 (has links)
by Lai Kin Wing. / Thesis (M.B.A.)--Chinese University of Hong Kong, 1990. / Bibliography: leaves 46-47. / Abstract --- p.iii / Table of Contents --- p.iv / List of Exhibits --- p.vi / Chapter / Chapter 1. --- Introduction --- p.1 / Chapter 2. --- Methodology --- p.4 / Chapter 3. --- Computer Aided Software Engineering (CASE) --- p.6 / Chapter 3.1 --- Problems of applications development --- p.6 / Chapter 3.2 --- The promise of CASE technology --- p.8 / Chapter 3.3 --- Components of CASE --- p.11 / Chapter 3.3.1 --- Front-end Analysis and Design --- p.11 / Chapter 3.3.2 --- Back-end Code Generation --- p.14 / Chapter 3.3.3 --- Project Support --- p.15 / Chapter 3.3.4 --- Repository --- p.16 / Chapter 3.3.5 --- Re-engineering --- p.17 / Chapter 4. --- Current offerings in the market --- p.21 / Chapter 5. --- Considerations of implementing CASE products --- p.26 / Chapter 6. --- Acceptance of CASE tools in Hong Kong --- p.30 / Chapter 6.1 --- Questionnaire survey results --- p.30 / Chapter 6.2 --- A caution about the survey questionnaire --- p.41 / Chapter 6.3 --- Some conclusions of the survey --- p.42 / Chapter 7. --- Conclusions and recommendations --- p.44 / Bibliography --- p.46 / Chapter Appendix I : --- Survey questionnaire / Chapter Appendix II : --- List of CASE software products / Chapter Appendix III : --- Product brochure of Information Engineering Workbench / Chapter Appendix IV : --- Product brochure of Bachman / Chapter Appendix V : --- Product brochure of Excelerator / Chapter Appendix VI : --- Companies to which questionnaires were sent / Chapter Appendix VII : --- List of mainframe and mid-range computers / Chapter Appendix VIII : --- Calculation of ratings of CASE success factors
|
387 |
Moops: A web implementation of the Personal Software Process reporting systemGigler, Thomas Russell, III. 01 January 2008 (has links)
The purpose of Moops is to bridge the gap between PSP Scriber, geared very specifically to the CSCI655 class, and other available PSP implications which are so general they are difficult to use immediately without valuable time spent learning the software. Moops is a PHP/MySQL based web application designed to provide the students taking the CSCI655 graduate software engineering course at CSUSB with an intuitive, easy to use tool to implement the Personal Software Process (PSP). Moops eliminates the possibility of errors in calculations by completing all calculations for the user.
|
388 |
The capstone project’s role in transitioning to industry for recently graduated software engineers – A CDIO PerspectiveSmajic, Dennis, Johansson, Filip January 2022 (has links)
The gap between software engineering education and the software engineering industry is a prevalent factor for both the students and the companies recruiting them. The gap is specified as the lack of knowledge software engineering students obtain relative to what the industry requires. This gap increases the difficulty for the students whenmoving from education to industry. This thesis aims to provide insight for what role the capstone project played for the graduate students’ transition to industry by looking at it from a CDIO perspective. The subjects for this research were graduate students who now work in the software engineering industry and who realised their studies up to three years earlier. A total of 38 people took part in this research by answering a questionnaire. They provided their opinions on how they experienced their capstone project and how they now experience their work assignments. This research used metadata to categorically separate the respondents into groups to find outliers. The results show that 94% of the respondents got to perform three or more CDIO criteria in their capstone projects. The respondents also recognize that they are able to perform their industry assignments in terms of the CDIO criteria.
|
389 |
A Tabular Expression Toolbox for Matlab/SimulinkEles, Colin J. 10 1900 (has links)
<p>Model based design has had a large impact on the process of software development in many different industries. A lack of formality in these environments can lead to incorrect software and does not facilitate the formal analysis of created models. A formal tool known as tabular expressions have been successfully used in developing safety critical systems, however insufficient tool support has hampered their wider adoption. To address this shortfall we have developed the Tabular Expression Toolbox for Matlab/Simulink.</p> <p>We have developed an intuitive user interface that allows users to easily create, modify and check the completeness and disjointness of tabular expressions using the theorem prover PVS or SMT solver CVC3. The tabular expressions are translated to m-functions allowing their seamless use with Matlab's simulation and code generation. We present a method of generating counter examples for incorrect tables and a means of effectively displaying this information to the user. We provide support for modelling inputs as floating point numbers, through subtyping a user can show the properness of a table using a more concrete representation of data. The developed tools and processes have been used in the modelling of a nuclear shutdown system as a case study of the practicality and usefulness of the tools.</p> / Master of Applied Science (MASc)
|
390 |
ReMoTe: A complete tool to support software process managementDeMelo, Darrion Todd 01 January 2006 (has links)
The purpose of the project is to provide the Department of Computer Science at California State University, San Bernardino with a software project management tool that will help companies in their software development. ReMoTe (Recursively Estimating Multi-Threaded Observation Technology Enterprise) will assist software engineering teams with defining their scheduled delivery dates, life-cycle definitions, team hierarchy, and communication. Using the object-oriented approach, ReMoTe can support any software life cycle model. ReMoTe can help manage and control the software process over the Web. It also allows people to manage software artifacts using database systems such as mySQL, Microsoft Access, or Oracle.
|
Page generated in 0.0929 seconds