首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 609 毫秒
1.
How higher-education systems influence software engineering degree programs   总被引:1,自引:0,他引:1  
Over the last few years, many members of the software development community have advocated that software engineering should be underpinned as an independent profession. A prerequisite for this professionalization is the establishment of specific elements such as accreditation, certification, licensing, and an adequate education for future professionals. SE teaching has certainly undergone a series of changes over recent years. Traditionally, students gained SE knowledge mainly in postgraduate programs. A trend toward explicitly including this knowledge in undergraduate programs started as computer science programs began incorporating some SE knowledge as compulsory subjects. Furthermore, SE-specific programs have proliferated in several countries, such as the US, the UK, Australia, and Canada. Although these programs focus on SE knowledge, they might also offer electives related to advanced CS knowledge, depending on the university. After analyzing Australian, Canadian, European, and US HEI's we conclude that the primary cause of this difference in proliferation of SE programs in the organization of these countries' higher-education system. We also determine that these organizational differences don't generally affect the amount of SE knowledge that student's receive.  相似文献   

2.
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  相似文献   

3.
The object-oriented paradigm in software engineering provides support for the construction of modular and reusable program components and is attractive for the design of large and complex distributed systems. Reachability analysis is an important and well-known tool for static analysis of critical properties in concurrent programs, such as deadlock freedom. It involves the systematic enumeration of all possible global states of program execution and provides the same level of assurance for properties of the synchronization structure in concurrent programs, such as formal verification. However, direct application of traditional reachability analysis to concurrent object-oriented programs has many problems, such as incomplete analysis for reusable classes (not safe) and increased computational complexity (not efficient). We propose a novel technique called apportioning, for safe and efficient reachability analysis of concurrent object-oriented programs, that is based upon a simple but powerful idea of classification of program analysis points as local (having influence within a class) and global (having possible influence outside a class). We have developed a number of apportioning-based algorithms, having different degrees of safety and efficiency. We present the details of one of these algorithms, formally show its safety for an appropriate class of programs, and present experimental results to demonstrate its efficiency for various examples  相似文献   

4.
In this paper we try to introduce a new approach to operational semantics of recursive programs by using ideas in the“priority method”which is a fundamental tool in Recursion Theory.In lieu of modelling partial functions by introducing undefined values in a traditional approach,we shall define a priority derivation tree for every term,and by respecting thr rule“attacking the subtem of the highest priority first”we define transition relations,computation sequences etc.directly based on a standard interpretation whic includes no undefined value in its domain,Finally,we prove that our new approach generates the same opeational semantics as the traditional one.It is also pointed out that we can use our strategy oto refute a claim of Loeckx and Sieber that the opperational semantics of recursive programs cannot be built based on predicate logic.  相似文献   

5.
Toth  K. 《Software, IEEE》2006,23(6):44-52
For software engineering (SE) and computer science (CS) programs to deliver on their promises, they must go beyond teaching students about principles, processes, models, and strategies and offer them realistic, practical experience as well. Although industry has been pressing to increase the emphasis on practical aspects, many CS programs continue to give students relatively simple problems focused on selected computing and software concepts and theories. Open source software offers CS and SE educators an opportunity to give their students practical, hands-on software engineering experience  相似文献   

6.
7.
Software engineering programmes are not computer science programmes   总被引:1,自引:1,他引:0  
Programmes in Software Engineering have become a source of contention in many universities. Some Computer Science departments, many of which have used that phrase to describe individual courses for decades, claim software engineering as part of their discipline. However, Engineering faculties claim Software Engineering as a new speciality in the family of engineering disciplines. This paper discusses the differences between traditional computer science programmes and most engineering programmes and argues that we need programmes that follow the traditional engineering approach to professional education and educate engineers whose speciality within engineering is software construction. One such programme is described.  相似文献   

8.
The computer programs which are the subject of this paper are those which have been developed by private organizations and for usage of which a fee has to be paid.These programs as well as all engineering programs may be classified into three types: Artisan, Academic and Engineering. Artisan type programs are those which consist of computarization of old manual methods. Academic type programs are those which consist of computerization of advanced theoretical methods for a refined analysis, or for an exact optimization, or for an interactive design. Engineering type programs are those which consist of a combination of some features of the two previous types in order to design the lightest structures capable of supporting the governing combination of loading conditions and satisfying the pertinent Building Code criteria.The paper discusses each of these three program types and describes in some detail a few cases of application of engineering type programs.  相似文献   

9.
Program slicing identifies parts of a program that potentially affect a chosen computation. It has many applications in software engineering, including maintenance, evolution and re-engineering of legacy systems. However, these systems typically contain programs with unstructured control-flow, produced using goto statements; thus, effective slicing of unstructured programs remains an important topic of study.This paper shows that slicing unstructured programs inherently requires making trade-offs between three slice attributes: termination behaviour, size, and syntactic structure. It is shown how different applications of slicing require different tradeoffs. The three attributes are used as the basis of a three-dimensional theoretical framework, which classifies slicing algorithms for unstructured programs. The paper proves that for two combinations of these dimensions, no algorithm exists and presents algorithms for the remaining six combinations.  相似文献   

10.
Thompson  J.B. Reed  K. 《Software, IEEE》2005,22(6):96-97
Undergraduate software engineering education is now well established in many countries, and many of these degree programs have received formal accreditation by the relevant country's professional body for computing. SE 2004 represents an enormous effort by numerous individuals across the discipline. Its quality has been clearly recognized by the sponsoring organizations. The developmental team confidently looks forward to the volume's use and to your participation in future evaluations and in the next phase of development. The volume provides usable results for those in emerging economies who wish to enter the software engineering community, and we know that individual project members and the participating national bodies are ready to assist.  相似文献   

