372,428 research outputs found

    Software Quality in Academic Curriculum: A Case Study in Turkey

    Get PDF
    A variety of courses are taught in the undergraduate programs of computer science, computer engineering, software engineering and information system engineering. The preferred choices of the software industry are for hiring engineers for their companies from these disciplines, related to this fact, the emphasis on quality in software given to the associated departments' students, hence on quality objectives in software process, are studied. With this aim, a survey of the curricula of these branches in the top ten Turkish universities is undertaken. Our observations show software quality is not considered commonly as a core course except in software engineering, while the computer engineering departments provide the majority of the graduates to the industry. The results may be interpreted as suggesting that a reason for loose monitoring of standards in the software industry may be associated with this observation because graduates with transcripts on quality are few in number

    Software Engineering Education in the Associate-Degree-Level Vocational/Technical Computer Science Program

    Get PDF
    The need for software engineers has grown with the increased use of software and computers in our society. Presently, formal education of software engineers is being conducted at the graduate degree level. There are pressures to extend this education to other academic levels; in fact, many baccalaureate degree programs today include one or more software engineering courses. Difficulties confronting software engineering education at the associate degree level include: limited educational and experience backgrounds of the students; faculty whose own education did not include software engineering; and severe time and content constraints imposed on such two-year programs. The author concludes that the two-year associate-degree-level vocational/technical computer science program should continue to focus on producing graduates with sound programming and problem solving skills. Once these graduates gain entry-level employment, they can then build upon these fundamental skills, with experience and further education, toward a software engineering career. Software engineering education in the two-year vocational/technical program, therefore, should be restricted to that which directly enhances the development of these basic skills; specific recommendations are offered for consideration

    Optimize task distribution in grid computing

    Get PDF
    This thesis report is submitted in partial fulfillment of the requirements for the degree of Bachelor of Science in Computer Science and Engineering, 2008.Cataloged from PDF version of thesis report.Includes bibliographical references (page 73).Grid computing is designed to use free cycles of computer to perform large calculations by using free cycles of computer. Grid computing does not need dedicated computers to perform calculations instead it uses free cycles of computer in a network. It works like a virtual super computer, but it doesn’t involve extra hardware cost. As, it’s a cost effective its popularity is increasing day by day. Now a day’s popular applications are being made to support grid computing. For example Oracle database 10g is designed to support grid computing. Although grid computing is so popular, but implementing software for grid based system is tough. It needs task distribution among computers. So it uses different programming techniques and needs to use special API. The software we are currently using may not support grid environment. Software companies need to convert their programs to support grid environment that involves development cost. On other hand users are not able to use their current software in grid environment. So, they need to buy another program that involves extra cost. The objective of this project is to run traditional programs in grid system without any modification, so that we can run any executable program in grid system with parallel speeding performance. It will increase program compatibility and reduce cost.Shyen Muhabbat ShikderB. Computer Science and Engineerin

    Causality, Information and Biological Computation: An algorithmic software approach to life, disease and the immune system

    Full text link
    Biology has taken strong steps towards becoming a computer science aiming at reprogramming nature after the realisation that nature herself has reprogrammed organisms by harnessing the power of natural selection and the digital prescriptive nature of replicating DNA. Here we further unpack ideas related to computability, algorithmic information theory and software engineering, in the context of the extent to which biology can be (re)programmed, and with how we may go about doing so in a more systematic way with all the tools and concepts offered by theoretical computer science in a translation exercise from computing to molecular biology and back. These concepts provide a means to a hierarchical organization thereby blurring previously clear-cut lines between concepts like matter and life, or between tumour types that are otherwise taken as different and may not have however a different cause. This does not diminish the properties of life or make its components and functions less interesting. On the contrary, this approach makes for a more encompassing and integrated view of nature, one that subsumes observer and observed within the same system, and can generate new perspectives and tools with which to view complex diseases like cancer, approaching them afresh from a software-engineering viewpoint that casts evolution in the role of programmer, cells as computing machines, DNA and genes as instructions and computer programs, viruses as hacking devices, the immune system as a software debugging tool, and diseases as an information-theoretic battlefield where all these forces deploy. We show how information theory and algorithmic programming may explain fundamental mechanisms of life and death.Comment: 30 pages, 8 figures. Invited chapter contribution to Information and Causality: From Matter to Life. Sara I. Walker, Paul C.W. Davies and George Ellis (eds.), Cambridge University Pres

    Software Engineering I: Teaching Challenges

    Get PDF
    The term software engineering can be traced to the late 1960s in response to large-scale, software development problems. Since then it has evolved as a discipline, both within industry and the academy. There have been distinct educational successes: “Standard practice” has matured (and found its way into more textbooks),the ACM and IEEE Computer Society have published curriculum guidelines, computer science programs commonly offer at least one software engineering course, and software engineering degrees (undergraduate or graduate) are more common. However, software engineering still presents a challenge. The term itself has become contorted by companies (and society in general); software has become far more diverse (along with the environments in which software engineers work); industrial software processes are not easily replicated in the classroom; what students are expected to know (once they are employed) has expanded significantly; software tools change rapidly (affecting student expectations); and the discipline involves far more than “good program-ming” (or a large programming project). This talk describes these challenges – and suggestions for dealing with them – in light of my 30 years teaching software engineering in a university

    Using Personas to Guide Education Needs Analysis and Program Design

    Get PDF
    The undergraduate programs within electrical engineering, computer science and engineering and software engineering at Chalmers are currently under revision. Some notable problems for these programs are the long-term trends of diminishing number of applications and a low share of female students. This paper first describes the stakeholder’s needs analysis phases of the project, where current occupational roles for these types of engineers were mapped out in order to find out what knowledge skills and attributes that are necessary to work as an engineer in this field. These occupational roles were then used to guide the program concept design phase of the project. As the number of occupational roles is large, a persona methodology was used to gather all the necessary information into a graspable format. Personas have for a long time been used in e.g. software development for describing users/customers. We adapted this methodology to describe the future professional roles of engineering graduates. The personas were based on information gathered through workshops with Chalmers staff and representatives from the local business sector, alumni surveys and observational journals from working engineers as well as documentation from different organizations on the future demands on engineers. The paper then describes the program concept design phase of the project, where the personas were used as reminders for the design team that the roles for engineers at work are broad and contain many tasks and aspects that are traditionally not covered in engineering education. These many tasks need to be considered in the curriculum. In particular, the personas were helpful in the work of designing new and more diverse profiles at the bachelor level. In addition, the personas work, which was performed rather broadly across the departments involved in these five programs, has served as a basis for making the premises for the succeeding revision well known across the organization

    IT Systems Development: An IS Curricula Course that Combines Best Practices of Project Management and Software Engineering

    Get PDF
    Software Engineering in IS Curricula Software engineering course is taught to higher education students majoring in Computer Science (CS), Computer Engineering (CE), and Software Engineering (SE). Software engineering course is also taught in other disciplines, either as a mandatory or as an elective course, such as Information Systems (IS). IS is a broader field than CS and includes parts of CS. IS fie ld could be described as an interdisplinary field that studies the design and use of information systems in a social context. As noted in IS2002 model curricula (Gorgone et al., 2002) , IS as a fie ld of academic study exists under a variety of at least thirteen (13) different curricula, including Information Systems, Management Information Systems, Computer Information Systems, Information Management, Business Information Systems, Informatics, Information Resources Management, Information Technology, Information Technology Systems, Information Technology Resources Management, Accounting Information Systems, Information Science, and Information and Quantitative Science. The author\u27s early experience was that teaching IS students a software engineering course in the same way as CS students was not successful. This is mainly because IS students have significantly less background in programming than CS students. This experience encouraged him to accommodate topics on project management and SE best practices lab using Rational Suite Enterprise (Rational Suite Enterprise, 2008). This new approach was relevant to IS curricula and with accordance with IS2002.10 project management and practice course guidelines. Hilburn, Bagert, Mengel, & Oexmann (2008) proposed that several computing associations including the Association of Computing Machinery (ACM), the IEEE Computer Society (IEEECS), and the Computer Sciences Accreditation Board (CSAB) have provided encouragement, support, and guidance in developing quality curricula that are viable and dynamic. However, most computing programs still devote little time to software life cycle development, software processes, quality issues, team skills, and other areas of software engineering essentials to effective commercial software development. Hence, new graduates know little about what are best practices in software engineering profession (e.g., practices related to use of software processes, team building, front-end development). Therefore, it is the role of faculty members teaching such courses to redesign and implement curricula that focus on practice of software engineering, and other related issues. This paper is organized as follows: Section 2 presents arguments for the alternative approach. Section 3 presents IS2002.10 course specifications. Section 4 presents IS software engineering body of knowledge. Section 5 presents the project component, Section 6 presents a mapping from IS2002.10 course specification onto the IS software engineering course. Section 7 presents evaluation of the proposed approach. Finally, conclusions are presented in Section 8. Why IT Systems Development Course? We have taught the IT Systems Development course to IS students for seven years, and we believe we hit upon an approach that works. Instead of trying to instruct students in theory of various techniques, we teach them what we believe of as software development. From the management side IS students are expected to deal with non-technical challenges arising from project situations, including understand project domain and requirements, how to be a team player, how to schedule work between team members, and how to cope with time pressures and hard deadlines. As indicated by (Weaver, 2004), students often have limited experience in projects management. They do not appreciate the need for planning and take more time than anticipated to complete tasks. We have developed the creation of a set of guidelines for accommodating topics on project management to help students deal with non-technical issues of software development.

    On the definition of quantum programming modules

    Get PDF
    There are no doubts that quantum programming and, in general, quantum computing, is one of the most promising areas within computer science and one of the areas where most expectations are being placed in recent years. Although the days when reliable and affordable quantum computers will be available is still a long way off, the explosion of programming languages for quantum programming has grown exponentially in recent years. The software engineering community has been quick to react to the need to adopt and adapt well-known tools and methods for software development, and for the design of new ones tailored to this new programming paradigm. However, many key aspects for its success depend on the establishment of an appropriate conceptual framework for the conception and design of quantum programs. This article discusses the concept of module, key in the software engineering discipline, and establishes initial criteria for determining the cohesion and coupling levels of a module in the field of quantum programming as a first step towards a sound quantum software engineering. As detailed in the article, the conceptual differences between classical and quantum computing are so pronounced that the translation of classical concepts to the new programming approach is not straightforward.This research was funded by Fundación Séneca, Agencia de Ciencia y Tecnología de la Región de Murcia under the ‘Excelence Group Program 19895/GERM/15’

    The Influence of Message Framing on Engagement with a Mobile Application for Motivating Exercise

    Get PDF
    Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2011.Cataloged from PDF version of thesis.Includes bibliographical references (p. 21).Mobile phone personal health monitoring software is designed to help people monitor and change their behavior. Exercise applications may measure heart rate, temperature, distance traveled, and movement. Although some of these programs incorporate behavioral theories to motivate engagement and behavior change, it is not yet clear that the devices can maintain engagement long term for individuals who are not strongly inclined to exercise already. If people do not use health apps for long periods of time - weeks, months or years instead of days - there are unlikely to be long-term health benefits. This paper describes a new mobile health application designed to motivate exercise via brisk walking: MyWalk. MyWalk delivers timely, tailored feedback messages intended to persuade additional brisk walking. An experiment was conducted to explore how message framing impacts application usage using participants who downloaded the application from an online app store. Author Keywords: Engagement, Health, Mobile, Phone, Pervasive Technology, Reinforcement, Personal Health Informatics, Design, Human-Computer Interaction. ACM Classification Keywords H5.m. Information interfaces and presentation (e.g., HCI): Miscellaneous.by Anh Dang-Viet Nguyen.M.Eng

    Analysing Popularity of Software Testing Careers in Canada

    Get PDF
    Software testing is critical to prevent software failures. Therefore, research has been carried out in testing but that is largely limited to the processand technology dimensions and has not sufficiently addressed the human dimension. Even though there are reports about inadequacies of testing professionals and their skills, only a few studies have tackled the problem. Therefore, we decided to explore the human dimension. We started with the basic problem that plagues the testing profession, the shortage of talent, by asking why do students and professionals are reluctant to consider testing careers, what can be done about that, and is the problem specific to locales or spread across the globe? This paper focusses on these questions. The study was carried out in one college in Canada and its findings are compared with a college in India. Studies in more colleges is required to develop acceptable national views. It also may help to study this phenomenon in more countries and develop global perspectives on the issue. However, the study certainly offers useful insights and helps educators and industry leaders to come up with an action plan to change the outlook towards testers in industry and in computer science and software engineering programs, and put the software testing profession under a new light. That could increase the number of software engineers deciding on testing as a career of their choice, could increase the quality of software testing, and improve the overall productivity, and turnaround time of software development activity
    corecore