首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
The Software Engineering Institute published the last reference curriculum for a master's in software engineering in 1991. In 2007, a coalition from academia, industry, and government began creating a new reference curriculum. An early step was to establish a baseline of graduate education by surveying 28 master's programs in software engineering. The survey was largely limited to US schools. Key findings showed that the universities viewed software engineering largely as a specialization of computer science, that faculty size is generally small with few dedicated professors, and that new master's programs continue to start despite the decrease in computer science majors over the past few years. We used the IEEE Computer Society's Software Engineering Body of Knowledge (SWEBOK) to structure our analysis of the 28 curricula, focusing primarily on courses and topics required or semirequired of all students. (A course is semirequired if there is at least a 50 percent chance a student must take it.) Major findings show wide variation in the depth and breadth of SWEBOK coverage in required and semirequired courses, less than 40 percent of all programs requiring an introductory course on software engineering, and many universities having required and semirequired courses that are peripheral to SWEBOK.  相似文献   

2.
Software engineering education has a 30-year history. It is a story of academics struggling to fulfill industry needs with almost no support from computer science curriculum designers. It is a story of industry finally winning over some of academia to teach software engineering rather than vanilla computer science. It is a story of a discipline still incomplete, but having made great strides in the last decade. This paper discusses the succeeding eras of software engineering education, from lone teachers to master's curricula to undergraduate degree programs. Even though the maturity of the discipline is as yet unattained, it will achieve adult status through practice, not by waiting for academia to glacially catch up.  相似文献   

3.
Since the early 1980s, the University of New Mexico (UNM) has been increasingly active in the area of manufacturing engineering and robotics research and education. Six robotics and manufacturing laboratories devoted to research and instruction have been established. Many PhD and master's students use these facilities in their research, and instructional programs have been established at the undergraduate and graduate level in both the Mechanical Engineering and Electrical and Computer Engineering Departments.Notably, a master's level program was established in 1987 with participation from two universities, UNM and New Mexico State University. Active collaboration is the mode of operation between the College of Engineering and the Robert O. Anderson Schools of Management at UNM in the manufacturing program, a program in total quality management, and in the establishment of a computer-integrated manufacturing program and laboratory through IBM's CIM in Higher Education Alliance.This paper describes these programs in detail, and discusses some approaches and future plans.  相似文献   

4.
Kelly  D. Shepard  T. 《Software, IEEE》2004,21(2):46-48
Software engineering is still a young discipline. Software development group managers must keep their groups current with this dynamic body of knowledge as it evolves. There are two basic approaches: require staff to have both application expertise and software expertise, or create a software cell. The latter approach runs the risk of two communities not communicating well, although it might make staying abreast of changes in software engineering easier. The first approach should work better than it does today if some new educational patterns are put in place. For example, we could start treating software more like mathematics, introducing more software courses into undergraduate programs in other disciplines. Managers must also focus on the best way to develop software expertise for existing staff. Staff returning to school for a master's in software engineering can acquire a broad understanding of the field, but at a substantial cost in both time and effort. Short courses call help to fill this gap, but most short courses are skill based, whereas a deeper kind of learning is needed. As the first step, however, managers must assess software's impact on their bottom line deliverables. It might surprise them how much they depend on software expertise to deliver their products.  相似文献   

5.
How might universities organize new lines of business in software engineering professional education? Professional education enables practicing professionals to achieve defined levels of competence and to be certified according to standards in their professions. This kind of education is offered at very few universities. This paper proposes a conceptual framework for designing professional education programs; software engineering is the central example. It suggests a strategy for combining traditional degree programs and professional certificate programs, in any mix suitable for a department and its clientele.  相似文献   

6.
Delivering a software engineering curriculum by distance learning requires innovative and flexible approaches to presenting and managing the learning materials. At the Open University, we've been offering a broadly based master's degree in Computing for Commerce and Industry by distance learning for over 20 years. The Open University's SE curriculum and delivery mechanisms are shaped by its commitment to offering professionally accredited part-time, open, and large-scale distance learning primarily aimed at IT practitioners  相似文献   

7.
As technological tasks in CIM environments become more complicated, the level of intelligence required to automate and integrate these tasks also evolves with increasing complexity. This paper classifies CIM tasks and their required intelligence into facility, data and decision levels, and discusses the automation and integration of those knowledge-intensive CIM tasks at their decision level. Since decision-level tasks are often more abstract than those at the facility and data levels, a systematic approach is necessary to build research programs for the automation of these tasks. This paper will use the decision-level task of concurrent engineering as an example to explain the five-step approach that we have adapted to form our research programs in this evolving area of CIM research. These five steps are: (1) perform analysis of the task and its needed decision-level supports, (2) conceptualize these analysis results into a concise framework, (3) propose a software paradigm for the conceptual framework, (4) identify functional requirements from this paradigm to guide software implementations, and (5) correlate implementation results to identify a fundamental technology. More specifically, the analysis of concurrent engineering tasks in CIM can be found in Section 2. Section 3 explains the conceptualization process which views decision making activities as mappings and loops between a control and performance space. In Section 4, concurrent engineering is modeled as a team problem-solving process participated in by multiple cooperating knowledge sources (MCKS) with overlapping expertise to perform those loops. Several functional requirements are identified from this MCKS model of concurrent engineering and example research activities to address these challenges are described in Section 5. The correlations in Section 6 indicate that the knowledge processing technology, evolved from applied artificial intelligence research, is a fundamental technology for building intelligent systems to support various knowledge-intensive CIM tasks at their decision level.  相似文献   