11.
程序分片是一种有效的程序分析技术,它能根据给定的分片准则从源程序中提取出所需部分进行分析,如进行程序调试、测试、程序重构分析等。程序分片技术在结构化程序中已有较广泛的应用,但对于面向对象语言程序,其研究与应用还存在一些待解决的问题。针对面向对象语言程序,提出了一种改进后的系统依赖图:ISDG,用来更好地表示面向对象程序中的依赖关系,从而解决了对象类型参数和属性的表示问题。基于ISDG模型,提出了一种新的面向对象语言程序的分片准则,以度相应的分片算法。  相似文献   

12.
Demand forecasting is a fundamental component in a range of industrial problems (e.g., inventory management, equipment maintenance). Forecasts are crucial to accurately estimating spare or replacement part demand to determine inventory stock levels. Estimating demand becomes challenging when parts experience intermittent demand/failures versus demand at more regular intervals or high quantities. In this paper, we develop a demand forecasting approach that utilizes Bayes’ rule to improve the forecast accuracy of parts from new equipment programs where established demand patterns have not had sufficient time to develop. In these instances, the best information available tends to be “engineering estimates” based on like /similar parts or engineering projections. A case study is performed to validate the forecasting methodology. The validation compared the performance of the proposed Bayesian method and traditional forecasting methods for both forecast accuracy and overall inventory fill rate performance. The analysis showed that for specific situations the Bayesian-based forecasting approach more accurately predicts part demand, impacting part availability (fill rate) and inventory cost. This improved forecasting ability will enable managers to make better inventory investment decisions for new equipment programs.  相似文献   

13.
This paper reports on the memory performance of parallel scientific algorithms, written in both pure and impure functional styles. The Id programming language is used, since it allows both pure and impure parallel functional programs to be expressed. The non-strict storage model of Id is introduced. The study focuses on two algorithms: the Dongarra Sorensen Eignensolver and the NAS FT three dimensional heat equation solver, based on FFTs.This study verifies the claim that functional languages allow a composition of programs from modules, exploiting the inter- and intra-module parallelism without the need for rewrinting these modules. But it also shows that memory use of pure functional programs can be excessive, and theat impure functional programs can be as memory-efficient as imperative implementations.  相似文献   

14.
Software engineering programs: dispelling the myths and misconceptions   总被引:1,自引:0,他引:1  
New software engineering programs are popular but controversial, and they have been the subject of much hype. The article addresses the academic considerations involved in developing software engineering programs, describing seven common myths about software engineering and shedding light on the tradeoffs and decisions required.  相似文献   

15.
16.
Adapting functional programs to higher order logic   总被引:1,自引:0,他引:1  
Higher-order logic proof systems combine functional programming with logic, providing functional programmers with a comfortable setting for the formalization of programs, specifications, and proofs. However, a possibly unfamiliar aspect of working in such an environment is that formally establishing program termination is necessary. In many cases, termination can be automatically proved, but there are useful programs that diverge and others that always terminate but have difficult termination proofs. We discuss techniques that support the expression of such programs as logical functions. Electronic Supplementary Material  The online version of this article () contains supplementary material, which is available to authorized users.  相似文献   

17.
MRPM: three visual basic programs for mineral resource potential mapping   总被引:3,自引:0,他引:3  
A traditional method for mineral resource potential mapping is to superimpose a number of indicator maps, and to combine geological information with or without the use of multivariate statistical models. More recently, GISs have become widely applied in mineral resource assessment and many statistical models for geological information synthesis have been proposed. GIS-based mineral resource potential mapping has facilitated modern mineral resource assessment. As a contribution to publicly available computer software for GIS-based mineral resource assessment, integrated three Visual Basic programs have been developed on MapInfo platform. The programs integrate map patterns using weights of evidence, applied general C-F, and evidence theory models, and generate posterior probability, combined certainty factor, and combined basic probability assignment maps, respectively. The software is demonstrated by a case study based on a real data set.  相似文献   

18.
We describe a programming methodology for computational science based on programming paradigms for multicomputers. Each paradigm is a class of algorithms that have the same control structure. For every paradigm, a general parallel program is developed. The general program is then used to derive two or more model programs, which solve specific problems in science and engineering. These programs have been tested on a Computing Surface and published with every detail open to scrutiny. We explain the steps involved in developing model programs and conclude that the study of programming paradigms provides an architectural vision of parallel scientific computing.  相似文献   

19.
The evaluation of environmentally conscious manufacturing programs is similar to many strategic initiatives and their justification methodologies. This similarity arises from the fact that there are multiple factors that need to be considered, many of which have long-term and broad implications for an organization. The types of programs that could be evaluated range from the appropriate selection of product designs and materials to major disassembly programs that may be implemented in parallel with standard assembly programs. The methodology will involve the synthesis of the analytical network process (ANP) and data envelopment analysis (DEA). We consider some of the more recent modeling innovations in each of these areas to help us address a critical and important decision that many managers and organizations are beginning to face. An illustrative example provides some insights into the application of this methodology. Additional issues and research questions within are also identified.  相似文献   

20.
Saumya K. Debray 《Software》1988,18(9):821-839
Profilers play an important role in the development of efficient programs. Profiling techniques developed for traditional languages are inadequate for logic programming languages, for a number of reasons: first, the flow of control in logic programming languages, involving back-tracking and failure, is significantly more complex than in traditional languages; secondly, the time taken by a unification operation, the principal primitive operation of such languages, cannot be predicted statically because it depends on the size of the input; and finally, programs may change at run-time because clauses may be added or deleted using primitives such as assert and retract. This paper describes a simple profiler for Prolog. The ideas outlined here may be used either to implement a simple interactive profiler, or integrated into Prolog compilers.  相似文献   

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

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