8.
Much has been written about software engineering programs from the viewpoint of the academician, but do these programs really reflect the need of industry? This paper provides some insight into the needs of practicing software engineers at Texas Instruments who are developing software according to military specifications and requirements for embedded real-time systems. The needs of our environment are compared to the entering skills of a typical newhire, with the differences noted. These differences can be satisfied by internal training that covers all aspects of software engineering, from communicating with co-workers to understanding the system life cycle.  相似文献   

9.
Nonprofessional end user programs have increased remarkably in volume and diversity. However, for such programs to be usable and reliable, their creators should be familiar with software engineering practices that are typically not part of their range of competence and source of enjoyment. While the expansion of computational thinking acquisition (CTA) initiatives at schools and the availability of improved programming environments have contributed to facilitate the learners’ coding tasks, much less has been done to facilitate the acquisition of software quality notions. This paper reports on a Brazilian CTA program guided by semiotic principles and describes a study of how the technology used in it prefigures elements of software engineering in the participants’ programs created with AgentSheets. Our research contributions touch on the semiotic potential of CTA infrastructures and on associated pedagogical considerations for expanding CTA programs with software engineering basics. We also propose items for an interdisciplinary research agenda.  相似文献   

10.
应用型软件工程教学团队建设方案   总被引:2,自引:2,他引:0  
从应用性教学定位出发,总结以往软件工程教学的经验,提出一套操作性强、行之有效的软件工程教学团队建设方案,从师资建设、教学安排、特色实训环节等方面阐述团队建设的实践经验,提出教学团队指导项目小组接受完整软件工程训练的一系列方法和措施,并对今后的改革方向做进一步思考。  相似文献   

11.
Generic software such as spreadsheet and data base programs provide utilities that can be used to construct routines for various applications. The specific used is determined by the user. Generic software allows interactive programming and data manipulation. These programs have dramatically changed the everyday use of microcomputers by creating an easy and flexible interace ofr inexperienced computer users to create their own user defined routines without requiring any formal programming skills. Data entry and retrieval are extremely easy, as well as transfer of data between different software packages. This paper review some of the commonly used generic software packages, focusing on spreadsheets, data base programs, and integrated software packages for IBM PC compatible microcomputers.Several commercial programs, varying in price and capability, are evaluated to determine their applicability in environmental engineering calculations Evaluations were made in terms of the potential use in engineering calculations and other applications, the mathematical capacity, speed of calculations, versatility, and user friendliness. Data transfer between different programare extremely crucial for engineering applications. It is achieved by using “standard” file formats, such as SIF and DIF files.  相似文献   

12.
Coordinated programs of education are a powerful engine for social change. That is where the parallel between the evolution of software engineering education and the emerging discipline of cybersecurity is so instructive. This article traces the development of a commonly accepted curriculum for cybersecurity in reference to the emergence of software engineering as an academic discipline. Based on the parallels, it is concluded that cybersecurity is presently at an encouraging watershed.  相似文献   

13.
Millions of people program to support their work but don't call themselves programmers. The field of end-user software engineering is concerned with helping these people create reliable, dependable, and reusable programs, without distracting them from their primary tasks. This special issue of IEEE Software presents a selection of research from this field, providing a glimpse of some of the exciting advances made in past 10 years of research and development.  相似文献   

14.
Poore  J.H. 《Computer》2004,37(1):30-36
Circuit engineering is a discipline that has done the job right, and genetic engineering is at least trying to do the job right. Both have managed vast complexity and achieved a high level of public trust. Software engineering could take lessons from either discipline, and this is not simply an academician's lament; the cost of software is enormous and risk to public safety daunting. Many of us regard the 1968 NATO conference as the birth of software engineering, which was then regarded as the design of computer programs and software-intensive systems within a performance, quality, and economical framework. Like circuit and genetic engineers, software engineers should look first to the underlying science for vocabulary, methods and tools. Software is the hope and means for progress in science and in better industrial products, yet software engineering seems to be languishing in a dark prison of its own making. Professional societies, industry associations and government regulators must certify products in narrow specializations. Programming language compilers is an area that is sufficiently mature to support effective certification protocols. The software field must find a way to bind university preparation with industry practice.  相似文献   

15.
Requirements engineering for market-driven software development entails special challenges. This paper presents results from an empirical study that investigates these challenges, taking a qualitative approach using interviews with fourteen employees at eight software companies and a focus group meeting with practitioners. The objective of the study is to increase the understanding of the area of market-driven requirements engineering and provide suggestions for future research by describing encountered challenges. A number of challenging issues were found, including bridging communication gaps between marketing and development, selecting the right level of process support, basing the release plan on uncertain estimates, and managing the constant flow of requirements.  相似文献   

16.
苏铭  宋宗宇  赵荣彩 《计算机应用》2006,26(5):1167-1170
投机机制通过改善内存操作效能提高程序的执行性能,但是它需要大量复杂的代码处理投机失败及恢复,增加了程序的理解和投机代码再工程的复杂性。文中提出了一个算法,在安腾的二进制代码中消除投机指令并保证程序的语义,使得投机消除后的程序更容易理解,更易于应用传统逆向工程的技术进行代码再工程。  相似文献   

17.
Machine learning deals with the issue of how to build programs that improve their performance at some task through experience. Machine learning algorithms have proven to be of great practical value in a variety of application domains. They are particularly useful for (a) poorly understood problem domains where little knowledge exists for the humans to develop effective algorithms; (b) domains where there are large databases containing valuable implicit regularities to be discovered; or (c) domains where programs must adapt to changing conditions. Not surprisingly, the field of software engineering turns out to be a fertile ground where many software development and maintenance tasks could be formulated as learning problems and approached in terms of learning algorithms. This paper deals with the subject of applying machine learning in software engineering. In the paper, we first provide the characteristics and applicability of some frequently utilized machine learning algorithms. We then summarize and analyze the existing work and discuss some general issues in this niche area. Finally we offer some guidelines on applying machine learning methods to software engineering tasks and use some software development and maintenance tasks as examples to show how they can be formulated as learning problems and approached in terms of learning algorithms.  相似文献   

18.
SE2004: Recommendations for Undergraduate Software Engineering Curricula   总被引:1,自引:0,他引:1  
Universities throughout the world have established undergraduate programs in software engineering, which complement existing programs in computer science and computer engineering. To provide guidance in designing an effective curriculum, the IEEE Computer Society and the ACM have developed the Software Engineering 2004 (SE2004) set of recommendations. The SE2004 document guides universities and colleges regarding the knowledge they should teach in undergraduate software engineering programs. It also provides sample courses and curriculum patterns. SE2004 begins with an overview of software engineering, explaining how it is both a computing and an engineering discipline. It then outlines the principles that drove the document's development and describes expected student outcomes. Next, SE2004 details the knowledge that universities and colleges should teach, known as SEEK (software engineering education knowledge), in a software engineering program. These recommendations are followed by general pedagogical guidelines, sample courses, and sample curriculum patterns  相似文献   

19.
Many universities and colleges, throughout the world, that deliver undergraduate programmes in science and engineering are currently incorporating virtual instruments as teaching, measurement and analysis tools for student learning. The aim of this study is to enhance the learning experience of undergraduate engineering students and stimulate their research interests by incorporating hands-on, hardware linked programming. The framework for the current research consisted of, initially, observing and recording the interest students showed in a graphical-based computer language for programming control and data acquisitions. Secondly, in the software laboratory sessions, the students were introduced to the concept of research activity and the use of computer software in such activity. LabVIEW™, an easy-to-use, interactive, graphical programming language that can be used to build virtual instruments was used in the current study. This software allows creation of sophisticated programs and applications in a shorter amount of time without needing an in-depth knowledge of computers or indeed programming languages. The methodology consisted of an introductory learning period for the LabVIEW™ programming language, followed by hands-on programming with a specific set of laboratory exercises aimed at solving typical industrial automation type problems. Finally the results of a detailed student questionnaire and created programs were analysed to establish the learning experiences. It was established that student experiences in designing and developing LabVIEW™ programs with associated hardware has hugely stimulated their interest and enthusiasm in the subject of industrial automation. Students acquired knowledge by direct experience, explored phenomena, visualized expected outcomes and experimented with possible solutions. Critically, the LabVIEW programming laboratory sessions undertaken during the course of this research has stimulate students interest in pursing further research at post-graduate level.  相似文献   

20.
目前软件产品线技术极大地提高了软件复用的层次,在软件产品线工程中,可变性作为产品的特殊属性涉及到分析、设计和实现的全部阶段。在分析软件产品线可变性的类型、模式,约束依赖关系基础上,总结目前常用的几种可变性的实现技术,包括预处理指令、面向对象、软件配置等软件技术,特别是面向对象和面向切面技术的结合,分析各种实现技术的适用情况,最后针对一个常见的图书馆信息管理系统,根据用面向特征建模方法建立的可变性模型,给出两个可变点的具体实现实例。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号