WorldWideScience

Sample records for c1 software engineering

  1. Software engineering

    CERN Document Server

    Sommerville, Ian

    2010-01-01

    The ninth edition of Software Engineering presents a broad perspective of software engineering, focusing on the processes and techniques fundamental to the creation of reliable, software systems. Increased coverage of agile methods and software reuse, along with coverage of 'traditional' plan-driven software engineering, gives readers the most up-to-date view of the field currently available. Practical case studies, a full set of easy-to-access supplements, and extensive web resources make teaching the course easier than ever.

  2. Software engineering

    CERN Document Server

    Sommerville, Ian

    2016-01-01

    For courses in computer science and software engineering The Fundamental Practice of Software Engineering Software Engineering introduces readers to the overwhelmingly important subject of software programming and development. In the past few years, computer systems have come to dominate not just our technological growth, but the foundations of our world's major industries. This text seeks to lay out the fundamental concepts of this huge and continually growing subject area in a clear and comprehensive manner. The Tenth Edition contains new information that highlights various technological updates of recent years, providing readers with highly relevant and current information. Sommerville's experience in system dependability and systems engineering guides the text through a traditional plan-based approach that incorporates some novel agile methods. The text strives to teach the innovators of tomorrow how to create software that will make our world a better, safer, and more advanced place to live.

  3. Software engineering

    CERN Document Server

    Thorin, Marc

    1985-01-01

    Software Engineering describes the conceptual bases as well as the main methods and rules on computer programming. This book presents software engineering as a coherent and logically built synthesis and makes it possible to properly carry out an application of small or medium difficulty that can later be developed and adapted to more complex cases. This text is comprised of six chapters and begins by introducing the reader to the fundamental notions of entities, actions, and programming. The next two chapters elaborate on the concepts of information and consistency domains and show that a proc

  4. Engineering and Software Engineering

    Science.gov (United States)

    Jackson, Michael

    The phrase ‘software engineering' has many meanings. One central meaning is the reliable development of dependable computer-based systems, especially those for critical applications. This is not a solved problem. Failures in software development have played a large part in many fatalities and in huge economic losses. While some of these failures may be attributable to programming errors in the narrowest sense—a program's failure to satisfy a given formal specification—there is good reason to think that most of them have other roots. These roots are located in the problem of software engineering rather than in the problem of program correctness. The famous 1968 conference was motivated by the belief that software development should be based on “the types of theoretical foundations and practical disciplines that are traditional in the established branches of engineering.” Yet after forty years of currency the phrase ‘software engineering' still denotes no more than a vague and largely unfulfilled aspiration. Two major causes of this disappointment are immediately clear. First, too many areas of software development are inadequately specialised, and consequently have not developed the repertoires of normal designs that are the indispensable basis of reliable engineering success. Second, the relationship between structural design and formal analytical techniques for software has rarely been one of fruitful synergy: too often it has defined a boundary between competing dogmas, at which mutual distrust and incomprehension deprive both sides of advantages that should be within their grasp. This paper discusses these causes and their effects. Whether the common practice of software development will eventually satisfy the broad aspiration of 1968 is hard to predict; but an understanding of past failure is surely a prerequisite of future success.

  5. Software Engineering Guidebook

    Science.gov (United States)

    Connell, John; Wenneson, Greg

    1993-01-01

    The Software Engineering Guidebook describes SEPG (Software Engineering Process Group) supported processes and techniques for engineering quality software in NASA environments. Three process models are supported: structured, object-oriented, and evolutionary rapid-prototyping. The guidebook covers software life-cycles, engineering, assurance, and configuration management. The guidebook is written for managers and engineers who manage, develop, enhance, and/or maintain software under the Computer Software Services Contract.

  6. Software engineer's pocket book

    CERN Document Server

    Tooley, Michael

    2013-01-01

    Software Engineer's Pocket Book provides a concise discussion on various aspects of software engineering. The book is comprised of six chapters that tackle various areas of concerns in software engineering. Chapter 1 discusses software development, and Chapter 2 covers programming languages. Chapter 3 deals with operating systems. The book also tackles discrete mathematics and numerical computation. Data structures and algorithms are also explained. The text will be of great use to individuals involved in the specification, design, development, implementation, testing, maintenance, and qualit

  7. Software engineering measurement

    CERN Document Server

    Munson, PhD, John C

    2003-01-01

    By demonstrating how to develop simple experiments for the empirical validation of theoretical research and showing how to convert measurement data into meaningful and valuable information, this text fosters more precise use of software measurement in the computer science and software engineering literature. Software Engineering Measurement shows you how to convert your measurement data to valuable information that can be used immediately for software process improvement.

  8. Software Engineering Improvement Plan

    Science.gov (United States)

    2006-01-01

    In performance of this task order, bd Systems personnel provided support to the Flight Software Branch and the Software Working Group through multiple tasks related to software engineering improvement and to activities of the independent Technical Authority (iTA) Discipline Technical Warrant Holder (DTWH) for software engineering. To ensure that the products, comments, and recommendations complied with customer requirements and the statement of work, bd Systems personnel maintained close coordination with the customer. These personnel performed work in areas such as update of agency requirements and directives database, software effort estimation, software problem reports, a web-based process asset library, miscellaneous documentation review, software system requirements, issue tracking software survey, systems engineering NPR, and project-related reviews. This report contains a summary of the work performed and the accomplishments in each of these areas.

  9. Global Software Engineering: A Software Process Approach

    Science.gov (United States)

    Richardson, Ita; Casey, Valentine; Burton, John; McCaffery, Fergal

    Our research has shown that many companies are struggling with the successful implementation of global software engineering, due to temporal, cultural and geographical distance, which causes a range of factors to come into play. For example, cultural, project managementproject management and communication difficulties continually cause problems for software engineers and project managers. While the implementation of efficient software processes can be used to improve the quality of the software product, published software process models do not cater explicitly for the recent growth in global software engineering. Our thesis is that global software engineering factors should be included in software process models to ensure their continued usefulness in global organisations. Based on extensive global software engineering research, we have developed a software process, Global Teaming, which includes specific practices and sub-practices. The purpose is to ensure that requirements for successful global software engineering are stipulated so that organisations can ensure successful implementation of global software engineering.

  10. Global Software Engineering

    DEFF Research Database (Denmark)

    Ebert, Christof; Kuhrmann, Marco; Prikladnicki, Rafael

    2016-01-01

    Professional software products and IT systems and services today are developed mostly by globally distributed teams, projects, and companies. Successfully orchestrating Global Software Engineering (GSE) has become the major success factor both for organizations and practitioners. Yet, more than...... and experience reported at the IEEE International Conference on Software Engineering (ICGSE) series. The outcomes of our analysis show GSE as a field highly attached to industry and, thus, a considerable share of ICGSE papers address the transfer of Software Engineering concepts and solutions to the global stage...

  11. Global Software Engineering

    DEFF Research Database (Denmark)

    Ebert, Christof; Kuhrmann, Marco; Prikladnicki, Rafael

    2016-01-01

    Professional software products and IT systems and services today are developed mostly by globally distributed teams, projects, and companies. Successfully orchestrating Global Software Engineering (GSE) has become the major success factor both for organizations and practitioners. Yet, more than...... and experience reported at the IEEE International Conference on Software Engineering (ICGSE) series. The outcomes of our analysis show GSE as a field highly attached to industry and, thus, a considerable share of ICGSE papers address the transfer of Software Engineering concepts and solutions to the global stage...

  12. Software Engineering for Portability.

    Science.gov (United States)

    Stanchev, Ivan

    1990-01-01

    Discussion of the portability of educational software focuses on the software design and development process. Topics discussed include levels of portability; the user-computer dialog; software engineering principles; design techniques for student performance records; techniques of courseware programing; and suggestions for further research and…

  13. Software engineering architecture-driven software development

    CERN Document Server

    Schmidt, Richard F

    2013-01-01

    Software Engineering: Architecture-driven Software Development is the first comprehensive guide to the underlying skills embodied in the IEEE's Software Engineering Body of Knowledge (SWEBOK) standard. Standards expert Richard Schmidt explains the traditional software engineering practices recognized for developing projects for government or corporate systems. Software engineering education often lacks standardization, with many institutions focusing on implementation rather than design as it impacts product architecture. Many graduates join the workforce with incomplete skil

  14. Software Engineering to Professionalize Software Development

    Directory of Open Access Journals (Sweden)

    Juan Miguel Alonso

    2011-12-01

    Full Text Available The role, increasingly important, that plays the software in the systems with widespread effects presents new challenges for the formation of Software Engineers. Not only because social dependence software is increasing, but also because the character of software development is also changing and with it the demands for software developers certified. In this paper are propose some challenges and aspirations that guide the learning processes Software Engineering and help to identify the need to train professionals in software development.

  15. Unified Engineering Software System

    Science.gov (United States)

    Purves, L. R.; Gordon, S.; Peltzman, A.; Dube, M.

    1989-01-01

    Collection of computer programs performs diverse functions in prototype engineering. NEXUS, NASA Engineering Extendible Unified Software system, is research set of computer programs designed to support full sequence of activities encountered in NASA engineering projects. Sequence spans preliminary design, design analysis, detailed design, manufacturing, assembly, and testing. Primarily addresses process of prototype engineering, task of getting single or small number of copies of product to work. Written in FORTRAN 77 and PROLOG.

  16. Software engineering ethics

    Science.gov (United States)

    Bown, Rodney L.

    1991-01-01

    Software engineering ethics is reviewed. The following subject areas are covered: lack of a system viewpoint; arrogance of PC DOS software vendors; violation od upward compatibility; internet worm; internet worm revisited; student cheating and company hiring interviews; computing practitioners and the commodity market; new projects and old programming languages; schedule and budget; and recent public domain comments.

  17. SOFTWARE METRICS VALIDATION METHODOLOGIES IN SOFTWARE ENGINEERING

    Directory of Open Access Journals (Sweden)

    K.P. Srinivasan

    2014-12-01

    Full Text Available In the software measurement validations, assessing the validation of software metrics in software engineering is a very difficult task due to lack of theoretical methodology and empirical methodology [41, 44, 45]. During recent years, there have been a number of researchers addressing the issue of validating software metrics. At present, software metrics are validated theoretically using properties of measures. Further, software measurement plays an important role in understanding and controlling software development practices and products. The major requirement in software measurement is that the measures must represent accurately those attributes they purport to quantify and validation is critical to the success of software measurement. Normally, validation is a collection of analysis and testing activities across the full life cycle and complements the efforts of other quality engineering functions and validation is a critical task in any engineering project. Further, validation objective is to discover defects in a system and assess whether or not the system is useful and usable in operational situation. In the case of software engineering, validation is one of the software engineering disciplines that help build quality into software. The major objective of software validation process is to determine that the software performs its intended functions correctly and provides information about its quality and reliability. This paper discusses the validation methodology, techniques and different properties of measures that are used for software metrics validation. In most cases, theoretical and empirical validations are conducted for software metrics validations in software engineering [1-50].

  18. Global Software Engineering

    DEFF Research Database (Denmark)

    Ebert, Christof; Kuhrmann, Marco; Prikladnicki, Rafael

    2016-01-01

    SOFTWARE, LIKE ALL industry products, is the result of complex multinational supply chains with many partners from concept to development to production and maintenance. Global software engineering (GSE), IT outsourcing, and business process outsourcing during the past decade have showed growth...... rates of 10 to 20 percent per year. This instalment of Practitioner’s Digest summarizes experiences and guidance from industry to facilitate knowledge and technology transfer for GSE. It’s based on industry feedback from the annual IEEE International Conference on Global Software Engineering, which had...

  19. Beginning software engineering

    CERN Document Server

    Stephens, Rod

    2015-01-01

    Beginning Software Engineering demystifies the software engineering methodologies and techniques that professional developers use to design and build robust, efficient, and consistently reliable software. Free of jargon and assuming no previous programming, development, or management experience, this accessible guide explains important concepts and techniques that can be applied to any programming language. Each chapter ends with exercises that let you test your understanding and help you elaborate on the chapter's main concepts. Everything you need to understand waterfall, Sashimi, agile, RAD, Scrum, Kanban, Extreme Programming, and many other development models is inside!

  20. DIVERSIFICATION IN SOFTWARE ENGINEERING

    Directory of Open Access Journals (Sweden)

    Er.Kirtesh Jailia,

    2010-06-01

    Full Text Available In this paper we examine the factors that have promoted the iversification of software process models. The intention is to understand more clearly the problem-solving process in software engineering & try to find out the efficient way to manage the risk. A review of software process modeling is given first, followed by a discussion of process evaluation techniques. A taxonomy for categorizing process models, based on establishing decision criteria,is identified that can guide selecting the appropriate model from a set of alternatives on the basis of model characteristics and software project needs. We are proposing a model in this paper, for dealing with the diversification in software engineering.

  1. Ontologies for software engineering and software technology

    CERN Document Server

    Calero, Coral; Piattini, Mario

    2006-01-01

    Covers two applications of ontologies in software engineering and software technology: sharing knowledge of the problem domain and using a common terminology among all stakeholders; and filtering the knowledge when defining models and metamodels. This book is of benefit to software engineering researchers in both academia and industry.

  2. Green in software engineering

    CERN Document Server

    Calero Munoz, Coral

    2015-01-01

    This is the first book that presents a comprehensive overview of sustainability aspects in software engineering. Its format follows the structure of the SWEBOK and covers the key areas involved in the incorporation of green aspects in software engineering, encompassing topics from requirement elicitation to quality assurance and maintenance, while also considering professional practices and economic aspects. The book consists of thirteen chapters, which are structured in five parts. First the "Introduction" gives an overview of the primary general concepts related to Green IT, discussing wha

  3. Software Engineering Laboratory Series: Collected Software Engineering Papers. Volume 15

    Science.gov (United States)

    1997-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  4. Software Engineering Laboratory Series: Collected Software Engineering Papers. Volume 13

    Science.gov (United States)

    1995-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  5. Software Engineering Laboratory Series: Collected Software Engineering Papers. Volume 14

    Science.gov (United States)

    1996-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  6. Software engineering the current practice

    CERN Document Server

    Rajlich, Vaclav

    2011-01-01

    INTRODUCTION History of Software EngineeringSoftware PropertiesOrigins of SoftwareBirth of Software EngineeringThird Paradigm: Iterative ApproachSoftware Life Span ModelsStaged ModelVariants of Staged ModelSoftware Technologies Programming Languages and CompilersObject-Oriented TechnologyVersion Control SystemSoftware ModelsClass DiagramsUML Activity DiagramsClass Dependency Graphs and ContractsSOFTWARE CHANGEIntroduction to Software ChangeCharacteristics of Software ChangePhases of Software ChangeRequirements and Their ElicitationRequirements Analysis and Change InitiationConcepts and Concept

  7. Teaching Software Engineering through Robotics

    OpenAIRE

    Shin, Jiwon; Rusakov, Andrey; Meyer, Bertrand

    2014-01-01

    This paper presents a newly-developed robotics programming course and reports the initial results of software engineering education in robotics context. Robotics programming, as a multidisciplinary course, puts equal emphasis on software engineering and robotics. It teaches students proper software engineering -- in particular, modularity and documentation -- by having them implement four core robotics algorithms for an educational robot. To evaluate the effect of software engineering educati...

  8. Software Engineering Reviews and Audits

    CERN Document Server

    Summers, Boyd L

    2011-01-01

    Accurate software engineering reviews and audits have become essential to the success of software companies and military and aerospace programs. These reviews and audits define the framework and specific requirements for verifying software development efforts. Authored by an industry professional with three decades of experience, Software Engineering Reviews and Audits offers authoritative guidance for conducting and performing software first article inspections, and functional and physical configuration software audits. It prepares readers to answer common questions for conducting and perform

  9. Evaluation & Optimization of Software Engineering

    Directory of Open Access Journals (Sweden)

    Asaduzzaman Noman

    2016-06-01

    Full Text Available The term is made of two words, software and engineering. Software is more than just a program code. A program is an executable code, which serves some computational purpose. Software is considered to be collection of executable programming code, associated libraries and documentations. Software, when made for a specific requirement is called software product. Engineering on the other hand, is all about developing products, using well-defined, scientific principles and methods. The outcome of software engineering is an efficient and reliable software product. IEEE defines software engineering as: The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software.

  10. Software Engineering for Practiced Software Enhancement

    Directory of Open Access Journals (Sweden)

    Rashmi Yadav

    2011-03-01

    Full Text Available Software development scenario particularly in IT industries is very competitive and demands for development with minimum resources. Software development started and prevailed up to an extent in industry without the use of software engineering practices, which was perceived as an overhead. This approach causes over use of resources, such as money, man-hours, hardware components. This paper attempts to present the causes of inefficiencies in an almost exhaustive way. Further, an attempt has been made to elaborate the software engineering methods as remedies against the listed causes of inefficiencies of development.

  11. Computer games and software engineering

    CERN Document Server

    Cooper, Kendra M L

    2015-01-01

    Computer games represent a significant software application domain for innovative research in software engineering techniques and technologies. Game developers, whether focusing on entertainment-market opportunities or game-based applications in non-entertainment domains, thus share a common interest with software engineers and developers on how to best engineer game software.Featuring contributions from leading experts in software engineering, the book provides a comprehensive introduction to computer game software development that includes its history as well as emerging research on the inte

  12. Software engineering methodologies and tools

    Science.gov (United States)

    Wilcox, Lawrence M.

    1993-01-01

    Over the years many engineering disciplines have developed, including chemical, electronic, etc. Common to all engineering disciplines is the use of rigor, models, metrics, and predefined methodologies. Recently, a new engineering discipline has appeared on the scene, called software engineering. For over thirty years computer software has been developed and the track record has not been good. Software development projects often miss schedules, are over budget, do not give the user what is wanted, and produce defects. One estimate is there are one to three defects per 1000 lines of deployed code. More and more systems are requiring larger and more complex software for support. As this requirement grows, the software development problems grow exponentially. It is believed that software quality can be improved by applying engineering principles. Another compelling reason to bring the engineering disciplines to software development is productivity. It has been estimated that productivity of producing software has only increased one to two percent a year in the last thirty years. Ironically, the computer and its software have contributed significantly to the industry-wide productivity, but computer professionals have done a poor job of using the computer to do their job. Engineering disciplines and methodologies are now emerging supported by software tools that address the problems of software development. This paper addresses some of the current software engineering methodologies as a backdrop for the general evaluation of computer assisted software engineering (CASE) tools from actual installation of and experimentation with some specific tools.

  13. Software and Network Engineering

    CERN Document Server

    2012-01-01

    The series "Studies in Computational Intelligence" (SCI) publishes new developments and advances in the various areas of computational intelligence – quickly and with a high quality. The intent is to cover the theory, applications, and design methods of computational intelligence, as embedded in the fields of engineering, computer science, physics and life science, as well as the methodologies behind them. The series contains monographs, lecture notes and edited volumes in computational intelligence spanning the areas of neural networks, connectionist systems, genetic algorithms, evolutionary computation, artificial intelligence, cellular automata, self-organizing systems, soft computing, fuzzy systems, and hybrid intelligent systems. Critical to both contributors and readers are the short publication time and world-wide distribution - this permits a rapid and broad dissemination of research results.   The purpose of the first ACIS International Symposium on Software and Network Engineering held on Decembe...

  14. Software engineering a practitioner's approach

    CERN Document Server

    Pressman, Roger S

    1997-01-01

    This indispensable guide to software engineering exploration enables practitioners to navigate the ins and outs of this rapidly changing field. Pressman's fully revised and updated Fourth Edition provides in-depth coverage of every important management and technical topic in software engineering. Moreover, readers will find the inclusion of the hottest developments in the field such as: formal methods and cleanroom software engineering, business process reengineering, and software reengineering.

  15. Software Engineering for Human Spaceflight

    Science.gov (United States)

    Fredrickson, Steven E.

    2014-01-01

    The Spacecraft Software Engineering Branch of NASA Johnson Space Center (JSC) provides world-class products, leadership, and technical expertise in software engineering, processes, technology, and systems management for human spaceflight. The branch contributes to major NASA programs (e.g. ISS, MPCV/Orion) with in-house software development and prime contractor oversight, and maintains the JSC Engineering Directorate CMMI rating for flight software development. Software engineering teams work with hardware developers, mission planners, and system operators to integrate flight vehicles, habitats, robotics, and other spacecraft elements. They seek to infuse automation and autonomy into missions, and apply new technologies to flight processor and computational architectures. This presentation will provide an overview of key software-related projects, software methodologies and tools, and technology pursuits of interest to the JSC Spacecraft Software Engineering Branch.

  16. Software engineering as an engineering discipline

    Science.gov (United States)

    Freedman, Glenn B.

    1988-01-01

    The purpose of this panel is to explore the emerging field of software engineering from a variety of perspectives: university programs; industry training and definition; government development; and technology transfer. In doing this, the panel will address the issues of distinctions among software engineering, computer science, and computer hardware engineering as they relate to the challenges of large, complex systems.

  17. Empirically Driven Software Engineering Research

    Science.gov (United States)

    Rombach, Dieter

    Software engineering is a design discipline. As such, its engineering methods are based on cognitive instead of physical laws, and their effectiveness depends highly on context. Empirical methods can be used to observe the effects of software engineering methods in vivo and in vitro, to identify improvement potentials, and to validate new research results. This paper summarizes both the current body of knowledge and further challenges wrt. empirical methods in software engineering as well as empirically derived evidence regarding software typical engineering methods. Finally, future challenges wrt. education, research, and technology transfer will be outlined.

  18. Software productivity improvement through software engineering technology

    Science.gov (United States)

    Mcgarry, F. E.

    1985-01-01

    It has been estimated that NASA expends anywhere from 6 to 10 percent of its annual budget on the acquisition, implementation and maintenance of computer software. Although researchers have produced numerous software engineering approaches over the past 5-10 years; each claiming to be more effective than the other, there is very limited quantitative information verifying the measurable impact htat any of these technologies may have in a production environment. At NASA/GSFC, an extended research effort aimed at identifying and measuring software techniques that favorably impact productivity of software development, has been active over the past 8 years. Specific, measurable, software development technologies have been applied and measured in a production environment. Resulting software development approaches have been shown to be effective in both improving quality as well as productivity in this one environment.

  19. Recommendation systems in software engineering

    CERN Document Server

    Robillard, Martin P; Walker, Robert J; Zimmermann, Thomas

    2014-01-01

    With the growth of public and private data stores and the emergence of off-the-shelf data-mining technology, recommendation systems have emerged that specifically address the unique challenges of navigating and interpreting software engineering data.This book collects, structures and formalizes knowledge on recommendation systems in software engineering. It adopts a pragmatic approach with an explicit focus on system design, implementation, and evaluation. The book is divided into three parts: "Part I - Techniques" introduces basics for building recommenders in software engineering, including techniques for collecting and processing software engineering data, but also for presenting recommendations to users as part of their workflow.?"Part II - Evaluation" summarizes methods and experimental designs for evaluating recommendations in software engineering.?"Part III - Applications" describes needs, issues and solution concepts involved in entire recommendation systems for specific software engineering tasks, fo...

  20. NASA software documentation standard software engineering program

    Science.gov (United States)

    1991-01-01

    The NASA Software Documentation Standard (hereinafter referred to as Standard) can be applied to the documentation of all NASA software. This Standard is limited to documentation format and content requirements. It does not mandate specific management, engineering, or assurance standards or techniques. This Standard defines the format and content of documentation for software acquisition, development, and sustaining engineering. Format requirements address where information shall be recorded and content requirements address what information shall be recorded. This Standard provides a framework to allow consistency of documentation across NASA and visibility into the completeness of project documentation. This basic framework consists of four major sections (or volumes). The Management Plan contains all planning and business aspects of a software project, including engineering and assurance planning. The Product Specification contains all technical engineering information, including software requirements and design. The Assurance and Test Procedures contains all technical assurance information, including Test, Quality Assurance (QA), and Verification and Validation (V&V). The Management, Engineering, and Assurance Reports is the library and/or listing of all project reports.

  1. Model-based Software Engineering

    DEFF Research Database (Denmark)

    2010-01-01

    The vision of model-based software engineering is to make models the main focus of software development and to automatically generate software from these models. Part of that idea works already today. But, there are still difficulties when it comes to behaviour. Actually, there is no lack in models...

  2. Model-based Software Engineering

    DEFF Research Database (Denmark)

    2010-01-01

    The vision of model-based software engineering is to make models the main focus of software development and to automatically generate software from these models. Part of that idea works already today. But, there are still difficulties when it comes to behaviour. Actually, there is no lack in models...

  3. Software engineering beyond the project

    DEFF Research Database (Denmark)

    Dittrich, Yvonne

    2014-01-01

    Context The main part of software engineering methods, tools and technologies has developed around projects as the central organisational form of software development. A project organisation depends on clear bounds regarding scope, participants, development effort and lead-time. What happens when...... these conditions are not given? The article claims that this is the case for software product specific ecosystems. As software is increasingly developed, adopted and deployed in the form of customisable and configurable products, software engineering as a discipline needs to take on the challenge to support...... of traditional software engineering, but makes perfect sense, considering that the frame of reference for product development is not a project but continuous innovation across the respective ecosystem. The article provides a number of concrete points for further research....

  4. Continuing engineering education for software engineering professionals

    Energy Technology Data Exchange (ETDEWEB)

    Davis, P.I.

    1992-02-19

    Designers of software for safety-critical applications are impelled to supplement their education through continuing engineering studies in the areas of requirements analysis, hazard identification, risk analysis, fault tolerance, failure modes, and psychology. Today`s complex level of design is contributing to opportunities for catastrophic design errors in computer functions where failure of such functions is capable of causing injury and death. A syllabus of post-graduate, core studies within the curricula of five engineering specialties is suggested. Software Engineers are exhorted to undertake a professional, responsible role in safety-critical software design.

  5. Continuing engineering education for software engineering professionals

    Energy Technology Data Exchange (ETDEWEB)

    Davis, P.I.

    1992-02-19

    Designers of software for safety-critical applications are impelled to supplement their education through continuing engineering studies in the areas of requirements analysis, hazard identification, risk analysis, fault tolerance, failure modes, and psychology. Today's complex level of design is contributing to opportunities for catastrophic design errors in computer functions where failure of such functions is capable of causing injury and death. A syllabus of post-graduate, core studies within the curricula of five engineering specialties is suggested. Software Engineers are exhorted to undertake a professional, responsible role in safety-critical software design.

  6. Real World Software Engineering

    Science.gov (United States)

    1994-07-15

    semester addresses the remaining principles of a complete, mature software development process [ Humphrey 88]. In order to provide an instructional...Software Innovations Technology, 1083 Mandarin Drive N.E.. Palm Bay FL 32905-4706 [ Humphrey 88] W. S. Humphrey , "Characterizing the Software Process: A...Copies of all the forms mentioned are available via electronic mail from the authors. 40 [1) Doris Carver, "Comparison of Techniques In Project-Based

  7. A Cloverleaf of Software Engineering

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2005-01-01

    We shall touch upon four issues of software engineering (SE): domain engineering, formal techniques, SE sociology, and academic software architects. First, before software can be designed one must understand its requirements; but before requirements can be formulated one must understand the domain....... So we assume that requirements development is based on first having established models of the (application) domain. We illustrate facets of the railway domain. Second, we touch upon all of the three phases: domain engineering, requirements engineering and software design also being done formally......, however "lite". Third, despite 35 years of formal methods, the SE industry, maturity-wise still lags far behind that of other engineering disciplines. So we examine why. Finally, in several areas, in health care, in architecture, and others, we see that major undertakings are primarily spearheaded...

  8. Software Engineering Education Directory

    Science.gov (United States)

    1989-02-01

    The C Programming Language by Kernighan, Brian W. and Ritchie, Dennis M. Compilers: C Computers: NCR Tower 32/600 running UNIX System V...Sun Microsystems, Ada Eiffel 3B2) Software Testing CS 429 U P E O 10 Textbooks: Software Testing Techniques by Beizer, Boris Systems

  9. Handbook of Software Engineering and Knowledge Engineering

    CERN Document Server

    2001-01-01

    This is the first handbook to cover comprehensively both software engineering and knowledge engineering - two important fields that have become interwoven in recent years. Over 60 international experts have contributed to the book. Each chapter has been written in such a way that a practitioner of software engineering and knowledge engineering can easily understand and obtain useful information. Each chapter covers one topic and can be read independently of other chapters, providing both a general survey of the topic and an in-depth exposition of the state of the art.

  10. Clustering Methodologies for Software Engineering

    Directory of Open Access Journals (Sweden)

    Mark Shtern

    2012-01-01

    Full Text Available The size and complexity of industrial strength software systems are constantly increasing. This means that the task of managing a large software project is becoming even more challenging, especially in light of high turnover of experienced personnel. Software clustering approaches can help with the task of understanding large, complex software systems by automatically decomposing them into smaller, easier-to-manage subsystems. The main objective of this paper is to identify important research directions in the area of software clustering that require further attention in order to develop more effective and efficient clustering methodologies for software engineering. To that end, we first present the state of the art in software clustering research. We discuss the clustering methods that have received the most attention from the research community and outline their strengths and weaknesses. Our paper describes each phase of a clustering algorithm separately. We also present the most important approaches for evaluating the effectiveness of software clustering.

  11. Professional Issues In Software Engineering

    CERN Document Server

    Bott, Frank; Eaton, Jack; Rowland, Diane

    2000-01-01

    An comprehensive text covering all the issues that software engineers now have to take into account apart from the technical side of things. Includes information on the legal, professional and commercial context in which they work.

  12. Future of Software Engineering Standards

    Science.gov (United States)

    Poon, Peter T.

    1997-01-01

    In the new millennium, software engineering standards are expected to continue to influence the process of producing software-intensive systems which are cost-effetive and of high quality. These sytems may range from ground and flight systems used for planetary exploration to educational support systems used in schools as well as consumer-oriented systems.

  13. Computer systems and software engineering

    Science.gov (United States)

    Mckay, Charles W.

    1988-01-01

    The High Technologies Laboratory (HTL) was established in the fall of 1982 at the University of Houston Clear Lake. Research conducted at the High Tech Lab is focused upon computer systems and software engineering. There is a strong emphasis on the interrelationship of these areas of technology and the United States' space program. In Jan. of 1987, NASA Headquarters announced the formation of its first research center dedicated to software engineering. Operated by the High Tech Lab, the Software Engineering Research Center (SERC) was formed at the University of Houston Clear Lake. The High Tech Lab/Software Engineering Research Center promotes cooperative research among government, industry, and academia to advance the edge-of-knowledge and the state-of-the-practice in key topics of computer systems and software engineering which are critical to NASA. The center also recommends appropriate actions, guidelines, standards, and policies to NASA in matters pertinent to the center's research. Results of the research conducted at the High Tech Lab/Software Engineering Research Center have given direction to many decisions made by NASA concerning the Space Station Program.

  14. Concurrent Software Engineering Project

    Science.gov (United States)

    Stankovic, Nenad; Tillo, Tammam

    2009-01-01

    Concurrent engineering or overlapping activities is a business strategy for schedule compression on large development projects. Design parameters and tasks from every aspect of a product's development process and their interdependencies are overlapped and worked on in parallel. Concurrent engineering suffers from negative effects such as excessive…

  15. Concurrent Software Engineering Project

    Science.gov (United States)

    Stankovic, Nenad; Tillo, Tammam

    2009-01-01

    Concurrent engineering or overlapping activities is a business strategy for schedule compression on large development projects. Design parameters and tasks from every aspect of a product's development process and their interdependencies are overlapped and worked on in parallel. Concurrent engineering suffers from negative effects such as excessive…

  16. Concise encyclopedia of software engineering

    CERN Document Server

    Morris, Derrick

    1993-01-01

    This Concise Encyclopedia of Software Engineering is intended to provide compact coverage of the knowledge relevant to the practicing software engineer. The content has been chosen to provide an introduction to the theory and techniques relevant to the software of a broad class of computer applications. It is supported by examples of particular applications and their enabling technologies. This Encyclopedia will be of value to new practitioners who need a concise overview and established practitioners who need to read about the ""penumbra"" surrounding their own specialities. It will also be u

  17. A Multidimensional Software Engineering Course

    Science.gov (United States)

    Barzilay, O.; Hazzan, O.; Yehudai, A.

    2009-01-01

    Software engineering (SE) is a multidimensional field that involves activities in various areas and disciplines, such as computer science, project management, and system engineering. Though modern SE curricula include designated courses that address these various subjects, an advanced summary course that synthesizes them is still missing. Such a…

  18. A Multidimensional Software Engineering Course

    Science.gov (United States)

    Barzilay, O.; Hazzan, O.; Yehudai, A.

    2009-01-01

    Software engineering (SE) is a multidimensional field that involves activities in various areas and disciplines, such as computer science, project management, and system engineering. Though modern SE curricula include designated courses that address these various subjects, an advanced summary course that synthesizes them is still missing. Such a…

  19. Software engineering tools.

    Science.gov (United States)

    Wear, L L; Pinkert, J R

    1994-01-01

    We have looked at general descriptions and illustrations of several software development tools, such as tools for prototyping, developing DFDs, testing, and maintenance. Many others are available, and new ones are being developed. However, you have at least seen some examples of powerful CASE tools for systems development.

  20. Teaching Empirical Software Engineering Using Expert Teams

    DEFF Research Database (Denmark)

    Kuhrmann, Marco

    Empirical software engineering aims at making software engineering claims measurable, i.e., to analyze and understand phenomena in software engineering and to evaluate software engineering approaches and solutions. Due to the involvement of humans and the multitude of fields for which software...... is crucial, software engineering is considered hard to teach. Yet, empirical software engineering increases this difficulty by adding the scientific method as extra dimension. In this paper, we present a Master-level course on empirical software engineering in which different empirical instruments...

  1. Statistical Software Engineering

    Science.gov (United States)

    2007-11-02

    Institute acts under the responsibility given to the National Academy of Sciences by its congressional charter to be an adviser to the federal government...research in software visualization—the use of typography, graphic design, animation, and cinematography to facilitate the understanding and...components. One of its major functions is to act as the central repository for all relevant project data (statistical or nonstatistical). Thus this

  2. The Software Engineering Prototype.

    Science.gov (United States)

    1983-06-01

    charts, graphics , color pictures, and other aids should be used to enhance communications between users and designers: verbal descripticns alone are just...ccncludes by showing how the set of seven desing elements are supported by software prototypes. B. TBE PROTOTYPE PRCCESS ’he terms rotc%_vPe and pRototype...formulation of the solution (and vice versa)--there is an explicit understanding between the desinger and user about basic assumptions that will be made

  3. NASA Software Engineering Benchmarking Study

    Science.gov (United States)

    Rarick, Heather L.; Godfrey, Sara H.; Kelly, John C.; Crumbley, Robert T.; Wifl, Joel M.

    2013-01-01

    To identify best practices for the improvement of software engineering on projects, NASA's Offices of Chief Engineer (OCE) and Safety and Mission Assurance (OSMA) formed a team led by Heather Rarick and Sally Godfrey to conduct this benchmarking study. The primary goals of the study are to identify best practices that: Improve the management and technical development of software intensive systems; Have a track record of successful deployment by aerospace industries, universities [including research and development (R&D) laboratories], and defense services, as well as NASA's own component Centers; and Identify candidate solutions for NASA's software issues. Beginning in the late fall of 2010, focus topics were chosen and interview questions were developed, based on the NASA top software challenges. Between February 2011 and November 2011, the Benchmark Team interviewed a total of 18 organizations, consisting of five NASA Centers, five industry organizations, four defense services organizations, and four university or university R and D laboratory organizations. A software assurance representative also participated in each of the interviews to focus on assurance and software safety best practices. Interviewees provided a wealth of information on each topic area that included: software policy, software acquisition, software assurance, testing, training, maintaining rigor in small projects, metrics, and use of the Capability Maturity Model Integration (CMMI) framework, as well as a number of special topics that came up in the discussions. NASA's software engineering practices compared favorably with the external organizations in most benchmark areas, but in every topic, there were ways in which NASA could improve its practices. Compared to defense services organizations and some of the industry organizations, one of NASA's notable weaknesses involved communication with contractors regarding its policies and requirements for acquired software. One of NASA's strengths

  4. Collected software engineering papers, volume 2

    Science.gov (United States)

    1983-01-01

    Topics addressed include: summaries of the software engineering laboratory (SEL) organization, operation, and research activities; results of specific research projects in the areas of resource models and software measures; and strategies for data collection for software engineering research.

  5. Software engineering processes principles and applications

    CERN Document Server

    Wang, Yingxu

    2000-01-01

    Fundamentals of the Software Engineering ProcessIntroductionA Unified Framework of the Software Engineering ProcessProcess AlgebraProcess-Based Software EngineeringSoftware Engineering Process System ModelingThe CMM ModelThe ISO 9001 ModelThe BOOTSTRAP ModelThe ISO/IEC 15504 (SPICE) ModelThe Software Engineering Process Reference Model: SEPRMSoftware Engineering Process System AnalysisBenchmarking the SEPRM ProcessesComparative Analysis of Current Process ModelsTransformation of Capability Levels Between Current Process ModelsSoftware Engineering Process EstablishmentSoftware Process Establish

  6. Software quality engineering a practitioner's approach

    CERN Document Server

    Suryn, Witold

    2014-01-01

    Software quality stems from two distinctive, but associated, topics in software engineering: software functional quality and software structural quality. Software Quality Engineering studies the tenets of both of these notions, which focus on the efficiency and value of a design, respectively. The text addresses engineering quality on both the application and system levels with attention to Information Systems and Embedded Systems as well as recent developments. Targeted at graduate engineering students and software quality specialists, the book analyzes the relationship between functionality

  7. Software, Software Engineering and Software Engineering Research:Some Unconventional Thoughts

    Institute of Scientific and Technical Information of China (English)

    David Notkin

    2009-01-01

    Software engineering is broadly discussed as falling far short of expectations. Data and examples are used to justify how software itself is often poor, how the engineering of software leaves much to be desired, and how research in software engineering has not made enough progress to help overcome these weaknesses. However, these data and examples are presented and interpreted in ways that are arguably imbalanced. This imbalance, usually taken at face value, may be distracting the field from making significant progress towards improving the effective engineering of software, a goal the entire community shares. Research dichotomies, which tend to pit one approach against another, often subtly hint that there is a best way to engineer software or a best way to perform research on software. This, too, may be distracting the field from important classes of progress.

  8. Engineering analysis with ANSYS software

    CERN Document Server

    Nakasone, Y; Stolarski, T A

    2006-01-01

    For all engineers and students coming to finite element analysis or to ANSYS software for the first time, this powerful hands-on guide develops a detailed and confident understanding of using ANSYS's powerful engineering analysis tools. The best way to learn complex systems is by means of hands-on experience. With an innovative and clear tutorial based approach, this powerful book provides readers with a comprehensive introduction to all of the fundamental areas of engineering analysis they are likely to require either as part of their studies or in getting up to speed fast with the use of ANSYS software in working life. Opening with an introduction to the principles of the finite element method, the book then presents an overview of ANSYS technologies before moving on to cover key applications areas in detail.

  9. From knowledge based software engineering to knowware based software engineering

    Institute of Scientific and Technical Information of China (English)

    LU RuQian; JIN Zhi

    2008-01-01

    The first part of this paper reviews our efforts on knowledge-based software engi-neering, namely PROMIS, started from 1990s. The key point of PROMIS is to gen-erate applications automatically based on domain knowledge as well as software knowledge. That is featured by separating the development of domain knowledge from the development of software. But in PROMIS, we did not find an appropriate representation for the domain knowledge. Fortunately, in our recent work, we found such a carrier for knowledge modules, i.e. knowware. Knowware is a commercial-ized form of domain knowledge. This paper briefly introduces the basic definitions of knowware, knowledge middleware and knowware engineering. Three life circle models of knowware engineering and the design of corresponding knowware im-plementations are given. Finally we discuss application system automatic genera-tion and domain knowledge modeling on the J2EE platform, which combines the techniques of PROMIS, knowware and J2EE, and the development and deployment framework, i.e.PROMIS/KW**.

  10. Energy-Aware Software Engineering

    DEFF Research Database (Denmark)

    Eder, Kerstin; Gallagher, John Patrick

    2017-01-01

    A great deal of energy in Information and Communication Technology (ICT) systems can be wasted by software, regardless of how energy-efficient the underlying hardware is. To avoid such waste, programmers need to understand the energy consumption of programs during the development process rather t......, the chapter discusses how energy analysis and modelling techniques can be incorporated in software engineering tools, including existing compilers, to assist the energy-aware programmer to optimise the energy consumption of code.......A great deal of energy in Information and Communication Technology (ICT) systems can be wasted by software, regardless of how energy-efficient the underlying hardware is. To avoid such waste, programmers need to understand the energy consumption of programs during the development process rather...

  11. SEI Software Engineering Education Directory.

    Science.gov (United States)

    1987-02-01

    Planning, and Control, Kotler , P . Marketing Decision Making, Concepts and Strategy, Cravens Managerial Fnance: Essentials, Kroncke, C., Nammers, E., and...used in the entries are: Level: U Undergraduate G Graduate B Both 0 Other X No information supplied Prerequisite: P The course has at least one...name, course number, level, prerequisite, status and frequency. Here are examples from the directory: Courses: Software Engineering Comp 3653 U P B Y

  12. Software engineering apprenticeship by immersion

    OpenAIRE

    Ribaud, Vincent; Saliou, P.

    2003-01-01

    International audience; Inside the french university, there are two different education systems: a 5-year academic system and a 4-year technological system. At Brest university and in the field of computer science, both systems teach the same curriculum. A dedicated fifth year was designed and offered to the 4 year-system graduates. The main objectives are : mastering software engineering activities and skills, working in a team, coping with change. The plan of action is built on a 6-month te...

  13. Learning Software Engineering via Internet

    Directory of Open Access Journals (Sweden)

    Debora Weber-Wulff

    2005-12-01

    Full Text Available In recent years, education authorities worldwide, including the German Federal Government, have invested heavily in the development of e-learning and multimedia materials for institutions of higher education. While for some subject matters the benefits of e-learning seem obvious, there are subjects, often consisting of a number of tenuously connected topics or requiring a balance of learning and training, for which it is a valid question whether appropriate learning materials can be presented via the Internet. Software Engineering belongs to this second group, both for its broad collection of topics and, particularly, for the required emphasis on teamwork and communication training.This paper reports on a successful e-learning module on Software Engineering, which is used at the VFH (Virtual University of Applied Sciences in the third semester of the Bachelor program for Media and Computing. The report concentrates on two major aspects: The conceptual approach of producing didactically adequate online course material, and the didactics and techniques required for training communication and teamwork in an online course, which are considered an essential part of Software Engineering. In a concluding passage, the authors share some practical experiences with this course and consider the teaching efforts required to make it work successfully.

  14. Green software engineering for airbus avionics

    OpenAIRE

    I. Brooks

    2016-01-01

    Presentation at EU Ashley Project Public Forum 25 October 2016. Presentation examines the risks from Software Engineering without sustainability requirements and looks at the use of the UN Sustainable Development Goals to de-risk avionics software engineering.

  15. Green software engineering for airbus avionics

    OpenAIRE

    2016-01-01

    Presentation at EU Ashley Project Public Forum 25 October 2016. Presentation examines the risks from Software Engineering without sustainability requirements and looks at the use of the UN Sustainable Development Goals to de-risk avionics software engineering.

  16. Software Engineering Improvement Activities/Plan

    Science.gov (United States)

    2003-01-01

    bd Systems personnel accomplished the technical responsibilities for this reporting period, as planned. A close working relationship was maintained with personnel of the MSFC Avionics Department Software Group (ED14). Work accomplishments included development, evaluation, and enhancement of a software cost model, performing literature search and evaluation of software tools available for code analysis and requirements analysis, and participating in other relevant software engineering activities. Monthly reports were submitted. This support was provided to the Flight Software Group/ED 1 4 in accomplishing the software engineering improvement engineering activities of the Marshall Space Flight Center (MSFC) Software Engineering Improvement Plan.

  17. Software Engineering Improvement Activities/Plan

    Science.gov (United States)

    2003-01-01

    bd Systems personnel accomplished the technical responsibilities for this reporting period, as planned. A close working relationship was maintained with personnel of the MSFC Avionics Department Software Group (ED14). Work accomplishments included development, evaluation, and enhancement of a software cost model, performing literature search and evaluation of software tools available for code analysis and requirements analysis, and participating in other relevant software engineering activities. Monthly reports were submitted. This support was provided to the Flight Software Group/ED 1 4 in accomplishing the software engineering improvement engineering activities of the Marshall Space Flight Center (MSFC) Software Engineering Improvement Plan.

  18. Collaborative Software Engineering: Challenges and Prospects

    Science.gov (United States)

    Mistrík, Ivan; Grundy, John; van der Hoek, André; Whitehead, Jim

    Much work is presently ongoing in collaborative software engineering research. This work is beginning to make serious inroads into our ability to more effectively practice collaborative software engineering, with best practices, processes, tools, metrics, and other techniques becoming available for day-to-day use. However, we have not yet reached the point where the practice of collaborative software engineering is routine, without surprises, and generally as optimal as possible. This chapter summarizes the main findings of this book, draws some conclusions on these findings and looks at the prospects for software engineers in dealing with the challenges of collaborative software development. The chapter ends with prospects for collaborative software engineering.

  19. Software Engineering Frameworks: Textbooks vs. Student Perceptions

    Science.gov (United States)

    McMaster, Kirby; Hadfield, Steven; Wolthuis, Stuart; Sambasivam, Samuel

    2012-01-01

    This research examines the frameworks used by Computer Science and Information Systems students at the conclusion of their first semester of study of Software Engineering. A questionnaire listing 64 Software Engineering concepts was given to students upon completion of their first Software Engineering course. This survey was given to samples of…

  20. Teaching Empirical Software Engineering Using Expert Teams

    DEFF Research Database (Denmark)

    Kuhrmann, Marco

    2017-01-01

    is crucial, software engineering is considered hard to teach. Yet, empirical software engineering increases this difficulty by adding the scientific method as extra dimension. In this paper, we present a Master-level course on empirical software engineering in which different empirical instruments...

  1. The software factory: A fourth generation software engineering environment

    Energy Technology Data Exchange (ETDEWEB)

    Evans, M.W.

    1989-01-01

    The software-development process and its management are examined in a text intended for engineering managers and students of computer science. A unified concept based on the principle that software design is an engineering science rather than an art is applied, and a software engineering environment (SEE) analogous to an industrial plant is proposed. Chapters are devoted to the classical software environment, the history of software engineering, the evolution of the SEE, the fourth-generation SEE, the engineering process, software-data relationships, the SEE data base, data control in the SEE, software life cycles, information-system product assurance, business management and control, and automating and adapting the SEE. 143 refs.

  2. Software Engineering Program: Software Process Improvement Guidebook

    Science.gov (United States)

    1996-01-01

    The purpose of this document is to provide experience-based guidance in implementing a software process improvement program in any NASA software development or maintenance community. This guidebook details how to define, operate, and implement a working software process improvement program. It describes the concept of the software process improvement program and its basic organizational components. It then describes the structure, organization, and operation of the software process improvement program, illustrating all these concepts with specific NASA examples. The information presented in the document is derived from the experiences of several NASA software organizations, including the SEL, the SEAL, and the SORCE. Their experiences reflect many of the elements of software process improvement within NASA. This guidebook presents lessons learned in a form usable by anyone considering establishing a software process improvement program within his or her own environment. This guidebook attempts to balance general and detailed information. It provides material general enough to be usable by NASA organizations whose characteristics do not directly match those of the sources of the information and models presented herein. It also keeps the ideas sufficiently close to the sources of the practical experiences that have generated the models and information.

  3. SPEM: Software Process Engineering Metamodel

    Directory of Open Access Journals (Sweden)

    Víctor Hugo Menéndez Domínguez

    2015-05-01

    Full Text Available Todas las organizaciones involucradas en el desarrollo de software necesitan establecer, gestionar y soportar el trabajo de desarrollo. El término “proceso de desarrollo de software” tiende a unificar todas las actividades y prácticas que cubren esas necesidades. Modelar el proceso de software es una forma para mejorar el desarrollo y la calidad de las aplicaciones resultantes. De entre todos los lenguajes existentes para el modelado de procesos, aquellos basados en productos de trabajo son los más adecuados. Uno de tales lenguajes es SPEM (Software Process Engineering Metamodel. SPEM fue creado por OMG (Object Management Group como un estándar de alto nivel, que está basado en MOF (MetaObject Facility y es un metamodelo UML (Uniform Model Language. Constituye un tipo de ontología de procesos de desarrollo de software. En este artículo se ofrece una descripción, en términos generales, del estándar SPEM. También se destacan los cambios que ha experimentado entre la versión 1.1 y la versión 2.0, presentando tanto las ventajas como las desventajas encontradas entre ambas versiones.

  4. Improving Software Engineering on NASA Projects

    Science.gov (United States)

    Crumbley, Tim; Kelly, John C.

    2010-01-01

    Software Engineering Initiative: Reduces risk of software failure -Increases mission safety. More predictable software cost estimates and delivery schedules. Smarter buyer of contracted out software. More defects found and removed earlier. Reduces duplication of efforts between projects. Increases ability to meet the challenges of evolving software technology.

  5. Development of Software Engineering: A Research Perspective

    Institute of Scientific and Technical Information of China (English)

    Hong Mei; Dong-Gang Cao; Fu-Qing Yang

    2006-01-01

    In the past 40 years, software engineering has emerged as an important sub-field of computer science and has made significant contribution to the software industry. Now it is gradually becoming a new independent discipline. This paper presents a survey of software engineering development from a research perspective. Firstly, the history of software engineering is reviewed with focus on the driving forces of software technology, the software engineering framework and the milestones of software engineering development. Secondly, after reviewing the past academic efforts, the current research activities are surveyed and new challenges brought by Internet are analyzed. Software engineering researches and activities in China are also reviewed. The work in Peking University is described as a representative.

  6. Green software engineering: the curse of methodology

    OpenAIRE

    Hindle, Abram

    2016-01-01

    Computer Science often seems distant from its natural science cousins, especially software engineering which feels closer to sociology and psychology than to physics. Physical measurements are often rare in software engineering, except in a few niches. One such important niche is that of software energy consumption, green mining, green IT, and sustainable computing, which all fall under the umbrella of green software engineering. With the physical measurement of energy consumption comes all o...

  7. Software engineering from a Langley perspective

    Science.gov (United States)

    Voigt, Susan

    1994-01-01

    A brief introduction to software engineering is presented. The talk is divided into four sections beginning with the question 'What is software engineering', followed by a brief history of the progression of software engineering at the Langley Research Center in the context of an expanding computing environment. Several basic concepts and terms are introduced, including software development life cycles and maturity levels. Finally, comments are offered on what software engineering means for the Langley Research Center and where to find more information on the subject.

  8. Annotated bibliography of software engineering laboratory literature

    Science.gov (United States)

    Kistler, David; Bristow, John; Smith, Don

    1994-01-01

    This document is an annotated bibliography of technical papers, documents, and memorandums produced by or related to the Software Engineering Laboratory. Nearly 200 publications are summarized. These publications cover many areas of software engineering and range from research reports to software documentation. This document has been updated and reorganized substantially since the original version (SEL-82-006, November 1982). All materials have been grouped into eight general subject areas for easy reference: (1) The Software Engineering Laboratory; (2) The Software Engineering Laboratory: Software Development Documents; (3) Software Tools; (4) Software Models; (5) Software Measurement; (6) Technology Evaluations; (7) Ada Technology; and (8) Data Collection. This document contains an index of these publications classified by individual author.

  9. The Practice of Training in Software Engineering

    Directory of Open Access Journals (Sweden)

    Patricia Ledezma

    2011-12-01

    Full Text Available Software plays a critical role in the industry, the academy and everyday life, because the practices in other fields as science, engineering and business have changed over the years and the nature of real world problems also changes quickly. As a result, software engineering has perhaps become more dynamic discipline of engineering, Software engineers of the XXI century face new challenges and they roles are constantly redefined. In order to train better software engineers to carry out their functions, training Software Engineering have to be revised periodically and introduce constantly innovate. In this work, are done some suggestions, using recent innovations that may help improve the training processes in Software Engineering and better training of future professionals.

  10. Software Engineering Laboratory Series: Proceedings of the Twenty-Second Annual Software Engineering Workshop

    Science.gov (United States)

    1997-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  11. Software Engineering Laboratory Series: Proceedings of the Twenty-First Annual Software Engineering Workshop

    Science.gov (United States)

    1996-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  12. Software Engineering Laboratory Series: Proceedings of the Twentieth Annual Software Engineering Workshop

    Science.gov (United States)

    1995-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of application software. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that includes this document.

  13. Teaching Software Engineering: Problems and Suggestions

    Directory of Open Access Journals (Sweden)

    Osama Shata

    2011-01-01

    Full Text Available Teaching Software Engineering is a challenging task. This paper presents some problems encountered during teaching the course of software engineering to computer science and computer engineering students for few offerings. We present problems encountered and which are related to its title and contents and present suggested solutions.

  14. Ten recommendations for software engineering in research.

    Science.gov (United States)

    Hastings, Janna; Haug, Kenneth; Steinbeck, Christoph

    2014-01-01

    Research in the context of data-driven science requires a backbone of well-written software, but scientific researchers are typically not trained at length in software engineering, the principles for creating better software products. To address this gap, in particular for young researchers new to programming, we give ten recommendations to ensure the usability, sustainability and practicality of research software.

  15. Requirements Engineering in Building Climate Science Software

    Science.gov (United States)

    Batcheller, Archer L.

    2011-01-01

    Software has an important role in supporting scientific work. This dissertation studies teams that build scientific software, focusing on the way that they determine what the software should do. These requirements engineering processes are investigated through three case studies of climate science software projects. The Earth System Modeling…

  16. Requirements Engineering in Building Climate Science Software

    Science.gov (United States)

    Batcheller, Archer L.

    2011-01-01

    Software has an important role in supporting scientific work. This dissertation studies teams that build scientific software, focusing on the way that they determine what the software should do. These requirements engineering processes are investigated through three case studies of climate science software projects. The Earth System Modeling…

  17. Readings in artificial intelligence and software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Rich, C.; Waters, R.C.

    1986-01-01

    Research at the intersection of artificial intelligence and software engineering is important to both AI researchers and software engineers. For AI, programming is a domain that stimulates research in knowledge representation and automated reasoning. In software engineering, AI techniques are being applied to a new generation of programming tools. This book covers a wide spectrum of work in this area. Some of the topics covered include deductive synthesis, program verification, and transformational approaches.

  18. Software engineering design theory and practice

    CERN Document Server

    Otero, Carlos

    2012-01-01

    … intended for use as a textbook for an advanced course in software design. Each chapter ends with review questions and references. … provides an overview of the software development process, something that would not be out of line in a course on software engineering including such topics as software process, software management, balancing conflicting values of stakeholders, testing, quality, and ethics. The author has principally focused on software design though, extracting the design phase from the surrounding software development lifecycle. … Software design strategies are addressed

  19. Application of Formal Methods in Software Engineering

    Directory of Open Access Journals (Sweden)

    Adriana Morales

    2011-12-01

    Full Text Available The purpose of this research work is to examine: (1 why are necessary the formal methods for software systems today, (2 high integrity systems through the methodology C-by-C –Correctness-by-Construction–, and (3 an affordable methodology to apply formal methods in software engineering. The research process included reviews of the literature through Internet, in publications and presentations in events. Among the Research results found that: (1 there is increasing the dependence that the nations have, the companies and people of software systems, (2 there is growing demand for software Engineering to increase social trust in the software systems, (3 exist methodologies, as C-by-C, that can provide that level of trust, (4 Formal Methods constitute a principle of computer science that can be applied software engineering to perform reliable process in software development, (5 software users have the responsibility to demand reliable software products, and (6 software engineers have the responsibility to develop reliable software products. Furthermore, it is concluded that: (1 it takes more research to identify and analyze other methodologies and tools that provide process to apply the Formal Software Engineering methods, (2 Formal Methods provide an unprecedented ability to increase the trust in the exactitude of the software products and (3 by development of new methodologies and tools is being achieved costs are not more a disadvantage for application of formal methods.

  20. Introduction to distributed-software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Shatz, S.M.; Wang, J.P.

    1987-10-01

    Distributed-software is made up of a fixed set of software processes that are allocated to various interconnected computers but that closely cooperate to achieve a common goal. Interconnected computers are loosely coupled in the sense that interprocessor communication is done by message passing, not by sharing memory. Distributed-software engineering poses a host of new and challenging problems for software developers. This article addresses several of these problems, using the software life cycle as a guide.

  1. Innovations in Computing Sciences and Software Engineering

    CERN Document Server

    Sobh, Tarek

    2010-01-01

    "Innovations in Computing Sciences and Software Engineering" includes a set of rigorously reviewed world-class manuscripts addressing and detailing state-of-the-art research projects in the areas of Computer Science, Software Engineering, Computer Engineering, and Systems Engineering and Sciences. The topics covered include: Image and Pattern Recognition: Compression, Image processing, Signal Processing Architectures, Signal Processing for Communication, Signal Processing Implementation, Speech Compression, and Video Coding Architectures; Languages and Systems: Algorithms, Databases,

  2. A software engineering process for safety-critical software application.

    Energy Technology Data Exchange (ETDEWEB)

    Kang, Byung Heon; Kim, Hang Bae; Chang, Hoon Seon; Jeon, Jong Sun [Korea Atomic Energy Research Institute, Taejon (Korea, Republic of)

    1995-02-01

    Application of computer software to safety-critical systems in on the increase. To be successful, the software must be designed and constructed to meet the functional and performance requirements of the system. For safety reason, the software must be demonstrated not only to meet these requirements, but also to operate safely as a component within the system. For longer-term cost consideration, the software must be designed and structured to ease future maintenance and modifications. This paper presents a software engineering process for the production of safety-critical software for a nuclear power plant. The presentation is expository in nature of a viable high quality safety-critical software development. It is based on the ideas of a rational design process and on the experience of the adaptation of such process in the production of the safety-critical software for the shutdown system number two of Wolsung 2, 3 and 4 nuclear power generation plants. This process is significantly different from a conventional process in terms of rigorous software development phases and software design techniques, The process covers documentation, design, verification and testing using mathematically precise notations and highly reviewable tabular format to specify software requirements and software requirements and software requirements and code against software design using static analysis. The software engineering process described in this paper applies the principle of information-hiding decomposition in software design using a modular design technique so that when a change is required or an error is detected, the affected scope can be readily and confidently located. it also facilitates a sense of high degree of confidence in the `correctness` of the software production, and provides a relatively simple and straightforward code implementation effort. 1 figs., 10 refs. (Author).

  3. A reflection on Software Engineering in HEP

    Science.gov (United States)

    Carminati, Federico

    2012-12-01

    High Energy Physics (HEP) has been making very extensive usage of computers to achieve its research goals. Fairly large program suites have been developed, maintained and used over the years and it is fair to say that, overall, HEP has been successful in software development. Yet, HEP software development has not used classical Software Engineering techniques, which have been invented and refined to help the production of large programmes. In this paper we will review the development of HEP code with its strengths and weaknesses. Using several well-known HEP software projects as examples, we will try to demonstrate that our community has used a form of Software Engineering, albeit in an informal manner. The software development techniques employed in these projects are indeed very close in many aspects to the modern tendencies of Software Engineering itself, in particular the so-called “agile technologies”. The paper will conclude with an outlook on the future of software development in HEP.

  4. Requirements engineering: foundation for software quality

    NARCIS (Netherlands)

    Daneva, Maia; Pastor, Oscar

    2016-01-01

    Welcome to the proceedings of the 22nd edition of REFSQ: the International Working Conference on Requirements Engineering – Foundation for Software Quality! Requirements engineering (RE) has been recognized as a critical factor that impacts the quality of software, systems, and services. Since the

  5. Software Engineering Education: Some Important Dimensions

    Science.gov (United States)

    Mishra, Alok; Cagiltay, Nergiz Ercil; Kilic, Ozkan

    2007-01-01

    Software engineering education has been emerging as an independent and mature discipline. Accordingly, various studies are being done to provide guidelines for curriculum design. The main focus of these guidelines is around core and foundation courses. This paper summarizes the current problems of software engineering education programs. It also…

  6. Good practices for educational software engineering projects

    NARCIS (Netherlands)

    van der Duim, Louwarnoud; Andersson, Jesper; Sinnema, Marco

    2007-01-01

    Recent publications indicate the importance of software engineering in the computer science curriculum. In this paper, we present the final part of software engineering education at University of Groningen in the Netherlands and Vaxjo University in Sweden, where student teams perform an industrial

  7. Good practices for educational software engineering projects

    NARCIS (Netherlands)

    van der Duim, Louwarnoud; Andersson, Jesper; Sinnema, Marco

    2007-01-01

    Recent publications indicate the importance of software engineering in the computer science curriculum. In this paper, we present the final part of software engineering education at University of Groningen in the Netherlands and Vaxjo University in Sweden, where student teams perform an industrial s

  8. Global Software Engineering: Evolution and Trends

    DEFF Research Database (Denmark)

    Ebert, Christof; Kuhrmann, Marco; Prikladnicki, Rafael

    2016-01-01

    and experience reported at the IEEE International Conference on Software Engineering (ICGSE) series. The outcomes of our analysis show GSE as a field highly attached to industry and, thus, a considerable share of ICGSE papers address the transfer of Software Engineering concepts and solutions to the global stage...

  9. Software Engineering Education: Some Important Dimensions

    Science.gov (United States)

    Mishra, Alok; Cagiltay, Nergiz Ercil; Kilic, Ozkan

    2007-01-01

    Software engineering education has been emerging as an independent and mature discipline. Accordingly, various studies are being done to provide guidelines for curriculum design. The main focus of these guidelines is around core and foundation courses. This paper summarizes the current problems of software engineering education programs. It also…

  10. Identifying Relevant Studies in Software Engineering

    DEFF Research Database (Denmark)

    Zhang, He; Ali Babar, Muhammad; Tell, Paolo

    2011-01-01

    Context: Systematic literature review (SLR) has become an important research methodology in software engineering since the introduction of evidence-based software engineering (EBSE) in 2004. One critical step in applying this methodology is to design and execute appropriate and effective search s...

  11. Human Factors Analysis in Software Engineering

    Institute of Scientific and Technical Information of China (English)

    Xu Ren-zuo; Ma Ruo-feng; Liu Li-na; Xiong Zhong-wei

    2004-01-01

    The general human factors analysis analyzes human functions, effects and influence in a system. But in a narrow sense, it analyzes human influence upon the reliability of a system, it includes traditional human reliability analysis, human error analysis, man-machine interface analysis, human character analysis, and others. A software development project in software engineering is successful or not to be completely determined by human factors. In this paper, we discuss the human factors intensions, declare the importance of human factors analysis for software engineering by listed some instances. At last, we probe preliminarily into the mentality that a practitioner in software engineering should possess.

  12. Implementing Large Projects in Software Engineering Courses

    Science.gov (United States)

    Coppit, David

    2006-01-01

    In software engineering education, large projects are widely recognized as a useful way of exposing students to the real-world difficulties of team software development. But large projects are difficult to put into practice. First, educators rarely have additional time to manage software projects. Second, classrooms have inherent limitations that…

  13. Effective Software Engineering Leadership for Development Programs

    Science.gov (United States)

    Cagle West, Marsha

    2010-01-01

    Software is a critical component of systems ranging from simple consumer appliances to complex health, nuclear, and flight control systems. The development of quality, reliable, and effective software solutions requires the incorporation of effective software engineering processes and leadership. Processes, approaches, and methodologies for…

  14. Effective Software Engineering Leadership for Development Programs

    Science.gov (United States)

    Cagle West, Marsha

    2010-01-01

    Software is a critical component of systems ranging from simple consumer appliances to complex health, nuclear, and flight control systems. The development of quality, reliable, and effective software solutions requires the incorporation of effective software engineering processes and leadership. Processes, approaches, and methodologies for…

  15. Implementing Large Projects in Software Engineering Courses

    Science.gov (United States)

    Coppit, David

    2006-01-01

    In software engineering education, large projects are widely recognized as a useful way of exposing students to the real-world difficulties of team software development. But large projects are difficult to put into practice. First, educators rarely have additional time to manage software projects. Second, classrooms have inherent limitations that…

  16. Selection of software for mechanical engineering undergraduates

    Energy Technology Data Exchange (ETDEWEB)

    Cheah, C. T.; Yin, C. S.; Halim, T.; Naser, J.; Blicblau, A. S., E-mail: ablicblau@swin.edu.au [Swinburne University of Technology, Faculty of Science Engineering and Technology, PO Box 218 Hawthorn, Victoria, Australia, 3122 (Australia)

    2016-07-12

    A major problem with the undergraduate mechanical course is the limited exposure of students to software packages coupled with the long learning curve on the existing software packages. This work proposes the use of appropriate software packages for the entire mechanical engineering curriculum to ensure students get sufficient exposure real life design problems. A variety of software packages are highlighted as being suitable for undergraduate work in mechanical engineering, e.g. simultaneous non-linear equations; uncertainty analysis; 3-D modeling software with the FEA; analysis tools for the solution of problems in thermodynamics, fluid mechanics, mechanical system design, and solid mechanics.

  17. Selection of software for mechanical engineering undergraduates

    Science.gov (United States)

    Cheah, C. T.; Yin, C. S.; Halim, T.; Naser, J.; Blicblau, A. S.

    2016-07-01

    A major problem with the undergraduate mechanical course is the limited exposure of students to software packages coupled with the long learning curve on the existing software packages. This work proposes the use of appropriate software packages for the entire mechanical engineering curriculum to ensure students get sufficient exposure real life design problems. A variety of software packages are highlighted as being suitable for undergraduate work in mechanical engineering, e.g. simultaneous non-linear equations; uncertainty analysis; 3-D modeling software with the FEA; analysis tools for the solution of problems in thermodynamics, fluid mechanics, mechanical system design, and solid mechanics.

  18. Traceability Method for Software Engineering Documentation

    Directory of Open Access Journals (Sweden)

    Nur Adila Azram

    2012-03-01

    Full Text Available Traceability has been widely discussed in research area. It has been one of interest topic to be research in software engineering. Traceability in software documentation is one of the interesting topics to be research further. It is important in software documentation to trace out the flow or process in all the documents whether they depends with one another or not. In this paper, we present a traceability method for software engineering documentation. The objective of this research is to facilitate in tracing of the software documentation.

  19. Glossary of Software Engineering Laboratory terms

    Science.gov (United States)

    1983-01-01

    A glossary of terms used in the Software Engineering Laboratory (SEL) is given. The terms are defined within the context of the software development environment for flight dynamics at the Goddard Space Flight Center. A concise reference for clarifying the language employed in SEL documents and data collection forms is given. Basic software engineering concepts are explained and standard definitions for use by SEL personnel are established.

  20. Software engineering: What do experiments need

    Energy Technology Data Exchange (ETDEWEB)

    Loken, S.C.

    1992-09-01

    This paper will review the use of software engineering in High Energy Physics experiments and will suggest ways in which that use will change significantly in the future. In Principle, experiments do not need software engineering. We can verify this by looking at a long series of experiments that have succeeded without it. Some experiments that have tried to apply formal engineering methods have given them up before the software was complete. Future experiments, however, face many new challenges in the larger data samples, larger and more distributed collaborations and longer time scales. In addition, new tools are available to aid in the development of complex software systems. It is appropriate, therefore, to examine whether there is now a better match between software engineering and the needs of experiments.

  1. Software engineering: What do experiments need?

    Energy Technology Data Exchange (ETDEWEB)

    Loken, S.C.

    1992-09-01

    This paper will review the use of software engineering in High Energy Physics experiments and will suggest ways in which that use will change significantly in the future. In Principle, experiments do not need software engineering. We can verify this by looking at a long series of experiments that have succeeded without it. Some experiments that have tried to apply formal engineering methods have given them up before the software was complete. Future experiments, however, face many new challenges in the larger data samples, larger and more distributed collaborations and longer time scales. In addition, new tools are available to aid in the development of complex software systems. It is appropriate, therefore, to examine whether there is now a better match between software engineering and the needs of experiments.

  2. Is Chinese software engineering professionalizing or not?

    DEFF Research Database (Denmark)

    Yang, Yan

    2012-01-01

    /methodology/approach: The study starts with the general review of the sociological concept of profession, professional and specialization of knowledge. Together with revealing the critical challenge from the empirical field of software engineering industry regarding its professionalization, a critique of the neglect...... reveals the dynamics in this development process relating to individual, social practice and societal factors. Originality/value: This paper contributes to empirical research of analyzing the professionalization process of software engineering and software engineers in relation to the concept......This paper aims to discuss the challenge for the classical idea of professionalism in understanding the Chinese software engineering industry after giving a close insight into the development of this industry as well as individual engineers with a psycho-societal perspective. Design...

  3. Interdisciplinary Approach to Software Engineering Education

    Directory of Open Access Journals (Sweden)

    Alfred Schaetter

    2009-10-01

    Full Text Available One of the most serious problems in software engineering projects is the communication between users and developers. It is widely recognized that communication problems are a major factor in the delay and failure of software projects. During university education, students are usually well-skilled in programming languages, hard- and software engineering tools and project management. This paper provides theoretical background and some successful examples how we train our students under 'real world' conditions within software projects at the university e.g. to work in teams or to communicate with different stakeholders? Both method and employability result in excellent ratings.

  4. Interdisciplinary Approach to Software Engineering Education

    Directory of Open Access Journals (Sweden)

    Karlheinz Blankenbach

    2009-10-01

    Full Text Available One of the most serious problems in software engineering projects is the communication between users and developers. It is widely recognized that communication problems are a major factor in the delay and failure of software projects. During university education, students are usually well-skilled in programming languages, hard- and software engineering tools and project management. This paper provides theoretical background and some successful examples how we train our students under 'real world' conditions within software projects at the university e.g. to work in teams or to communicate with different stakeholders? Both method and employability result in excellent ratings.

  5. Knowledge-based techniques in software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Jairam, B.N.; Agarwal, A.; Emrich, M.L.

    1988-05-04

    Recent trends in software engineering research focus on the incorporation of AI techniques. The feasibility of an overlap between AI and software engineering is examined. The benefits of merging the two fields are highlighted. The long-term goal is to automate the software development process. Some projects being undertaken towards the attainment of this goal are presented as examples. Finally, research on the Oak Ridge Reservation aimed at developing a knowledge-based software project management aid is presented. 25 refs., 1 tab.

  6. Identifying Relevant Studies in Software Engineering

    DEFF Research Database (Denmark)

    Zhang, He; Ali Babar, Muhammad; Tell, Paolo

    2011-01-01

    Context: Systematic literature review (SLR) has become an important research methodology in software engineering since the introduction of evidence-based software engineering (EBSE) in 2004. One critical step in applying this methodology is to design and execute appropriate and effective search....... Objective: The main objective of the research reported in this paper is to improve the search step of undertaking SLRs in software engineering (SE) by devising and evaluating systematic and practical approaches to identifying relevant studies in SE. Method: We have systematically selected and analytically...

  7. Separation of Concerns in Teaching Software Engineering

    Science.gov (United States)

    Alsmadi, Izzat M.; Dieri, Mahmoud

    Software Engineering is one of the recently evolving subjects in research and education. Instructors and books that are talking about this field of study lack a common ground of what subjects should be covered in teaching introductory or advance courses in this area. In this paper, a proposed ontology for software engineering education is formulated. This ontology divides the software engineering projects and study into different perspectives: projects, products, people, process and tools. Further or deeper levels of abstractions of those fields can be described on levels that depend on the type or level of the course to teach.

  8. Risks Management in Software Engineering

    Directory of Open Access Journals (Sweden)

    Dishek Mankad

    2012-12-01

    Full Text Available Risk management is an action that helps a software development team to understand what kinds of risks are there in software development. Risk is always concern with today’s and yesterday’s uncertainty. It is a potential problem. So, it might happen, it might not. It is better to identify its probability of occurrence.

  9. Software engineering laboratory series: Annotated bibliography of software engineering laboratory literature

    Science.gov (United States)

    Morusiewicz, Linda; Valett, Jon

    1992-01-01

    This document is an annotated bibliography of technical papers, documents, and memorandums produced by or related to the Software Engineering Laboratory. More than 100 publications are summarized. These publications cover many areas of software engineering and range from research reports to software documentation. This document has been updated and reorganized substantially since the original version (SEL-82-006, November 1982). All materials have been grouped into eight general subject areas for easy reference: (1) the Software Engineering Laboratory; (2) the Software Engineering Laboratory: Software Development Documents; (3) Software Tools; (4) Software Models; (5) Software Measurement; (6) Technology Evaluations; (7) Ada Technology; and (8) Data Collection. This document contains an index of these publications classified by individual author.

  10. Software-Engineering Process Simulation (SEPS) model

    Science.gov (United States)

    Lin, C. Y.; Abdel-Hamid, T.; Sherif, J. S.

    1992-01-01

    The Software Engineering Process Simulation (SEPS) model is described which was developed at JPL. SEPS is a dynamic simulation model of the software project development process. It uses the feedback principles of system dynamics to simulate the dynamic interactions among various software life cycle development activities and management decision making processes. The model is designed to be a planning tool to examine tradeoffs of cost, schedule, and functionality, and to test the implications of different managerial policies on a project's outcome. Furthermore, SEPS will enable software managers to gain a better understanding of the dynamics of software project development and perform postmodern assessments.

  11. The present status of software engineering

    CERN Document Server

    Pressman, Roger S

    1991-01-01

    In this seminar, we will discuss the present status and future directions of software engeneering and CASE. Key topics to be discussed include: new paradigms for software engineering; software metrics; process assessment; the current state of analysis and design methods; reusability and re-engineering; formal methods. Among the questions to be answered are: How will software engineering change as the 1990s progress? What are the "technology drivers"? What will analysis, design, coding, testing, quality assurance and software management look like in the year 2000? How will CASE tools evolve in the 1990s and will they be as "integrated" as many people believe? How can you position your Organization to accommodate the coming changes?

  12. Software engineering practices for control system reliability

    Energy Technology Data Exchange (ETDEWEB)

    S. K. Schaffner; K. S White

    1999-04-01

    This paper will discuss software engineering practices used to improve Control System reliability. The authors begin with a brief discussion of the Software Engineering Institute's Capability Maturity Model (CMM) which is a framework for evaluating and improving key practices used to enhance software development and maintenance capabilities. The software engineering processes developed and used by the Controls Group at the Thomas Jefferson National Accelerator Facility (Jefferson Lab), using the Experimental Physics and Industrial Control System (EPICS) for accelerator control, are described. Examples are given of how their procedures have been used to minimized control system downtime and improve reliability. While their examples are primarily drawn from their experience with EPICS, these practices are equally applicable to any control system. Specific issues addressed include resource allocation, developing reliable software lifecycle processes and risk management.

  13. The School Advanced Ventilation Engineering Software (SAVES)

    Science.gov (United States)

    The School Advanced Ventilation Engineering Software (SAVES) package is a tool to help school designers assess the potential financial payback and indoor humidity control benefits of Energy Recovery Ventilation (ERV) systems for school applications.

  14. Software process improvement in the NASA software engineering laboratory

    Science.gov (United States)

    Mcgarry, Frank; Pajerski, Rose; Page, Gerald; Waligora, Sharon; Basili, Victor; Zelkowitz, Marvin

    1994-01-01

    The Software Engineering Laboratory (SEL) was established in 1976 for the purpose of studying and measuring software processes with the intent of identifying improvements that could be applied to the production of ground support software within the Flight Dynamics Division (FDD) at the National Aeronautics and Space Administration (NASA)/Goddard Space Flight Center (GSFC). The SEL has three member organizations: NASA/GSFC, the University of Maryland, and Computer Sciences Corporation (CSC). The concept of process improvement within the SEL focuses on the continual understanding of both process and product as well as goal-driven experimentation and analysis of process change within a production environment.

  15. An Ontology for Software Engineering Education

    Science.gov (United States)

    Ling, Thong Chee; Jusoh, Yusmadi Yah; Adbullah, Rusli; Alwi, Nor Hayati

    2013-01-01

    Software agents communicate using ontology. It is important to build an ontology for specific domain such as Software Engineering Education. Building an ontology from scratch is not only hard, but also incur much time and cost. This study aims to propose an ontology through adaptation of the existing ontology which is originally built based on a…

  16. Supporting Collaboration in Global Software Engineering

    NARCIS (Netherlands)

    Dullemond, K.

    2014-01-01

    More and more, software engineering projects are no longer carried out in a single office building, but instead in multiple dislocated office buildings or even from home. When the development process is distributed between several geographically dispersed locations this is known as Global Software E

  17. Software engineering technology transfer: Understanding the process

    Science.gov (United States)

    Zelkowitz, Marvin V.

    1993-01-01

    Technology transfer is of crucial concern to both government and industry today. In this report, the mechanisms developed by NASA to transfer technology are explored and the actual mechanisms used to transfer software development technologies are investigated. Time, cost, and effectiveness of software engineering technology transfer is reported.

  18. Supporting Collaboration in Global Software Engineering

    NARCIS (Netherlands)

    Dullemond, K.

    2014-01-01

    More and more, software engineering projects are no longer carried out in a single office building, but instead in multiple dislocated office buildings or even from home. When the development process is distributed between several geographically dispersed locations this is known as Global Software

  19. Value Engineering: An Application to Computer Software

    Science.gov (United States)

    1995-06-01

    characteristics? Repns: A software product de-veloped wit’h superior software engineering exhibits all the quality characteristics listed above. Horever, if...of VE in sortware acquisitionfdevelopment (ie. educacion , award programs, designate Govt. savings for use in 77 generating additional savings

  20. Software packages for food engineering needs

    OpenAIRE

    Abakarov, Alik

    2011-01-01

    The graphic user interface (GUI) software packages “ANNEKs” and “OPT-PROx” are developed to meet food engineering needs. “OPT-RROx” (OPTimal PROfile) is software developed to carry out thermal food processing optimization based on the variable retort temperature processing and global optimization technique. “ANNEKs” (Artificial Neural Network Enzyme Kinetics) is software designed for determining the kinetics of enzyme hydrolysis of protein at different initial reaction parameters based on the...

  1. Requirements engineering for software and systems

    CERN Document Server

    Laplante, Phillip A

    2014-01-01

    Solid requirements engineering has increasingly been recognized as the key to improved, on-time and on-budget delivery of software and systems projects. This book provides practical teaching for graduate and professional systems and software engineers. It uses extensive case studies and exercises to help students grasp concepts and techniques. With a focus on software-intensive systems, this text provides a probing and comprehensive review of recent developments in intelligent systems, soft computing techniques, and their diverse applications in manufacturing. The second edition contains 100% revised content and approximately 30% new material

  2. A company perspective on software engineering standards

    Energy Technology Data Exchange (ETDEWEB)

    Steer, R.W.

    1988-01-01

    Software engineering standards, as implemented via formal policies and procedures, have historically been used in the nuclear industry, especially for codes used in the design, analysis, or operation of the plant. Over the past two decades, a significant amount of software has been put in place to perform these functions, while the overall software life cycle has become better understood, more and different computer systems have become available, and industry has become increasingly aware of the advantages gained when these procedures are used in the development and maintenance of this large amount of software. The use of standards and attendant procedures is thus becoming increasingly important as more computerization is taking place, both in the design and the operation of the plant. It is difficult to categorize software used in activities related to nuclear plants in a simple manner. That difficulty is due to the diversity of those uses, with attendant diversity in the methods and procedures used in the production of the software, compounded by a changing business climate in which significant software engineering expertise is being applied to a broader range of applications on a variety of computing systems. The use of standards in the various phases of the production of software thus becomes more difficult as well. This paper discusses the various types of software and the importance of software standards in the development of each of them.

  3. Towards semantic software engineering enviroments

    NARCIS (Netherlands)

    Falbo, R.A.; Guizzardi, G.; Natali, A.; Bertollo, G.; Ruy, F.; Mian, P.; Tortora, G.; Chang, S.K.

    2002-01-01

    Software tools processing partially common set of data should share an understanding of what these data mean. Since ontologies have been used to express formally a shared understanding of information, we argue that they are a way towards Semantic SEEs. In this paper we discuss an ontology-based

  4. Towards semantic software engineering environments

    NARCIS (Netherlands)

    Falbo, R.A.; Guizzardi, G.; Natali, A.; Bertollo, G.; Ruy, F.; Mian, P.; Tortora, G.; Chang, S.-K.

    2002-01-01

    Software tools processing partially common set of data should share an understanding of what these data mean. Since ontologies have been used to express formally a shared understanding of information, we argue that they are a way towards Semantic SEEs. In this paper we discuss an ontology-based appr

  5. Towards semantic software engineering enviroments

    NARCIS (Netherlands)

    Falbo, R.A.; Guizzardi, G.; Natali, A.; Bertollo, G.; Ruy, F.; Mian, P.; Tortora, G.; Chang, S.K.

    2002-01-01

    Software tools processing partially common set of data should share an understanding of what these data mean. Since ontologies have been used to express formally a shared understanding of information, we argue that they are a way towards Semantic SEEs. In this paper we discuss an ontology-based appr

  6. Implementing large projects in software engineering courses

    Science.gov (United States)

    Coppit, David

    2006-03-01

    In software engineering education, large projects are widely recognized as a useful way of exposing students to the real-world difficulties of team software development. But large projects are difficult to put into practice. First, educators rarely have additional time to manage software projects. Second, classrooms have inherent limitations that threaten the realism of large projects. Third, quantitative evaluation of individuals who work in groups is notoriously difficult. As a result, many software engineering courses compromise the project experience by reducing the team sizes, project scope, and risk. In this paper, we present an approach to teaching a one-semester software engineering course in which 20 to 30 students work together to construct a moderately sized (15KLOC) software system. The approach combines carefully coordinated lectures and homeworks, a hierarchical project management structure, modern communication technologies, and a web-based project tracking and individual assessment system. Our approach provides a more realistic project experience for the students, without incurring significant additional overhead for the instructor. We present our experiences using the approach the last 2 years for the software engineering course at The College of William and Mary. Although the approach has some weaknesses, we believe that they are strongly outweighed by the pedagogical benefits.

  7. Using ethnographic methods in software engineering research

    DEFF Research Database (Denmark)

    Sharp, Helen, C.; Dittrich, Yvonne; De Souza, Cleidson

    2010-01-01

    This tutorial provides an overview of the role of ethnography in Software Engineering research. It describes the use of ethnographic methods as a means to provide an in-depth understanding of the socio-technological realities surrounding everyday software development practice. The knowledge gained...... can be used to improve processes, methods and tools as well as develop observed industrial practices. The tutorial begins with a brief historical account of ethnography in the fields of Software Engineering, CSCW, Information Systems and other related areas. This sets the stage for a more in......-depth discussion of methods for data collection and analysis used in ethnographic studies. It then describes how these methods can be and have been used by software engineering researchers to understand developers' work practices, to inform the development of processes, methods and tools and to evaluate...

  8. Software engineering education in medical informatics.

    Science.gov (United States)

    Leven, F J

    1989-11-01

    Requirements and approaches of Software Engineering education in the field of Medical Informatics are described with respect to the impact of (1) experiences characterizing the "software misery", (2) status and tendencies in software methodology, and (3) educational status and needs in computer science education influenced by the controversy "theoretical versus practical education". Special attention is directed toward the growing importance of analysis, design methods, and techniques in the professional spectrum of Medical Informatics, the relevance of general principles of systems engineering in health care, the potential of non-procedural programming paradigms, and the intersection of Artificial Intelligence and education. Realizations of and experiences with programs in the field of Software Engineering are reported with respect to special requirements in Medical Informatics.

  9. Using ethnographic methods in software engineering research

    DEFF Research Database (Denmark)

    Sharp, Helen, C.; Dittrich, Yvonne; De Souza, Cleidson

    2010-01-01

    This tutorial provides an overview of the role of ethnography in Software Engineering research. It describes the use of ethnographic methods as a means to provide an in-depth understanding of the socio-technological realities surrounding everyday software development practice. The knowledge gained......-depth discussion of methods for data collection and analysis used in ethnographic studies. It then describes how these methods can be and have been used by software engineering researchers to understand developers' work practices, to inform the development of processes, methods and tools and to evaluate...... can be used to improve processes, methods and tools as well as develop observed industrial practices. The tutorial begins with a brief historical account of ethnography in the fields of Software Engineering, CSCW, Information Systems and other related areas. This sets the stage for a more in...

  10. Design of software engineering teaching website

    Science.gov (United States)

    Li, Yuxiang; Liu, Xin; Zhang, Guangbin; Liu, Xingshun; Gao, Zhenbo

    "􀀶oftware engineering" is different from the general professional courses, it is born for getting rid of the software crisis and adapting to the development of software industry, it is a theory course, especially a practical course. However, due to the own characteristics of software engineering curriculum, in the daily teaching process, concerning theoretical study, students may feel boring, obtain low interest in learning and poor test results and other problems. ASPNET design technique is adopted and Access 2007 database is used for system to design and realize "Software Engineering" teaching website. System features mainly include theoretical teaching, case teaching, practical teaching, teaching interaction, database, test item bank, announcement, etc., which can enhance the vitality, interest and dynamic role of learning.

  11. Qualitative research methods in Software Engineering

    Directory of Open Access Journals (Sweden)

    Patrick Anya

    2014-12-01

    Full Text Available In the investigation of Software Engineering coexist two different research methods: 1 the quantitative that try to measure and analyze the casual relationship between the variables in a frame with free values, and 2 the qualitative that examine the creation process of meanings from which is generated new theorems or improve. Apply this methods separately in the research in software engineer makes evident that obtain results are incomplete and so is difficult to choose definitively wit which of them embark in a specific research. To approach this problem, in this article are described the quantitative methods as research methods to this engineer, and described its benefits and difficulties.

  12. Progress towards the professionalization of Software Engineering

    Directory of Open Access Journals (Sweden)

    Janeth McAlister

    2014-12-01

    Full Text Available Software Engineer provides a theoretical framework, methods, and tools needed to develop quality software, and has impulse the revolution of Information and Knowledge Society, because without their contributions computers would be just a tool without a specific utility. Furthermore, despite of advances in hardware, the impact and potentiation of technological development just was possible thanks to software products. On the other hand, current Society is starting to be recognize as software–dependent, since in this century software is part of all devices required to manipulated information, and which people used in their daily activities. In this article is presented an analysis to the process of search professionalize software engineer and their products, having as base the work develop since the GSwE2009.

  13. Software Engineering Management for Productivity and Quality

    Energy Technology Data Exchange (ETDEWEB)

    Karen White

    1999-10-01

    Since the advent of electronic computers, people have struggled to develop effective software engineering processes. While these processes are similar to those used by hardware engineers, the software industry has earned a reputation for late delivery of inadequate products. Most software managers are looking for ways to deliver quality products faster, or with fewer resources. The development time and product outcome of any software project can be influenced by four variables: the product characteristics, the people involved, the processes they use, and the underlying technology. In order to have an impact on the productivity of a software development effort, the manager must focus on and balance these areas. This paper will discuss effective ways to improve productivity by using this approach.

  14. How does Software Process Improvement Address Global Software Engineering?

    DEFF Research Database (Denmark)

    Kuhrmann, Marco; Diebold, Philipp; Münch, Jürgen

    2016-01-01

    a systematic mapping study on the state-of-the-art in SPI from a general perspective, we observed Global Software Engineering (GSE) becoming a topic of interest in recent years. Therefore, in this paper, we provide a detailed investigation of those papers from the overall systematic mapping study that were......For decades, Software Process Improvement (SPI) programs have been implemented, inter alia, to improve quality and speed of software development. To set up, guide, and carry out SPI projects, and to measure SPI state, impact, and success, a multitude of different SPI approaches and considerable...... experience are available. SPI addresses many aspects ranging from individual developer skills to entire organizations. It comprises for instance the optimization of specific activities in the software lifecycle as well as the creation of organization awareness and project culture. In the course of conducting...

  15. Computational intelligence and quantitative software engineering

    CERN Document Server

    Succi, Giancarlo; Sillitti, Alberto

    2016-01-01

    In a down-to-the earth manner, the volume lucidly presents how the fundamental concepts, methodology, and algorithms of Computational Intelligence are efficiently exploited in Software Engineering and opens up a novel and promising avenue of a comprehensive analysis and advanced design of software artifacts. It shows how the paradigm and the best practices of Computational Intelligence can be creatively explored to carry out comprehensive software requirement analysis, support design, testing, and maintenance. Software Engineering is an intensive knowledge-based endeavor of inherent human-centric nature, which profoundly relies on acquiring semiformal knowledge and then processing it to produce a running system. The knowledge spans a wide variety of artifacts, from requirements, captured in the interaction with customers, to design practices, testing, and code management strategies, which rely on the knowledge of the running system. This volume consists of contributions written by widely acknowledged experts ...

  16. Approaches and methodologies for mobile software engineering

    Directory of Open Access Journals (Sweden)

    Serena Pastore

    2015-09-01

    Full Text Available The development of software for mobile devices takes place in a dynamic environment where constraints, technologies and user needs change very frequently requiring enhanced approaches and methodologies in software engineering essential to deal with the concept of bring your own device (BYOD. Mobile apps are developed for various purposes in different categories. This paper discusses about the challenges that affect mobile software engineering, specifically for a science educational and outreach aim as regards technologies, approaches and methodologies that could be applied to unlock the full potential of mobility. In particular, it analyzes the main challenges to development in this field, such as dealing with enhanced connectivity and networking protocols (e.g., from Bluetooth Low Energy, IEEE 802.15.4-based protocols and new Wi-Fi versions and the fragmented ecosystem of mobile platforms. Moreover, it addresses the possible application of specific development methodologies such as Agile software methods.

  17. Diversification and Challenges of Software Engineering Standards

    Science.gov (United States)

    Poon, Peter T.

    1994-01-01

    The author poses certain questions in this paper: 'In the future, should there be just one software engineering standards set? If so, how can we work towards that goal? What are the challenges of internationalizing standards?' Based on the author's personal view, the statement of his position is as follows: 'There should NOT be just one set of software engineering standards in the future. At the same time, there should NOT be the proliferation of standards, and the number of sets of standards should be kept to a minimum.It is important to understand the diversification of the areas which are spanned by the software engineering standards.' The author goes on to describe the diversification of processes, the diversification in the national and international character of standards organizations, the diversification of the professional organizations producing standards, the diversification of the types of businesses and industries, and the challenges of internationalizing standards.

  18. The ATLAS Data Management Software Engineering Process

    CERN Document Server

    Lassnig, M; The ATLAS collaboration; Stewart, G A; Barisits, M; Beermann, T; Vigne, R; Serfon, C; Goossens, L; Nairz, A; Molfetas, A

    2014-01-01

    Rucio is the next-generation data management system of the ATLAS experiment. The software engineering process to develop Rucio is fundamentally different to existing software development approaches in the ATLAS distributed computing community. Based on a conceptual design document, development takes place using peer-reviewed code in a test-driven environment. The main objectives are to ensure that every engineer understands the details of the full project, even components usually not touched by them, that the design and architecture are coherent, that temporary contributors can be productive without delay, that programming mistakes are prevented before being committed to the source code, and that the source is always in a fully functioning state. This contribution will illustrate the workflows and products used, and demonstrate the typical development cycle of a component from inception to deployment within this software engineering process. Next to the technological advantages, this contribution will also hi...

  19. The ATLAS Data Management Software Engineering Process

    CERN Document Server

    Lassnig, M; The ATLAS collaboration; Stewart, G A; Barisits, M; Beermann, T; Vigne, R; Serfon, C; Goossens, L; Nairz, A

    2013-01-01

    Rucio is the next-generation data management system of the ATLAS experiment. The software engineering process to develop Rucio is fundamentally different to existing software development approaches in the ATLAS distributed computing community. Based on a conceptual design document, development takes place using peer-reviewed code in a test-driven environment. The main objectives are to ensure that every engineer understands the details of the full project, even components usually not touched by them, that the design and architecture are coherent, that temporary contributors can be productive without delay, that programming mistakes are prevented before being committed to the source code, and that the source is always in a fully functioning state. This contribution will illustrate the workflows and products used, and demonstrate the typical development cycle of a component from inception to deployment within this software engineering process. Next to the technological advantages, this contribution will also hi...

  20. Proceedings of the 11th international conference on software engineering

    Energy Technology Data Exchange (ETDEWEB)

    1989-01-01

    These proceedings cover the papers presented at the 11th international conference on the subject of software engineering. The topics covered are: Software development environments 1; analysis techniques; specification to design; a twenty year retrospective of the NATO software engineering conferences; knowledge base and formal approaches; software and business applications; softwares in the year 2001; process modeling; and software CAD database workshop.

  1. Automated software engineering planning with SASEA

    Energy Technology Data Exchange (ETDEWEB)

    Lawlis, P.K. [C.J. Kemp Systems, Inc., Fairborn, OH (United States); Hoffman, C.L. [Lockheed Martin Idaho Technologies Co., Idaho Falls, ID (United States). Idaho National Engineering and Environmental Lab.

    1998-07-01

    Planning for effective software engineering is not easy, and software project managers would usually welcome assistance in this area. Very effective assistance could be provided by automated tools that are decision aids. However, a comprehensive suite of such tools does not yet exist. One area that has been addressed is the selection of a programming language. This paper discusses in detail a decision tool that has been developed for language selection. It also addresses the areas in which other such tools are required.

  2. Repository-based software engineering program

    Science.gov (United States)

    Wilson, James

    1992-01-01

    The activities performed during September 1992 in support of Tasks 01 and 02 of the Repository-Based Software Engineering Program are outlined. The recommendations and implementation strategy defined at the September 9-10 meeting of the Reuse Acquisition Action Team (RAAT) are attached along with the viewgraphs and reference information presented at the Institute for Defense Analyses brief on legal and patent issues related to software reuse.

  3. Software Engineering applied to Manufacturing Problems

    Directory of Open Access Journals (Sweden)

    Jorge A. Ruiz-Vanoye

    2010-05-01

    Full Text Available Optimization approaches have traditionally been viewed as tools for solving manufacturing problems, the optimization approach is not suitable for many problems arising in modern manufacturing systems due to their complexity and involvement of qualitative factors. In this paper we use a tool of software engineering applied to manufacturing problems. We use the Heuristics Lab software to determine and analyze the solution obtained for Manufacturing Problems.

  4. Agent-oriented Software Engineering

    Institute of Scientific and Technical Information of China (English)

    GUAN Xu; CHENG Ming; LIU Bao

    2001-01-01

    An increasing number of computer systems are being viewed in terms of autonomous agents.Most people believe that agent-oriented approach is well suited to design and build complex systems. Yet. todate, little effort had been devoted to discuss the advantages of agent-oriented approach as a mainstreamsoftware engineering paradigm. Here both of this issues and the relation between object-oriented and agent-oriented will be argued. we describe an agent-oriented methodology and provide a quote for designing anauction system.

  5. Software engineering and the role of Ada: Executive seminar

    Science.gov (United States)

    Freedman, Glenn B.

    1987-01-01

    The objective was to introduce the basic terminology and concepts of software engineering and Ada. The life cycle model is reviewed. The application of the goals and principles of software engineering is applied. An introductory understanding of the features of the Ada language is gained. Topics addressed include: the software crises; the mandate of the Space Station Program; software life cycle model; software engineering; and Ada under the software engineering umbrella.

  6. Some Future Software Engineering Opportunities and Challenges

    Science.gov (United States)

    Boehm, Barry

    This paper provides an update and extension of a 2006 paper, “Some Future Trends and Implications for Systems and Software Engineering Processes,” Systems Engineering, Spring 2006. Some of its challenges and opportunities are similar, such as the need to simultaneously achieve high levels of both agility and assurance. Others have emerged as increasingly important, such as the challenges of dealing with ultralarge volumes of data, with multicore chips, and with software as a service. The paper is organized around eight relatively surprise-free trends and two “wild cards” whose trends and implications are harder to foresee. The eight surprise-free trends are:

  7. Collected software engineering papers, volume 11

    Science.gov (United States)

    1993-01-01

    This document is a collection of selected technical papers produced by participants in the Software Engineering Laboratory (SEL) from November 1992 through November 1993. The purpose of the document is to make available, in one reference, some results of SEL research that originally appeared in a number of different forums. This is the 11th such volume of technical papers produced by the SEL. Although these papers cover several topics related to software engineering, they do not encompass the entire scope of SEL activities and interests. Additional information about the SEL and its research efforts may be obtained from the sources listed in the bibliography at the end of this document.

  8. Collected software engineering papers, volume 12

    Science.gov (United States)

    1994-01-01

    This document is a collection of selected technical papers produced by participants in the Software Engineering Laboratory (SEL) from November 1993 through October 1994. The purpose of the document is to make available, in one reference, some results of SEL research that originally appeared in a number of different forums. This is the 12th such volume of technical papers produced by the SEL. Although these papers cover several topics related to software engineering, they do not encompass the entire scope of SEL activities and interests. Additional information about the SEL and its research efforts may be obtained from the sources listed in the bibliography at the end of this document.

  9. The Research of Software Engineering Curriculum Reform

    Science.gov (United States)

    Kuang, Li-Qun; Han, Xie

    With the problem that software engineering training can't meet the needs of the community, this paper analysis some outstanding reasons in software engineering curriculum teaching, such as old teaching contents, weak in practice and low quality of teachers etc. We propose the methods of teaching reform as guided by market demand, update the teaching content, optimize the teaching methods, reform the teaching practice, strengthen the teacher-student exchange and promote teachers and students together. We carried out the reform and explore positive and achieved the desired results.

  10. C1 compounds as auxiliary substrate for engineered Pseudomonas putida S12

    NARCIS (Netherlands)

    Koopman, F.W.; Winde, J.H. de; Ruijssenaars, H.J.

    2009-01-01

    The solvent-tolerant bacterium Pseudomonas putida S12 was engineered to efficiently utilize the C1 compounds methanol and formaldehyde as auxiliary substrate. The hps and phi genes of Bacillus brevis, encoding two key steps of the ribulose monophosphate (RuMP) pathway, were introduced to construct a

  11. Requirements Engineering for Software Integrity and Safety

    Science.gov (United States)

    Leveson, Nancy G.

    2002-01-01

    Requirements flaws are the most common cause of errors and software-related accidents in operational software. Most aerospace firms list requirements as one of their most important outstanding software development problems and all of the recent, NASA spacecraft losses related to software (including the highly publicized Mars Program failures) can be traced to requirements flaws. In light of these facts, it is surprising that relatively little research is devoted to requirements in contrast with other software engineering topics. The research proposed built on our previous work. including both criteria for determining whether a requirements specification is acceptably complete and a new approach to structuring system specifications called Intent Specifications. This grant was to fund basic research on how these ideas could be extended to leverage innovative approaches to the problems of (1) reducing the impact of changing requirements, (2) finding requirements specification flaws early through formal and informal analysis, and (3) avoiding common flaws entirely through appropriate requirements specification language design.

  12. Software engineering processes for Class D missions

    Science.gov (United States)

    Killough, Ronnie; Rose, Debi

    2013-09-01

    Software engineering processes are often seen as anathemas; thoughts of CMMI key process areas and NPR 7150.2A compliance matrices can motivate a software developer to consider other career fields. However, with adequate definition, common-sense application, and an appropriate level of built-in flexibility, software engineering processes provide a critical framework in which to conduct a successful software development project. One problem is that current models seem to be built around an underlying assumption of "bigness," and assume that all elements of the process are applicable to all software projects regardless of size and tolerance for risk. This is best illustrated in NASA's NPR 7150.2A in which, aside from some special provisions for manned missions, the software processes are to be applied based solely on the criticality of the software to the mission, completely agnostic of the mission class itself. That is, the processes applicable to a Class A mission (high priority, very low risk tolerance, very high national significance) are precisely the same as those applicable to a Class D mission (low priority, high risk tolerance, low national significance). This paper will propose changes to NPR 7150.2A, taking mission class into consideration, and discuss how some of these changes are being piloted for a current Class D mission—the Cyclone Global Navigation Satellite System (CYGNSS).

  13. Automatic program generation: future of software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Robinson, J.H.

    1979-01-01

    At this moment software development is still more of an art than an engineering discipline. Each piece of software is lovingly engineered, nurtured, and presented to the world as a tribute to the writer's skill. When will this change. When will the craftsmanship be removed and the programs be turned out like so many automobiles from an assembly line. Sooner or later it will happen: economic necessities will demand it. With the advent of cheap microcomputers and ever more powerful supercomputers doubling capacity, much more software must be produced. The choices are to double the number of programers, double the efficiency of each programer, or find a way to produce the needed software automatically. Producing software automatically is the only logical choice. How will automatic programing come about. Some of the preliminary actions which need to be done and are being done are to encourage programer plagiarism of existing software through public library mechanisms, produce well understood packages such as compiler automatically, develop languages capable of producing software as output, and learn enough about the whole process of programing to be able to automate it. Clearly, the emphasis must not be on efficiency or size, since ever larger and faster hardware is coming.

  14. Proceedings of the Thirteenth Annual Software Engineering Workshop

    Science.gov (United States)

    1988-01-01

    Topics covered in the workshop included studies and experiments conducted in the Software Engineering Laboratory (SEL), a cooperative effort of NASA Goddard Space Flight Center, the University of Maryland, and Computer Sciences Corporation; software models; software products; and software tools.

  15. Software engineering and automatic continuous verification of scientific software

    Science.gov (United States)

    Piggott, M. D.; Hill, J.; Farrell, P. E.; Kramer, S. C.; Wilson, C. R.; Ham, D.; Gorman, G. J.; Bond, T.

    2011-12-01

    Software engineering of scientific code is challenging for a number of reasons including pressure to publish and a lack of awareness of the pitfalls of software engineering by scientists. The Applied Modelling and Computation Group at Imperial College is a diverse group of researchers that employ best practice software engineering methods whilst developing open source scientific software. Our main code is Fluidity - a multi-purpose computational fluid dynamics (CFD) code that can be used for a wide range of scientific applications from earth-scale mantle convection, through basin-scale ocean dynamics, to laboratory-scale classic CFD problems, and is coupled to a number of other codes including nuclear radiation and solid modelling. Our software development infrastructure consists of a number of free tools that could be employed by any group that develops scientific code and has been developed over a number of years with many lessons learnt. A single code base is developed by over 30 people for which we use bazaar for revision control, making good use of the strong branching and merging capabilities. Using features of Canonical's Launchpad platform, such as code review, blueprints for designing features and bug reporting gives the group, partners and other Fluidity uers an easy-to-use platform to collaborate and allows the induction of new members of the group into an environment where software development forms a central part of their work. The code repositoriy are coupled to an automated test and verification system which performs over 20,000 tests, including unit tests, short regression tests, code verification and large parallel tests. Included in these tests are build tests on HPC systems, including local and UK National HPC services. The testing of code in this manner leads to a continuous verification process; not a discrete event performed once development has ceased. Much of the code verification is done via the "gold standard" of comparisons to analytical

  16. Domain Engineering - A Software Engineering discipline in Need of Research

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2000-01-01

    Before software can be developed its requirements must be stated. Before requirements can be expressed the application domain must be understood. In this paper we outline some of the basic facets of domain engineering. Domains seem, it is our experience, far more stable than computing requirements......, and these again seem more stable than software designs. Thus, almost like the universal laws of physics, it pays off to first develop theories of domains. But domain engineering, as in fact also requirements engineering, really is in need of thoroughly researched development principles, techniques and tools....... The aim of this paper is to advocate: that researchers study these development method components, and that universities focus their education on basing well-nigh any course on the use of formal techniques: Specification and verification, and that software engineers take heed: Start applying formal...

  17. Software Development for EECU Platform of Turbofan Engine

    Science.gov (United States)

    Kim, Bo Gyoung; Kwak, Dohyup; Kim, Byunghyun; Choi, Hee ju; Kong, Changduk

    2017-04-01

    The turbofan engine operation consists of a number of hardware and software. The engine is controlled by Electronic Engine Control Unit (EECU). In order to control the engine, EECU communicates with an aircraft system, Actuator Drive Unit (ADU), Engine Power Unit (EPU) and sensors on the engine. This paper tried to investigate the process form starting to taking-off and aims to design the EECU software mode and defined communication data format. The software is implemented according to the designed software mode.

  18. International Conference on Software Engineering, Knowledge Engineering and Information Engineering (SEKEIE 2012)

    CERN Document Server

    Software Engineering and Knowledge Engineering: Theory and Practice

    2012-01-01

    2012 International Conference on Software Engineering, Knowledge Engineering and Information Engineering (SEKEIE 2012) will be held in Macau, April 1-2, 2012 . This conference will bring researchers and experts from the three areas of Software Engineering, Knowledge Engineering and Information Engineering together to share their latest research results and ideas.   This volume book covered significant recent developments in the Software Engineering, Knowledge Engineering and Information Engineering field, both theoretical and applied. We are glad this conference attracts your attentions, and thank your support to our conference. We will absorb remarkable suggestion, and make our conference more successful and perfect.

  19. Revisiting the Global Software Engineering Terminology

    DEFF Research Database (Denmark)

    Tell, Paolo; Giuffrida, Rosalba; Shah, Hina

    2013-01-01

    Even though Global Software Engineering (GSE) has been a research topic of interest for many years, some of its ground terminology is still lacking a unified, coherent, and shared definition and/or classification. The purpose of this report is to collect, outline, and relate several fundamental...

  20. Software Engineering for Multi-core Platforms

    NARCIS (Netherlands)

    Arbab, F.; Jongmans, S.-S.T.Q.

    2012-01-01

    Decades after Turing proposed his model of computation, we still lack suitable means to tackle the complexity of getting more than a few Turing Machines to interact with one another in a verifiably coherent manner. This dearth currently hampers software engineering in unleashing the full potential o

  1. Engineering software development with HyperCard

    Science.gov (United States)

    Darko, Robert J.

    1990-01-01

    The successful and unsuccessful techniques used in the development of software using HyperCard are described. The viability of the HyperCard for engineering is evaluated and the future use of HyperCard by this particular group of developers is discussed.

  2. Integrating interface slicing into software engineering processes

    Science.gov (United States)

    Beck, Jon

    1993-01-01

    Interface slicing is a tool which was developed to facilitate software engineering. As previously presented, it was described in terms of its techniques and mechanisms. The integration of interface slicing into specific software engineering activities is considered by discussing a number of potential applications of interface slicing. The applications discussed specifically address the problems, issues, or concerns raised in a previous project. Because a complete interface slicer is still under development, these applications must be phrased in future tenses. Nonetheless, the interface slicing techniques which were presented can be implemented using current compiler and static analysis technology. Whether implemented as a standalone tool or as a module in an integrated development or reverse engineering environment, they require analysis no more complex than that required for current system development environments. By contrast, conventional slicing is a methodology which, while showing much promise and intuitive appeal, has yet to be fully implemented in a production language environment despite 12 years of development.

  3. Software Engineering Technology Infusion Within NASA

    Science.gov (United States)

    Zelkowitz, Marvin V.

    1996-01-01

    Abstract technology transfer is of crucial concern to both government and industry today. In this paper, several software engineering technologies used within NASA are studied, and the mechanisms, schedules, and efforts at transferring these technologies are investigated. The goals of this study are: 1) to understand the difference between technology transfer (the adoption of a new method by large segments of an industry) as an industry-wide phenomenon and the adoption of a new technology by an individual organization (called technology infusion); and 2) to see if software engineering technology transfer differs from other engineering disciplines. While there is great interest today in developing technology transfer models for industry, it is the technology infusion process that actually causes changes in the current state of the practice.

  4. Software Engineering Technology Infusion Within NASA

    Science.gov (United States)

    Zelkowitz, Marvin V.

    1996-01-01

    Abstract technology transfer is of crucial concern to both government and industry today. In this paper, several software engineering technologies used within NASA are studied, and the mechanisms, schedules, and efforts at transferring these technologies are investigated. The goals of this study are: 1) to understand the difference between technology transfer (the adoption of a new method by large segments of an industry) as an industry-wide phenomenon and the adoption of a new technology by an individual organization (called technology infusion); and 2) to see if software engineering technology transfer differs from other engineering disciplines. While there is great interest today in developing technology transfer models for industry, it is the technology infusion process that actually causes changes in the current state of the practice.

  5. Multiversion databases -- support for software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Cellary, W.; Rykowski, J. [EFP - the Franco-Polish School of New Information and Communication Technologies, Poznan (Poland)

    1996-12-31

    A data model for software engineering databases is proposed, which permits modeling time evolution, alternative ways of development and different forms of software components and elements of software development processes. Time evolution is modeled by the use of revisions. Variants are used to model alternative ways of development, while representations - different forms of software components. Versioning is applied to configurations defined as sets of consistent object versions, instead of separate objects. Each configuration is a revision, a variant and a representation at the same time, which makes a database the three-dimensional space of configurations. Each database dimension is characterized by specific operations: revisions by logical copying, variants by group operations, and representations by derivation. A distinction is made between logical object versions, which compose configurations, and physical ones, which are stored in the database.

  6. Collected software engineering papers, volume 6

    Science.gov (United States)

    1988-01-01

    A collection is presented of technical papers produced by participants in the Software Engineering Laboratory (SEL) during the period 1 Jun. 1987 to 1 Jan. 1989. The purpose of the document is to make available, in one reference, some results of SEL research that originally appeared in a number of different forums. For the convenience of this presentation, the twelve papers contained here are grouped into three major categories: (1) Software Measurement and Technology Studies; (2) Measurement Environment Studies; and (3) Ada Technology Studies. The first category presents experimental research and evaluation of software measurement and technology; the second presents studies on software environments pertaining to measurement. The last category represents Ada technology and includes research, development, and measurement studies.

  7. Collected software engineering papers, volume 7

    Science.gov (United States)

    1989-01-01

    A collection is presented of selected technical papers produced by participants in the Software Engineering Laboratory (SEL) during the period Dec. 1988 to Oct. 1989. The purpose of the document is to make available, in one reference, some results of SEL research that originally appeared in a number of different forums. For the convenience of this presentation, the seven papers contained here are grouped into three major categories: (1) Software Measurement and Technology Studies; (2) Measurement Environment Studies; and (3) Ada Technology Studies. The first category presents experimental research and evaluation of software measurement and technology; the second presents studies on software environments pertaining to measurement. The last category represents Ada technology and includes research, development, and measurement studies.

  8. Parallelization of Rocket Engine System Software (Press)

    Science.gov (United States)

    Cezzar, Ruknet

    1996-01-01

    The main goal is to assess parallelization requirements for the Rocket Engine Numeric Simulator (RENS) project which, aside from gathering information on liquid-propelled rocket engines and setting forth requirements, involve a large FORTRAN based package at NASA Lewis Research Center and TDK software developed by SUBR/UWF. The ultimate aim is to develop, test, integrate, and suitably deploy a family of software packages on various aspects and facets of rocket engines using liquid-propellants. At present, all project efforts by the funding agency, NASA Lewis Research Center, and the HBCU participants are disseminated over the internet using world wide web home pages. Considering obviously expensive methods of actual field trails, the benefits of software simulators are potentially enormous. When realized, these benefits will be analogous to those provided by numerous CAD/CAM packages and flight-training simulators. According to the overall task assignments, Hampton University's role is to collect all available software, place them in a common format, assess and evaluate, define interfaces, and provide integration. Most importantly, the HU's mission is to see to it that the real-time performance is assured. This involves source code translations, porting, and distribution. The porting will be done in two phases: First, place all software on Cray XMP platform using FORTRAN. After testing and evaluation on the Cray X-MP, the code will be translated to C + + and ported to the parallel nCUBE platform. At present, we are evaluating another option of distributed processing over local area networks using Sun NFS, Ethernet, TCP/IP. Considering the heterogeneous nature of the present software (e.g., first started as an expert system using LISP machines) which now involve FORTRAN code, the effort is expected to be quite challenging.

  9. Computer Aided Software Engineering (CASE) Environment Issues.

    Science.gov (United States)

    1987-06-01

    evelopment process for the understanding required. to change a sof’tw-are ~.se. Thev need to be ablc to repeat testing and co mpare results to origenal tests...dccade software engineering methodologies, tools and environments I-a-,e e- plcded on the market offering and delivering partial solutions to the soft\\ are...hegan conu’nd:::e a laree market share. As software eneineers came to grips with tlhe so:w,are problem. more compiex intercperable toolsets appeared

  10. What's Happening in the Software Engineering Laboratory?

    Science.gov (United States)

    Pajerski, Rose; Green, Scott; Smith, Donald

    1995-01-01

    Since 1976 the Software Engineering Laboratory (SEL) has been dedicated to understanding and improving the way in which one NASA organization the Flight Dynamics Division (FDD) at Goddard Space Flight Center, develops, maintains, and manages complex flight dynamics systems. This paper presents an overview of recent activities and studies in SEL, using as a framework the SEL's organizational goals and experience based software improvement approach. It focuses on two SEL experience areas : (1) the evolution of the measurement program and (2) an analysis of three generations of Cleanroom experiments.

  11. What's Happening in the Software Engineering Laboratory?

    Science.gov (United States)

    Pajerski, Rose; Green, Scott; Smith, Donald

    1995-01-01

    Since 1976 the Software Engineering Laboratory (SEL) has been dedicated to understanding and improving the way in which one NASA organization the Flight Dynamics Division (FDD) at Goddard Space Flight Center, develops, maintains, and manages complex flight dynamics systems. This paper presents an overview of recent activities and studies in SEL, using as a framework the SEL's organizational goals and experience based software improvement approach. It focuses on two SEL experience areas : (1) the evolution of the measurement program and (2) an analysis of three generations of Cleanroom experiments.

  12. Automotive Software Engineering. Fundamentals, processes, methods, tools; Automotive Software Engineering. Grundlagen, Prozesse, Methoden und Werkzeuge

    Energy Technology Data Exchange (ETDEWEB)

    Schaeuffele, J.; Zurawka, T.

    2003-07-01

    The book presents fundamentals and practical examples of processes, methods and tools to ensure safe operation of electronic systems and software in motor vehicles. The focus is on the electronic systems of the powertrain, suspension and ar body. Contents: The overall system of car, driver and environment; Fundamentals; Processes for development of electronic systems and software; Methods and tools for the development, production and servicing of electronic systems. The book addresses staff members of motor car producers and suppliers of electronic systems and software, as well as students of computer science, electrical and mechanical engineering specifying in car engineering, control engineering, mechatronics and software engineering. [German] Dieses Buch enthaelt Grundlagen und praktische Beispiele zu Prozessen, Methoden und Werkzeugen, die zur sicheren Beherrschbarkeit von elektronischen Systemen und Software im Fahrzeug beitragen. Dabei stehen die elektronischen Systeme des Antriebsstrangs, des Fahrwerks und der Karosserie im Vordergrund. Zum Inhalt gehoeren die folgenden Rubriken: Gesamtsystem Fahrzeug-Fahrer-Umwelt - Grundlagen - Prozesse zur Entwicklung von elektronischen Systemen und Software - Methoden und Werkzeuge fuer die Entwicklung, die Produktion un den Service elektronischer Systeme. Das Buch richtet sich an alle Mitarbeiter von Fahrzeugherstellern und Zulieferern, die sich mit elektornischen Systemen und Software im Fahrzeug beschaeftigen. Studierende der Informatik, der Elektrotechnik oder des Maschinenbaus mit den Schwerpunkten Fahrzeugtechnik, Steuerungs- und Regelungstechnik, Mechatronik oder Software-Technik. (orig.)

  13. Computer Aided Software Engineering workstation evaluation

    Energy Technology Data Exchange (ETDEWEB)

    Kotcher, D.A.; Parish, R.B.; Sisson, A.M.; Wenzel, W.A.; Wiancko, B.E.

    1988-09-14

    This report presents an evaluation of interconnected high performance workstations. The evaluation specifically addresses the benefits to personnel engaged in Computer Aided Software Engineering (CASE) for the design and development of computer software aided by computer workstations. To narrow the scope of the CASE evaluation to a reasonable size, the class of workstations considered was limited to units having the following minimum capabilities: speed to issue 2 to 3 million instructions per second (Mips), 4 megabytes (MB) of central memory, 140 MB of local disk storage, a monitor with 1024 by 960 graphics resolution, and Ethernet compatibility. In addition, software requirements included a virtual memory implementation of the UNIX operating system, the defacto standard networking Transmission Control Protocol and Internet Protocol (TCP/IP), and the network file system (NFS). Support of selected third-party software, such as the TEMPLATE graphics software, and robust tools for software development were also required. These criteria are justified by the use of workstations for maintenance and support of large mainframe based FORTRAN computer programs. The evaluation concluded that workstations are excellent tools for CASE. 1 ref., 1 fig., 6 tabs.

  14. Do Software Languages Engineers Evaluate their Languages?

    CERN Document Server

    Gabriel, Pedro; Amaral, Vasco

    2011-01-01

    Domain Specific Languages (DSLs) can contribute to increment productivity, while reducing the required maintenance and programming expertise. We hypothesize that Software Languages Engineering (SLE) developers consistently skip, or relax, Language Evaluation. Based on the experience of engineering other types of software products, we assume that this may potentially lead to the deployment of inadequate languages. The fact that the languages already deal with concepts from the problem domain, and not the solution domain, is not enough to validate several issues at stake, such as its expressiveness, usability, effectiveness, maintainability, or even the domain expert's productivity while using them. We present a systematic review on articles published in top ranked venues, from 2001 to 2008, which report DSLs' construction, to characterize the common practice. This work con?rms our initial hypothesis and lays the ground for the discussion on how to include a systematic approach to DSL evaluation in the SLE proc...

  15. Informal Aggregation Technique for Software Engineering Experiments

    Directory of Open Access Journals (Sweden)

    Babatunde K. Olorisade

    2012-09-01

    Full Text Available One of the bases for development and standardization in any discipline is continuous empirical verification of knowledge. Thus, empirical replication is required to validate or establish experimental results. When these replications occur, there is also a need to synthesize the different results for a common result. Software Engineering experiments usually fall short of the requirements of the meta-analysis techniques currently in use for this purpose either in number, report or even design. Therefore, there is a need for a less rigorous technique that could serve even as a temporary tool but suitable to software engineering studies and also usable. This study presents an alternative less rigorous aggregation techniques that systematically synthesize the statistic ANOVA results by grouping treatments with seemingly equal level of evidence together. Each group is then ranked on an ordinal scale, grouped and interpreted.

  16. Reference and Structure of Software Engineering Theories

    OpenAIRE

    Silva, Andrés

    2016-01-01

    This paper tries to contribute towards the solution of an important question raised in the SE literature: What is a Software Engineering (SE) specific theory? Which are the main features of a theory that is endemic to SE? In this paper we will use 'theory' as the term is used in traditional sciences. Other uses of the term 'theory' are discussed. Finally, we propose to focus on the reference class and on the structuring of SE theories as a basis for further progress.

  17. The ATLAS data management software engineering process

    Science.gov (United States)

    Lassnig, M.; Garonne, V.; Stewart, G. A.; Barisits, M.; Beermann, T.; Vigne, R.; Serfon, C.; Goossens, L.; Nairz, A.; Molfetas, A.; Atlas Collaboration

    2014-06-01

    Rucio is the next-generation data management system of the ATLAS experiment. The software engineering process to develop Rucio is fundamentally different to existing software development approaches in the ATLAS distributed computing community. Based on a conceptual design document, development takes place using peer-reviewed code in a test-driven environment. The main objectives are to ensure that every engineer understands the details of the full project, even components usually not touched by them, that the design and architecture are coherent, that temporary contributors can be productive without delay, that programming mistakes are prevented before being committed to the source code, and that the source is always in a fully functioning state. This contribution will illustrate the workflows and products used, and demonstrate the typical development cycle of a component from inception to deployment within this software engineering process. Next to the technological advantages, this contribution will also highlight the social aspects of an environment where every action is subject to detailed scrutiny.

  18. On teaching software engineering based on formal techniques

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2001-01-01

    thoughts about and plans for a different software engineering text book peter Lucas Farewell Symposium......thoughts about and plans for a different software engineering text book peter Lucas Farewell Symposium...

  19. On teaching software engineering based on formal techniques

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2001-01-01

    thoughts about and plans for a different software engineering text book peter Lucas Farewell Symposium......thoughts about and plans for a different software engineering text book peter Lucas Farewell Symposium...

  20. Data systems and computer science: Software Engineering Program

    Science.gov (United States)

    Zygielbaum, Arthur I.

    1991-01-01

    An external review of the Integrated Technology Plan for the Civil Space Program is presented. This review is specifically concerned with the Software Engineering Program. The goals of the Software Engineering Program are as follows: (1) improve NASA's ability to manage development, operation, and maintenance of complex software systems; (2) decrease NASA's cost and risk in engineering complex software systems; and (3) provide technology to assure safety and reliability of software in mission critical applications.

  1. Domain Engineering - A Software Engineering discipline in Need of Research

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2000-01-01

    Before software can be developed its requirements must be stated. Before requirements can be expressed the application domain must be understood. In this paper we outline some of the basic facets of domain engineering. Domains seem, it is our experience, far more stable than computing requirements......, and these again seem more stable than software designs. Thus, almost like the universal laws of physics, it pays off to first develop theories of domains. But domain engineering, as in fact also requirements engineering, really is in need of thoroughly researched development principles, techniques and tools...... techniques. A brief example of describing stake-holder perspectives will be given - on the background of which we then proceed to survey the notions of domain intrinsics, domain support technologies, domain management & organisation, domain rules & regulations, domain human behaviour, etc. We show elsewhere...

  2. Software Engineering and Knowledge Engineering Theory and Practice Volume 2

    CERN Document Server

    2012-01-01

    The volume includes a set of selected papers extended and revised from the I2009 Pacific-Asia Conference on Knowledge Engineering and Software Engineering (KESE 2009) was held on December 19~ 20, 2009, Shenzhen, China.   Volume 2 is to provide a forum for researchers, educators, engineers, and government officials involved in the general areas of Knowledge Engineering and Communication Technology to disseminate their latest research results and exchange views on the future research directions of these fields. 135 high-quality papers are included in the volume. Each paper has been peer-reviewed by at least 2 program committee members and selected by the volume editor Prof.Yanwen Wu.   On behalf of the this volume, we would like to express our sincere appreciation to all of authors and referees for their efforts reviewing the papers. Hoping you can find lots of profound research ideas and results on the related fields of Knowledge Engineering and Communication Technology. 

  3. Applying Software Engineering Methodology for Designing Biomedical Software Devoted To Electronic Instrumentation

    OpenAIRE

    2012-01-01

    Problem statement: Significant effort goes into the development of biomedical software, which is integrated with computers/processors, sensors and electronic instrumentation devoted to a specific application. However, the scientific work on electronic instrumentation controlled by biomedical software has not emphasized software development, instead focusing mainly on electronics engineering. The development team is rarely composed of Software Engineering (SE) experts. Usually, a commercial au...

  4. Property-Based Software Engineering Measurement

    Science.gov (United States)

    Briand, Lionel C.; Morasca, Sandro; Basili, Victor R.

    1997-01-01

    Little theory exists in the field of software system measurement. Concepts such as complexity, coupling, cohesion or even size are very often subject to interpretation and appear to have inconsistent definitions in the literature. As a consequence, there is little guidance provided to the analyst attempting to define proper measures for specific problems. Many controversies in the literature are simply misunderstandings and stem from the fact that some people talk about different measurement concepts under the same label (complexity is the most common case). There is a need to define unambiguously the most important measurement concepts used in the measurement of software products. One way of doing so is to define precisely what mathematical properties characterize these concepts, regardless of the specific software artifacts to which these concepts are applied. Such a mathematical framework could generate a consensus in the software engineering community and provide a means for better communication among researchers, better guidelines for analysts, and better evaluation methods for commercial static analyzers for practitioners. In this paper, we propose a mathematical framework which is generic, because it is not specific to any particular software artifact and rigorous, because it is based on precise mathematical concepts. We use this framework to propose definitions of several important measurement concepts (size, length, complexity, cohesion, coupling). It does not intend to be complete or fully objective; other frameworks could have been proposed and different choices could have been made. However, we believe that the formalisms and properties we introduce are convenient and intuitive. This framework contributes constructively to a firmer theoretical ground of software measurement.

  5. Property-Based Software Engineering Measurement

    Science.gov (United States)

    Briand, Lionel C.; Morasca, Sandro; Basili, Victor R.

    1997-01-01

    Little theory exists in the field of software system measurement. Concepts such as complexity, coupling, cohesion or even size are very often subject to interpretation and appear to have inconsistent definitions in the literature. As a consequence, there is little guidance provided to the analyst attempting to define proper measures for specific problems. Many controversies in the literature are simply misunderstandings and stem from the fact that some people talk about different measurement concepts under the same label (complexity is the most common case). There is a need to define unambiguously the most important measurement concepts used in the measurement of software products. One way of doing so is to define precisely what mathematical properties characterize these concepts, regardless of the specific software artifacts to which these concepts are applied. Such a mathematical framework could generate a consensus in the software engineering community and provide a means for better communication among researchers, better guidelines for analysts, and better evaluation methods for commercial static analyzers for practitioners. In this paper, we propose a mathematical framework which is generic, because it is not specific to any particular software artifact and rigorous, because it is based on precise mathematical concepts. We use this framework to propose definitions of several important measurement concepts (size, length, complexity, cohesion, coupling). It does not intend to be complete or fully objective; other frameworks could have been proposed and different choices could have been made. However, we believe that the formalisms and properties we introduce are convenient and intuitive. This framework contributes constructively to a firmer theoretical ground of software measurement.

  6. Software for Collaborative Engineering of Launch Rockets

    Science.gov (United States)

    Stanley, Thomas Troy

    2003-01-01

    The Rocket Evaluation and Cost Integration for Propulsion and Engineering software enables collaborative computing with automated exchange of information in the design and analysis of launch rockets and other complex systems. RECIPE can interact with and incorporate a variety of programs, including legacy codes, that model aspects of a system from the perspectives of different technological disciplines (e.g., aerodynamics, structures, propulsion, trajectory, aeroheating, controls, and operations) and that are used by different engineers on different computers running different operating systems. RECIPE consists mainly of (1) ISCRM a file-transfer subprogram that makes it possible for legacy codes executed in their original operating systems on their original computers to exchange data and (2) CONES an easy-to-use filewrapper subprogram that enables the integration of legacy codes. RECIPE provides a tightly integrated conceptual framework that emphasizes connectivity among the programs used by the collaborators, linking these programs in a manner that provides some configuration control while facilitating collaborative engineering tradeoff studies, including design to cost studies. In comparison with prior collaborative-engineering schemes, one based on the use of RECIPE enables fewer engineers to do more in less time.

  7. Software Engineering Laboratory (SEL) cleanroom process model

    Science.gov (United States)

    Green, Scott; Basili, Victor; Godfrey, Sally; Mcgarry, Frank; Pajerski, Rose; Waligora, Sharon

    1991-01-01

    The Software Engineering Laboratory (SEL) cleanroom process model is described. The term 'cleanroom' originates in the integrated circuit (IC) production process, where IC's are assembled in dust free 'clean rooms' to prevent the destructive effects of dust. When applying the clean room methodology to the development of software systems, the primary focus is on software defect prevention rather than defect removal. The model is based on data and analysis from previous cleanroom efforts within the SEL and is tailored to serve as a guideline in applying the methodology to future production software efforts. The phases that are part of the process model life cycle from the delivery of requirements to the start of acceptance testing are described. For each defined phase, a set of specific activities is discussed, and the appropriate data flow is described. Pertinent managerial issues, key similarities and differences between the SEL's cleanroom process model and the standard development approach used on SEL projects, and significant lessons learned from prior cleanroom projects are presented. It is intended that the process model described here will be further tailored as additional SEL cleanroom projects are analyzed.

  8. Presenting the Shuttle Main Engine Software

    Science.gov (United States)

    Schreur, Barbara

    1998-01-01

    Originally, this project was to produce an animated Powerpoint presentation of the 'Shuttle Engine and its Software' and to produce a web page with animation including the same materials but with greater detail in the description of the software. The principal emphasis was to be on the web page. Midway through the first year of the project, we were advised by the technical coordinator of this work at MSFC to concentrate on the web page alone. Also, the project was expanded to include a web presentation of the MRECS (Modular Rocket Control System). For the SSME project, the web page presentation has been completed. The integration of the animation into the web page is complete although we have been asked to speed up the animation. Also, the addition of greater detail to the description of the SSME controller software has been added. Much of the work on this program was done by students as their task for their senior project course, the capstone course of their program of study. The students gained a great deal from this project. They have learned to use VISIO, POWERPOINT, PHOTOSHOP, and several web page software packages. The starting point for this project was a PowerPoint presentation by the PI while on a Summer Faculty Fellowship at MSFC. For this project, about half of the drawings of the SSME were improved and about half were completely redrawn. The original still drawings have been animated to illustrate the fuel flow through the SSME system.

  9. Proceedings of the Ninth Annual Software Engineering Workshop

    Science.gov (United States)

    1984-01-01

    Experiences in measurement, utilization, and evaluation of software methodologies, models, and tools are discussed. NASA's involvement in ever larger and more complex systems, like the space station project, provides a motive for the support of software engineering research and the exchange of ideas in such forums. The topics of current SEL research are software error studies, experiments with software development, and software tools.

  10. Cooperative and human aspects of software engineering: CHASE 2010

    DEFF Research Database (Denmark)

    Dittrich, Yvonne; Sharp, Helen C.; Winschiers Theophilus, Heike

    2010-01-01

    Software is created by people -- software engineers in cooperation with domain experts, users and other stakeholders--in varied environments, under various conditions. Thus understanding cooperative and human aspects of software development is crucial to comprehend how and which methods and tools...... are required, to improve the creation and maintenance of software. The 3rd workshop on Cooperative and Human Aspects of Software Engineering held at the International Conference on Software Engineering continued the tradition from earlier workshops and provided a lively forum to discuss current developments...... and high quality research in the field. Further dissemination of research results will lead to an improvement of software development and deployment across the globe....

  11. Selecting and effectively using a computer aided software engineering tool

    Energy Technology Data Exchange (ETDEWEB)

    Kuhn, D.L.

    1989-01-01

    Software engineering is a science by which user requirements are translated into a quality software product. Computer Aided Software Engineering (CASE) is the scientific application of a set of tools and methods to a software which results in high-quality, defect-free, and maintainable software products. The Computer Systems Engineering (CSE) group of Separations Technology at the Savannah River Site has successfully used CASE tools to produce high-quality, reliable, and maintainable software products. This paper details the selection process CSE used to acquire a commonly available CASE product and how the CSE group effectively used this CASE tool to consistently produce quality software. 9 refs.

  12. Developing Project Duration Models in Software Engineering

    Institute of Scientific and Technical Information of China (English)

    Pierre Bourque; Serge Oligny; Alain Abran; Bertrand Fournier

    2007-01-01

    Based on the empirical analysis of data contained in the International Software Benchmarking Standards Group(ISBSG) repository, this paper presents software engineering project duration models based on project effort. Duration models are built for the entire dataset and for subsets of projects developed for personal computer, mid-range and mainframeplatforms. Duration models are also constructed for projects requiring fewer than 400 person-hours of effort and for projectsre quiring more than 400 person-hours of effort. The usefulness of adding the maximum number of assigned resources as asecond independent variable to explain duration is also analyzed. The opportunity to build duration models directly fromproject functional size in function points is investigated as well.

  13. Software engineering and scale-free networks.

    Science.gov (United States)

    Wen, Lian; Dromey, R Geoff; Kirk, Diana

    2009-08-01

    Complex-network theory is a new approach in studying different types of large systems in both the physical and the abstract worlds. In this paper, we have studied two kinds of network from software engineering: the component dependence network and the sorting comparison network (SCN). It is found that they both show the same scale-free property under certain conditions as complex networks in other fields. These results suggest that complex-network theory can be a useful approach to the study of software systems. The special properties of SCNs provide a more repeatable and deterministic way to study the evolution and optimization of complex networks. They also suggest that the closer a sorting algorithm is to the theoretical optimal limit, the more its SCN is like a scale-free network. This may also indicate that, to store and retrieve information efficiently, a concept network might need to be scale-free.

  14. Human-Centered Software Engineering: Software Engineering Architectures, Patterns, and Sodels for Human Computer Interaction

    Science.gov (United States)

    Seffah, Ahmed; Vanderdonckt, Jean; Desmarais, Michel C.

    The Computer-Human Interaction and Software Engineering (CHISE) series of edited volumes originated from a number of workshops and discussions over the latest research and developments in the field of Human Computer Interaction (HCI) and Software Engineering (SE) integration, convergence and cross-pollination. A first volume in this series (CHISE Volume I - Human-Centered Software Engineering: Integrating Usability in the Development Lifecycle) aims at bridging the gap between the field of SE and HCI, and addresses specifically the concerns of integrating usability and user-centered systems design methods and tools into the software development lifecycle and practices. This has been done by defining techniques, tools and practices that can fit into the entire software engineering lifecycle as well as by defining ways of addressing the knowledge and skills needed, and the attitudes and basic values that a user-centered development methodology requires. The first volume has been edited as Vol. 8 in the Springer HCI Series (Seffah, Gulliksen and Desmarais, 2005).

  15. Software Engineering and Swarm-Based Systems

    Science.gov (United States)

    Hinchey, Michael G.; Sterritt, Roy; Pena, Joaquin; Rouff, Christopher A.

    2006-01-01

    We discuss two software engineering aspects in the development of complex swarm-based systems. NASA researchers have been investigating various possible concept missions that would greatly advance future space exploration capabilities. The concept mission that we have focused on exploits the principles of autonomic computing as well as being based on the use of intelligent swarms, whereby a (potentially large) number of similar spacecraft collaborate to achieve mission goals. The intent is that such systems not only can be sent to explore remote and harsh environments but also are endowed with greater degrees of protection and longevity to achieve mission goals.

  16. Software Engineering Tools for Scientific Models

    Science.gov (United States)

    Abrams, Marc; Saboo, Pallabi; Sonsini, Mike

    2013-01-01

    Software tools were constructed to address issues the NASA Fortran development community faces, and they were tested on real models currently in use at NASA. These proof-of-concept tools address the High-End Computing Program and the Modeling, Analysis, and Prediction Program. Two examples are the NASA Goddard Earth Observing System Model, Version 5 (GEOS-5) atmospheric model in Cell Fortran on the Cell Broadband Engine, and the Goddard Institute for Space Studies (GISS) coupled atmosphere- ocean model called ModelE, written in fixed format Fortran.

  17. Epistemology, software engineering and formal methods

    Science.gov (United States)

    Holloway, C. Michael

    1994-01-01

    One of the most basic questions anyone can ask is, 'How do I know that what I think I know is true?' The study of this question is called epistemology. Traditionally, epistemology has been considered to be of legitimate interest only to philosophers, theologians, and three year old children who respond to every statement by asking, 'Why?' Software engineers need to be interested in the subject, however, because a lack of sufficient understanding of epistemology contributes to many of the current problems in the field.

  18. Grid generation software engineering at Los Alamos

    Energy Technology Data Exchange (ETDEWEB)

    Clark, G.L.; Ankeny, L.A.

    1988-01-01

    We have collected and re-engineered a small library of computer codes for general-purpose grid generation in one-, two-, and three-dimensional domains. The design intent was to produce easy-to-use general purpose codes that are portable to as many different hardware and software environments as practical, that are consistent in programming style and user interface, and that cover a gamut of applications. The paper describes some of the features of the codes, emphasizing the perspective of the potential user or programmer, rather than that of the researcher interested in mathematical techniques. 7 refs., 3 figs.

  19. On Principles of Software Engineering -- Role of the Inductive Inference

    Directory of Open Access Journals (Sweden)

    Ladislav Samuelis

    2012-01-01

    Full Text Available This paper highlights the role of the inductive inference principle in software engineering. It takes the challenge to settle differences and to confront the ideas behind the usual software engineering concepts. We focus on the inductive inference mechanism’s role behind the automatic program construction activities and software evolution. We believe that the revision of rather old ideas in the new context of software engineering could enhance our endeavour and that is why deserves more attention.

  20. Can your software engineer program your PLC?

    Science.gov (United States)

    Borrowman, Alastair J.; Taylor, Philip

    2016-07-01

    The use of Programmable Logic Controllers (PLCs) in the control of large physics experiments is ubiquitous1, 2, 3. The programming of these controllers is normally the domain of engineers with a background in electronics, this paper introduces PLC program development from the software engineer's perspective. PLC programs provide the link between control software running on PC architecture systems and physical hardware controlled and monitored by digital and analog signals. The higher-level software running on the PC is typically responsible for accepting operator input and from this deciding when and how hardware connected to the PLC is controlled. The PLC accepts demands from the PC, considers the current state of its connected hardware and if correct to do so (based upon interlocks or other constraints) adjusts its hardware output signals appropriately for the PC's demands. A published ICD (Interface Control Document) defines the PLC memory locations available to be written and read by the PC to control and monitor the hardware. Historically the method of programming PLCs has been ladder diagrams that closely resemble circuit diagrams, however, PLC manufacturers nowadays also provide, and promote, the use of higher-level programming languages4. Based on techniques used in the development of high-level PC software to control PLCs for multiple telescopes, this paper examines the development of PLC programs to operate the hardware of a medical cyclotron beamline controlled from a PC using the Experimental Physics and Industrial Control System (EPICS), which is also widely used in telescope control5, 6, 7. The PLC used is the new generation Siemens S7-1200 programmed using Siemens Pascal based Structured Control Language (SCL), which is their implementation of Structured Text (ST). The approach described is that from a software engineer's perspective, utilising Siemens Totally Integrated Automation (TIA) Portal integrated development environment (IDE) to create

  1. Computer-Aided Software Engineering - An approach to real-time software development

    Science.gov (United States)

    Walker, Carrie K.; Turkovich, John J.

    1989-01-01

    A new software engineering discipline is Computer-Aided Software Engineering (CASE), a technology aimed at automating the software development process. This paper explores the development of CASE technology, particularly in the area of real-time/scientific/engineering software, and a history of CASE is given. The proposed software development environment for the Advanced Launch System (ALS CASE) is described as an example of an advanced software development system for real-time/scientific/engineering (RT/SE) software. The Automated Programming Subsystem of ALS CASE automatically generates executable code and corresponding documentation from a suitably formatted specification of the software requirements. Software requirements are interactively specified in the form of engineering block diagrams. Several demonstrations of the Automated Programming Subsystem are discussed.

  2. Some Observations On Open Source Software Development On Software Engineering Perspectives

    Directory of Open Access Journals (Sweden)

    Vinay Tiwari

    2010-12-01

    Full Text Available Several argument has been made that open source software development process some times also referred as free and open source software development (FOSSD violates the traditional softwareengineering principles and researches advocates to rethink and re-evaluate the studies and concepts of software engineering. The aim of this paper is to investigate the software development process models of Open source software on the software engineering perspectives. In this paper a discussion on some of development models of OSS and their comparison with the traditional development models is made and the software engineering practices followed in open source development environment is also been discussed. Principle difference and similarities of these development models with the conventional models are also discussed. The ultimate goal is to understand how open source software development processesare similar to or different from software engineering processes and to bring better understanding to the development process of Open Source Software.

  3. A Comparative Analysis of Software Engineering with Knowledge Engineering

    Directory of Open Access Journals (Sweden)

    J. F. Vijay

    2010-01-01

    Full Text Available Problem statement: Software engineering is not only a technical discipline of its own. It is also a problem domain where technologies coming from other disciplines are relevant and can play an important role. One important example is knowledge engineering, a term that we use in the broad sense to encompass artificial intelligence, computational intelligence, knowledge bases, data mining and machine learning. We see a number of typical software development issues that can benefit from these disciplines and, for the sake of clarifying the discussion, we have divided them into four categories: (1 planning, monitoring and quality control of projects, (2 The quality and process improvement of software organizations, (3 decision making support, (4 automation. Approach: First, the planning, monitoring and quality control of software development was typically based unless it is entirely ad-hoc on past project data and/or expert opinion. Results: Several techniques coming from machine learning, computational intelligence and knowledge-based systems had shown to be useful in this context. Second, software organizations are inherently learning organizations, that need to improve, based on experience and project feedback, the way they develop software in changing and volatile environments. Large amounts of data, numerous documents and other forms of information are typically gathered on projects. The question then became how to enable the intelligent storage and use of such information in future projects. Third, during the course of a project, software engineers and managers have to face important, complex decisions. They need decision models to support them, especially when project pressure is intense. Techniques originally developed for building risk models based on expert elicitation or optimization heuristics can play a key role in such a context. The last category of applications concerns automation. Many automation problems, such as test data

  4. Software for Engineering Simulations of a Spacecraft

    Science.gov (United States)

    Shireman, Kirk; McSwain, Gene; McCormick, Bernell; Fardelos, Panayiotis

    2005-01-01

    Spacecraft Engineering Simulation II (SES II) is a C-language computer program for simulating diverse aspects of operation of a spacecraft characterized by either three or six degrees of freedom. A functional model in SES can include a trajectory flight plan; a submodel of a flight computer running navigational and flight-control software; and submodels of the environment, the dynamics of the spacecraft, and sensor inputs and outputs. SES II features a modular, object-oriented programming style. SES II supports event-based simulations, which, in turn, create an easily adaptable simulation environment in which many different types of trajectories can be simulated by use of the same software. The simulation output consists largely of flight data. SES II can be used to perform optimization and Monte Carlo dispersion simulations. It can also be used to perform simulations for multiple spacecraft. In addition to its generic simulation capabilities, SES offers special capabilities for space-shuttle simulations: for this purpose, it incorporates submodels of the space-shuttle dynamics and a C-language version of the guidance, navigation, and control components of the space-shuttle flight software.

  5. Math Description Engine Software Development Kit

    Science.gov (United States)

    Shelton, Robert O.; Smith, Stephanie L.; Dexter, Dan E.; Hodgson, Terry R.

    2010-01-01

    The Math Description Engine Software Development Kit (MDE SDK) can be used by software developers to make computer-rendered graphs more accessible to blind and visually-impaired users. The MDE SDK generates alternative graph descriptions in two forms: textual descriptions and non-verbal sound renderings, or sonification. It also enables display of an animated trace of a graph sonification on a visual graph component, with color and line-thickness options for users having low vision or color-related impairments. A set of accessible graphical user interface widgets is provided for operation by end users and for control of accessible graph displays. Version 1.0 of the MDE SDK generates text descriptions for 2D graphs commonly seen in math and science curriculum (and practice). The mathematically rich text descriptions can also serve as a virtual math and science assistant for blind and sighted users, making graphs more accessible for everyone. The MDE SDK has a simple application programming interface (API) that makes it easy for programmers and Web-site developers to make graphs accessible with just a few lines of code. The source code is written in Java for cross-platform compatibility and to take advantage of Java s built-in support for building accessible software application interfaces. Compiled-library and NASA Open Source versions are available with API documentation and Programmer s Guide at http:/ / prim e.jsc.n asa. gov.

  6. A practical application of software security in an undergraduate software engineering course

    Directory of Open Access Journals (Sweden)

    Cynthia Y. Lester

    2010-05-01

    Full Text Available Computer software is developed according to software engineering methodologies. However, as more of the economy and our social lives move online, software security has become a topic of increasing importance. Traditionally, courses in software security are offered at the graduate level or in a stand-alone course at the undergraduate level, with many undergraduate students being required to apply security principles to their software development processes as soon as they complete their degrees. Therefore, this paper posits that software security can be effectively introduced to undergraduate students in a traditionally taught software engineering course. The paper presents a modified software engineering course which introduces the secure development life cycle. Several traditional software development methodologies are presented which provide a foundation for introducing secure software principles. Additionally, the paper introduces collaborative learning and service-learning which are used in the practical application of software security concepts. Lastly, challenges and future work are presented.

  7. The need for scientific software engineering in the pharmaceutical industry.

    Science.gov (United States)

    Luty, Brock; Rose, Peter W

    2017-03-01

    Scientific software engineering is a distinct discipline from both computational chemistry project support and research informatics. A scientific software engineer not only has a deep understanding of the science of drug discovery but also the desire, skills and time to apply good software engineering practices. A good team of scientific software engineers can create a software foundation that is maintainable, validated and robust. If done correctly, this foundation enable the organization to investigate new and novel computational ideas with a very high level of efficiency.

  8. Performing Verification and Validation in Reuse-Based Software Engineering

    Science.gov (United States)

    Addy, Edward A.

    1999-01-01

    The implementation of reuse-based software engineering not only introduces new activities to the software development process, such as domain analysis and domain modeling, it also impacts other aspects of software engineering. Other areas of software engineering that are affected include Configuration Management, Testing, Quality Control, and Verification and Validation (V&V). Activities in each of these areas must be adapted to address the entire domain or product line rather than a specific application system. This paper discusses changes and enhancements to the V&V process, in order to adapt V&V to reuse-based software engineering.

  9. The research and practice of spacecraft software engineering

    Science.gov (United States)

    Chen, Chengxin; Wang, Jinghua; Xu, Xiaoguang

    2017-06-01

    In order to ensure the safety and reliability of spacecraft software products, it is necessary to execute engineering management. Firstly, the paper introduces the problems of unsystematic planning, uncertain classified management and uncontinuous improved mechanism in domestic and foreign spacecraft software engineering management. Then, it proposes a solution for software engineering management based on system-integrated ideology in the perspective of spacecraft system. Finally, a application result of spacecraft is given as an example. The research can provides a reference for executing spacecraft software engineering management and improving software product quality.

  10. Software engineering frameworks for the cloud computing paradigm

    CERN Document Server

    Mahmood, Zaigham

    2013-01-01

    This book presents the latest research on Software Engineering Frameworks for the Cloud Computing Paradigm, drawn from an international selection of researchers and practitioners. The book offers both a discussion of relevant software engineering approaches and practical guidance on enterprise-wide software deployment in the cloud environment, together with real-world case studies. Features: presents the state of the art in software engineering approaches for developing cloud-suitable applications; discusses the impact of the cloud computing paradigm on software engineering; offers guidance an

  11. The need for scientific software engineering in the pharmaceutical industry

    Science.gov (United States)

    Luty, Brock; Rose, Peter W.

    2016-12-01

    Scientific software engineering is a distinct discipline from both computational chemistry project support and research informatics. A scientific software engineer not only has a deep understanding of the science of drug discovery but also the desire, skills and time to apply good software engineering practices. A good team of scientific software engineers can create a software foundation that is maintainable, validated and robust. If done correctly, this foundation enable the organization to investigate new and novel computational ideas with a very high level of efficiency.

  12. The need for scientific software engineering in the pharmaceutical industry

    Science.gov (United States)

    Luty, Brock; Rose, Peter W.

    2017-03-01

    Scientific software engineering is a distinct discipline from both computational chemistry project support and research informatics. A scientific software engineer not only has a deep understanding of the science of drug discovery but also the desire, skills and time to apply good software engineering practices. A good team of scientific software engineers can create a software foundation that is maintainable, validated and robust. If done correctly, this foundation enable the organization to investigate new and novel computational ideas with a very high level of efficiency.

  13. Introduction to the workshop on technology transfer in software engineering

    NARCIS (Netherlands)

    Harrison, Warren; Wieringa, Roelf J.

    The goal of the Workshop on Technology Transfer in Software Engineering is to increase our understanding of technology transfer in software engineering, and to learn from successful case studies. We wanted to bring researchers and practitioners together to create an inventory of problems in software

  14. Case Study Research in Software Engineering Guidelines and Examples

    CERN Document Server

    Runeson, Per; Rainer, Austen; Regnell, Bjorn

    2012-01-01

    Based on their own experiences of in-depth case studies of software projects in international corporations, in this book the authors present detailed practical guidelines on the preparation, conduct, design and reporting of case studies of software engineering.  This is the first software engineering specific book on the case study research method.

  15. Software engineering techniques in design automation: a tutorial

    Energy Technology Data Exchange (ETDEWEB)

    Smith, R.J. II

    1977-04-18

    Several useful software engineering techniques, disciplines, and perspectives are related to typical software development problems in design automation. Specific examples from recent experience illustrate both beneficial and undesirable practices. Oriented toward managers and practicing software engineers, the tutorial discusses system structure, control and data structures, programing guidelines, work habits, testing, documentation, and operational maintenance. 10 figures.

  16. NECESSITY OF LEARNING ANALYTICS IN SOFTWARE ENGINEERING EDUCATION

    Directory of Open Access Journals (Sweden)

    N. PRATHEESH

    2015-03-01

    Full Text Available Computers are necessary and unavoidable part of the modern lifestyle. Software is the key factor to satisfy all the desires and keep up this rock status. Software engineers are the people who develop the software to satisfy the user needs and make their work easier. Software engineers are academically mold up to the industry requirements through the proper software engineering education. Hence software engineering education plays an imperative role in computer education, but it falls short to fabricate the genius software engineers to satisfy the industries need. To overcome these issues researchers proposed number of software engineering learning/teaching methods to egg-on students to reap their depth knowledge in software engineering, albeit these allusions does not utterly conquer this decisive issue since the suggested approaches does not meet with the student’s learning style. Learning analytics plays a vital role to improve the students learning activities. This paper describes the software engineering students’ requirements through learning analytics and proposes a teaching/learning tool to engage the students learning activities to overcome such issues and inspire them in gathering software engineering knowledge.

  17. Softwares Product Lines, Global Development and Ecosystems: Collaboration in Software Engineering

    Science.gov (United States)

    Bosch, Jan; Bosch-Sijtsema, Petra M.

    Effective collaboration in software engineering is very important and yet increasingly complicated by trends that increase complexity of dependencies between software development teams and organizations. These trends include the increasing adoption of software product lines, the globalization of software engineering and the increasing use of and reliance on 3rd party developers in the context of software ecosystems. Based on action research, the paper discusses problems of in effective collaboration and success-factors of five approaches to collaboration in large-scale software engineering.

  18. Introduction to the Workshop on Software Technology Transfer in Software Engineering

    NARCIS (Netherlands)

    Harrison, Warren; Wieringa, Roel

    2006-01-01

    The goal of the Workshop on Technology Transfer in Software Engineering is to increase our understanding of technology transfer in software engineering, and to learn from successful case studies. We wanted to bring researchers and practitioners together to create an inventory of problems in software

  19. Proceedings of the 14th Annual Software Engineering Workshop

    Science.gov (United States)

    1989-01-01

    Several software related topics are presented. Topics covered include studies and experiment at the Software Engineering Laboratory at the Goddard Space Flight Center, predicting project success from the Software Project Management Process, software environments, testing in a reuse environment, domain directed reuse, and classification tree analysis using the Amadeus measurement and empirical analysis.

  20. FMT (Flight Software Memory Tracker) For Cassini Spacecraft-Software Engineering Using JAVA

    Science.gov (United States)

    Kan, Edwin P.; Uffelman, Hal; Wax, Allan H.

    1997-01-01

    The software engineering design of the Flight Software Memory Tracker (FMT) Tool is discussed in this paper. FMT is a ground analysis software set, consisting of utilities and procedures, designed to track the flight software, i.e., images of memory load and updatable parameters of the computers on-board Cassini spacecraft. FMT is implemented in Java.

  1. Involving Software Engineering Students in Open Source Software Projects: Experiences from a Pilot Study

    Science.gov (United States)

    Sowe, Sulayman K.; Stamelos, Ioannis G.

    2007-01-01

    Anecdotal and research evidences show that the Free and Open Source Software (F/OSS) development model has produced a paradigm shift in the way we develop, support, and distribute software. This shift is not only redefining the software industry but also the way we teach and learn in our software engineering (SE) courses. But for many universities…

  2. Cooperative and human aspects of software engineering: CHASE 2010

    DEFF Research Database (Denmark)

    Dittrich, Yvonne; Sharp, Helen C.; Winschiers Theophilus, Heike;

    2010-01-01

    are required, to improve the creation and maintenance of software. The 3rd workshop on Cooperative and Human Aspects of Software Engineering held at the International Conference on Software Engineering continued the tradition from earlier workshops and provided a lively forum to discuss current developments...... and high quality research in the field. Further dissemination of research results will lead to an improvement of software development and deployment across the globe....

  3. Knowledge-based systems and software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Bader, J.L.

    1988-01-01

    This work was carried out as part of a collaborative Alvey software engineering project (project number SE057). The project collaborators were the Inter-Disciplinary Higher Degrees Scheme of the University of Aston in Birmingham, BIS Applied Systems Ltd. (BIS) and the British Steel Corporation. The aim of the project was to investigate the potential application of knowledge-based systems (KBSs) to the design of commercial data processing (DP) systems. The work was primarily concerned with BIS's Structured Systems Design (SSD) methodology for DP systems development and how users of this methodology could be supported using KBS tools. The problems encountered by users of SSD are discussed, and potential forms of computer-based support for inexpert designers are identified. The architecture for a support environment for SSD is proposed based on the integration of KBS and non-KBS tools for individual design tasks within SSD - the Intellipse system. The potential role of KBS tools in the domain of data-base design is discussed. The need for operational KBSs to be built to the same standards as other commercial and industrial software is identified.

  4. Model-driven and software product line engineering

    CERN Document Server

    Royer, Jean-Claude

    2013-01-01

    Many approaches to creating Software Product Lines have emerged that are based on Model-Driven Engineering. This book introduces both Software Product Lines and Model-Driven Engineering, which have separate success stories in industry, and focuses on the practical combination of them. It describes the challenges and benefits of merging these two software development trends and provides the reader with a novel approach and practical mechanisms to improve software development productivity.The book is aimed at engineers and students who wish to understand and apply software product lines

  5. Data collection procedures for the Software Engineering Laboratory (SEL) database

    Science.gov (United States)

    Heller, Gerard; Valett, Jon; Wild, Mary

    1992-01-01

    This document is a guidebook to collecting software engineering data on software development and maintenance efforts, as practiced in the Software Engineering Laboratory (SEL). It supersedes the document entitled Data Collection Procedures for the Rehosted SEL Database, number SEL-87-008 in the SEL series, which was published in October 1987. It presents procedures to be followed on software development and maintenance projects in the Flight Dynamics Division (FDD) of Goddard Space Flight Center (GSFC) for collecting data in support of SEL software engineering research activities. These procedures include detailed instructions for the completion and submission of SEL data collection forms.

  6. Proceedings of the 19th Annual Software Engineering Workshop

    Science.gov (United States)

    1994-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by NASA/GSFC and created to investigate the effectiveness of software engineering technologies when applied to the development of applications software. The goals of the SEL are: (1) to understand the software development process in the GSFC environment; (2) to measure the effects of various methodologies, tools, and models on this process; and (3) to identify and then to apply successful development practices. The activities, findings, and recommendations of the SEL are recorded in the Software Engineering Laboratory Series, a continuing series of reports that include this document.

  7. Performance Engineering Technology for Scientific Component Software

    Energy Technology Data Exchange (ETDEWEB)

    Malony, Allen D.

    2007-05-08

    Large-scale, complex scientific applications are beginning to benefit from the use of component software design methodology and technology for software development. Integral to the success of component-based applications is the ability to achieve high-performing code solutions through the use of performance engineering tools for both intra-component and inter-component analysis and optimization. Our work on this project aimed to develop performance engineering technology for scientific component software in association with the DOE CCTTSS SciDAC project (active during the contract period) and the broader Common Component Architecture (CCA) community. Our specific implementation objectives were to extend the TAU performance system and Program Database Toolkit (PDT) to support performance instrumentation, measurement, and analysis of CCA components and frameworks, and to develop performance measurement and monitoring infrastructure that could be integrated in CCA applications. These objectives have been met in the completion of all project milestones and in the transfer of the technology into the continuing CCA activities as part of the DOE TASCS SciDAC2 effort. In addition to these achievements, over the past three years, we have been an active member of the CCA Forum, attending all meetings and serving in several working groups, such as the CCA Toolkit working group, the CQoS working group, and the Tutorial working group. We have contributed significantly to CCA tutorials since SC'04, hosted two CCA meetings, participated in the annual ACTS workshops, and were co-authors on the recent CCA journal paper [24]. There are four main areas where our project has delivered results: component performance instrumentation and measurement, component performance modeling and optimization, performance database and data mining, and online performance monitoring. This final report outlines the achievements in these areas for the entire project period. The submitted progress

  8. Performance Engineering Technology for Scientific Component Software

    Energy Technology Data Exchange (ETDEWEB)

    Malony, Allen D.

    2007-05-08

    Large-scale, complex scientific applications are beginning to benefit from the use of component software design methodology and technology for software development. Integral to the success of component-based applications is the ability to achieve high-performing code solutions through the use of performance engineering tools for both intra-component and inter-component analysis and optimization. Our work on this project aimed to develop performance engineering technology for scientific component software in association with the DOE CCTTSS SciDAC project (active during the contract period) and the broader Common Component Architecture (CCA) community. Our specific implementation objectives were to extend the TAU performance system and Program Database Toolkit (PDT) to support performance instrumentation, measurement, and analysis of CCA components and frameworks, and to develop performance measurement and monitoring infrastructure that could be integrated in CCA applications. These objectives have been met in the completion of all project milestones and in the transfer of the technology into the continuing CCA activities as part of the DOE TASCS SciDAC2 effort. In addition to these achievements, over the past three years, we have been an active member of the CCA Forum, attending all meetings and serving in several working groups, such as the CCA Toolkit working group, the CQoS working group, and the Tutorial working group. We have contributed significantly to CCA tutorials since SC'04, hosted two CCA meetings, participated in the annual ACTS workshops, and were co-authors on the recent CCA journal paper [24]. There are four main areas where our project has delivered results: component performance instrumentation and measurement, component performance modeling and optimization, performance database and data mining, and online performance monitoring. This final report outlines the achievements in these areas for the entire project period. The submitted progress

  9. Runtime analysis of search heuristics on software engineering problems

    Institute of Scientific and Technical Information of China (English)

    Per Kristian LEHRE; Xin YAO

    2009-01-01

    Many software engineering tasks can potentially be automated using search heuristics. However, much work is needed in designing and evaluating search heuristics before this approach can be routinely applied to a software engineering problem. Experimental methodology should be complemented with theoretical analysis to achieve this goal.Recently, there have been significant theoretical advances in the runtime analysis of evolutionary algorithms (EAs) and other search heuristics in other problem domains. We suggest that these methods could be transferred and adapted to gain insight into the behaviour of search heuristics on software engineering problems while automating software engineering.

  10. The Configuration Management Role in Collaborative Software Engineering

    Science.gov (United States)

    Murta, Leonardo Gresta P.; Werner, Claudia Maria L.; Estublier, Jacky

    This chapter discusses the impact of configuration management on collaborative software engineering, analyzing both the state-of-the-practice and the state-of-the-art. It starts with a brief introduction of the configuration management field and presents how this field has been supporting collaborative software engineering. It also analyzes the current researches on configuration management that will potentially help on establishing a better support to collaborative software engineering in the future. Finally, it presents a summary that details how each configuration management function and system relates to each collaboration aspect of software engineering.

  11. Tools and Behavioral Abstraction: A Direction for Software Engineering

    Science.gov (United States)

    Leino, K. Rustan M.

    As in other engineering professions, software engineers rely on tools. Such tools can analyze program texts and design specifications more automatically and in more detail than ever before. While many tools today are applied to find new defects in old code, I predict that more software-engineering tools of the future will be available to software authors at the time of authoring. If such analysis tools can be made to be fast enough and easy enough to use, they can help software engineers better produce and evolve programs.

  12. Computer, Network, Software, and Hardware Engineering with Applications

    CERN Document Server

    Schneidewind, Norman F

    2012-01-01

    There are many books on computers, networks, and software engineering but none that integrate the three with applications. Integration is important because, increasingly, software dominates the performance, reliability, maintainability, and availability of complex computer and systems. Books on software engineering typically portray software as if it exists in a vacuum with no relationship to the wider system. This is wrong because a system is more than software. It is comprised of people, organizations, processes, hardware, and software. All of these components must be considered in an integr

  13. Software metrics: Software quality metrics for distributed systems. [reliability engineering

    Science.gov (United States)

    Post, J. V.

    1981-01-01

    Software quality metrics was extended to cover distributed computer systems. Emphasis is placed on studying embedded computer systems and on viewing them within a system life cycle. The hierarchy of quality factors, criteria, and metrics was maintained. New software quality factors were added, including survivability, expandability, and evolvability.

  14. Milestones in Software Engineering and Knowledge Engineering History: A Comparative Review

    Directory of Open Access Journals (Sweden)

    Isabel M. del Águila

    2014-01-01

    convergence or divergence of the software development methodologies. These milestones do not appear at the same time in software engineering and knowledge engineering, so lessons learned in one discipline can help in the evolution of the other one.

  15. An algebraic approach to modeling in software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Loegel, G.J. [Superconducting Super Collider Lab., Dallas, TX (United States)]|[Michigan Univ., Ann Arbor, MI (United States); Ravishankar, C.V. [Michigan Univ., Ann Arbor, MI (United States)

    1993-09-01

    Our work couples the formalism of universal algebras with the engineering techniques of mathematical modeling to develop a new approach to the software engineering process. Our purpose in using this combination is twofold. First, abstract data types and their specification using universal algebras can be considered a common point between the practical requirements of software engineering and the formal specification of software systems. Second, mathematical modeling principles provide us with a means for effectively analyzing real-world systems. We first use modeling techniques to analyze a system and then represent the analysis using universal algebras. The rest of the software engineering process exploits properties of universal algebras that preserve the structure of our original model. This paper describes our software engineering process and our experience using it on both research and commercial systems. We need a new approach because current software engineering practices often deliver software that is difficult to develop and maintain. Formal software engineering approaches use universal algebras to describe ``computer science`` objects like abstract data types, but in practice software errors are often caused because ``real-world`` objects are improperly modeled. There is a large semantic gap between the customer`s objects and abstract data types. In contrast, mathematical modeling uses engineering techniques to construct valid models for real-world systems, but these models are often implemented in an ad hoc manner. A combination of the best features of both approaches would enable software engineering to formally specify and develop software systems that better model real systems. Software engineering, like mathematical modeling, should concern itself first and foremost with understanding a real system and its behavior under given circumstances, and then with expressing this knowledge in an executable form.

  16. Model-integrating software components engineering flexible software systems

    CERN Document Server

    Derakhshanmanesh, Mahdi

    2015-01-01

    In his study, Mahdi Derakhshanmanesh builds on the state of the art in modeling by proposing to integrate models into running software on the component-level without translating them to code. Such so-called model-integrating software exploits all advantages of models: models implicitly support a good separation of concerns, they are self-documenting and thus improve understandability and maintainability and in contrast to model-driven approaches there is no synchronization problem anymore between the models and the code generated from them. Using model-integrating components, software will be

  17. Enhanced Re-Engineering Mechnanism to Improve the Efficiency of Software Re-Engineering

    Directory of Open Access Journals (Sweden)

    A. Cathreen Graciamary

    2016-11-01

    Full Text Available Generally, software re-engineering is economical and perfect way to provide much needed boost to a present software system. Software Re-engineering is like to obtain a fully completed software from existing software with additional features if needed. The overall process of Software re-engineering is to analyze the needed requiements & its contents. It also changes the needed contents or transforms the existing software system for reconstructing a novel software system. The difficult part in re-engineering is to understand the traditional system. Most of the software re-engineering mechanisms are aimed to achieve the common re-engineering objectives and the objectives are: improved software quality, reduced complexity, reduce maintenance cost and increased reliability. As a result, several traditional re-engineering mechanisms fail to verify the performance of individual functionality in existing software. This performance evaluation increases the complexity in re-engineering process. To minimizing the complexities in software re-engineering, this proposed system implements a novel approach named Enhanced Re-engineering mechanism. This enhanced mechanism introduces a new idea, before executing the re- build process the developer verifies the performance of particular function in existing system. After that, the function performance is compared with proposed algorithm. Based on the comparison process only rebuild process should be carried out. Finally this proposed mechanism reduces the complexities in software re-engineering.

  18. Generic domain models in software engineering

    Science.gov (United States)

    Maiden, Neil

    1992-01-01

    This paper outlines three research directions related to domain-specific software development: (1) reuse of generic models for domain-specific software development; (2) empirical evidence to determine these generic models, namely elicitation of mental knowledge schema possessed by expert software developers; and (3) exploitation of generic domain models to assist modelling of specific applications. It focuses on knowledge acquisition for domain-specific software development, with emphasis on tool support for the most important phases of software development.

  19. Engineering bioinformatics: building reliability, performance and productivity into bioinformatics software.

    Science.gov (United States)

    Lawlor, Brendan; Walsh, Paul

    2015-01-01

    There is a lack of software engineering skills in bioinformatic contexts. We discuss the consequences of this lack, examine existing explanations and remedies to the problem, point out their shortcomings, and propose alternatives. Previous analyses of the problem have tended to treat the use of software in scientific contexts as categorically different from the general application of software engineering in commercial settings. In contrast, we describe bioinformatic software engineering as a specialization of general software engineering, and examine how it should be practiced. Specifically, we highlight the difference between programming and software engineering, list elements of the latter and present the results of a survey of bioinformatic practitioners which quantifies the extent to which those elements are employed in bioinformatics. We propose that the ideal way to bring engineering values into research projects is to bring engineers themselves. We identify the role of Bioinformatic Engineer and describe how such a role would work within bioinformatic research teams. We conclude by recommending an educational emphasis on cross-training software engineers into life sciences, and propose research on Domain Specific Languages to facilitate collaboration between engineers and bioinformaticians.

  20. A Way to Build Software Culture: Distributed Object-Oriented Software Engineering over Internet

    Institute of Scientific and Technical Information of China (English)

    2001-01-01

    This paper focuses on Distributed Object-Oriented SoftwareEngineerin g over Internet, which is a way to build software culture. We believe that our w ork will contribute to better understanding of how to meet the needs of the big potential software market and to promote the software industry in developing cou ntry. The United States and Western Europe have well-established software indu s try and related civilization. Software science, technology, and engineering are needed in China; however, maybe what is needed, first of all, is software civil ization, including software ideas, customs, skills, arts, etc. We will draw a f ramework for the software culture as following: Software is the most important c ommodity in this age; Brilliance of hardware component era has become past fact; A software component era is ahead; Traditional linear process model is obsolete ; Modern software engineering has a new face, object evolution model; Distribute d object-oriented software engineering over Internet is an approach to software component era; and Complete software civilization will be formed all over the wo rld in next century.

  1. Professional Ethics of Software Engineers: An Ethical Framework.

    Science.gov (United States)

    Lurie, Yotam; Mark, Shlomo

    2016-04-01

    The purpose of this article is to propose an ethical framework for software engineers that connects software developers' ethical responsibilities directly to their professional standards. The implementation of such an ethical framework can overcome the traditional dichotomy between professional skills and ethical skills, which plagues the engineering professions, by proposing an approach to the fundamental tasks of the practitioner, i.e., software development, in which the professional standards are intrinsically connected to the ethical responsibilities. In so doing, the ethical framework improves the practitioner's professionalism and ethics. We call this approach Ethical-Driven Software Development (EDSD), as an approach to software development. EDSD manifests the advantages of an ethical framework as an alternative to the all too familiar approach in professional ethics that advocates "stand-alone codes of ethics". We believe that one outcome of this synergy between professional and ethical skills is simply better engineers. Moreover, since there are often different software solutions, which the engineer can provide to an issue at stake, the ethical framework provides a guiding principle, within the process of software development, that helps the engineer evaluate the advantages and disadvantages of different software solutions. It does not and cannot affect the end-product in and of-itself. However, it can and should, make the software engineer more conscious and aware of the ethical ramifications of certain engineering decisions within the process.

  2. A Guideline of Using Case Method in Software Engineering Courses

    Science.gov (United States)

    Zainal, Dzulaiha Aryanee Putri; Razali, Rozilawati; Shukur, Zarina

    2014-01-01

    Software Engineering (SE) education has been reported to fall short in producing high quality software engineers. In seeking alternative solutions, Case Method (CM) is regarded as having potential to solve the issue. CM is a teaching and learning (T&L) method that has been found to be effective in Social Science education. In principle,…

  3. Experiences with Integrating Simulation into a Software Engineering Curriculum

    Science.gov (United States)

    Bollin, Andreas; Hochmuller, Elke; Mittermeir, Roland; Samuelis, Ladislav

    2012-01-01

    Software Engineering education must account for a broad spectrum of knowledge and skills software engineers will be required to apply throughout their professional life. Covering all the topics in depth within a university setting is infeasible due to curricular constraints as well as due to the inherent differences between educational…

  4. Emerging methods, technologies and process management in software engineering

    CERN Document Server

    Ferrucci, Filomena; Tortora, Genny; Tucci, Maurizio

    2007-01-01

    A high-level introduction to new technologies andmethods in the field of software engineering Recent years have witnessed rapid evolution of software engineering methodologies, and until now, there has been no single-source introduction to emerging technologies in the field.

  5. 2003 SNL ASCI applications software quality engineering assessment report.

    Energy Technology Data Exchange (ETDEWEB)

    Schofield, Joseph Richard, Jr.; Ellis, Molly A.; Williamson, Charles Michael; Bonano, Lora A.

    2004-02-01

    This document describes the 2003 SNL ASCI Software Quality Engineering (SQE) assessment of twenty ASCI application code teams and the results of that assessment. The purpose of this assessment was to determine code team compliance with the Sandia National Laboratories ASCI Applications Software Quality Engineering Practices, Version 2.0 as part of an overall program assessment.

  6. Software Engineering Technology for the 21st Century

    Institute of Scientific and Technical Information of China (English)

    2001-01-01

    In this paper we will discuss the software engineering technologyfor the 21 st century. First we review development over the last half-century, overview application re quirement and environment, accept a challenge. Then we outline following software engineering techniques: 1) Process;2) Analysis;3) Design;4) UML;5) Component;6) Java +XML;7) Integrated;8) Quality(ISO9000&CMM).

  7. Experiences with Integrating Simulation into a Software Engineering Curriculum

    Science.gov (United States)

    Bollin, Andreas; Hochmuller, Elke; Mittermeir, Roland; Samuelis, Ladislav

    2012-01-01

    Software Engineering education must account for a broad spectrum of knowledge and skills software engineers will be required to apply throughout their professional life. Covering all the topics in depth within a university setting is infeasible due to curricular constraints as well as due to the inherent differences between educational…

  8. 2002 SNL ASCI Applications Software Engineering Assessment Report

    Energy Technology Data Exchange (ETDEWEB)

    WILLIAMSON, CHARLES MICHAEL; OGDEN, HARVEY C.; BYLE, KATHLEEN A.

    2002-07-01

    This document describes the 2002 SNL Accelerated Strategic Computing Initiative (ASCI) Applications Software Quality Engineering (SQE) Assessment and the assessment results. The primary purpose of the assessment was to establish the current state of software engineering practices within the SNL ASCI Applications Program.

  9. Data structure and software engineering challenges and improvements

    CERN Document Server

    Antonakos, James L

    2011-01-01

    Data structure and software engineering is an integral part of computer science. This volume presents new approaches and methods to knowledge sharing, brain mapping, data integration, and data storage. The author describes how to manage an organization's business process and domain data and presents new software and hardware testing methods. The book introduces a game development framework used as a learning aid in a software engineering at the university level. It also features a review of social software engineering metrics and methods for processing business information. It explains how to

  10. The Dark Side of Software Engineering Evil on Computing Projects

    CERN Document Server

    Rost, Johann

    2010-01-01

    Betrayal! Corruption! Software engineering? Industry experts Johann Rost and Robert L. Glass explore the seamy underbelly of software engineering in this timely report on and analysis of the prevalance of subversion, lying, hacking, and espionage on every level of software project management. Based on the authors' original research and augmented by frank discussion and insights from other well-respected figures, The Dark Side of Software Engineering goes where other management studies fear to tread -- a corporate environment where schedules are fabricated, trust is betrayed, millions of dollar

  11. V&V Within Reuse-Based Software Engineering

    Science.gov (United States)

    Addy, Edward A.

    1996-01-01

    Verification and Validation (V&V) is used to increase the level of assurance of critical software, particularly that of safety-critical and mission-critical software. V&V is a systems engineering discipline that evaluates the software in a systems context, and is currently applied during the development of a specific application system. In order to bring the effectiveness of V&V to bear within reuse-based software engineering, V&V must be incorporated within the domain engineering process.

  12. Social Software Engineering Development and Collaboration with Social Networking

    CERN Document Server

    Keyes, Jessica

    2011-01-01

    Although the precepts of software engineering have been around for decades, the field has failed to keep pace with rapid advancements in computer hardware and software. Modern systems that integrate multiple platforms and architectures, along with the collaborative nature of users who expect an instantaneous global reach via the Internet, require updated software engineering methods. Social Software Engineering: Development and Collaboration with Social Networking examines the field through the spectrum of the social activities that now compose it. Supplying an up-to-date look at this ever-evo

  13. Engineering Software Suite Validates System Design

    Science.gov (United States)

    2007-01-01

    EDAptive Computing Inc.'s (ECI) EDAstar engineering software tool suite, created to capture and validate system design requirements, was significantly funded by NASA's Ames Research Center through five Small Business Innovation Research (SBIR) contracts. These programs specifically developed Syscape, used to capture executable specifications of multi-disciplinary systems, and VectorGen, used to automatically generate tests to ensure system implementations meet specifications. According to the company, the VectorGen tests considerably reduce the time and effort required to validate implementation of components, thereby ensuring their safe and reliable operation. EDASHIELD, an additional product offering from ECI, can be used to diagnose, predict, and correct errors after a system has been deployed using EDASTAR -created models. Initial commercialization for EDASTAR included application by a large prime contractor in a military setting, and customers include various branches within the U.S. Department of Defense, industry giants like the Lockheed Martin Corporation, Science Applications International Corporation, and Ball Aerospace and Technologies Corporation, as well as NASA's Langley and Glenn Research Centers

  14. SWEBOS – The Software Engineering Body of Skills

    Directory of Open Access Journals (Sweden)

    Yvonne Sedelmaier

    2015-02-01

    Full Text Available The development of complex software systems requires a mixture of various technical and non-technical competencies. While some guidelines exist which technical knowledge is required to make a good software engineer, there is a lack of insight as to which non-technical or soft skills are necessary to master complex software projects. This paper proposes a body of skills (SWEBOS for soft-ware engineering. The collection of necessary skills is developed on the basis of a clear, data-driven research design. The resulting required soft skills for software engineering are described precisely and semantically rich in a three-level structure. This approach guarantees that skills are not just characterized in a broad and general manner, but rather they are specifically adapted to the domain of software engineering.

  15. Proceedings of the Fifteenth Annual Software Engineering Workshop

    Science.gov (United States)

    1990-01-01

    The Software Engineering Laboratory (SEL) is an organization sponsored by GSFC and created for the purpose of investigating the effectiveness of software engineering technologies when applied to the development of applications software. The goals of the SEL are: (1) to understand the software development process in the GSFC environment; (2) to measure the effect of various methodologies, tools, and models on this process; and (3) to identify and then to apply successful development practices. Fifteen papers were presented at the Fifteenth Annual Software Engineering Workshop in five sessions: (1) SEL at age fifteen; (2) process improvement; (3) measurement; (4) reuse; and (5) process assessment. The sessions were followed by two panel discussions: (1) experiences in implementing an effective measurement program; and (2) software engineering in the 1980's. A summary of the presentations and panel discussions is given.

  16. Proceedings of the Twenty-Fourth Annual Software Engineering Workshop

    Science.gov (United States)

    2000-01-01

    On December 1 and 2, the Software Engineering Laboratory (SEL), a consortium composed of NASA/Goddard, the University of Maryland, and CSC, held the 24th Software Engineering Workshop (SEW), the last of the millennium. Approximately 240 people attended the 2-day workshop. Day 1 was composed of four sessions: International Influence of the Software Engineering Laboratory; Object Oriented Testing and Reading; Software Process Improvement; and Space Software. For the first session, three internationally known software process experts discussed the influence of the SEL with respect to software engineering research. In the Space Software session, prominent representatives from three different NASA sites- GSFC's Marti Szczur, the Jet Propulsion Laboratory's Rick Doyle, and the Ames Research Center IV&V Facility's Lou Blazy- discussed the future of space software in their respective centers. At the end of the first day, the SEW sponsored a reception at the GSFC Visitors' Center. Day 2 also provided four sessions: Using the Experience Factory; A panel discussion entitled "Software Past, Present, and Future: Views from Government, Industry, and Academia"; Inspections; and COTS. The day started with an excellent talk by CSC's Frank McGarry on "Attaining Level 5 in CMM Process Maturity." Session 2, the panel discussion on software, featured NASA Chief Information Officer Lee Holcomb (Government), our own Jerry Page (Industry), and Mike Evangelist of the National Science Foundation (Academia). Each presented his perspective on the most important developments in software in the past 10 years, in the present, and in the future.

  17. A report on NASA software engineering and Ada training requirements

    Science.gov (United States)

    Legrand, Sue; Freedman, Glenn B.; Svabek, L.

    1987-01-01

    NASA's software engineering and Ada skill base are assessed and information that may result in new models for software engineering, Ada training plans, and curricula are provided. A quantitative assessment which reflects the requirements for software engineering and Ada training across NASA is provided. A recommended implementation plan including a suggested curriculum with associated duration per course and suggested means of delivery is also provided. The distinction between education and training is made. Although it was directed to focus on NASA's need for the latter, the key relationships to software engineering education are also identified. A rationale and strategy for implementing a life cycle education and training program are detailed in support of improved software engineering practices and the transition to Ada.

  18. Requirements engineering and management for software development projects

    CERN Document Server

    Chemuturi, Murali

    2012-01-01

    Requirements Engineering and Management for Software Development Projects presents a complete guide on requirements for software development including engineering, computer science and management activities. It is the first book to cover all aspects of requirements management in software development projects. This book introduces the understanding of the requirements, elicitation and gathering, requirements analysis, verification and validation of the requirements, establishment of requirements, different methodologies in brief, requirements traceability and change management among other topic

  19. Development of design automation codes using software engineering methods

    Energy Technology Data Exchange (ETDEWEB)

    Smith, R.J. II

    1976-10-31

    The Electrical Engineering Department of the Lawrence Livermore Laboratory (LLL) has recently formed a Design Automation (DA) Group responsible for development of new DA capabilities at the Laboratory. This paper briefly discusses the environment in which the software is being produced, and methodologies employed by the development team. The discussion of software engineering approaches should be of interest to small groups producing relatively large complex software systems. (auth)

  20. TWRS systems engineering software configuration management plan

    Energy Technology Data Exchange (ETDEWEB)

    Porter, P.E.

    1996-10-09

    This plan delineates the requirements for control of software developed and supported by the Tank Waste Remediation System (TWRS) Technical Integration organization. The information contained in this plan shall assist employees involved with software modification and configuration control.

  1. Integrating security analysis and safeguards software engineering

    Energy Technology Data Exchange (ETDEWEB)

    Spencer, D.D.; Axline, R.M.

    1989-01-01

    These initiatives will work together to provide more secure safeguards software, as well as other critical systems software. The resulting design tools and methodologies, the evolving guidelines for software security, and the adversary-resistant software components will be applied to the software design at each stage to increase the design's inherent security and to make the design easier to analyze. The resident hardware monitor or other architectural innovations will provide complementary additions to the design to remove some of the burden of security from the software. The security analysis process, supported by new analysis methodologies and tools, will be applied to the software design as it evolves in an attempt to identify and remove vulnerabilities at the earliest possible point in the safeguards system life cycle. The result should be better and more verifiably secure software systems.

  2. On Quality and Measures in Software Engineering

    Science.gov (United States)

    Bucur, Ion I.

    2006-01-01

    Complexity measures are mainly used to estimate vital information about reliability and maintainability of software systems from regular analysis of the source code. Such measures also provide constant feedback during a software project to assist the control of the development procedure. There exist several models to classify a software product's…

  3. Supporting Usability Engineering in Small Software Development Organizations

    DEFF Research Database (Denmark)

    Bornoe, Nis; Stage, Jan

    2013-01-01

    Despite an interest and use of different usability engineering methods small software development organizations find it challenging to implement usability engineering into the software development process. We present the results from a study about usability engineering in practice. Through a series...... of semistructured interviews we want to get an understanding of how usability is implemented into the organizations and how it’s practiced in reality. We found that the developers found it problematic to combine agile software development methods with classic usability engineering methods. A lack of solid usability...... engineering expertise and not least experience seems to be a main obstacle for a successful implementation of usability engineering into current software development practices. They are requesting methods and procedures that fit better with their current practices and strategies to implement usability...

  4. Supporting Usability Engineering in Small Software Development Organizations

    DEFF Research Database (Denmark)

    Bornoe, Nis; Stage, Jan

    2013-01-01

    Despite an interest and use of different usability engineering methods small software development organizations find it challenging to implement usability engineering into the software development process. We present the results from a study about usability engineering in practice. Through a series...... of semistructured interviews we want to get an understanding of how usability is implemented into the organizations and how it’s practiced in reality. We found that the developers found it problematic to combine agile software development methods with classic usability engineering methods. A lack of solid usability...... engineering expertise and not least experience seems to be a main obstacle for a successful implementation of usability engineering into current software development practices. They are requesting methods and procedures that fit better with their current practices and strategies to implement usability...

  5. On the Prospects and Concerns of Integrating Open Source Software Environment in Software Engineering Education

    Science.gov (United States)

    Kamthan, Pankaj

    2007-01-01

    Open Source Software (OSS) has introduced a new dimension in software community. As the development and use of OSS becomes prominent, the question of its integration in education arises. In this paper, the following practices fundamental to projects and processes in software engineering are examined from an OSS perspective: project management;…

  6. On the Prospects and Concerns of Integrating Open Source Software Environment in Software Engineering Education

    Science.gov (United States)

    Kamthan, Pankaj

    2007-01-01

    Open Source Software (OSS) has introduced a new dimension in software community. As the development and use of OSS becomes prominent, the question of its integration in education arises. In this paper, the following practices fundamental to projects and processes in software engineering are examined from an OSS perspective: project management;…

  7. A synchronous cooperative architecture for the PROSOFT software engineering environment

    OpenAIRE

    Quites Reis, Rodrigo; Lima Reis, Carla Alessandra; Nunes, Daltro José

    1998-01-01

    This paper shows the evolution of a software engineering environment (SEE) called PROSOFT to support the formal development of groupware applications. This environment, which is centered in the data-driven approach for software development, evolved to support cooperation in the software development process. Its transition is founded in a client/server communication model called Distributed PROSOFT that provides software mechanisms to permit concurrent use of the environment resources. Thu...

  8. Software Maintenance Exercises for a Software Engineering Project Course

    Science.gov (United States)

    1989-02-01

    Specilleauons: A Frarnewo* * CM-12 Software Metrws CM- 13 Introduction to Softwarell Verification and Validation CM-14 Intelectual Property Protection for...course. Reviews can be conducted in a number of different ways; a good introduction for the instructor may be found in [Collofello88a]. Stepwise...example, exer- cises 4.16, 4.17, and 4.18). For the DASC system, which is reasonably well structured and makes good use of Ada packages, this

  9. The Role of Ethnographic Studies in Empirical Software Engineering

    DEFF Research Database (Denmark)

    Sharp, Helen; Dittrich, Yvonne; Souza, Cleidson R. B. de

    2016-01-01

    Ethnography is a qualitative research method used to study people and cultures. It is largely adopted in disciplines outside software engineering, including different areas of computer science. Ethnography can provide an in-depth understanding of the socio-technological realities surrounding...... everyday software development practice, i.e., it can help to uncover not only what practitioners do, but also why they do it. Despite its potential, ethnography has not been widely adopted by empirical software engineering researchers, and receives little attention in the related literature. The main goal...... of this paper is to explain how empirical software engineering researchers would benefit from adopting ethnography. This is achieved by explicating four roles that ethnography can play in furthering the goals of empirical software engineering: to strengthen investigations into the social and human aspects...

  10. The Role of Ethnographic Studies in Empirical Software Engineering

    DEFF Research Database (Denmark)

    Sharp, Helen; Dittrich, Yvonne; Souza, Cleidson R. B. de

    2016-01-01

    Ethnography is a qualitative research method used to study people and cultures. It is largely adopted in disciplines outside software engineering, including different areas of computer science. Ethnography can provide an in-depth understanding of the socio-technological realities surrounding...... everyday software development practice, i.e., it can help to uncover not only what practitioners do, but also why they do it. Despite its potential, ethnography has not been widely adopted by empirical software engineering researchers, and receives little attention in the related literature. The main goal...... of this paper is to explain how empirical software engineering researchers would benefit from adopting ethnography. This is achieved by explicating four roles that ethnography can play in furthering the goals of empirical software engineering: to strengthen investigations into the social and human aspects...

  11. Comparison of Problem Solving from Engineering Design to Software Design

    DEFF Research Database (Denmark)

    Ahmed-Kristensen, Saeema; Babar, Muhammad Ali

    2012-01-01

    Observational studies of engineering design activities can inform the research community on the problem solving models that are employed by professional engineers. Design is defined as an ill-defined problem which includes both engineering design and software design, hence understanding problem s...

  12. Incorporating Gaming in Software Engineering Projects: Case of RMU Monopoly

    Directory of Open Access Journals (Sweden)

    Sushil Acharya

    2009-02-01

    Full Text Available A major challenge in engineering education is retaining student interest in the engineering discipline. Active student involvement in engineering projects is one way of retaining student interest. Such involvement can only be realized if project inception comes entirely from the student. This paper presents a software game, RMU Monopoly, developed as a project requirement for a software engineering course and describes the challenges and gains of implementing such a project. The RMU Monopoly was proposed by three junior software engineering students. The game is a multi-platform software program that allows up to eight players and implements the rules of the Monopoly board game. To ensure agility the game was developed using the spiral software development model. The Software Requirements Specification (SRS document was finalized through an iterative procedure. Standard Unified Modeling Language (UML diagrams were used for product design. A Risk Mitigation, Monitoring, and Management Plan (RMMM was developed to ensure proactive risk management. Gantt chart, weekly progress meetings and weekly scrum meetings were used to track project progress. C# and Sub- Version were used in a client-server architecture to develop the software. The project was successful in retaining student interest in the software engineering discipline

  13. Towards E-CASE Tools for Software Engineering

    Directory of Open Access Journals (Sweden)

    Nabil Arman

    2013-02-01

    Full Text Available CASE tools are having an important role in all phases of software systems development and engineering. This is evident in the huge benefits obtained from using these tools including their cost-effectiveness, rapid software application development, and improving the possibility of software reuse to name just a few. In this paper, the idea of moving towards E-CASE tools, rather than traditional CASE tools, is advocated since these E-CASE tools have all the benefits and advantages of traditional CASE tools and add to that all the benefits of web technology. This is presented by focusing on the role of E-CASE tools in facilitating the trend of telecommuting and virtual workplaces among software engineering and information technology professionals. In addition, E-CASE tools integrates smoothly with the trend of E-learning in conducting software engineering courses. Finally, two surveys were conducted for a group of software engineering professional and students of software engineering courses. The surveys show that E-CASE tools are of great value to both communities of students and professionals of software engineering.

  14. 40 CFR Appendix C-1 to Subpart E... - Required Provisions-Consulting Engineering Agreements

    Science.gov (United States)

    2010-07-01

    ... Treatment Works-Clean Water Act Pt. 35, Subpt. E, App. C-1 Appendix C-1 to Subpart E of Part 35—Required..., the words “the date of execution of this agreement” mean the date of execution of this agreement and... violation of section 204(a)(6) of the Clean Water Act. This statute requires that no specification for...

  15. Avionics Simulation, Development and Software Engineering

    Science.gov (United States)

    2002-01-01

    During this reporting period, all technical responsibilities were accomplished as planned. A close working relationship was maintained with personnel of the MSFC Avionics Department Software Group (ED14), the MSFC EXPRESS Project Office (FD31), and the Huntsville Boeing Company. Accomplishments included: performing special tasks; supporting Software Review Board (SRB), Avionics Test Bed (ATB), and EXPRESS Software Control Panel (ESCP) activities; participating in technical meetings; and coordinating issues between the Boeing Company and the MSFC Project Office.

  16. On the engineering of crucial software

    Science.gov (United States)

    Pratt, T. W.; Knight, J. C.; Gregory, S. T.

    1983-01-01

    The various aspects of the conventional software development cycle are examined. This cycle was the basis of the augmented approach contained in the original grant proposal. This cycle was found inadequate for crucial software development, and the justification for this opinion is presented. Several possible enhancements to the conventional software cycle are discussed. Software fault tolerance, a possible enhancement of major importance, is discussed separately. Formal verification using mathematical proof is considered. Automatic programming is a radical alternative to the conventional cycle and is discussed. Recommendations for a comprehensive approach are presented, and various experiments which could be conducted in AIRLAB are described.

  17. Large-scale visualization projects for teaching software engineering.

    Science.gov (United States)

    Müller, Christoph; Reina, Guido; Burch, Michael; Weiskopf, Daniel

    2012-01-01

    The University of Stuttgart's software engineering major complements the traditional computer science major with more practice-oriented education. Two-semester software projects in various application areas offered by the university's different computer science institutes are a successful building block in the curriculum. With this realistic, complex project setting, students experience the practice of software engineering, including software development processes, technologies, and soft skills. In particular, visualization-based projects are popular with students. Such projects offer them the opportunity to gain profound knowledge that would hardly be possible with only regular lectures and homework assignments.

  18. Software Engineering Research/Developer Collaborations in 2005

    Science.gov (United States)

    Pressburger, Tom

    2006-01-01

    In CY 2005, three collaborations between software engineering technology providers and NASA software development personnel deployed three software engineering technologies on NASA development projects (a different technology on each project). The main purposes were to benefit the projects, infuse the technologies if beneficial into NASA, and give feedback to the technology providers to improve the technologies. Each collaboration project produced a final report. Section 2 of this report summarizes each project, drawing from the final reports and communications with the software developers and technology providers. Section 3 indicates paths to further infusion of the technologies into NASA practice. Section 4 summarizes some technology transfer lessons learned. Also included is an acronym list.

  19. Proceedings of the Eighteenth Annual Software Engineering Workshop

    Science.gov (United States)

    1993-01-01

    The workshop provided a forum for software practitioners from around the world to exchange information on the measurement, use, and evaluation of software methods, models, and tools. This year, approximately 450 people attended the workshop, which consisted of six sessions on the following topics: the Software Engineering Laboratory, measurement, technology assessment, advanced concepts, process, and software engineering issues in NASA. Three presentations were given in each of the topic areas. The content of those presentations and the research papers detailing the work reported are included in these proceedings. The workshop concluded with a tutorial session on how to start an Experience Factory.

  20. Introducing Software Engineering by means of Extreme Programming

    DEFF Research Database (Denmark)

    Hedin, G.; Bendix, Lars Gotfred; Magnusson, B.

    2003-01-01

    This paper reports on experience from teaching basic software engineering concepts by using Extreme Programming in a second year undergraduate course taken by 107 students. We describe how this course fits into a wider programme on software engineering and technology and report our experience from...... running and improving the course. Particularly important aspects of our set-up includes team coaching (by older students) and "team-in-one-room". Our experience so far is very positive and we see that students get a good basic understanding of the important concepts in software engineering, rooted...

  1. Cooperative and Human Aspects of Software Engineering (CHASE 2008)

    DEFF Research Database (Denmark)

    2008-01-01

    The CHASE 2008 workshop is concerned with exploring the cooperative and human aspects of software engineering, and providing a forum for discussing high-quality research. Accepted papers reflect diversity of the field of software engineering – ranging from requirements to testing, and from...... ethnographic research to experiments. Moreover, the background of attendees reflects the diversity of researchers in this domain, ranging from sociology to psychology, from informatics to software engineering. CHASE 1008 met its goals in presenting high-quality research and building community through a mixture...

  2. Introducing Software Engineering by means of Extreme Programming

    DEFF Research Database (Denmark)

    Hedin, G.; Bendix, Lars Gotfred; Magnusson, B.

    2003-01-01

    This paper reports on experience from teaching basic software engineering concepts by using Extreme Programming in a second year undergraduate course taken by 107 students. We describe how this course fits into a wider programme on software engineering and technology and report our experience from...... running and improving the course. Particularly important aspects of our set-up includes team coaching (by older students) and "team-in-one-room". Our experience so far is very positive and we see that students get a good basic understanding of the important concepts in software engineering, rooted...

  3. Simple statistical methods for software engineering data and patterns

    CERN Document Server

    Pandian, C Ravindranath

    2015-01-01

    Although there are countless books on statistics, few are dedicated to the application of statistical methods to software engineering. Simple Statistical Methods for Software Engineering: Data and Patterns fills that void. Instead of delving into overly complex statistics, the book details simpler solutions that are just as effective and connect with the intuition of problem solvers.Sharing valuable insights into software engineering problems and solutions, the book not only explains the required statistical methods, but also provides many examples, review questions, and case studies that prov

  4. Cooperative and Human Aspects of Software Engineering (CHASE 2008)

    DEFF Research Database (Denmark)

    2008-01-01

    The CHASE 2008 workshop is concerned with exploring the cooperative and human aspects of software engineering, and providing a forum for discussing high-quality research. Accepted papers reflect diversity of the field of software engineering – ranging from requirements to testing, and from...... ethnographic research to experiments. Moreover, the background of attendees reflects the diversity of researchers in this domain, ranging from sociology to psychology, from informatics to software engineering. CHASE 1008 met its goals in presenting high-quality research and building community through a mixture...

  5. Assessment and Development of Software Engineering Tools

    Science.gov (United States)

    1991-01-16

    Assessment (REA) tool would advise a potential software reuser on the tradeoffs between reusing a RSC versus developing a brand new software product...of memberships in the key RSC reusability attributes; e.g., size, structure, or documentation, etc., all of which would be weighted by reuser

  6. Software engineering for minicomputer systems in mines

    Energy Technology Data Exchange (ETDEWEB)

    Wojciechowski, J.

    1977-01-01

    This paper discusses building real-time software for minicomputer systems used in underground black coal mines in Poland. Computerized control systems used in coal mining and tasks of these control systems are evaluated. The following stages of software building are analyzed: problem analysis (operational description), design (functional description, structure and module description), coding and debugging, types of documents. Recommendations are made for software building developed on the basis of experience from the Siersza black coal mine and other enterprises. Practical aspects of software building, such as cost, are stressed. About 40% of time for software building falls on problem analysis and design, 50% on coding and debugging and 10% on documents. 7 refs.

  7. Novel Software Reliability Estimation Model for Altering Paradigms of Software Engineering

    Directory of Open Access Journals (Sweden)

    Ritika Wason

    2012-05-01

    Full Text Available A number of different software engineering paradigms like Component-Based Software Engineering (CBSE, Autonomic Computing, Service-Oriented Computing (SOC, Fault-Tolerant Computing and many others are being researched currently. These paradigms denote a paradigm shift from the currently mainstream object-oriented paradigm and are altering the way we view, design, develop and exercise software. Though these paradigms indicate a major shift in the way we design and code software. However, we still rely on traditional reliability models for estimating the reliability of any of the above systems. This paper analyzes the underlying characteristics of these paradigms and proposes a novel Finite Automata Based Reliability model as a suitable model for estimating reliability of modern, complex, distributed and critical software applications. We further outline the basic framework for an intelligent, automata-based reliability model that can be used for accurate estimation of system reliability of software systems at any point in the software life cycle.

  8. Modeling Virtual Meetings within Software Engineering Environment

    Directory of Open Access Journals (Sweden)

    Dr. Aiman Turani

    2014-04-01

    Full Text Available It is a common scenario to see project’s stakeholders, such as managers, team leaders, and developers carrying out their meeting in the online environment without a suitable preparation and facilitation For instance, stakeholders engaging in negotiation sessions trying to communicate system requirements in the virtual environment might face requirements misunderstanding which in turn might cause a whole project to fail. Usually a meeting agenda and design is implicit in the facilitator’s head. Conducting such meetings without obvious structure would potentially lead to various problems such as no one seemed to be in charge? Or there was no clear reason to meet or no agenda etc. In this paper, we are presenting a general framework to model group-based activities and meetings within software engineering field in a simplified and formal manner. Traditionally, managers submit their web-based group meeting information in a form of text-based instructions [1]. Then a group facilitator or chairperson will lead the group throughout the meeting to achieve the desired objectives. These types of meeting are relatively easy to manage in face-to-face environment where web based meeting in the other hand, is more challenging to facilitate and manage. Therefore, more and more specialized tools are immerging to manage and facilitate such meetings. For instance, Adobe Connect [2] is tool for facilitating web-based meetings. These tools usually allow facilitators to organize and prepare the meeting floor by inserting specific collaboration components such as chat, whiteboard, voting, etc. Then during the meeting the facilitator guides participants using the video or text component. This usually leads to undesirable outputs due to the lack of a clear structure or agenda in addition to the virtual distance that weakens the communication. In this paper a two level of modeling views are proposed, the static view and the dynamic view. The static view mainly

  9. Proceedings of the 2012 International Conference on Information Technology and Software Engineering : Software Engineering & Digital Media Technology

    CERN Document Server

    Cai, Guoqiang; Liu, Weibin; Xing, Weiwei

    2013-01-01

    Proceedings of the 2012 International Conference on Information Technology and Software Engineering presents selected articles from this major event, which was held in Beijing, December 8-10, 2012. This book presents the latest research trends, methods and experimental results in the fields of information technology and software engineering, covering various state-of-the-art research theories and approaches. The subjects range from intelligent computing to information processing, software engineering, Web, unified modeling language (UML), multimedia, communication technologies, system identification, graphics and visualizing, etc. The proceedings provide a major interdisciplinary forum for researchers and engineers to present the most innovative studies and advances, which can serve as an excellent reference work for researchers and graduate students working on information technology and software engineering. Prof. Wei Lu, Dr. Guoqiang Cai, Prof. Weibin Liu and Dr. Weiwei Xing all work at Beijing Jiaotong Uni...

  10. 4th International Conference in Software Engineering for Defence Applications

    CERN Document Server

    Sillitti, Alberto; Succi, Giancarlo; Messina, Angelo

    2016-01-01

    This book presents high-quality original contributions on new software engineering models, approaches, methods, and tools and their evaluation in the context of defence and security applications. In addition, important business and economic aspects are discussed, with a particular focus on cost/benefit analysis, new business models, organizational evolution, and business intelligence systems. The contents are based on presentations delivered at SEDA 2015, the 4th International Conference in Software Engineering for Defence Applications, which was held in Rome, Italy, in May 2015. This conference series represents a targeted response to the growing need for research that reports and debates the practical implications of software engineering within the defence environment and also for software performance evaluation in real settings through controlled experiments as well as case and field studies. The book will appeal to all with an interest in modeling, managing, and implementing defence-related software devel...

  11. Vernacularism in Software Design Practice: does craftsmanship have a place in software engineering?

    Directory of Open Access Journals (Sweden)

    Paul Taylor

    2003-11-01

    Full Text Available Convention dictates that an information discipline matures from an informal shared practice to a defined and repeatable process through the externalisation and formal expression of its underlying theory. The inevitability of this progression should not be allowed to over-shadow the essential values, skills and knowledge transfer mechanisms of the superseded vernacular or craft-like practices. This paper examines the tension between software engineering’s professionalisation of the software design role—exemplified by the software architect—and its antithesis, the software craftsperson, a characterisation that continues to emerge despite attempts to suppress reliance on individual skills and abilities through software engineering process. In other design disciplines, the professionalisation of design marks a distinct progression from ad hoc, unrepeatable, unselfconscious craft to a self-conscious, demarcated type of design found in most forms of engineering. Software engineering has partially failed to make this transition and this failure undermines the exclusivity of the engineering metaphor and engineering-based process models as a model of practical software design. Software methods must acknowledge and find ways of incorporating vernacularism and informality if the creative act of design is to be correctly characterised, supported in methods, and taught.

  12. Happy software developers solve problems better: psychological measurements in empirical software engineering.

    Science.gov (United States)

    Graziotin, Daniel; Wang, Xiaofeng; Abrahamsson, Pekka

    2014-01-01

    For more than thirty years, it has been claimed that a way to improve software developers' productivity and software quality is to focus on people and to provide incentives to make developers satisfied and happy. This claim has rarely been verified in software engineering research, which faces an additional challenge in comparison to more traditional engineering fields: software development is an intellectual activity and is dominated by often-neglected human factors (called human aspects in software engineering research). Among the many skills required for software development, developers must possess high analytical problem-solving skills and creativity for the software construction process. According to psychology research, affective states-emotions and moods-deeply influence the cognitive processing abilities and performance of workers, including creativity and analytical problem solving. Nonetheless, little research has investigated the correlation between the affective states, creativity, and analytical problem-solving performance of programmers. This article echoes the call to employ psychological measurements in software engineering research. We report a study with 42 participants to investigate the relationship between the affective states, creativity, and analytical problem-solving skills of software developers. The results offer support for the claim that happy developers are indeed better problem solvers in terms of their analytical abilities. The following contributions are made by this study: (1) providing a better understanding of the impact of affective states on the creativity and analytical problem-solving capacities of developers, (2) introducing and validating psychological measurements, theories, and concepts of affective states, creativity, and analytical-problem-solving skills in empirical software engineering, and (3) raising the need for studying the human factors of software engineering by employing a multidisciplinary viewpoint.

  13. Happy software developers solve problems better: psychological measurements in empirical software engineering

    Directory of Open Access Journals (Sweden)

    Daniel Graziotin

    2014-03-01

    Full Text Available For more than thirty years, it has been claimed that a way to improve software developers’ productivity and software quality is to focus on people and to provide incentives to make developers satisfied and happy. This claim has rarely been verified in software engineering research, which faces an additional challenge in comparison to more traditional engineering fields: software development is an intellectual activity and is dominated by often-neglected human factors (called human aspects in software engineering research. Among the many skills required for software development, developers must possess high analytical problem-solving skills and creativity for the software construction process. According to psychology research, affective states—emotions and moods—deeply influence the cognitive processing abilities and performance of workers, including creativity and analytical problem solving. Nonetheless, little research has investigated the correlation between the affective states, creativity, and analytical problem-solving performance of programmers. This article echoes the call to employ psychological measurements in software engineering research. We report a study with 42 participants to investigate the relationship between the affective states, creativity, and analytical problem-solving skills of software developers. The results offer support for the claim that happy developers are indeed better problem solvers in terms of their analytical abilities. The following contributions are made by this study: (1 providing a better understanding of the impact of affective states on the creativity and analytical problem-solving capacities of developers, (2 introducing and validating psychological measurements, theories, and concepts of affective states, creativity, and analytical-problem-solving skills in empirical software engineering, and (3 raising the need for studying the human factors of software engineering by employing a

  14. 7 Processes that Enable NASA Software Engineering Technologies: Value-Added Process Engineering

    Science.gov (United States)

    Housch, Helen; Godfrey, Sally

    2011-01-01

    The presentation reviews Agency process requirements and the purpose, benefits, and experiences or seven software engineering processes. The processes include: product integration, configuration management, verification, software assurance, measurement and analysis, requirements management, and planning and monitoring.

  15. Models for Undergraduate Project Courses in Software Engineering

    Science.gov (United States)

    1991-08-01

    B. Software Development: A Rigorous Approach. Prentice-Hall Interna- tional, Englewood Cliffs, New Jersey, 1980. 68. Jones, Capers . Programming...Engineering: Analysis and Verification. Reston Publishing Company, Reston, Virginia, 1982. 80. Liskov, Barbara and Guttag, John. Abstraction and

  16. Engineering of software the continuing contributions of Leon J. Osterweil

    CERN Document Server

    Tarr, Peri L

    2011-01-01

    Software engineering research can trace its roots to a small number of highly influential individuals including Prof. Leon J. Osterweil. This book assembles Prof. Osterweil's key publications as well as several new articles analyzing the impact of his work.

  17. ETICS the international software engineering service for the grid

    CERN Document Server

    Di Meglio, A; Couvares, P; Ronchieri, E; Takács, E

    2008-01-01

    The ETICS system is a distributed software configuration, build and test system designed to fulfil the needs of improving the quality, reliability and interoperability of distributed software in general and grid software in particular. The ETICS project is a consortium of five partners (CERN, INFN, Engineering Ingegneria Informatica, 4D Soft and the University of Wisconsin-Madison). The ETICS service consists of a build and test job execution system based on the Metronome software and an integrated set of web services and software engineering tools to design, maintain and control build and test scenarios. The ETICS system allows taking into account complex dependencies among applications and middleware components and provides a rich environment to perform static and dynamic analysis of the software and execute deployment, system and interoperability tests. This paper gives an overview of the system architecture and functionality set and then describes how the EC-funded EGEE, DILIGENT and OMII-Europe projects ...

  18. Infusing Software Engineering Technology into Practice at NASA

    Science.gov (United States)

    Pressburger, Thomas; Feather, Martin S.; Hinchey, Michael; Markosia, Lawrence

    2006-01-01

    We present an ongoing effort of the NASA Software Engineering Initiative to encourage the use of advanced software engineering technology on NASA projects. Technology infusion is in general a difficult process yet this effort seems to have found a modest approach that is successful for some types of technologies. We outline the process and describe the experience of the technology infusions that occurred over a two year period. We also present some lessons from the experiences.

  19. Proceedings of the Twenty-Third Annual Software Engineering Workshop

    Science.gov (United States)

    1999-01-01

    The Twenty-third Annual Software Engineering Workshop (SEW) provided 20 presentations designed to further the goals of the Software Engineering Laboratory (SEL) of the NASA-GSFC. The presentations were selected on their creativity. The sessions which were held on 2-3 of December 1998, centered on the SEL, Experimentation, Inspections, Fault Prediction, Verification and Validation, and Embedded Systems and Safety-Critical Systems.

  20. Leveraging Component-Based Software Engineering with Fraclet

    OpenAIRE

    Rouvoy, Romain; Merle, Philippe

    2009-01-01

    International audience; Component-based software engineering has achieved wide acceptance in the domain of software engineering by improving productivity, reusability and composition. This success has also encouraged the emergence of a plethora of component models. Nevertheless, even if the abstract models of most of lightweight component models are quite similar, their programming models can still differ a lot. This drawback limits the reuse and composition of components implemented using di...

  1. Study of a Quantum Framework for Search Based Software Engineering

    Science.gov (United States)

    Wu, Nan; Song, Fangmin; Li, Xiangdong

    2013-06-01

    The Search Based Software Engineering (SBSE) is widely used in the software engineering to identify optimal solutions. The traditional methods and algorithms used in SBSE are criticized due to their high costs. In this paper, we propose a rapid modified-Grover quantum searching method for SBSE, and theoretically this method can be applied to any search-space structure and any type of searching problems.

  2. Imprinting Community College Computer Science Education with Software Engineering Principles

    Science.gov (United States)

    Hundley, Jacqueline Holliday

    2012-01-01

    Although the two-year curriculum guide includes coverage of all eight software engineering core topics, the computer science courses taught in Alabama community colleges limit student exposure to the programming, or coding, phase of the software development lifecycle and offer little experience in requirements analysis, design, testing, and…

  3. Software Engineering Infrastructure in a Large Virtual Campus

    Science.gov (United States)

    Cristobal, Jesus; Merino, Jorge; Navarro, Antonio; Peralta, Miguel; Roldan, Yolanda; Silveira, Rosa Maria

    2011-01-01

    Purpose: The design, construction and deployment of a large virtual campus are a complex issue. Present virtual campuses are made of several software applications that complement e-learning platforms. In order to develop and maintain such virtual campuses, a complex software engineering infrastructure is needed. This paper aims to analyse the…

  4. Software Engineering Infrastructure in a Large Virtual Campus

    Science.gov (United States)

    Cristobal, Jesus; Merino, Jorge; Navarro, Antonio; Peralta, Miguel; Roldan, Yolanda; Silveira, Rosa Maria

    2011-01-01

    Purpose: The design, construction and deployment of a large virtual campus are a complex issue. Present virtual campuses are made of several software applications that complement e-learning platforms. In order to develop and maintain such virtual campuses, a complex software engineering infrastructure is needed. This paper aims to analyse the…

  5. Imprinting Community College Computer Science Education with Software Engineering Principles

    Science.gov (United States)

    Hundley, Jacqueline Holliday

    2012-01-01

    Although the two-year curriculum guide includes coverage of all eight software engineering core topics, the computer science courses taught in Alabama community colleges limit student exposure to the programming, or coding, phase of the software development lifecycle and offer little experience in requirements analysis, design, testing, and…

  6. Architecture independent environment for developing engineering software on MIMD computers

    Science.gov (United States)

    Valimohamed, Karim A.; Lopez, L. A.

    1990-01-01

    Engineers are constantly faced with solving problems of increasing complexity and detail. Multiple Instruction stream Multiple Data stream (MIMD) computers have been developed to overcome the performance limitations of serial computers. The hardware architectures of MIMD computers vary considerably and are much more sophisticated than serial computers. Developing large scale software for a variety of MIMD computers is difficult and expensive. There is a need to provide tools that facilitate programming these machines. First, the issues that must be considered to develop those tools are examined. The two main areas of concern were architecture independence and data management. Architecture independent software facilitates software portability and improves the longevity and utility of the software product. It provides some form of insurance for the investment of time and effort that goes into developing the software. The management of data is a crucial aspect of solving large engineering problems. It must be considered in light of the new hardware organizations that are available. Second, the functional design and implementation of a software environment that facilitates developing architecture independent software for large engineering applications are described. The topics of discussion include: a description of the model that supports the development of architecture independent software; identifying and exploiting concurrency within the application program; data coherence; engineering data base and memory management.

  7. Proceedings of the 9th international conference on software engineering

    Energy Technology Data Exchange (ETDEWEB)

    1987-01-01

    This book presents the papers given at a conference on the design and development of computer codes. Topics considered at the conference included concurrent processes, programming languages, software/hardware interactions in distributed systems, version control, artificial intelligence and software engineering, parallel programming, knowledge bases, data base management, and computer architecture.

  8. Educational Software Tool for Protection System Engineers. Distance Relay

    Directory of Open Access Journals (Sweden)

    Trujillo-Guajardo L.A.

    2012-04-01

    Full Text Available In this article, a graphical software tool is presented; this tool is based on the education of protection system engineers. The theoretical fundaments used for the design of operation characteristics of distance relays and their algorithms are presented. The software allows the evaluation and analysis of real time events or simulated ones of every stage of design of the distance relay. Some example cases are presented to illustrate the activities that could be done with the graphical software tool developed.

  9. Towards E-CASE Tools for Software Engineering

    OpenAIRE

    Nabil Arman,

    2013-01-01

    CASE tools are having an important role in all phases of software systems development and engineering. This is evident in the huge benefits obtained from using these tools including their cost-effectiveness, rapid software application development, and improving the possibility of software reuse to name just a few. In this paper, the idea of moving towards E-CASE tools, rather than traditional CASE tools, is advocated since these E-CASE tools have all the benefits and advantages of traditional...

  10. Models and metrics for software management and engineering

    Science.gov (United States)

    Basili, V. R.

    1988-01-01

    This paper attempts to characterize and present a state of the art view of several quantitative models and metrics of the software life cycle. These models and metrics can be used to aid in managing and engineering software projects. They deal with various aspects of the software process and product, including resources allocation and estimation, changes and errors, size, complexity and reliability. Some indication is given of the extent to which the various models have been used and the success they have achieved.

  11. Software And Systems Engineering Risk Management

    Science.gov (United States)

    2010-04-01

    Engineering Life Cycle Processes IS 15288 Systems Engineering Life Cycle Processes IS 16085 Risk Management Process Quality ISO TC 176 ISO 9001 Quality...carefully define their “Context” as there is little guidance • integrate RSKM into their ISO 9001 clause 8.5.3 Preventive action • avoid offers

  12. General purpose optimization software for engineering design

    Science.gov (United States)

    Vanderplaats, G. N.

    1990-01-01

    The author has developed several general purpose optimization programs over the past twenty years. The earlier programs were developed as research codes and served that purpose reasonably well. However, in taking the formal step from research to industrial application programs, several important lessons have been learned. Among these are the importance of clear documentation, immediate user support, and consistent maintenance. Most important has been the issue of providing software that gives a good, or at least acceptable, design at minimum computational cost. Here, the basic issues developing optimization software for industrial applications are outlined and issues of convergence rate, reliability, and relative minima are discussed. Considerable feedback has been received from users, and new software is being developed to respond to identified needs. The basic capabilities of this software are outlined. A major motivation for the development of commercial grade software is ease of use and flexibility, and these issues are discussed with reference to general multidisciplinary applications. It is concluded that design productivity can be significantly enhanced by the more widespread use of optimization as an everyday design tool.

  13. The Business Case for Automated Software Engineering

    Science.gov (United States)

    Menzies, Tim; Elrawas, Oussama; Hihn, Jairus M.; Feather, Martin S.; Madachy, Ray; Boehm, Barry

    2007-01-01

    Adoption of advanced automated SE (ASE) tools would be more favored if a business case could be made that these tools are more valuable than alternate methods. In theory, software prediction models can be used to make that case. In practice, this is complicated by the 'local tuning' problem. Normally. predictors for software effort and defects and threat use local data to tune their predictions. Such local tuning data is often unavailable. This paper shows that assessing the relative merits of different SE methods need not require precise local tunings. STAR 1 is a simulated annealer plus a Bayesian post-processor that explores the space of possible local tunings within software prediction models. STAR 1 ranks project decisions by their effects on effort and defects and threats. In experiments with NASA systems. STARI found one project where ASE were essential for minimizing effort/ defect/ threats; and another project were ASE tools were merely optional.

  14. The Business Case for Automated Software Engineering

    Science.gov (United States)

    Menzies, Tim; Elrawas, Oussama; Hihn, Jairus M.; Feather, Martin S.; Madachy, Ray; Boehm, Barry

    2007-01-01

    Adoption of advanced automated SE (ASE) tools would be more favored if a business case could be made that these tools are more valuable than alternate methods. In theory, software prediction models can be used to make that case. In practice, this is complicated by the 'local tuning' problem. Normally. predictors for software effort and defects and threat use local data to tune their predictions. Such local tuning data is often unavailable. This paper shows that assessing the relative merits of different SE methods need not require precise local tunings. STAR 1 is a simulated annealer plus a Bayesian post-processor that explores the space of possible local tunings within software prediction models. STAR 1 ranks project decisions by their effects on effort and defects and threats. In experiments with NASA systems. STARI found one project where ASE were essential for minimizing effort/ defect/ threats; and another project were ASE tools were merely optional.

  15. An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course

    Science.gov (United States)

    Ge, Xun; Huang, Kun; Dong, Yifei

    2010-01-01

    A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study…

  16. The 7 C's for Creating Living Software: A Research Perspective for Quality-Oriented Software Engineering

    NARCIS (Netherlands)

    Aksit, Mehmet

    2004-01-01

    This article proposes the 7 C's for realizing quality-oriented software engineering practices. All the desired qualities of this approach are expressed in short by the term living software. The 7 C's are: Concern-oriented processes, Canonical models, Composable models, Certifiable models,

  17. Evaluating Educational Software Authoring Environments Using a Model Based on Software Engineering and Instructional Design Principles.

    Science.gov (United States)

    Collis, Betty A.; Gore, Marilyn

    1987-01-01

    This study suggests a new model for the evaluation of educational software authoring systems and applies this model to a particular authoring system, CSR Trainer 4000. The model used is based on an integrated set of software engineering and instructional design principles. (Author/LRW)

  18. An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course

    Science.gov (United States)

    Ge, Xun; Huang, Kun; Dong, Yifei

    2010-01-01

    A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study…

  19. The 7 C's for Creating Living Software: A Research Perspective for Quality Oriented Software Engineering.

    NARCIS (Netherlands)

    Aksit, Mehmet

    2004-01-01

    This article proposes the 7 C's for realizing quality-oriented software engineering practices. All the desired qualities of this approach are expressed in short by the term living software. The 7 C's are: Concern-oriented processes, Canonical models, Composable models, Certiable models, Constructibl

  20. Practical support for Lean Six Sigma software process definition using IEEE software engineering standards

    CERN Document Server

    Land, Susan K; Walz, John W

    2012-01-01

    Practical Support for Lean Six Sigma Software Process Definition: Using IEEE Software Engineering Standards addresses the task of meeting the specific documentation requirements in support of Lean Six Sigma. This book provides a set of templates supporting the documentation required for basic software project control and management and covers the integration of these templates for their entire product development life cycle. Find detailed documentation guidance in the form of organizational policy descriptions, integrated set of deployable document templates, artifacts required in suppo

  1. Engineering in the Cloud: An Engineering Software + Services Architecture Forged in Turbulent Times

    Directory of Open Access Journals (Sweden)

    Peter Williams

    2012-09-01

    Full Text Available This article describes both the architectural challenges that are inherent in implementing “Engineering in the Cloud” and an architecture that we call “Engineering Software + Services.”

  2. HydroShare: Applying professional software engineering to a new NSF-funded large software project

    Science.gov (United States)

    Idaszak, R.; Tarboton, D. G.; Ames, D.; Saleem Arrigo, J. A.; Band, L. E.; Bedig, A.; Castronova, A. M.; Christopherson, L.; Coposky, J.; Couch, A.; Dash, P.; Gan, T.; Goodall, J.; Gustafson, K.; Heard, J.; Hooper, R. P.; Horsburgh, J. S.; Jackson, S.; Johnson, H.; Maidment, D. R.; Mbewe, P.; Merwade, V.; Miles, B.; Reeder, S.; Russell, T.; Song, C.; Taylor, A.; Thakur, S.; Valentine, D. W.; Whiteaker, T. L.

    2013-12-01

    HydroShare is an online, collaborative system being developed for sharing hydrologic data and models as part of the NSF's Software Infrastructure for Sustained Innovation (SI2) program (NSF collaborative award numbers 1148453 and 1148090). HydroShare involves a large software development effort requiring cooperative research and distributed software development between domain scientists, professional software engineers (here 'professional' denotes previous commercial experience in the application of modern software engineering), and university software developers. HydroShare expands upon the data sharing capabilities of the Hydrologic Information System of the Consortium of Universities for the Advancement of Hydrologic Sciences, Inc. (CUAHSI) by broadening the classes of data accommodated, expanding capability to include the sharing of models and model components, and taking advantage of emerging social media functionality to enhance information about and collaboration around hydrologic data and models. With a goal of enabling better science concomitant with improved sustainable software practices, we will describe our approach, experiences, and lessons learned thus-far in applying professional software engineering to a large NSF-funded software project from the project's onset.

  3. Support for Different Roles in Software Engineering Master's Thesis Projects

    Science.gov (United States)

    Host, M.; Feldt, R.; Luders, F.

    2010-01-01

    Like many engineering programs in Europe, the final part of most Swedish software engineering programs is a longer project in which the students write a Master's thesis. These projects are often conducted in cooperation between a university and industry, and the students often have two supervisors, one at the university and one in industry. In…

  4. Support for Different Roles in Software Engineering Master's Thesis Projects

    Science.gov (United States)

    Host, M.; Feldt, R.; Luders, F.

    2010-01-01

    Like many engineering programs in Europe, the final part of most Swedish software engineering programs is a longer project in which the students write a Master's thesis. These projects are often conducted in cooperation between a university and industry, and the students often have two supervisors, one at the university and one in industry. In…

  5. THE ABILITY TO PROVIDE WELL QUALIFIED SOFTWARE ENGINEERING GRADUATES TO THE SOFTWARE INDUSTRY CASE STUDY: JORDANIAN UNIVERSITIES

    Directory of Open Access Journals (Sweden)

    Mohammad Shkoukani

    2013-03-01

    Full Text Available The new trend in software engineering research is how to provide software engineering industry with well qualified software engineering graduates; this trend has been appeared because there is an obvious difference between the industry needs and the actual supply from software engineering departments. This paper will introduce briefly software engineering and software development process then it will mention the main properties of software engineering, A brief discussion about software engineering graduates and educators will be presented in this paper after that it will determines whether there are well qualified software engineering graduates in the Jordanian universities. Finally it will discuss a proposed model designed by the researcher to increase software engineering graduates’ quality, qualification and productivity in Jordanian universities. The result of the study (76 respondents of academic staff of software engineering department indicated thatunfortunately, there are no well qualified software engineering graduates in the Jordanian universities. Another indication was that the designed model would have a significant impact to increase the quality, qualification and productivity of software engineering graduates in Jordanian universities.

  6. Software Service Engineering : Tenets and Challenges

    NARCIS (Netherlands)

    Heuvel, Willem-Jan van den; Zimmermann, Olaf; Leymann, Frank; Lago, Patricia; Schieferdecker, Ina; Zdun, Uwe; Avgeriou, Paris

    2009-01-01

    Service-Oriented Architecture (SOA) constitutes a modern, standards-based and technology-independent paradigm and architectural style for distributed enterprise computing. The SOA style promotes the publishing, discovery, and binding of loosely-coupled, network-accessible software services. With SOA

  7. Information Engineering in Autonomous Robot Software

    NARCIS (Netherlands)

    Ziafati, P.

    2015-01-01

    In order to engage and help in our daily life, autonomous robots are to operate in dynamic and unstructured environments and interact with people. As the robot's environment and its behaviour are getting more complex, so are the robot's software and the knowledge that the robot needs to carry out it

  8. Interaction between Software Engineering and Artificial Intelligence- A Review

    Directory of Open Access Journals (Sweden)

    Prince Jain

    2011-12-01

    Full Text Available Software engineering and artificial intelligence is the two field of the computer science. During the last decades, the disciplines of Artificial Intelligence and Software Engineering have developedseparately without the much exchange of research outcomes. However, both fields of computer science have different characteristics, benefits and limitations. This statement opens many possibilities and ideas for research. One idea is that the researcher applies the available methods, tools and techniques of Artificial Intelligence to Software Engineering and Software Engineering to Artificial Intelligence in a manner that good things, feature, characteristic and advantages of the both fields is taken up, and the limitations will reduces. During applicability, an intersection area is found between AI and SE, which forms the relation between AI and SE. The work in this paper discusses the factor that come while communicating between AI and SE such as Communication, objective, Problem and reasons for adopting. This work explores the framework of interaction on which both fields are communicate with each other. This framework has four major classes of interaction such as software support environment, AI tools and techniques in conventional software, Use of conventional software technology and Methodological considerations. This paper introduces the relation between AI and SE, and varioustechniques evolved while merging.

  9. ETICS: the international software engineering service for the grid

    Science.gov (United States)

    Meglio, A. D.; Bégin, M.-E.; Couvares, P.; Ronchieri, E.; Takacs, E.

    2008-07-01

    The ETICS system is a distributed software configuration, build and test system designed to fulfil the needs of improving the quality, reliability and interoperability of distributed software in general and grid software in particular. The ETICS project is a consortium of five partners (CERN, INFN, Engineering Ingegneria Informatica, 4D Soft and the University of Wisconsin-Madison). The ETICS service consists of a build and test job execution system based on the Metronome software and an integrated set of web services and software engineering tools to design, maintain and control build and test scenarios. The ETICS system allows taking into account complex dependencies among applications and middleware components and provides a rich environment to perform static and dynamic analysis of the software and execute deployment, system and interoperability tests. This paper gives an overview of the system architecture and functionality set and then describes how the EC-funded EGEE, DILIGENT and OMII-Europe projects are using the software engineering services to build, validate and distribute their software. Finally a number of significant use and test cases will be described to show how ETICS can be used in particular to perform interoperability tests of grid middleware using the grid itself.

  10. ETICS: the international software engineering service for the grid

    Energy Technology Data Exchange (ETDEWEB)

    Meglio, A D; Begin, M-E [CERN (Switzerland); Couvares, P [University of Wisconsin-Madison (United States); Ronchieri, E [INFN CNAF (Italy); Takacs, E [4D SOFT Ltd (Hungary)], E-mail: alberto.di.meglio@cern.ch

    2008-07-15

    The ETICS system is a distributed software configuration, build and test system designed to fulfil the needs of improving the quality, reliability and interoperability of distributed software in general and grid software in particular. The ETICS project is a consortium of five partners (CERN, INFN, Engineering Ingegneria Informatica, 4D Soft and the University of Wisconsin-Madison). The ETICS service consists of a build and test job execution system based on the Metronome software and an integrated set of web services and software engineering tools to design, maintain and control build and test scenarios. The ETICS system allows taking into account complex dependencies among applications and middleware components and provides a rich environment to perform static and dynamic analysis of the software and execute deployment, system and interoperability tests. This paper gives an overview of the system architecture and functionality set and then describes how the EC-funded EGEE, DILIGENT and OMII-Europe projects are using the software engineering services to build, validate and distribute their software. Finally a number of significant use and test cases will be described to show how ETICS can be used in particular to perform interoperability tests of grid middleware using the grid itself.

  11. Cooperative and Human Aspects of Software Engineering (CHASE 2010)

    DEFF Research Database (Denmark)

    Dittrich, Yvonne; De Souza, Cleidson; Korpela, Mikko

    2010-01-01

    Software is created by people---software engineers---working in varied environments, under various conditions. Thus understanding cooperative and human aspect of software development is crucial to comprehend how methods and tools are used, and thereby improving the creation and maintenance...... research on human and cooperative aspects of software engineering. We aim at providing both a meeting place for the growing community and the possibility for researchers interested in joining the field to present their work in progress and get an overview over the field....... of software. Inspired by the hosting country's concept of co-responsibility -- ubuntu -- we especially invited contributions that address community-based development like open source development and sustainability of ICT eco-systems. The goal of this workshop is to provide a forum for discussing high quality...

  12. Cooperative and Human Aspects of Software Engineering (CHASE 2010)

    DEFF Research Database (Denmark)

    Dittrich, Yvonne; De Souza, Cleidson; Korpela, Mikko

    2010-01-01

    of software. Inspired by the hosting country's concept of co-responsibility -- ubuntu -- we especially invited contributions that address community-based development like open source development and sustainability of ICT eco-systems. The goal of this workshop is to provide a forum for discussing high quality......Software is created by people---software engineers---working in varied environments, under various conditions. Thus understanding cooperative and human aspect of software development is crucial to comprehend how methods and tools are used, and thereby improving the creation and maintenance...... research on human and cooperative aspects of software engineering. We aim at providing both a meeting place for the growing community and the possibility for researchers interested in joining the field to present their work in progress and get an overview over the field....

  13. Information Seeking & Documentation as Communication: A Software Engineering Perspective

    Directory of Open Access Journals (Sweden)

    Michael O'Brien

    2015-02-01

    Full Text Available Effective communication of knowledge is paramount in every software organisation. Essentially, the role of documentation in a software engineering context is to communicate information and knowledge of the system it describes. Unfortunately, the current perception of documentation is that it is outdated, irrelevant and incomplete. Several studies to date have revealed that documentation is unfortunately often far from ideal. Problems tend to be diverse, ranging from incompleteness, to lack of clarity, to inaccuracy, obsolescence, difficulty of access, and lack of availability in local languages. This paper begins with a discussion of information seeking as an appropriate perspective for studying software maintenance activities. To this end, it examines the importance and centrality of documentation in this process. It finally concludes with a discussion on how software documentation practices can be improved to ensure software engineers communicate more effectively via the wide variety of documents that their projects require.

  14. Applying Software Engineering Methodology for Designing Biomedical Software Devoted To Electronic Instrumentation

    Directory of Open Access Journals (Sweden)

    Alderico Rodrigues de Paula Junior

    2012-01-01

    Full Text Available Problem statement: Significant effort goes into the development of biomedical software, which is integrated with computers/processors, sensors and electronic instrumentation devoted to a specific application. However, the scientific work on electronic instrumentation controlled by biomedical software has not emphasized software development, instead focusing mainly on electronics engineering. The development team is rarely composed of Software Engineering (SE experts. Usually, a commercial automated tools environment is not used due to its high cost and complexity for researchers from other areas to understand. Approach: This present study reports how the SE approach was applied to design and develop biomedical software, which is part of a Computerized Electronic Instrumentation (CEI. This CEI comprises software and an electronic instrumentation based on a force sensor and electrogoniometer to monitor the hand exertion of computer user during typing task. The aim is to serve as a guideline for academic researchers who are not expert in software engineering methodology but usually develop their own software to run with their CEI. The specification of the requirements, presented as use case, includes the context diagram, the data flow diagram, the entity relationship diagram and test procedure. The Unified Modelling Language from the Enterprise Architect tool was used. The developed software and the electronic instrumentation were tested together. Results: A sample of the interface screen shows how the outcomes could be plotted in an integrated manner. By comparing the values with other values obtained by manual calculations and with those provided by sensor manufacturer, the repeatability of test procedure validated the results. Reliable electronic instrumentation when working with unreliable software can become unreliable. Conclusion: Applying software engineering methodology principles provided a simple and clear documentation that was helpful

  15. Experiences on dynamic simulation software in chemical engineering education

    OpenAIRE

    Komulainen, Tiina M.; Enemark-Rasmussen, Rasmus; Sin, Gürkan; John P Fletcher; Cameron, David

    2012-01-01

    Commercial process simulators are increasing interest in the chemical engineer education. In this paper, the use of commercial dynamic simulation software, D-SPICE® and K-Spice®, for three different chemical engineering courses is described and discussed. The courses cover the following topics: basic chemical engineering, operability and safety analysis and process control. User experiences from both teachers and students are presented. The benefits of dynamic simulation as an additional teac...

  16. Proposing an Evidence-Based Strategy for Software Requirements Engineering.

    Science.gov (United States)

    Lindoerfer, Doris; Mansmann, Ulrich

    2016-01-01

    This paper discusses an evidence-based approach to software requirements engineering. The approach is called evidence-based, since it uses publications on the specific problem as a surrogate for stakeholder interests, to formulate risks and testing experiences. This complements the idea that agile software development models are more relevant, in which requirements and solutions evolve through collaboration between self-organizing cross-functional teams. The strategy is exemplified and applied to the development of a Software Requirements list used to develop software systems for patient registries.

  17. A Rigorous Architectural Approach to Adaptive Software Engineering

    Institute of Scientific and Technical Information of China (English)

    Jeff Kramer; Jeff Magee

    2009-01-01

    The engineering of distributed adaptive software is a complex task which requires a rigorous approach. Software architectural (structural) concepts and principles are highly beneficial in specifying, designing, analysing, constructing and evolving distributed software. A rigorous architectural approach dictates formalisms and techniques that are compositional,components that are context independent and systems that can be constructed and evolved incrementally. This paper overviews some of the underlying reasons for adopting an architectural approach, including a brief "rational history" of our research work, and indicates how an architectural model can potentially facilitate the provision of self-managed adaptive software system.

  18. Basic research in computer science and software engineering at SKLCS

    Institute of Scientific and Technical Information of China (English)

    Jian ZHANG; Xueyang ZHU; Wenhui ZHANG; Naijun ZHAN; Yidong SHEN; Haiming CHEN; Yunquan ZHANG; Yongji WANG; Enhua WU; Hongan WANG

    2008-01-01

    The State Key Laboratory of Computer Science (SKLCS) is committed to basic research in computer sci-ence and software engineering. The research topics of the laboratory include: concurrency theory, theory and algorithms for real-time systems, formal specifications based on context-free grammars, semantics of program-ming languages, model checking, automated reasoning, logic programming, software testing, software process improvement, middleware technology, parallel algo-rithms and parallel software, computer graphics and human-computer interaction. This paper describes these topics in some detail and summarizes some results obtained in recent years.

  19. Competence Centered Specialization in Web Engineering Topics in a Software Engineering Masters Degree Programme

    DEFF Research Database (Denmark)

    Dolog, Peter; Thomsen, Lone Leth; Thomsen, Bent

    2010-01-01

    Web applications and Web-based systems are becoming increasingly complex as a result of either customer requests or technology evolution which has eased other aspects of software engineering. Therefore, there is an increasing demand for highly skilled software engineers able to build and also...... as on general competence based web engineering proles oered also for those who specialize in other areas of software engineering. We describe the current state of the art and our experience with a web engineering curriculum within the software engineering masters degree programme. We also discuss an evolution...... advance the systems on the one hand as well as professionals who are able to evaluate their eectiveness on the other hand. With this idea in mind, the computer science department at Aalborg University is continuously working on improvements in its specialization in web engineering topics as well...

  20. Competence Centered Specialization in Web Engineering Topics in a Software Engineering Masters Degree Programme

    DEFF Research Database (Denmark)

    Dolog, Peter; Thomsen, Lone Leth; Thomsen, Bent

    2010-01-01

    Web applications and Web-based systems are becoming increasingly complex as a result of either customer requests or technology evolution which has eased other aspects of software engineering. Therefore, there is an increasing demand for highly skilled software engineers able to build and also...... as on general competence based web engineering proles oered also for those who specialize in other areas of software engineering. We describe the current state of the art and our experience with a web engineering curriculum within the software engineering masters degree programme. We also discuss an evolution...... advance the systems on the one hand as well as professionals who are able to evaluate their eectiveness on the other hand. With this idea in mind, the computer science department at Aalborg University is continuously working on improvements in its specialization in web engineering topics as well...

  1. An overview of the Software Engineering Laboratory

    Science.gov (United States)

    1994-01-01

    This report describes the background and structure of the SEL organization, the SEL process improvement approach, and its experimentation and data collection process. Results of some sample SEL studies are included. It includes a discussion of the overall implication of trends observed over 17 years of process improvement efforts and looks at the return on investment based on a comparison of total investment in process improvement with the measurable improvements seen in the organization's software product.

  2. Multiple Viewpoints System/ Software Engineering for Space

    Science.gov (United States)

    Blondelle, Gael; Panunzio, Marco; Pequery, Jerome; Bats, Melanie; Garcia, Gerald; Brun, Cedric

    2013-08-01

    This paper presents a return of experience on using viewpoint-oriented modeling to design on-board software for satellites. First, we demonstrate the interest of integrating heterogeneous viewpoints in a tool to cover the development process of an embedded system. Then, we recall the Space Component Model, its implementation with Obeo Designer, and the capability to extend it with specific purpose Domain Specific Languages. Last, we expose further viewpoints that could be implemented to address new aspects like safety or interoperability.

  3. A Paper Presentation on Software Development Automation by Computer Aided Software Engineering (CASE

    Directory of Open Access Journals (Sweden)

    Nishant Dubey

    2011-01-01

    Full Text Available Nowadays, system developers are faced to produce complex, high quality software to support the demand for new and revised computer applications. This challenge is complicated by strict resource constraints, forcing management to deploy new technologies, methods and procedures to manage this increasingly complex environment. Often the methods, procedures and technologies are not integrated. Therefore, they achieve less than desired improvements in productivity, or force management to make tradeoff decisions between software quality and developer efficiency. Thus the production lines have to be developed faster, too. A very important role in this development is Software Engineering because many production processes are 'computer aided', so software has to be designed for this production system. It seems very important to do the software engineering right and fast.

  4. Imperfect information in software product line engineering

    NARCIS (Netherlands)

    Noppen, Joost; Broek, van den Pim; Rashid, Awais; Royer, Jean-Claude; Rummler, Andreas

    2011-01-01

    In this chapter, we examine the phenomenon of imperfect information, the problems it causes during SPL engineering and we outline a generalised approach for addressing these problems. In the final section of this chapter we will examine the way forward for achieving life-cycle wide supprt for imperf

  5. Object oriented development of engineering software using CLIPS

    Science.gov (United States)

    Yoon, C. John

    1991-01-01

    Engineering applications involve numeric complexity and manipulations of a large amount of data. Traditionally, numeric computation has been the concern in developing an engineering software. As engineering application software became larger and more complex, management of resources such as data, rather than the numeric complexity, has become the major software design problem. Object oriented design and implementation methodologies can improve the reliability, flexibility, and maintainability of the resulting software; however, some tasks are better solved with the traditional procedural paradigm. The C Language Integrated Production System (CLIPS), with deffunction and defgeneric constructs, supports the procedural paradigm. The natural blending of object oriented and procedural paradigms has been cited as the reason for the popularity of the C++ language. The CLIPS Object Oriented Language's (COOL) object oriented features are more versatile than C++'s. A software design methodology based on object oriented and procedural approaches appropriate for engineering software, and to be implemented in CLIPS was outlined. A method for sensor placement for Space Station Freedom is being implemented in COOL as a sample problem.

  6. Important Role-Playing Designer in Software Engineering

    Directory of Open Access Journals (Sweden)

    Maruti N. Somawanshi

    2012-11-01

    Full Text Available This paper presents for study about current issues in the software engineering regarding design. Successful software projects are usually projects that are designing well. Designer deals with several problem like coding, environments of software, end user need etc. Designer is similar to prediction, but may involve a higher degree of human judgment problems. The aim of this issue is to present recent advances in coding and designing in Software Engineering regarding a wide range of applications, solutions (e.g. metrics, algorithms, approaches, and theories and data (e.g. software process, product, usage, social, text-based and trace data. When project handle by designer should concern on measure steps like High-level design/architecture, Low-level design, Coding Design and code reviews etc. not only that whole working of the project. Design is a process of problem solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design or employ designers to develop a plan for a solution. It includes low-level component and algorithm implementation issues as well as the architectural view.

  7. Software architecture and engineering for patient records: current and future.

    Science.gov (United States)

    Weng, Chunhua; Levine, Betty A; Mun, Seong K

    2009-05-01

    During the "The National Forum on the Future of the Defense Health Information System," a track focusing on "Systems Architecture and Software Engineering" included eight presenters. These presenters identified three key areas of interest in this field, which include the need for open enterprise architecture and a federated database design, net centrality based on service-oriented architecture, and the need for focus on software usability and reusability. The eight panelists provided recommendations related to the suitability of service-oriented architecture and the enabling technologies of grid computing and Web 2.0 for building health services research centers and federated data warehouses to facilitate large-scale collaborative health care and research. Finally, they discussed the need to leverage industry best practices for software engineering to facilitate rapid software development, testing, and deployment.

  8. Software Engineering Research/Developer Collaborations in 2004 (C104)

    Science.gov (United States)

    Pressburger, Tom; Markosian, Lawrance

    2005-01-01

    In 2004, six collaborations between software engineering technology providers and NASA software development personnel deployed a total of five software engineering technologies (for references, see Section 7.2) on the NASA projects. The main purposes were to benefit the projects, infuse the technologies if beneficial into NASA, and give feedback to the technology providers to improve the technologies. Each collaboration project produced a final report (for references, see Section 7.1). Section 2 of this report summarizes each project, drawing from the final reports and communications with the software developers and technology providers. Section 3 indicates paths to further infusion of the technologies into NASA practice. Section 4 summarizes some technology transfer lessons learned. Section 6 lists the acronyms used in this report.

  9. A software architecture centric engineering approach for Internetware

    Institute of Scientific and Technical Information of China (English)

    MEI Hong; HUANG Gang; ZHAO Haiyan; JIAO Wenpin

    2006-01-01

    As a new software paradigm evolved by the Internet, Internetware brings many challenges for the traditional software development methods and techniques. Though architecture-based component composition (ABC) approach is originated in the traditional software paradigm, it supports the engineering of Internetware effectively due to its philosophy, rationales and mechanisms. ABC has three major contributions to the engineering of Internetware in detail. First, the feature oriented domain modeling method can structure the "disordered" "software entities" to "ordered Internetware" bottom-up in the problem space. Second, the architecture centric design and analysis method can support the development of self-adaptive Internetware. Third, the component operating platform is a reflective and self-adaptive middleware that not only provides Internetware with a powerful and flexible runtime infrastructure but also enables the self-adaptation of the structure and individual entities of Internetware.

  10. V & V Within Reuse-Based Software Engineering

    Science.gov (United States)

    Addy, Edward A.

    1996-01-01

    Verification and validation (V&V) is used to increase the level of assurance of critical software, particularly that of safety-critical and mission critical software. This paper describes the working group's success in identifying V&V tasks that could be performed in the domain engineering and transition levels of reuse-based software engineering. The primary motivation for V&V at the domain level is to provide assurance that the domain requirements are correct and that the domain artifacts correctly implement the domain requirements. A secondary motivation is the possible elimination of redundant V&V activities at the application level. The group also considered the criteria and motivation for performing V&V in domain engineering.

  11. Developing Avionics Hardware and Software for Rocket Engine Testing

    Science.gov (United States)

    Aberg, Bryce Robert

    2014-01-01

    My summer was spent working as an intern at Kennedy Space Center in the Propulsion Avionics Branch of the NASA Engineering Directorate Avionics Division. The work that I was involved with was part of Rocket University's Project Neo, a small scale liquid rocket engine test bed. I began by learning about the layout of Neo in order to more fully understand what was required of me. I then developed software in LabView to gather and scale data from two flowmeters and integrated that code into the main control software. Next, I developed more LabView code to control an igniter circuit and integrated that into the main software, as well. Throughout the internship, I performed work that mechanics and technicians would do in order to maintain and assemble the engine.

  12. Applications of Multi-criteria Decision Making in Software Engineering

    Directory of Open Access Journals (Sweden)

    Sumeet Kaur Sehra

    2016-07-01

    Full Text Available Every complex problem now days require multicriteria decision making to get to the desired solution. Numerous Multi-criteria decision making (MCDM approaches have evolved over recent time to accommodate various application areas and have been recently explored as alternative to solve complex software engineering problems. Most widely used approach is Analytic Hierarchy Process that combines mathematics and expert judgment. Analytic Hierarchy Process suffers from the problem of imprecision and subjectivity. This paper proposes to use Fuzzy AHP (FAHP instead of traditional AHP method. The usage of FAHP helps decision makers to make better choices both in relation to tangible criteria and intangible criteria. The paper provides a clear guide on how FAHP can be applied, particularly in the software engineering area in specific situations. The conclusion of this study would help and motivate practitioners and researchers to use multi-criteria decision making approaches in the area of software engineering.

  13. Problem-Solving Methods in Agent-Oriented Software Engineering

    Science.gov (United States)

    Bogg, Paul; Beydoun, Ghassan; Low, Graham

    Problem-solving methods (PSM) are abstract structures that describe specific reasoning processes employed to solve a set of similar problems. We envisage that off-the-shelf PSMs can assist in the development of agent-oriented solutions, not only as reusable and extensible components that software engineers employ for designing agent architecture solutions, but just as importantly as a set of runtime capabilities that agents themselves dynamically employ in order to solve problems. This chapter describes PSMs for agent-oriented software engineering (AOSE) that address interaction-dependent problem-solving such as negotiation or cooperation. An extension to an AOSE methodology MOBMAS is proposed whereby PSMs are integrated in the software development phases of MAS Organization Design, Internal Design, and Interaction Design. In this way, knowledge engineering drives the development of agent-oriented systems.

  14. Survey on Intelligent Assistance for Workplace Learning in Software Engineering

    Science.gov (United States)

    Ras, Eric; Rech, Jörg

    Technology-enhanced learning (TEL) systems and intelligent assistance systems aim at supporting software engineers during learning and work. A questionnaire-based survey with 89 responses from industry was conducted to find out what kinds of services should be provided and how, as well as to determine which software engineering phases they should focus on. In this paper, we present the survey results regarding intelligent assistance for workplace learning in software engineering. We analyzed whether specific types of assistance depend on the organization's size, the respondent's role, and the experience level. The results show a demand for TEL that supports short-term problem solving and long-term competence development at the workplace.

  15. New software engineering paradigm based on complexity science an introduction to NSE

    CERN Document Server

    Xiong, Jay

    2011-01-01

    This book describes a revolution in software engineering - the Nonlinear Software Engineering paradigm, which complies with the essential principles of complexity science and can help double productivity, halve costs and reduce defects in software products.

  16. Artificial Intelligence Software Engineering (AISE) model

    Science.gov (United States)

    Kiss, Peter A.

    1990-01-01

    The American Institute of Aeronautics and Astronautics has initiated a committee on standards for Artificial Intelligence. Presented are the initial efforts of one of the working groups of that committee. A candidate model is presented for the development life cycle of knowledge based systems (KBSs). The intent is for the model to be used by the aerospace community and eventually be evolved into a standard. The model is rooted in the evolutionary model, borrows from the spiral model, and is embedded in the standard Waterfall model for software development. Its intent is to satisfy the development of both stand-alone and embedded KBSs. The phases of the life cycle are shown and detailed as are the review points that constitute the key milestones throughout the development process. The applicability and strengths of the model are discussed along with areas needing further development and refinement by the aerospace community.

  17. Artificial Intelligence Software Engineering (AISE) model

    Science.gov (United States)

    Kiss, Peter A.

    1990-01-01

    The American Institute of Aeronautics and Astronautics has initiated a committee on standards for Artificial Intelligence. Presented are the initial efforts of one of the working groups of that committee. A candidate model is presented for the development life cycle of knowledge based systems (KBSs). The intent is for the model to be used by the aerospace community and eventually be evolved into a standard. The model is rooted in the evolutionary model, borrows from the spiral model, and is embedded in the standard Waterfall model for software development. Its intent is to satisfy the development of both stand-alone and embedded KBSs. The phases of the life cycle are shown and detailed as are the review points that constitute the key milestones throughout the development process. The applicability and strengths of the model are discussed along with areas needing further development and refinement by the aerospace community.

  18. Technology Transfer Challenges for High-Assurance Software Engineering Tools

    Science.gov (United States)

    Koga, Dennis (Technical Monitor); Penix, John; Markosian, Lawrence Z.

    2003-01-01

    In this paper, we describe our experience with the challenges thar we are currently facing in our effort to develop advanced software verification and validation tools. We categorize these challenges into several areas: cost benefits modeling, tool usability, customer application domain, and organizational issues. We provide examples of challenges in each area and identrfj, open research issues in areas which limit our ability to transfer high-assurance software engineering tools into practice.

  19. Repository-Based Software Engineering Program: Working Program Management Plan

    Science.gov (United States)

    1993-01-01

    Repository-Based Software Engineering Program (RBSE) is a National Aeronautics and Space Administration (NASA) sponsored program dedicated to introducing and supporting common, effective approaches to software engineering practices. The process of conceiving, designing, building, and maintaining software systems by using existing software assets that are stored in a specialized operational reuse library or repository, accessible to system designers, is the foundation of the program. In addition to operating a software repository, RBSE promotes (1) software engineering technology transfer, (2) academic and instructional support of reuse programs, (3) the use of common software engineering standards and practices, (4) software reuse technology research, and (5) interoperability between reuse libraries. This Program Management Plan (PMP) is intended to communicate program goals and objectives, describe major work areas, and define a management report and control process. This process will assist the Program Manager, University of Houston at Clear Lake (UHCL) in tracking work progress and describing major program activities to NASA management. The goal of this PMP is to make managing the RBSE program a relatively easy process that improves the work of all team members. The PMP describes work areas addressed and work efforts being accomplished by the program; however, it is not intended as a complete description of the program. Its focus is on providing management tools and management processes for monitoring, evaluating, and administering the program; and it includes schedules for charting milestones and deliveries of program products. The PMP was developed by soliciting and obtaining guidance from appropriate program participants, analyzing program management guidance, and reviewing related program management documents.

  20. Process technology activities at the Software Engineering Institute

    Energy Technology Data Exchange (ETDEWEB)

    Christie, A.M. [Carnegie Mellon Univ., Pittsburgh, PA (United States)

    1996-12-31

    This paper provides a brief overview of the rationale for, and direction of the software process technology work being pursued at the Software Engineering Institute. The paper then describes some of the activities that the SEI has recently been involved in. Finally, it relates in more detail an example of one specific effort; namely the development of a process modeling formalism and its use in process simulation.

  1. Free Open Source Software in Electronics Engineering Education: A Survey

    Directory of Open Access Journals (Sweden)

    Vijay Nehra

    2014-05-01

    Full Text Available Since the last two decades, much attention has been paid to Electronics Engineering (EE education in India. Various commercial software tools and simulator such as mathematical application packages, electronics CAD tools, learning management systems, multimedia tools and general purpose tools supports EE education. Traditionally, proprietary software packages such as OrCAD Pspice, MATLAB, LabView, Multisim and others too are widely practiced and well integrated in electronics engineering curricula of various Universities nationwide. In today’s market, there are plenty of software tools and packages; however, most of them are expensive. The high cost of standard commercial packages is often hardship for students and faculties. Selecting various appropriate tools for academic use is considered as one of the key challenges in EE education. Over recent years, an alternative trend based on Free Open Source Software (FOSS has gained momentum in higher education due to several benefits such as cost, license management flexibility, access to source code, security and stability etc. Presently, a plethora of open source software tools and resource related to EE can be deployed in teaching and learning process of EE education. In this communication, a short exposition of Free Open Source Software useful in electronics engineering education and research is presented. A brief outlook of FOSS packages, their web addresses and major highlights are also presented. The overall aim of this paper is to create awareness among instructors and students to impart active and self learning using FOSS.

  2. Optimization of Component Based Software Engineering Model Using Neural Network

    Directory of Open Access Journals (Sweden)

    Gaurav Kumar

    2014-10-01

    Full Text Available The goal of Component Based Software Engineering (CBSE is to deliver high quality, more reliable and more maintainable software systems in a shorter time and within limited budget by reusing and combining existing quality components. A high quality system can be achieved by using quality components, framework and integration process that plays a significant role. So, techniques and methods used for quality assurance and assessment of a component based system is different from those of the traditional software engineering methodology. In this paper, we are presenting a model for optimizing Chidamber and Kemerer (CK metric values of component-based software. A deep analysis of a series of CK metrics of the software components design patterns is done and metric values are drawn from them. By using unsupervised neural network- Self Organizing Map, we have proposed a model that provides an optimized model for Software Component engineering model based on reusability that depends on CK metric values. Average, standard deviated and optimized values for the CK metric are compared and evaluated to show the optimized reusability of component based model.

  3. Quantum searching application in search based software engineering

    Science.gov (United States)

    Wu, Nan; Song, FangMin; Li, Xiangdong

    2013-05-01

    The Search Based Software Engineering (SBSE) is widely used in software engineering for identifying optimal solutions. However, there is no polynomial-time complexity solution used in the traditional algorithms for SBSE, and that causes the cost very high. In this paper, we analyze and compare several quantum search algorithms that could be applied for SBSE: quantum adiabatic evolution searching algorithm, fixed-point quantum search (FPQS), quantum walks, and a rapid modified Grover quantum searching method. The Grover's algorithm is thought as the best choice for a large-scaled unstructured data searching and theoretically it can be applicable to any search-space structure and any type of searching problems.

  4. Software Engineering Environment for Component-based Design of Embedded Software

    DEFF Research Database (Denmark)

    Guo, Yu

    2010-01-01

    as well as application models in a computer-aided software engineering environment. Furthermore, component models have been realized following carefully developed design patterns, which provide for an efficient and reusable implementation. The components have been ultimately implemented as prefabricated...... executable objects that can be linked together into an executable application. The development of embedded software using the COMDES framework is supported by the associated integrated engineering environment consisting of a number of tools, which support basic functionalities, such as system modelling......, validation, and executable code generation for specific hardware platforms. Developing such an environment and the associated tools is a highly complex engineering task. Therefore, this thesis has investigated key design issues and analysed existing platforms supporting model-driven software development...

  5. Model-based engineering for medical-device software.

    Science.gov (United States)

    Ray, Arnab; Jetley, Raoul; Jones, Paul L; Zhang, Yi

    2010-01-01

    This paper demonstrates the benefits of adopting model-based design techniques for engineering medical device software. By using a patient-controlled analgesic (PCA) infusion pump as a candidate medical device, the authors show how using models to capture design information allows for i) fast and efficient construction of executable device prototypes ii) creation of a standard, reusable baseline software architecture for a particular device family, iii) formal verification of the design against safety requirements, and iv) creation of a safety framework that reduces verification costs for future versions of the device software. 1.

  6. The evolution of CACSD tools-a software engineering perspective

    DEFF Research Database (Denmark)

    Ravn, Ole; Szymkat, Maciej

    1992-01-01

    The earlier evolution of computer-aided control system design (CACSD) tools is discussed from a software engineering perspective. A model of the design process is presented as the basis for principles and requirements of future CACSD tools. Combinability, interfacing in memory, and an open...... workspace are seen as important concepts in CACSD. Some points are made about the problem of buy or make when new software is required, and the idea of buy and make is put forward. Emphasis is put on the time perspective and the life cycle of the software...

  7. Application of Professional Software in Vehicle Engineering Electronic Control Experiment

    Institute of Scientific and Technical Information of China (English)

    FAN Xiao-bin; JIN Ke

    2016-01-01

    In order to overcome the limitation of vehicle engineering professional laboratory personnel and facilities, some of them is commonly used auxiliary software in the professional field for design, calculation and research, including characteristics of software, application scope and methods are presented in this paper. Through these industries aided software powerful calculation, analysis functions and convenient visualization means, for the virtual simulation experiment, it can help to clearly illustrate the concept, deepen students′understanding level of vehicle professional course, improve the enthusiasm of the students, improve the ability of autonomous learning and improve students' thinking ability and practice ability, and can effectively train high⁃quality professionals with good quality.

  8. Based Aspect-oriented Petri Nets in Software Engineering

    Science.gov (United States)

    Hu, Wensong; Yang, Xingui; Zuo, Ke

    Aspect Oriented (Aspect-Oriented, referred to as AO) as a new programming technology is increasingly cause for concern. This article describes a number of experts to study the current object-oriented Petri Nets (OO PN) adding aspect-oriented thinking, combined with software design and development cycle, given the aspect-oriented OO PN in software engineering methods and steps. Shows the method of using AO PN government office system software design and development of application examples, and gives some object class, the log section and the application form. As the plane of isolation, reducing the coupling, the use of AO PN ways in different applications will use a combination of each section, allowing code reusability enhancement. OOPN itself can process the software system design and development of effective control to ensure that the software system reliability and standardization.

  9. An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course

    OpenAIRE

    Ge, Xun; Huang, Kun; Dong, Yifei

    2010-01-01

    A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study revealed that while the OSSD learning environment motivated students to engage in real-world projects, tensions were found between the students’ self-pro...

  10. A Comparative Analysis of Software Engineering with Mature Engineering Disciplines Using a Problem-Solving Perspective

    NARCIS (Netherlands)

    Tekinerdogan, B.; Aksit, Mehmet; Dogru, Ali H.; Bicer, Veli

    2011-01-01

    Software engineering is compared with traditional engineering disciplines using a domain specific problem-solving model called Problem-Solving for Engineering Model (PSEM). The comparative analysis is performed both from a historical and contemporary view. The historical view provides lessons on the

  11. Green Software Engineering Adaption In Requirement Elicitation Process

    Directory of Open Access Journals (Sweden)

    Umma Khatuna Jannat

    2015-08-01

    Full Text Available A recent technology investigates the role of concern in the environment software that is green software system. Now it is widely accepted that the green software can fit all process of software development. It is also suitable for the requirement elicitation process. Now a days software companies have used requirements elicitation techniques in an enormous majority. Because this process plays more and more important roles in software development. At the present time most of the requirements elicitation process is improved by using some techniques and tools. So that the intention of this research suggests to adapt green software engineering for the intention of existing elicitation technique and recommend suitable actions for improvement. This research being involved qualitative data. I used few keywords in my searching procedure then searched IEEE ACM Springer Elsevier Google scholar Scopus and Wiley. Find out articles which published in 2010 until 2016. Finding from the literature review Identify 15 traditional requirement elicitations factors and 23 improvement techniques to convert green engineering. Lastly The paper includes a squat review of the literature a description of the grounded theory and some of the identity issues related finding of the necessity for requirements elicitation improvement techniques.

  12. High dimensional search-based software engineering: finding tradeoffs among 15 objectives for automating software refactoring using NSGA-III

    OpenAIRE

    Mkaouer, Wiem; Kessentini, Marouane; Bechikh, Slim; Deb, Kalyanmoy; Ó Cinnéide, Mel

    2014-01-01

    peer-reviewed There is a growing need for scalable search-based software engineering approaches that address software engineering problems where a large number of objectives are to be optimized. Software refactoring is one of these problems where a refactoring sequence is sought that optimizes several software metrics. Most of the existing refactoring work uses a large set of quality metrics to evaluate the software design after applying refactoring operations, but current search-based sof...

  13. Milestones in software engineering and knowledge engineering history: a comparative review.

    Science.gov (United States)

    del Águila, Isabel M; Palma, José; Túnez, Samuel

    2014-01-01

    We present a review of the historical evolution of software engineering, intertwining it with the history of knowledge engineering because "those who cannot remember the past are condemned to repeat it." This retrospective represents a further step forward to understanding the current state of both types of engineerings; history has also positive experiences; some of them we would like to remember and to repeat. Two types of engineerings had parallel and divergent evolutions but following a similar pattern. We also define a set of milestones that represent a convergence or divergence of the software development methodologies. These milestones do not appear at the same time in software engineering and knowledge engineering, so lessons learned in one discipline can help in the evolution of the other one.

  14. Modelling of diesel engine fuelled with biodiesel using engine simulation software

    Science.gov (United States)

    Said, Mohd Farid Muhamad; Said, Mazlan; Aziz, Azhar Abdul

    2012-06-01

    This paper is about modelling of a diesel engine that operates using biodiesel fuels. The model is used to simulate or predict the performance and combustion of the engine by simplified the geometry of engine component in the software. The model is produced using one-dimensional (1D) engine simulation software called GT-Power. The fuel properties library in the software is expanded to include palm oil based biodiesel fuels. Experimental works are performed to investigate the effect of biodiesel fuels on the heat release profiles and the engine performance curves. The model is validated with experimental data and good agreement is observed. The simulation results show that combustion characteristics and engine performances differ when biodiesel fuels are used instead of no. 2 diesel fuel.

  15. Development and Experience of "Software Project Practice" Course for the Master of Software Engineering%Development and Experience of "Software Project Practice" Course for the Master of Software Engineering

    Institute of Scientific and Technical Information of China (English)

    CHENG Xue-lin; CAI Zhen-gong; YANG Xiao-hu

    2012-01-01

    Practice is an important phase in the teaching of software engineering. How to improve students' practical ability is a common problem for many software colleges. The course of Software Project Practice is proposed to enhance students' practical skills. In this course, the students participate in the whole process of software development practice and take the exercise of entrepreneurial project development in their learning stage.

  16. Open Source Projects in Software Engineering Education: A Mapping Study

    Science.gov (United States)

    Nascimento, Debora M. C.; Almeida Bittencourt, Roberto; Chavez, Christina

    2015-01-01

    Context: It is common practice in academia to have students work with "toy" projects in software engineering (SE) courses. One way to make such courses more realistic and reduce the gap between academic courses and industry needs is getting students involved in open source projects (OSP) with faculty supervision. Objective: This study…

  17. Issues in Software Engineering of Relevance to Instructional Design

    Science.gov (United States)

    Douglas, Ian

    2006-01-01

    Software engineering is popularly misconceived as being an upmarket term for programming. In a way, this is akin to characterizing instructional design as the process of creating PowerPoint slides. In both these areas, the construction of systems, whether they are learning or computer systems, is only one part of a systematic process. The most…

  18. The Company Approach to Software Engineering Project Courses

    Science.gov (United States)

    Broman, D.; Sandahl, K.; Abu Baker, M.

    2012-01-01

    Teaching larger software engineering project courses at the end of a computing curriculum is a way for students to learn some aspects of real-world jobs in industry. Such courses, often referred to as capstone courses, are effective for learning how to apply the skills they have acquired in, for example, design, test, and configuration management.…

  19. A Team Building Model for Software Engineering Courses Term Projects

    Science.gov (United States)

    Sahin, Yasar Guneri

    2011-01-01

    This paper proposes a new model for team building, which enables teachers to build coherent teams rapidly and fairly for the term projects of software engineering courses. Moreover, the model can also be used to build teams for any type of project, if the team member candidates are students, or if they are inexperienced on a certain subject. The…

  20. Application of Plagiarism Screening Software in the Chemical Engineering Curriculum

    Science.gov (United States)

    Cooper, Matthew E.; Bullard, Lisa G.

    2014-01-01

    Plagiarism is an area of increasing concern for written ChE assignments, such as laboratory and design reports, due to ease of access to text and other materials via the internet. This study examines the application of plagiarism screening software to four courses in a university chemical engineering curriculum. The effectiveness of plagiarism…

  1. The Company Approach to Software Engineering Project Courses

    Science.gov (United States)

    Broman, D.; Sandahl, K.; Abu Baker, M.

    2012-01-01

    Teaching larger software engineering project courses at the end of a computing curriculum is a way for students to learn some aspects of real-world jobs in industry. Such courses, often referred to as capstone courses, are effective for learning how to apply the skills they have acquired in, for example, design, test, and configuration management.…

  2. Issues in Software Engineering of Relevance to Instructional Design

    Science.gov (United States)

    Douglas, Ian

    2006-01-01

    Software engineering is popularly misconceived as being an upmarket term for programming. In a way, this is akin to characterizing instructional design as the process of creating PowerPoint slides. In both these areas, the construction of systems, whether they are learning or computer systems, is only one part of a systematic process. The most…

  3. A Team Building Model for Software Engineering Courses Term Projects

    Science.gov (United States)

    Sahin, Yasar Guneri

    2011-01-01

    This paper proposes a new model for team building, which enables teachers to build coherent teams rapidly and fairly for the term projects of software engineering courses. Moreover, the model can also be used to build teams for any type of project, if the team member candidates are students, or if they are inexperienced on a certain subject. The…

  4. Open Source Projects in Software Engineering Education: A Mapping Study

    Science.gov (United States)

    Nascimento, Debora M. C.; Almeida Bittencourt, Roberto; Chavez, Christina

    2015-01-01

    Context: It is common practice in academia to have students work with "toy" projects in software engineering (SE) courses. One way to make such courses more realistic and reduce the gap between academic courses and industry needs is getting students involved in open source projects (OSP) with faculty supervision. Objective: This study…

  5. Application of Plagiarism Screening Software in the Chemical Engineering Curriculum

    Science.gov (United States)

    Cooper, Matthew E.; Bullard, Lisa G.

    2014-01-01

    Plagiarism is an area of increasing concern for written ChE assignments, such as laboratory and design reports, due to ease of access to text and other materials via the internet. This study examines the application of plagiarism screening software to four courses in a university chemical engineering curriculum. The effectiveness of plagiarism…

  6. Microsoft Excel Software Usage for Teaching Science and Engineering Curriculum

    Science.gov (United States)

    Singh, Gurmukh; Siddiqui, Khalid

    2009-01-01

    In this article, our main objective is to present the use of Microsoft Software Excel 2007/2003 for teaching college and university level curriculum in science and engineering. In particular, we discuss two interesting and fascinating examples of interactive applications of Microsoft Excel targeted for undergraduate students in: 1) computational…

  7. Experiences on dynamic simulation software in chemical engineering education

    DEFF Research Database (Denmark)

    Komulainen, Tiina M.; Enemark-rasmussen, Rasmus; Sin, Gürkan

    2012-01-01

    Commercial process simulators are increasing interest in the chemical engineer education. In this paper, the use of commercial dynamic simulation software, D-SPICE® and K-Spice®, for three different chemical engineering courses is described and discussed. The courses cover the following topics......: basic chemical engineering, operability and safety analysis and process control. User experiences from both teachers and students are presented. The benefits of dynamic simulation as an additional teaching tool are discussed and summarized. The experiences confirm that commercial dynamic simulators...

  8. Agent Based Approaches to Engineering Autonomous Space Software

    CERN Document Server

    Dennis, Louise A; Lincoln, Nicholas; Lisitsa, Alexei; Veres, Sandor M

    2010-01-01

    Current approaches to the engineering of space software such as satellite control systems are based around the development of feedback controllers using packages such as MatLab's Simulink toolbox. These provide powerful tools for engineering real time systems that adapt to changes in the environment but are limited when the controller itself needs to be adapted. We are investigating ways in which ideas from temporal logics and agent programming can be integrated with the use of such control systems to provide a more powerful layer of autonomous decision making. This paper will discuss our initial approaches to the engineering of such systems.

  9. Bringing Model Checking Closer to Practical Software Engineering

    CERN Document Server

    AUTHOR|(CDS)2079681; Templon, J A; Willemse, T.A.C.

    Software grows in size and complexity, making it increasingly challenging to ensure that it behaves correctly. This is especially true for distributed systems, where a multitude of components are running concurrently, making it dicult to anticipate all the possible behaviors emerging in the system as a whole. Certain design errors, such as deadlocks and race-conditions, can often go unnoticed when testing is the only form of verication employed in the software engineering life-cycle. Even when bugs are detected in a running software, revealing the root cause and reproducing the behavior can be time consuming (and even impossible), given the lack of control the engineer has over the execution of the concurrent components, as well as the number of possible scenarios that could have produced the problem. This is especially pronounced for large-scale distributed systems such as the Worldwide Large Hadron Collider Computing Grid. Formal verication methods oer more rigorous means of determining whether a system sat...

  10. The importance of training in formal methods in Software Engineering

    Directory of Open Access Journals (Sweden)

    John Polansky

    2014-12-01

    Full Text Available The paradigm of formal methods provides systematic techniques and rigorous to software develop and, due the crescent complexity and quality requirements of current products, is necessary introduce them in curriculum of software engineer. In this article is analyzed the importance of train in formal methods and described specific techniques to achieved it efficiently. This techniques are the result of an experimental process in the class room of more than fifteen years in undergraduate and graduate programs, the same as company training. Also are presented a proposal a curriculum to systematic introduction of this paradigm and description of a program in training methods that has been success to industry. Results shows that students gain confidence in formal methods just when found out of the benefits of this in the context of software engineer.

  11. Consolidated View on Space Software Engineering Problems - An Empirical Study

    Science.gov (United States)

    Silva, N.; Vieira, M.; Ricci, D.; Cotroneo, D.

    2015-09-01

    Independent software verification and validation (ISVV) has been a key process for engineering quality assessment for decades, and is considered in several international standards. The “European Space Agency (ESA) ISVV Guide” is used for the European Space market to drive the ISVV tasks and plans, and to select applicable tasks and techniques. Software artefacts have room for improvement due to the amount if issues found during ISVV tasks. This article presents the analysis of the results of a large set of ISVV issues originated from three different ESA missions-amounting to more than 1000 issues. The study presents the main types, triggers and impacts related to the ISVV issues found and sets the path for a global software engineering improvement based on the most common deficiencies identified for space projects.

  12. Introduction of the Formal Methods in Software Engineering Training

    Directory of Open Access Journals (Sweden)

    Jorge Toledo B.

    2013-07-01

    Full Text Available Formal methods were developed to provide systematic and rigorous techniques for software development, and as initiative will be introduced in training in Software Engineering (SE. This article discusses the importance of including these scientific principles and describes several specific techniques in order to improve the processes of the IS. It also provides an analysis of the principles that should be taken into account in a curriculum to systematically introduce in university education and business. Several methods have been tried in recent years to achieve this goal in undergraduate and graduate universities programs, as well as IT professionals. Experience shows that participants gain confidence in formal methods only when they learn their clear benefits in the context of software engineering.

  13. Development of an engine system simulation software package - ESIM

    Energy Technology Data Exchange (ETDEWEB)

    Erlandsson, Olof

    2000-10-01

    A software package, ESIM is developed for simulating internal combustion engine systems, including models for engine, manifolds, turbocharger, charge-air cooler (inter cooler) and inlet air heater. This study focus on the thermodynamic treatment and methods used in the models. It also includes some examples of system simulations made with these models for validation purposes. The engine model can be classified as a zero-dimensional, single zone model. It includes calculation of the valve flow process, models for heat release and models for in-cylinder, exhaust port and manifold heat transfer. Models are developed for handling turbocharger performance and charge air cooler characteristics. The main purpose of the project related to this work is to use the ESIM software to study heat balance and performance of homogeneous charge compression ignition (HCCI) engine systems. A short description of the HCCI engine is therefore included, pointing out the difficulties, or challenges regarding the HCCI engine, from a system perspective. However, the relations given here, and the code itself, is quite general, making it possible to use these models to simulate spark ignited, as well as direct injected engines.

  14. Computer- Aided Design in Power Engineering Application of Software Tools

    CERN Document Server

    Stojkovic, Zlatan

    2012-01-01

    This textbooks demonstrates the application of software tools in solving a series of problems from the field of designing power system structures and systems. It contains four chapters: The first chapter leads the reader through all the phases necessary in the procedures of computer aided modeling and simulation. It guides through the complex problems presenting on the basis of eleven original examples. The second chapter presents  application of software tools in power system calculations of power systems equipment design. Several design example calculations are carried out using engineering standards like MATLAB, EMTP/ATP, Excel & Access, AutoCAD and Simulink. The third chapters focuses on the graphical documentation using a collection of software tools (AutoCAD, EPLAN, SIMARIS SIVACON, SIMARIS DESIGN) which enable the complete automation of the development of graphical documentation of a power systems. In the fourth chapter, the application of software tools in the project management in power systems ...

  15. Results of agile project management implementation in software engineering companies

    Directory of Open Access Journals (Sweden)

    Suetin Sergei

    2016-01-01

    Full Text Available Agile project management methodologies, tools and techniques have been becoming more and more popular among Russian and foreign software companies. Though the agile software project management methodologies appear to be more flexible and sound alternative to traditional project management approaches, the practice of agile project management implementation needs more research. The article presents the research on the practical results of agile project management implementation in Russian software engineering companies. The survey-based study covers 8 companies and 35 their projects managed with the help of agile methodologies. In contrast to some optimistic researchers of agile practices, the research findings show that in the investigated projects agile project management led to the deterioration of cost and schedule performance. However, the quality, both perceived by clients and assessed by internal technical analysts, improved after the implementation of agile software project management practices.

  16. Application of Process Modeling in a Software- Engineering Course

    Directory of Open Access Journals (Sweden)

    Gabriel Alberto García Mireles

    2001-11-01

    Full Text Available Coordination in a software development project is a critical issue in delivering a successful software product, within the constraints of time, functionality and budget agreed upon with the customer. One of the strategies for approaching this problem consists in the use of process modeling to document, evaluate, and redesign the software development process. The appraisal of the projects done in the Engineering and Methodology course of a program given at the Ensenada Center of Scientific Research and Higher Education (CICESE, from a process perspective, facilitated the identification of strengths and weaknesses in the development process used. This paper presents the evaluation of the practical portion of the course, the improvements made, and the preliminary results of using the process approach in the analysis phase of a software-development project.

  17. Config: A Case Study in Combining Software Engineering Techniques

    Directory of Open Access Journals (Sweden)

    David Maley

    2000-01-01

    Full Text Available Config is a software component of the Graphical R-Matrix Atomic Collision Environment. Its development is documented as a case study combining several software engineering techniques: formal specification, generic programming, object-oriented programming, and design by contract. It is specified in VDM++; and implemented in C++, a language which is becoming more than a curiosity amongst the scientific programming community. C++supports object orientation, a powerful architectural paradigm in designing the structure of software systems, and genericity, an orthogonal dimension to the inheritance hierarchies facilitated by object oriented languages. Support in C++ for design by contract can be added in library form. The combination of techniques make a substantial contribution to the overall software quality.

  18. Report on the second SEMAT workshop on general theory of software engineering (GTSE 2013)

    OpenAIRE

    Johnson, Pontus; Ralph, Paul; Goedicke, Michael; Ng, Pan-Wei; Stol, Klaas-Jan; Smolander, Kari; Exman, Iaakov; Perry, Dewayne E.

    2013-01-01

    peer-reviewed Software engineering needs a general theory, i.e., a theory that applies across the field and unifies existing empirical and theoretical work. General theories are common in other domains, such as physics. While many software engineering theories exist, no general theory of software engineering is evident. Consequently, this report reviews the emerging consensus on a general theory in software engineering from the Second SEMAT General Theory of Software E...

  19. Domain Engineering: A "Radical Innovation" for Software and Systems Engineering? A Biased Accountain Enginee

    DEFF Research Database (Denmark)

    Bjørner, Dines

    2003-01-01

    The structure and contents of a three volume text book: "The SE Book: An ABZ of the Theory and Practice of Software Engineering" is outlined and its major contributions are illustrated through extensive examples. A "complete" contents listing is presented.......The structure and contents of a three volume text book: "The SE Book: An ABZ of the Theory and Practice of Software Engineering" is outlined and its major contributions are illustrated through extensive examples. A "complete" contents listing is presented....

  20. Pacific-Asia Conference on Knowledge Engineering and Software Engineering (KESE 2009)

    CERN Document Server

    Software Engineering and Knowledge Engineering: Theory and Practice

    2012-01-01

    The volume includes a set of selected papers extended and revised from the I2009 Pacific-Asia Conference on Knowledge Engineering and Software Engineering (KESE 2009) was held on December 19~ 20, 2009, Shenzhen, China.   Volume 1 is to provide a forum for researchers, educators, engineers, and government officials involved in the general areas of Computer and Software Engineering to disseminate their latest research results and exchange views on the future research directions of these fields. 140 high-quality papers are included in the volume. Each paper has been peer-reviewed by at least 2 program committee members and selected by the volume editor Prof. Yanwen Wu.   On behalf of this volume, we would like to express our sincere appreciation to all of authors and referees for their efforts reviewing the papers. Hoping you can find lots of profound research ideas and results on the related fields of Computer and Software Engineering.

  1. Sharing Research Models: Using Software Engineering Practices for Facilitation.

    Science.gov (United States)

    Bryant, Stephanie P; Solano, Eric; Cantor, Susanna; Cooley, Philip C; Wagener, Diane K

    2011-03-01

    Increasingly, researchers are turning to computational models to understand the interplay of important variables on systems' behaviors. Although researchers may develop models that meet the needs of their investigation, application limitations-such as nonintuitive user interface features and data input specifications-may limit the sharing of these tools with other research groups. By removing these barriers, other research groups that perform related work can leverage these work products to expedite their own investigations. The use of software engineering practices can enable managed application production and shared research artifacts among multiple research groups by promoting consistent models, reducing redundant effort, encouraging rigorous peer review, and facilitating research collaborations that are supported by a common toolset. This report discusses three established software engineering practices- the iterative software development process, object-oriented methodology, and Unified Modeling Language-and the applicability of these practices to computational model development. Our efforts to modify the MIDAS TranStat application to make it more user-friendly are presented as an example of how computational models that are based on research and developed using software engineering practices can benefit a broader audience of researchers.

  2. A Software Engineering Project Course for Undergraduate Students

    Institute of Scientific and Technical Information of China (English)

    LIU Jia; Huang Zhi-jun; Zhang Jin-yu

    2012-01-01

    Software engineering (SE) courses are confronted with predicaments how to cultivate students' engineering concept and how to abridge the distance between the academy and industry. The "Computing and Software Engineering, III (CSE III)" helps students mimic a real-world software development and broaden real- world SE view. With the spiral model as the main development model, the CSE III course includes not only the SE theory knowledge, but also quick learning ,team cooperation, development management and risk management skills which meet the real-world industry requirements. Our contribution is providing an introductory course for multiple dimensions of knowledge, creating a real-world software development circumstance for students under quantitative control and designing a systematic and practical evaluation mechanism which stimulates the interests of students. CSE III has been executed from 2009 and obtains a valuable teaching and learning effects among our teachers, TAs and students; and we add refinements to the course according to feedbacks of participants. This paper will describe the design and practice of the CSE III course.

  3. The Impact of Agile Approach on Software Engineering Teams

    Directory of Open Access Journals (Sweden)

    Mazni Omar

    2011-01-01

    Full Text Available Problem statement: This study presents the initial findings on the impact of agile approach amongst Software Engineering (SE teams in one computer center in Malaysia. This study revealed that agile approach able to receive positive feedbacks and increase positive affectivity amongst team members during software development projects. Approach: This study used action research approach. Data were collected from four Software Engineering (SE teams who volunteered to participate in this study through a series of interviews, short-term observations and a questionnaire. Positive Affect scale from Positive Affect and Negative Affect Schedule (PANAS questionnaire was used to measure the developers’ state of positive affect during two intervals. Results: These findings found that not agile- XP practices adopted by the developers. This is due to knowledge barriers and organizational culture. However, agile approach induced level of positive affectivity amongst the members during software development process. In addition, agile approach promotes the members to be more active in coordinating and collaborating amongst teams. Conclusion: The findings in this study give an insight towards applying a flexible agile approach to accommodate and suit organizational culture. Effective methodology and organizational culture are important factors that must be considered to produce innovative teams and quality software.

  4. Framework for Small-Scale Experiments in Software Engineering: Guidance and Control Software Project: Software Engineering Case Study

    Science.gov (United States)

    Hayhurst, Kelly J.

    1998-01-01

    Software is becoming increasingly significant in today's critical avionics systems. To achieve safe, reliable software, government regulatory agencies such as the Federal Aviation Administration (FAA) and the Department of Defense mandate the use of certain software development methods. However, little scientific evidence exists to show a correlation between software development methods and product quality. Given this lack of evidence, a series of experiments has been conducted to understand why and how software fails. The Guidance and Control Software (GCS) project is the latest in this series. The GCS project is a case study of the Requirements and Technical Concepts for Aviation RTCA/DO-178B guidelines, Software Considerations in Airborne Systems and Equipment Certification. All civil transport airframe and equipment vendors are expected to comply with these guidelines in building systems to be certified by the FAA for use in commercial aircraft. For the case study, two implementations of a guidance and control application were developed to comply with the DO-178B guidelines for Level A (critical) software. The development included the requirements, design, coding, verification, configuration management, and quality assurance processes. This paper discusses the details of the GCS project and presents the results of the case study.

  5. Information management in software engineering: A hypertext based approach

    Energy Technology Data Exchange (ETDEWEB)

    Garg, P.K.

    1989-01-01

    Large scale software systems requires automated support for the communication and coordination of cooperative effort required to manage, create, store, print, and use large volumes of information. Hypertext is a flexible, general purpose, non-linear model for storing textual information. The thesis of this dissertation is that software engineering information should be managed using a hypertext based approach. Previous models of software engineering information do not provide the flexibility and generality of a hypertext model. We describe the design and implementation of an Intelligent Software Hypertext System (Ishys), for management of software engineering information. In Ishys, Basic Templates (BTs) are nodes of a hypertext, which can have point-to-point and node-to-node links. Forms are sequences of BTs which can be used to model software life cycle documents. Compositions are arbitrary collections of BTs. Projects represent partitions of the hypertext such that each project has the same forms. Tasks are responsibilities of agents which use or produce forms. Tasks are composed of actions which use or produce BTs. Actions are composed of primitive actions which are commands provided through Ishys. In a general user mode, users create information in Ishys by instantiating BTs. In a super user mode, users define the projects, forms, BTs, tasks, actions, and primitive actions. Structured communication about BTs is supported through annotations attached to different points within BTs. To illustrate the flexibility and generality of the hypertext based approach we show how a hypertext can support generalizations, specializations, revisions, and aggregations. To illustrate the power of hypertext systems in supporting collaborative work, we discuss how a hypertext system can support two models for composition of node composition: (1) the assembly line model, and (2) the exploratory assembly model.

  6. Tools and Behavior Abstraction: A Future for Software Engineering

    Directory of Open Access Journals (Sweden)

    Wilson Solís

    2012-06-01

    Full Text Available Software engineers rely on and use tools to analyze automatically and detailed the code and design specifications. Although many are still used to find new defects in old code, is expected in the future have more application in software engineering and are available to developers at the time of editing their products. If were possible build them fast enough and easy to use, software engineers would apply it to improve design and product development. To solve any problem, traditional engineering use programming languages, however, the level of abstraction of the most popular is not much larger than C programs several decades ago. Moreover, this level is the same in all the code and do not leaves room for abstraction of behavior, in which the design is divided into phases and which gradually introduces more details. This article presents a study of the need for a larger set of analysis tools to create languages and development environments, which provide good support to archive this abstraction.

  7. FinalReferencing within Code in Software Engineering Education!

    Institute of Scientific and Technical Information of China (English)

    HILL Gary; TURNER Scott

    2012-01-01

    Traditionally computer sciences courses will assess software code. It is common and accepted good practice (as in written reports) to reference other sources of appropriate material. However there appears to be no explicit method, recommendation or advice available to computer science tutors and students on a referencing approach! This paper aims to stimulate discussion from peers involved in software engineering education. By discussing the apparent lack of "referencing within code" advice to students and proposing suggestions for appropriate solutions. This will be based on the authors' experience of assessing code and the current advice given to their students.

  8. Software engineering capability for Ada (GRASP/Ada Tool)

    Science.gov (United States)

    Cross, James H., II

    1995-01-01

    The GRASP/Ada project (Graphical Representations of Algorithms, Structures, and Processes for Ada) has successfully created and prototyped a new algorithmic level graphical representation for Ada software, the Control Structure Diagram (CSD). The primary impetus for creation of the CSD was to improve the comprehension efficiency of Ada software and, as a result, improve reliability and reduce costs. The emphasis has been on the automatic generation of the CSD from Ada PDL or source code to support reverse engineering and maintenance. The CSD has the potential to replace traditional prettyprinted Ada Source code. A new Motif compliant graphical user interface has been developed for the GRASP/Ada prototype.

  9. Approaches to Software Engineering: A Human-Centred Perspective

    OpenAIRE

    Bannon, Liam J.

    2010-01-01

    International audience; The field of software engineering has been evolving since its inception in 1968. Arguments as to the exact nature of the field, whether it should be conceived as a real engineering profession, the role of formal methods, whether it is as much an art as a science, etc., continue to divide both practitioners and academics. My purpose here is not to debate these particular topics, but rather to approach the field from the outside, coming as I do from a long period of invo...

  10. Computer aided power flow software engineering and code generation

    Energy Technology Data Exchange (ETDEWEB)

    Bacher, R. [Swiss Federal Inst. of Tech., Zuerich (Switzerland)

    1996-02-01

    In this paper a software engineering concept is described which permits the automatic solution of a non-linear set of network equations. The power flow equation set can be seen as a defined subset of a network equation set. The automated solution process is the numerical Newton-Raphson solution process of the power flow equations where the key code parts are the numeric mismatch and the numeric Jacobian term computation. It is shown that both the Jacobian and the mismatch term source code can be automatically generated in a conventional language such as Fortran or C. Thereby one starts from a high level, symbolic language with automatic differentiation and code generation facilities. As a result of this software engineering process an efficient, very high quality newton-Raphson solution code is generated which allows easier implementation of network equation model enhancements and easier code maintenance as compared to hand-coded Fortran or C code.

  11. Computer aided power flow software engineering and code generation

    Energy Technology Data Exchange (ETDEWEB)

    Bacher, R. [Swiss Federal Inst. of Tech., Zuerich (Switzerland)

    1995-12-31

    In this paper a software engineering concept is described which permits the automatic solution of a non-linear set of network equations. The power flow equation set can be seen as a defined subset of a network equation set. The automated solution process is the numerical Newton-Raphson solution process of the power flow equations where the key code parts are the numeric mismatch and the numeric Jacobian term computation. It is shown that both the Jacobian and the mismatch term source code can be automatically generated in a conventional language such as Fortran or C. Thereby one starts from a high level, symbolic language with automatic differentiation and code generation facilities. As a result of this software engineering process an efficient, very high quality Newton-Raphson solution code is generated which allows easier implementation of network equation model enhancements and easier code maintenance as compared to hand-coded Fortran or C code.

  12. A survey of program slicing for software engineering

    Science.gov (United States)

    Beck, Jon

    1993-01-01

    This research concerns program slicing which is used as a tool for program maintainence of software systems. Program slicing decreases the level of effort required to understand and maintain complex software systems. It was first designed as a debugging aid, but it has since been generalized into various tools and extended to include program comprehension, module cohesion estimation, requirements verification, dead code elimination, and maintainence of several software systems, including reverse engineering, parallelization, portability, and reuse component generation. This paper seeks to address and define terminology, theoretical concepts, program representation, different program graphs, developments in static slicing, dynamic slicing, and semantics and mathematical models. Applications for conventional slicing are presented, along with a prognosis of future work in this field.

  13. Aspect-Oriented Model-Driven Software Product Line Engineering

    Science.gov (United States)

    Groher, Iris; Voelter, Markus

    Software product line engineering aims to reduce development time, effort, cost, and complexity by taking advantage of the commonality within a portfolio of similar products. The effectiveness of a software product line approach directly depends on how well feature variability within the portfolio is implemented and managed throughout the development lifecycle, from early analysis through maintenance and evolution. This article presents an approach that facilitates variability implementation, management, and tracing by integrating model-driven and aspect-oriented software development. Features are separated in models and composed of aspect-oriented composition techniques on model level. Model transformations support the transition from problem to solution space models. Aspect-oriented techniques enable the explicit expression and modularization of variability on model, template, and code level. The presented concepts are illustrated with a case study of a home automation system.

  14. Software Engineers' Attitudes Towards Organizational Change - an Industrial Case Study

    OpenAIRE

    Lenberg, Per; Wallgren, Lars Göran; Feldt, Robert

    2016-01-01

    In order to cope with a complex and changing environment, industries seek to find new and more efficient ways to conduct their business. According to previous research, many of these change efforts fail to achieve their intended aims. Researchers have therefore sought to identify factors that increase the likelihood of success and found that employees' attitude towards change is one of the most critical. The ability to manage change is especially important in software engineering organization...

  15. Ethics in using students as subjects in software engineering experiments

    OpenAIRE

    Enyan, B. (Benjamin)

    2016-01-01

    The ethical issues that researchers encounter in experiment are usually debated upon. Ethical issues are scrutinized and reported in the law, medicine and psychology areas of study. Independent boards are commonly employed to vet the ethical aspect of experiments in the above mentioned areas of study. However, in the software engineering area of research, it is not entirely like that as researchers just follow the guidelines of their respective institutions. Ethical principles of right and wr...

  16. Machine Code and Metaphysics: A Perspective on Software Engineering

    OpenAIRE

    2015-01-01

    A major, but too-little-considered problem for Software Engineering (SE) is a lack of consensus concerning Computer Science (CS) and how this relates to developing unpredictable computing technology. We consider some implications for SE of computer systems differing scientific basis, exemplified with the International Standard Organisations Open Systems Interconnection (ISO-OSI) layered architectural model. An architectural view allows comparison of computing technology components facilitatin...

  17. Software Engineering Laboratory (SEL) database organization and user's guide

    Science.gov (United States)

    So, Maria; Heller, Gerard; Steinberg, Sandra; Spiegel, Douglas

    1989-01-01

    The organization of the Software Engineering Laboratory (SEL) database is presented. Included are definitions and detailed descriptions of the database tables and views, the SEL data, and system support data. The mapping from the SEL and system support data to the base tables is described. In addition, techniques for accessing the database, through the Database Access Manager for the SEL (DAMSEL) system and via the ORACLE structured query language (SQL), are discussed.

  18. Bayesian Statistics in Software Engineering: Practical Guide and Case Studies

    OpenAIRE

    Furia, Carlo A.

    2016-01-01

    Statistics comes in two main flavors: frequentist and Bayesian. For historical and technical reasons, frequentist statistics has dominated data analysis in the past; but Bayesian statistics is making a comeback at the forefront of science. In this paper, we give a practical overview of Bayesian statistics and illustrate its main advantages over frequentist statistics for the kinds of analyses that are common in empirical software engineering, where frequentist statistics still is standard. We...

  19. Software engineering group work - Personality, patterns and performance

    OpenAIRE

    Bell, David G.; Hall, Tracy; Hannay, Jo Erskine; Pfahl, Dietmar; Acuña, Silvia T.

    2010-01-01

    This is the author's version of the work. It is posted here for your personal use. Not for redistribution. The definitive Version of Record was published in SIGMIS-CPR '10, http://dx.doi.org/10.1145/1796900.1796921 Proceedings of the 2010 Special Interest Group on Management Information System's 48th annual conference on Computer personnel research on Computer personnel research (Vancouver, BC, Canada) Software Engineering has been a fundamental part of many computing undergraduate cour...

  20. A study at Masters Level Training in Software Engineering

    Directory of Open Access Journals (Sweden)

    George Clinton

    2012-12-01

    Full Text Available Sponsored by the Department of Defense in the United States was formed an alliance among professionals from the academy, industry and government to design and structure a new model curriculum for Masters Programs in Software Engineering. Before starting this work was conducted at study to 28 of existing programs to determine the level of training in these masters in the country and the world. This article presents the results of that study.

  1. The Effect of AOP on Software Engineering, with Particular Attention to OIF and Event Quantification

    Science.gov (United States)

    Havelund, Klaus; Filman, Robert; Korsmeyer, David (Technical Monitor)

    2003-01-01

    We consider the impact of Aspect-Oriented Programming on Software Engineering, and, in particular, analyze two AOP systems, one of which does component wrapping and the other, quantification over events, for their software engineering effects.

  2. Combining Protein and Strain Engineering for the Production of Glyco-Engineered Horseradish Peroxidase C1A in Pichia pastoris.

    Science.gov (United States)

    Capone, Simona; Ćorajević, Lejla; Bonifert, Günther; Murth, Patrick; Maresch, Daniel; Altmann, Friedrich; Herwig, Christoph; Spadiut, Oliver

    2015-09-24

    Horseradish peroxidase (HRP), conjugated to antibodies and lectins, is widely used in medical diagnostics. Since recombinant production of the enzyme is difficult, HRP isolated from plant is used for these applications. Production in the yeast Pichia pastoris (P. pastoris), the most promising recombinant production platform to date, causes hyperglycosylation of HRP, which in turn complicates conjugation to antibodies and lectins. In this study we combined protein and strain engineering to obtain an active and stable HRP variant with reduced surface glycosylation. We combined four mutations, each being beneficial for either catalytic activity or thermal stability, and expressed this enzyme variant as well as the unmutated wildtype enzyme in both a P. pastoris benchmark strain and a strain where the native α-1,6-mannosyltransferase (OCH1) was knocked out. Considering productivity in the bioreactor as well as enzyme activity and thermal stability, the mutated HRP variant produced in the P. pastoris benchmark strain turned out to be interesting for medical diagnostics. This variant shows considerable catalytic activity and thermal stability and is less glycosylated, which might allow more controlled and efficient conjugation to antibodies and lectins.

  3. Combining Protein and Strain Engineering for the Production of Glyco-Engineered Horseradish Peroxidase C1A in Pichia pastoris

    Science.gov (United States)

    Capone, Simona; Ćorajević, Lejla; Bonifert, Günther; Murth, Patrick; Maresch, Daniel; Altmann, Friedrich; Herwig, Christoph; Spadiut, Oliver

    2015-01-01

    Horseradish peroxidase (HRP), conjugated to antibodies and lectins, is widely used in medical diagnostics. Since recombinant production of the enzyme is difficult, HRP isolated from plant is used for these applications. Production in the yeast Pichia pastoris (P. pastoris), the most promising recombinant production platform to date, causes hyperglycosylation of HRP, which in turn complicates conjugation to antibodies and lectins. In this study we combined protein and strain engineering to obtain an active and stable HRP variant with reduced surface glycosylation. We combined four mutations, each being beneficial for either catalytic activity or thermal stability, and expressed this enzyme variant as well as the unmutated wildtype enzyme in both a P. pastoris benchmark strain and a strain where the native α-1,6-mannosyltransferase (OCH1) was knocked out. Considering productivity in the bioreactor as well as enzyme activity and thermal stability, the mutated HRP variant produced in the P. pastoris benchmark strain turned out to be interesting for medical diagnostics. This variant shows considerable catalytic activity and thermal stability and is less glycosylated, which might allow more controlled and efficient conjugation to antibodies and lectins. PMID:26404235

  4. Combining Protein and Strain Engineering for the Production of Glyco-Engineered Horseradish Peroxidase C1A in Pichia pastoris

    Directory of Open Access Journals (Sweden)

    Simona Capone

    2015-09-01

    Full Text Available Horseradish peroxidase (HRP, conjugated to antibodies and lectins, is widely used in medical diagnostics. Since recombinant production of the enzyme is difficult, HRP isolated from plant is used for these applications. Production in the yeast Pichia pastoris (P. pastoris, the most promising recombinant production platform to date, causes hyperglycosylation of HRP, which in turn complicates conjugation to antibodies and lectins. In this study we combined protein and strain engineering to obtain an active and stable HRP variant with reduced surface glycosylation. We combined four mutations, each being beneficial for either catalytic activity or thermal stability, and expressed this enzyme variant as well as the unmutated wildtype enzyme in both a P. pastoris benchmark strain and a strain where the native α-1,6-mannosyltransferase (OCH1 was knocked out. Considering productivity in the bioreactor as well as enzyme activity and thermal stability, the mutated HRP variant produced in the P. pastoris benchmark strain turned out to be interesting for medical diagnostics. This variant shows considerable catalytic activity and thermal stability and is less glycosylated, which might allow more controlled and efficient conjugation to antibodies and lectins.

  5. Application of software engineering to development of reactor-safety codes

    Energy Technology Data Exchange (ETDEWEB)

    Wilburn, N P; Niccoli, L G

    1980-11-01

    As a result of the drastically increasing cost of software and the lack of an engineering approach, the technology of Software Engineering is being developed. Software Engineering provides an answer to the increasing cost of developing and maintaining software. It has been applied extensively in the business and aerospace communities and is just now being applied to the development of scientific software and, in particular, to the development of reactor safety codes at HEDL.

  6. 78 FR 11129 - Office of Engineering and Technology Seeks Comment on Updated OET-69 Software

    Science.gov (United States)

    2013-02-15

    ... COMMISSION 47 CFR Parts 73 Office of Engineering and Technology Seeks Comment on Updated OET-69 Software... Engineering and Technology (OET) announced the release of new software to perform interference analyses using... Office of Engineering and Technology (OET) announced the release of new software to perform interference...

  7. The Software Technology Center at Lawrence Livermore National Laboratory: Software engineering technology transfer in a scientific R&D laboratory

    Energy Technology Data Exchange (ETDEWEB)

    Zucconi, L.

    1993-12-01

    Software engineering technology transfer for productivity and quality improvement can be difficult to initiate and sustain in a non-profit research laboratory where the concepts of profit and loss do not exist. In this experience report, the author discusses the approach taken to establish and maintain a software engineering technology transfer organization at a large R&D laboratory.

  8. Web Engineering as a Specialization of Software Engineering: Differences in Project Management Education

    Directory of Open Access Journals (Sweden)

    Herwig Mayr

    2005-10-01

    Full Text Available We present the motivation and our concept of introducing "Web Engineering" as a specialization of our "Software Engineering" curriculum. Our main focus lies on the differences in project management education for both areas as well as the necessary process models and tools. First we discuss the principal differences of software project management and web project management, focusing on the main difficulties of teaching such management skills to primarily technophile students. Then we analyze the composition of modern software development teams and changes within such teams implied by the development of web applications. We illustrate this transition showing how a merely document-driven process - as can be found in many traditional software development projects - is turned into a highly tool-supported, agile development process, which is characteristic for web development projects.

  9. Outsourcing the development of specific application software using the ESA software engineering standards the SPS software Interlock System

    CERN Document Server

    Denis, B

    1995-01-01

    CERN is considering outsourcing as a solution to the reduction of staff. To need to re-engineer the SPS Software Interlock System provided an opportunity to explore the applicability of outsourcing to our specific controls environment and the ESA PSS-05 standards were selected for the requirements specification, the development, the control and monitoring and the project management. The software produced by the contractor is now fully operational. After outlining the scope and the complexity of the project, a discussion on the ESA PSS-05 will be presented: the choice, the way these standards improve the outsourcing process, the quality induced but also the need to adapt them and their limitation in the definition of the customer-supplier relationship. The success factors and the difficulties of development under contract will also be discussed. The maintenance aspect and the impact on in-house developments will finally be addressed.

  10. Measuring the effect of conflict on software engineering teams.

    Science.gov (United States)

    Karn, J S; Cowling, A J

    2008-05-01

    This article describes a project that aimed to uncover the effects of different forms of conflict on team performance during the important feasibility, requirements analysis, and design phases of software engineering (SE) projects. The research subjects were master of science students who were working to produce software commissioned by real-world clients. A template was developed that allowed researchers to record details of any conflicts that occurred. It was found that some forms of conflict were more damaging than others and that the frequency and intensity of specific conflicts are important factors to consider. The experience of the researchers when using the final template suggests that it is a valuable weapon to have in one's arsenal if one is interested in observing and recording the details of conflict in either SE teams or teams in different contexts.

  11. Need for Proper Training in Software Engineering for Scientists

    Directory of Open Access Journals (Sweden)

    Michael Kind

    2012-12-01

    Full Text Available Scientists are increasingly investing more time writing software to model the processes under their research, for example, biological structures, simulate the early evolution of the universe or to analyze past climate data. But, according to experienced developers and computer scientists, most of them do not have adequate training to apply software engineering in their developments. A quarter century ago most of the scientists work they did was relatively simple; but when computers and programming tools became more complex reached a steep learning curve, and most of them not get the level of effort or acquired skills needed to keep up. This article analyses this situation and presents some suggestions to solve.

  12. Requirements Engineering Challenges in Service Oriented Software Engineering: an exploratory online survey

    Directory of Open Access Journals (Sweden)

    Muneera Bano

    2013-07-01

    Full Text Available Service Oriented Software Engineering (SOSE is an emerging field for developing software using web services. One of the main tasks of a Requirement Engineer in SOSE is matchmaking between requirements and available services. Published literature indicates that Requirements Engineering (RE in SOSE is facing differentchallenges. In this study, we report the results of an online survey conducted with practitioners and the researchers working on service oriented projects. The aim is to get an insight about the issues and challenges faced in SOSE during requirements engineering. The results show an interesting pattern of how the researchers and practitioners have differing views on reported challenges. The difference in opinion is mostly because SOSE is a new field and most of its concepts are not fully understood and appreciated by designers and developers, resulting in a poor implementation of the SOSE concepts.

  13. Employing industrial standards in software engineering for W7X

    Energy Technology Data Exchange (ETDEWEB)

    Kuehner, Georg [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Teilinstitut Greifswald, Wendelsteinstrasse 1, D-17491 Greifswald (Germany)], E-mail: kuehner@ipp.mpg.de; Bluhm, Torsten [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Teilinstitut Greifswald, Wendelsteinstrasse 1, D-17491 Greifswald (Germany); Heimann, Peter [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Boltzmannstrasse 2, D-85748 Garching (Germany); Hennig, Christine [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Teilinstitut Greifswald, Wendelsteinstrasse 1, D-17491 Greifswald (Germany); Kroiss, Hugo [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Boltzmannstrasse 2, D-85748 Garching (Germany); Krueger, Alexander [University of Applied Sciences, Schwedenschanze 135, 18435 Stralsund (Germany); Laqua, Heike; Lewerentz, Marc [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Teilinstitut Greifswald, Wendelsteinstrasse 1, D-17491 Greifswald (Germany); Maier, Josef [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Boltzmannstrasse 2, D-85748 Garching (Germany); Riemann, Heike; Schacht, Joerg; Spring, Anett; Werner, Andreas [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Teilinstitut Greifswald, Wendelsteinstrasse 1, D-17491 Greifswald (Germany); Zilker, Manfred [Max-Planck-Institut fuer Plasmaphysik, EURATOM Association, Boltzmannstrasse 2, D-85748 Garching (Germany)

    2009-06-15

    The stellarator W7X is a large complex experiment designed for continuous operation and planned to be operated for about 20 years. Software support is highly demanded for experiment preparation, operation and data analysis which in turn induces serious non-functional requirements on the software quality like, e.g.: {center_dot}high availability, stability, maintainability vs. {center_dot}high flexibility concerning change of functionality, technology, personnel {center_dot}high versatility concerning the scale of system size and performance These challenges are best met by exploiting industrial experience in quality management and assurance (QM/QA), e.g. focusing on top-down development methods, developing an integral functional system model, using UML as a diagramming standard, building vertical prototypes, support for distributed development, etc., which have been used for W7X, however on an 'as necessary' basis. Proceeding in this manner gave significant results for control, data acquisition, corresponding database-structures and user applications over many years. As soon as production systems started using the software in the labs or on a prototype the development activity demanded to be organized in a more rigorous process mainly to provide stable operation conditions. Thus a process improvement activity was started for stepwise introduction of quality assuring processes with tool support taking standards like CMMI, ISO-15504 (SPICE) as a guideline. Experiences obtained so far will be reported. We conclude software engineering and quality assurance has to be an integral part of systems engineering right from the beginning of projects and be organized according to industrial standards to be prepared for the challenges of nuclear fusion research.

  14. Teaching Software Engineering Subjects Using a Practical Oriented Approach at the University of Mumbai

    Directory of Open Access Journals (Sweden)

    Mayur S Gondhalekar

    2013-12-01

    Full Text Available The University of Mumbai is one of the oldest and renowned universities in India, catering to nearly 20,000 students in the Computer Engineering and Information Technology Engineering disciplines. This translates to approximately 12,000 qraduates entering the software industry. The structure of the coursework related to Software Engineering subjects - Software Engineering, Software Testing and Quality Assurance, Sofware Project Management and Software Architectures - relies heavily on theoretical classroom teaching. In this paper, we suggest changes to the structure of the coursework by shifting the focus to a project-oriented system, that will give the students a real-world-like experience of the Software Engineering subjects. Graduates with a higher level of practical experience of Software Engineering subjects is a win-win situation for everyone concerned, the software industry, the research institutes, and the students themselves.

  15. Open source software engineering for geoscientific modeling applications

    Science.gov (United States)

    Bilke, L.; Rink, K.; Fischer, T.; Kolditz, O.

    2012-12-01

    , static analysis tools) - Informs developers on errors (via email) - Generates source code documentation - Provides binaries for end users These points enhance the software development process considerably. Firstly, platform independence is maintained. Additionally, errors in the source code can be tracked down easily. Lastly, developers gain access to code analysis tools and up-to-date source code documentation.; Overview of the OpenGeoSys software engineering workflow

  16. Ada Implementation Guide. Software Engineering With Ada. Volume 1

    Science.gov (United States)

    1994-04-01

    teaching, the student is less likely to readily adopt new, more powerful ways of accomplishing old tasks 122 Depatn of the NaY I ! Trablng and Educaion and...Maturity Model3 (CMU/SEI-92-TR-25, ESC-TR-/92-0M5). Pittsburgh, PA : Carnegie-Mellon University, 1992. SBoehm. B.W. Software Engineering Economics...Pittsburgh, PA : Carnegie-Mellon University, 19-21 March 1991. £ Contrast: Ada 9X and C++, Schonberg, E. New York University, 1992 (Distributed by Ada IC on

  17. Modelling Gaia CCD pixels with Silvaco 3D engineering software

    CERN Document Server

    Seabroke, G M; Hopkinson, G; Burt, D; Robbins, M; Holland, A

    2010-01-01

    Gaia will only achieve its unprecedented measurement accuracy requirements with detailed calibration and correction for radiation damage. We present our Silvaco 3D engineering software model of the Gaia CCD pixel and two of its applications for Gaia: (1) physically interpreting supplementary buried channel (SBC) capacity measurements (pocket-pumping and first pixel response) in terms of e2v manufacturing doping alignment tolerances; and (2) deriving electron densities within a charge packet as a function of the number of constituent electrons and 3D position within the charge packet as input to microscopic models being developed to simulate radiation damage.

  18. Writing Compilers and Interpreters A Software Engineering Approach

    CERN Document Server

    Mak, Ronald

    2011-01-01

    Long-awaited revision to a unique guide that covers both compilers and interpreters Revised, updated, and now focusing on Java instead of C++, this long-awaited, latest edition of this popular book teaches programmers and software engineering students how to write compilers and interpreters using Java. You?ll write compilers and interpreters as case studies, generating general assembly code for a Java Virtual Machine that takes advantage of the Java Collections Framework to shorten and simplify the code. In addition, coverage includes Java Collections Framework, UML modeling, object-oriented p

  19. The study on network security based on software engineering

    Science.gov (United States)

    Jia, Shande; Ao, Qian

    2012-04-01

    Developing a SP is a sensitive task because the SP itself can lead to security weaknesses if it is not conform to the security properties. Hence, appropriate techniques are necessary to overcome such problems. These techniques must accompany the policy throughout its deployment phases. The main contribution of this paper is then, the proposition of three of these activities: validation, test and multi-SP conflict management. Our techniques are inspired by the well established techniques of the software engineering for which we have found some similarities with the security domain.

  20. Ada Implementation Guide. Software Engineering With Ada. Volume 2

    Science.gov (United States)

    1994-04-01

    international standard LADY-LOV 11/25/91 10240 Article on life of Ada Lovelace by Carol L. James and Duncan E. Morrill with note on the naming of the Ada ...A aa a- S I !/ A -- I Volume II I I! I Ii Ada Implementation GuideI Software Engineering With Ada I DTIC QUALn1T :1 1 ’. I April 1994 *ýS94-18856 JJ...A-13 A.1 Government Sources ...................................... A-1 A.1.1 Organizations .................................... A-2 Ada

  1. An Experience of Educational Innovation for the Collaborative Learning in Software Engineering

    Directory of Open Access Journals (Sweden)

    Juan C Yelmo

    2011-06-01

    Full Text Available This paper describes the experience in collaborative learning based educational innovation for the Software Engineering Subject at the Telecommunications Engineering School of the Universidad Politécnica de Madrid. We describe the context of evolution of the Software Engineering related subjects in the Master’s degree in Telecommunications Engineering (specialization in Telematics for their adaptation to the educational and organizational postulates of the European Space for Higher Education. In this context, we describe a pilot project for the adaptation of the Software Engineering Lab course, which includes the development and validation of a software engineering tool environment and a web platform for collaborative work.

  2. Training Software Developers in Usability Engineering: A Literature Review

    DEFF Research Database (Denmark)

    Bruun, Anders

    2010-01-01

    Software companies focusing on Usability Engineering face two major challenges, the first being the sheer lack of usability specialists leading to missing competences in the industry and the second, which regards small companies suffering from the constraint of low budgets, thus not being able...... to fund usability specialists or comprehensive consultancy. Training of non-usability personnel in critical usability engineering methods has the potential of easing these challenges. It is, however, unknown how much and what kind of research that has been committed to novice training in UE methods....... This paper presents a comprehensive literature study of research conducted in this area, where 129 papers are analyzed in terms of research focus, empirical basis, types of training participants and training costs. Findings show a need for further empirical research regarding long term effects of training...

  3. Would Consolidation of Army Software Engineering Organizations Help to Control Software Costs for Current and Future Systems

    Science.gov (United States)

    2015-04-16

    Development and Engineering Center; Armament Research, Development and Engineering Center (ARDEC); and Tank and Automotive Research, Development and...specializes in specific Army domains and programs—aviation and missile, communications and electronics, armaments, tank and automotive . In fiscal year...Sustaining engineering o Product fielding and user support o Regression testing • Efficiencies are needed to cope with workload . AMC Software Support

  4. Orthographic Software Modelling: A Novel Approach to View-Based Software Engineering

    Science.gov (United States)

    Atkinson, Colin

    The need to support multiple views of complex software architectures, each capturing a different aspect of the system under development, has been recognized for a long time. Even the very first object-oriented analysis/design methods such as the Booch method and OMT supported a number of different diagram types (e.g. structural, behavioral, operational) and subsequent methods such as Fusion, Kruchten's 4+1 views and the Rational Unified Process (RUP) have added many more views over time. Today's leading modeling languages such as the UML and SysML, are also oriented towards supporting different views (i.e. diagram types) each able to portray a different facets of a system's architecture. More recently, so called enterprise architecture frameworks such as the Zachman Framework, TOGAF and RM-ODP have become popular. These add a whole set of new non-functional views to the views typically emphasized in traditional software engineering environments.

  5. Decision Engines for Software Analysis Using Satisfiability Modulo Theories Solvers

    Science.gov (United States)

    Bjorner, Nikolaj

    2010-01-01

    The area of software analysis, testing and verification is now undergoing a revolution thanks to the use of automated and scalable support for logical methods. A well-recognized premise is that at the core of software analysis engines is invariably a component using logical formulas for describing states and transformations between system states. The process of using this information for discovering and checking program properties (including such important properties as safety and security) amounts to automatic theorem proving. In particular, theorem provers that directly support common software constructs offer a compelling basis. Such provers are commonly called satisfiability modulo theories (SMT) solvers. Z3 is a state-of-the-art SMT solver. It is developed at Microsoft Research. It can be used to check the satisfiability of logical formulas over one or more theories such as arithmetic, bit-vectors, lists, records and arrays. The talk describes some of the technology behind modern SMT solvers, including the solver Z3. Z3 is currently mainly targeted at solving problems that arise in software analysis and verification. It has been applied to various contexts, such as systems for dynamic symbolic simulation (Pex, SAGE, Vigilante), for program verification and extended static checking (Spec#/Boggie, VCC, HAVOC), for software model checking (Yogi, SLAM), model-based design (FORMULA), security protocol code (F7), program run-time analysis and invariant generation (VS3). We will describe how it integrates support for a variety of theories that arise naturally in the context of the applications. There are several new promising avenues and the talk will touch on some of these and the challenges related to SMT solvers. Proceedings

  6. Software for Preprocessing Data from Rocket-Engine Tests

    Science.gov (United States)

    Cheng, Chiu-Fu

    2004-01-01

    Three computer programs have been written to preprocess digitized outputs of sensors during rocket-engine tests at Stennis Space Center (SSC). The programs apply exclusively to the SSC E test-stand complex and utilize the SSC file format. The programs are the following: Engineering Units Generator (EUGEN) converts sensor-output-measurement data to engineering units. The inputs to EUGEN are raw binary test-data files, which include the voltage data, a list identifying the data channels, and time codes. EUGEN effects conversion by use of a file that contains calibration coefficients for each channel. QUICKLOOK enables immediate viewing of a few selected channels of data, in contradistinction to viewing only after post-test processing (which can take 30 minutes to several hours depending on the number of channels and other test parameters) of data from all channels. QUICKLOOK converts the selected data into a form in which they can be plotted in engineering units by use of Winplot (a free graphing program written by Rick Paris). EUPLOT provides a quick means for looking at data files generated by EUGEN without the necessity of relying on the PV-WAVE based plotting software.

  7. Qualification of numerical software. Application to a Software for analyzing combustion in spark-ignition engines

    Energy Technology Data Exchange (ETDEWEB)

    Guilain, S. (Agence de l' Environnement et de la Maitrise de l' Energie, 75 - Paris (France) Institut Francais du Petrole (IFP), 92 - Rueil-Malmaison (France) Ecole Nationale Superieure du Petrole et des Moteurs (ENSPM), 92 - Rueil-Malmaison (France)); Vignes, J. (Paris-6 Univ., 75 (France) Institut Francais du Petrole (IFP), 92 - Rueil-Malmaison (France))

    For analyzing physical phenomena, numerical simulation is used more and more frequently. Starting with a mathematical model describing the phenomenon being analyzed, this simulation consists in creating a scientific computing program expressing this model by implementing the numerical methods required for solving it. Simulation is considered to be valid when the results its provides are in agreement with the results issuing from experimenting with the phenomenon. However, these results contain a computing error resulting from the propagation of round-off errors caused by the floating-point arithmetic used by the computer. They also contain an error coming from the uncertainties concerning the data of the problem. The first part of this paper concerns the validation of numerical software results. After making a brief review of the floating-point arithmetic and highlighting the serious consequences it may have on the results obtained, a probabilistic approach to the analysis of round-off errors, the CESTAC (Controle et Estimation STochastique des Arrondis de Calculs) method, from the standpoint of both its theoretical bases and its practical implementation is described. The second part is devoted to the use of the CADNA software (Control of Accuracy and Debugging for Numerical Applications) for qualifying the simulation software, ANALCO (ANALyse de COmbustion) which analyses combustion in spark-ignition engines. After a description of the normal model of the phenomenon being analyzed and after mathematical model has been deduced, the ANALCO simulation software is described. The results obtained with ANALCO, not using CADNA, reveal the disagreement between the simulation results and the experimental results. The use of the CADNA software eliminates the numerical instabilities and demonstrates that the disagreement between the simulation results and the results observed is due only to numerical problems. (author). 22 refs., 21 figs., 10 tabs.

  8. Open source projects in software engineering education: a mapping study

    Science.gov (United States)

    Nascimento, Debora M. C.; Almeida Bittencourt, Roberto; Chavez, Christina

    2015-01-01

    Context: It is common practice in academia to have students work with "toy" projects in software engineering (SE) courses. One way to make such courses more realistic and reduce the gap between academic courses and industry needs is getting students involved in open source projects (OSP) with faculty supervision. Objective: This study aims to summarize the literature on how OSP have been used to facilitate students' learning of SE. Method: A systematic mapping study was undertaken by identifying, filtering and classifying primary studies using a predefined strategy. Results: 72 papers were selected and classified. The main results were: (a) most studies focused on comprehensive SE courses, although some dealt with specific areas; (b) the most prevalent approach was the traditional project method; (c) studies' general goals were: learning SE concepts and principles by using OSP, learning open source software or both; (d) most studies tried out ideas in regular courses within the curriculum; (e) in general, students had to work with predefined projects; (f) there was a balance between approaches where instructors had either inside control or no control on the activities performed by students; (g) when learning was assessed, software artefacts, reports and presentations were the main instruments used by teachers, while surveys were widely used for students' self-assessment; (h) most studies were published in the last seven years. Conclusions: The resulting map gives an overview of the existing initiatives in this context and shows gaps where further research can be pursued.

  9. The mythical man-month essays on software engineering

    CERN Document Server

    Brooks, Frederick Phillips

    1995-01-01

    Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time. The added chapters contain (1) a crisp condensation of all the propositions asserted in the original book, including Brooks' central argument in The Mythical Man-Month: that large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achi...

  10. Perspectives on the future of software engineering essays in honor of Dieter Rombach

    CERN Document Server

    Münch, Jürgen

    2013-01-01

    The dependence on quality software in all areas of life is what makes software engineering a key discipline for today's society. Thus, over the last few decades it has been increasingly recognized that it is particularly important to demonstrate the value of software engineering methods in real-world environments, a task which is the focus of empirical software engineering. One of the leading protagonists of this discipline worldwide is Prof. Dr. Dr. h.c. Dieter Rombach, who dedicated his entire career to empirical software engineering. For his many important contributions to the field he has

  11. An empirical investigation into the adoption of Software Engineering Practice in Saudi Arabia

    Directory of Open Access Journals (Sweden)

    Khalid Alnafjan

    2012-05-01

    Full Text Available The objective of this paper is to investigate the state of software engineering practice for software industry in Saudi Arabian organizations. The main goal was mainly to gain insight into the ways these organizations are using to adopt software engineering techniques and also the sources of obstacles and difficulties faced by these organizations. To achieve that, we have designed and conducted a survey that measures the adoption of various software engineering practices. Results clearly reveal that there are several weaknesses in applying software engineering practices in Saudi Arabia especially for small organizations.

  12. Shaping Software Engineering Curricula Using Open Source Communities: A Case Study

    Science.gov (United States)

    Bowring, James; Burke, Quinn

    2016-01-01

    This paper documents four years of a novel approach to teaching a two-course sequence in software engineering as part of the ABET-accredited computer science curriculum at the College of Charleston. This approach is team-based and centers on learning software engineering in the context of open source software projects. In the first course, teams…

  13. Shaping Software Engineering Curricula Using Open Source Communities: A Case Study

    Science.gov (United States)

    Bowring, James; Burke, Quinn

    2016-01-01

    This paper documents four years of a novel approach to teaching a two-course sequence in software engineering as part of the ABET-accredited computer science curriculum at the College of Charleston. This approach is team-based and centers on learning software engineering in the context of open source software projects. In the first course, teams…

  14. In the soft-to-hard technical spectrum: Where is software engineering?

    Science.gov (United States)

    Leibfried, Theodore F.; Macdonald, Robert B.

    1992-01-01

    In the computer journals and tabloids, there have been a plethora of articles written about the software engineering field. But while advocates of the need for an engineering approach to software development, it is impressive how many authors have treated the subject of software engineering without adequately addressing the fundamentals of what engineering as a discipline consists of. A discussion is presented of the various related facets of this issue in a logical framework to advance the thesis that the software development process is necessarily an engineering process. The purpose is to examine more of the details of the issue of whether or not the design and development of software for digital computer processing systems should be both viewed and treated as a legitimate field of professional engineering. Also, the type of academic and professional level education programs that would be required to support a software engineering discipline is examined.

  15. Software Engineering Support Activities for Very Small Entities

    Science.gov (United States)

    Ribaud, Vincent; Saliou, Philippe; O'Connor, Rory V.; Laporte, Claude Y.

    The emerging ISO/IEC 29110 standard Lifecycle profiles for Very Small Entities has at its core a Management and Engineering Guides which is targeted at very small entity (enterprise, organization, department or project) having up to 25 people, to assist them unlock the potential benefits of using standards which are specifically designed to address there needs. The developers of the standard, ISO/IEC JCT1/SC7 Working Group 24 (WG24), recommend the use of pilot projects as a mean to trial the adoption of the new International standard in small organisations. Accordingly an ISO/IEC 29110 pilot project has been established between the Software Engineering group of Brest University and a 14 person company with the aim of establishing an engineering discipline for a new web-based project. This paper details the lessons learned from the pilot project and based on our experiences with using ISO/IEC 29110 we identify a potential deficiency and accordingly propose new process area, "Infrastructure and Support" for include in the future evolution of ISO/IEC 29110 Process Profiles.

  16. Interactive scalable condensation of reverse engineered UML class diagrams for software comprehension

    NARCIS (Netherlands)

    Osman, Mohd Hafeez Bin

    2015-01-01

    Software design documentation is a valuable aid in software comprehension. However, keeping the software design up-to-date with evolving source code is challenging and time-consuming. Reverse engineering is one of the options for recovering software architecture from the implementation code.

  17. A Role-Playing Game for a Software Engineering Lab: Developing a Product Line

    Science.gov (United States)

    Zuppiroli, Sara; Ciancarini, Paolo; Gabbrielli, Maurizio

    2012-01-01

    Software product line development refers to software engineering practices and techniques for creating families of similar software systems from a basic set of reusable components, called shared assets. Teaching how to deal with software product lines in a university lab course is a challenging task, because there are several practical issues that…

  18. Interactive scalable condensation of reverse engineered UML class diagrams for software comprehension

    NARCIS (Netherlands)

    Osman, Mohd Hafeez Bin

    2015-01-01

    Software design documentation is a valuable aid in software comprehension. However, keeping the software design up-to-date with evolving source code is challenging and time-consuming. Reverse engineering is one of the options for recovering software architecture from the implementation code. However

  19. A Role-Playing Game for a Software Engineering Lab: Developing a Product Line

    Science.gov (United States)

    Zuppiroli, Sara; Ciancarini, Paolo; Gabbrielli, Maurizio

    2012-01-01

    Software product line development refers to software engineering practices and techniques for creating families of similar software systems from a basic set of reusable components, called shared assets. Teaching how to deal with software product lines in a university lab course is a challenging task, because there are several practical issues that…

  20. Interactive scalable condensation of reverse engineered UML class diagrams for software comprehension

    NARCIS (Netherlands)

    Osman, Mohd Hafeez Bin

    2015-01-01

    Software design documentation is a valuable aid in software comprehension. However, keeping the software design up-to-date with evolving source code is challenging and time-consuming. Reverse engineering is one of the options for recovering software architecture from the implementation code. However

  1. Software Engineering and eLearning: The MuSofT Project - www.musoft.org

    Directory of Open Access Journals (Sweden)

    Ernst-Erich Doberkat

    2005-12-01

    Full Text Available eLearning supports the education in certain disciplines. Here, we report about novel eLearning concepts, techniques, and tools to support education in Software Engineering, a subdiscipline of computer science. We call this "Software Engineering eLearning". On the other side, software support is a substantial prerequisite for eLearning in any discipline. Thus, Software Engineering techniques have to be applied to develop and maintain those software systems. We call this "eLearning Software Engineering". Both aspects have been investigated in a large joint, BMBF-funded research project, termed MuSofT (Multimedia in Software Engineering. The main results are summarized in this paper.

  2. Thematic Review and Analysis of Grounded Theory Application in Software Engineering

    Directory of Open Access Journals (Sweden)

    Omar Badreddin

    2013-01-01

    Full Text Available We present metacodes, a new concept to guide grounded theory (GT research in software engineering. Metacodes are high level codes that can help software engineering researchers guide the data coding process. Metacodes are constructed in the course of analyzing software engineering papers that use grounded theory as a research methodology. We performed a high level analysis to discover common themes in such papers and discovered that GT had been applied primarily in three software engineering disciplines: agile development processes, geographically distributed software development, and requirements engineering. For each category, we collected and analyzed all grounded theory codes and created, following a GT analysis process, what we call metacodes that can be used to drive further theory building. This paper surveys the use of grounded theory in software engineering and presents an overview of successes and challenges of applying this research methodology.

  3. Repository-based software engineering program: Concept document

    Science.gov (United States)

    1992-01-01

    This document provides the context for Repository-Based Software Engineering's (RBSE's) evolving functional and operational product requirements, and it is the parent document for development of detailed technical and management plans. When furnished, requirements documents will serve as the governing RBSE product specification. The RBSE Program Management Plan will define resources, schedules, and technical and organizational approaches to fulfilling the goals and objectives of this concept. The purpose of this document is to provide a concise overview of RBSE, describe the rationale for the RBSE Program, and define a clear, common vision for RBSE team members and customers. The document also provides the foundation for developing RBSE user and system requirements and a corresponding Program Management Plan. The concept is used to express the program mission to RBSE users and managers and to provide an exhibit for community review.

  4. Software Packages to Support Electrical Engineering Virtual Lab

    Directory of Open Access Journals (Sweden)

    Manuel Travassos Valdez

    2012-03-01

    Full Text Available The use of Virtual Reality Systems (VRS, as a learning aid, encourages the creation of tools that allow users/students to simulate educational environments on a computer. This article presents a way of building a VRS system with Software Packages to support Electrical Engineering Virtual Laboratories to be used in a near future in the teaching of the curriculum unit of Circuit Theory. The steps required for the construction of a project are presented in this paper. The simulation is still under construction and intends to use a three-dimensional virtual environment laboratory electric measurement, which will allow users/students to experiment and test the modeled equipment. Therefore, there are still no links available for further examination. The result may demonstrate the future potential of applications of Virtual Reality Systems as an efficient and cost-effective learning system.

  5. Variable length data formats. [in hardware-software engineering

    Science.gov (United States)

    Brakefield, J. C.; Quinn, M. J.

    1978-01-01

    The purpose of this paper is to discuss a number of variable length floating point and integer formats and to give the various advantages and disadvantages of their use. Often it is known in advance that a given integer will not exceed a certain magnitude or that a particular floating point number is accurate to only 'n' places of accuracy. Faced with this, it is good engineering to choose variable length floating point and integer formats which require the least amount of hardware or the minimum amount of software or which have some other dominant advantage. The formats discussed have the advantage that length change algorithms are invariant with respect to data types (unsigned, signed, floating point, integers, and complex numbers). The STARAN associative array processor, which uses a completely variable fixed point and floating point formats, is described.

  6. Scrutinizing Systematic Literature Review Process in Software Engineering

    Directory of Open Access Journals (Sweden)

    Zlatko Stapic

    2016-02-01

    Full Text Available Performing the Systematic Literature Review (SLR in the turbulent field of Software Engineering (SE brings different obstacles and uncertainties. The commonly used guidelines for performing the SLR in this field are adapted from health sciences and presented by Kitchenham and Charters in 2007. This paper follows the Kitchenham’s three-phases-review-process and fulfils it with the findings, observations and recommendations from other influential authors in the field. The process of SLR is observed from the perspective of appliance in the field of SE and supplemented by the important precautious measures that should be undertaken by the authors performing it. Thus, this paper aims to present the state-of-the-art in performing the SLR in SE

  7. Internet Evolution and the Role of Software Engineering

    Science.gov (United States)

    Zave, Pamela

    The classic Internet architecture is a victim of its own success. Having succeeded so well at empowering users and encouraging innovation, it has been made obsolete by explosive growth in users, traffic, applications, and threats. For the past decade, the networking community has been focused on the many deficiencies of the current Internet and the possible paths toward a better future Internet. This paper explains why the Internet is likely to architectures running on multiple virtual networks, rather than having a single architecture. In this context, there is an urgent need for research that starts from the requirements of Internet applications and works downward toward network resources, in addition to the predominantly bottom-up work of the networking community. This paper aims to encourage the software-engineering community to participate in this research by providing a starting point and a broad program of research questions and projects.

  8. Introducing Risk Management Techniques Within Project Based Software Engineering Courses

    Science.gov (United States)

    Port, Daniel; Boehm, Barry

    2002-03-01

    In 1996, USC switched its core two-semester software engineering course from a hypothetical-project, homework-and-exam course based on the Bloom taxonomy of educational objectives (knowledge, comprehension, application, analysis, synthesis, and evaluation). The revised course is a real-client team-project course based on the CRESST model of learning objectives (content understanding, problem solving, collaboration, communication, and self-regulation). We used the CRESST cognitive demands analysis to determine the necessary student skills required for software risk management and the other major project activities, and have been refining the approach over the last 5 years of experience, including revised versions for one-semester undergraduate and graduate project course at Columbia. This paper summarizes our experiences in evolving the risk management aspects of the project course. These have helped us mature more general techniques such as risk-driven specifications, domain-specific simplifier and complicator lists, and the schedule as an independent variable (SAIV) process model. The largely positive results in terms of review of pass / fail rates, client evaluations, product adoption rates, and hiring manager feedback are summarized as well.

  9. Software Engineering Research/Developer Collaborations (C104)

    Science.gov (United States)

    Shell, Elaine; Shull, Forrest

    2005-01-01

    The goal of this collaboration was to produce Flight Software Branch (FSB) process standards for software inspections which could be used across three new missions within the FSB. The standard was developed by Dr. Forrest Shull (Fraunhofer Center for Experimental Software Engineering, Maryland) using the Perspective-Based Inspection approach, (PBI research has been funded by SARP) , then tested on a pilot Branch project. Because the short time scale of the collaboration ruled out a quantitative evaluation, it would be decided whether the standard was suitable for roll-out to other Branch projects based on a qualitative measure: whether the standard received high ratings from Branch personnel as to usability and overall satisfaction. The project used for piloting the Perspective-Based Inspection approach was a multi-mission framework designed for reuse. This was a good choice because key representatives from the three new missions would be involved in the inspections. The perspective-based approach was applied to produce inspection procedures tailored for the specific quality needs of the branch. The technical information to do so was largely drawn through a series of interviews with Branch personnel. The framework team used the procedures to review requirements. The inspections were useful for indicating that a restructuring of the requirements document was needed, which led to changes in the development project plan. The standard was sent out to other Branch personnel for review. Branch personnel were very positive. However, important changes were identified because the perspective of Attitude Control System (ACS) developers had not been adequately represented, a result of the specific personnel interviewed. The net result is that with some further work to incorporate the ACS perspective, and in synchrony with the roll out of independent Branch standards, the PBI approach will be implemented in the FSB. Also, the project intends to continue its collaboration with

  10. Desire characteristics of a generic 'no frills' software engineering tools package

    Energy Technology Data Exchange (ETDEWEB)

    Rhodes, J.J.

    1986-07-29

    Increasing numbers of vendors are developing software engineering tools to meet the demands of increasingly complex software systems, higher reliability goals for software products, higher programming labor costs, and management's desire to more closely associate software lifecycle costs with the estimated development schedule. Some vendors have chosen a dedicated workstation approach to achieve high user interactivity through windowing and mousing. Other vendors are using multi-user mainframes with low cost terminals to economize on the costs of the hardware and the tools software. For all of the potential customers of software tools, the question remains: What are the minimum functional requirements that a software engineering tools package must have in order to be considered useful throughout the entire software lifecycle. This paper describes the desired characteristics of a non-existent but realistic 'no frills' software engineering tools package. 3 refs., 5 figs.

  11. Engineering Safety- and Security-Related Requirements for Software-Intensive Systems

    Science.gov (United States)

    2016-06-30

    2007 Carnegie Mellon University Engineering Safety- and Security-Related Requirements for Software- Intensive Systems ICCBSS’2007 Conference...Tutorial Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Donald Firesmith 27 February 2007 Report Documentation Page Form...COVERED 00-00-2007 to 00-00-2007 4. TITLE AND SUBTITLE Engineering Safety- and Security-Related Requirements for Software-Intensive Systems 5a

  12. Software Engineering Practices and Tool Support: an exploratory study in New Zealand

    Directory of Open Access Journals (Sweden)

    Chris Phillips

    2003-11-01

    Full Text Available This study was designed as a preliminary investigation of the practices of software engineers within New Zealand, including their use of development tools. The project involved a review of relevant literature on software engineering and CASE tools, the development and testing of an interview protocol, and structured interviews with five software engineers. This paper describes the project, presents the findings, examines the results in the context of the literature and outlines on-going funded work involving a larger survey.

  13. Sandia National Laboratories Advanced Simulation and Computing (ASC) software quality plan : ASC software quality engineering practices Version 3.0.

    Energy Technology Data Exchange (ETDEWEB)

    Turgeon, Jennifer L.; Minana, Molly A.; Hackney, Patricia; Pilch, Martin M.

    2009-01-01

    The purpose of the Sandia National Laboratories (SNL) Advanced Simulation and Computing (ASC) Software Quality Plan is to clearly identify the practices that are the basis for continually improving the quality of ASC software products. Quality is defined in the US Department of Energy/National Nuclear Security Agency (DOE/NNSA) Quality Criteria, Revision 10 (QC-1) as 'conformance to customer requirements and expectations'. This quality plan defines the SNL ASC Program software quality engineering (SQE) practices and provides a mapping of these practices to the SNL Corporate Process Requirement (CPR) 001.3.6; 'Corporate Software Engineering Excellence'. This plan also identifies ASC management's and the software project teams responsibilities in implementing the software quality practices and in assessing progress towards achieving their software quality goals. This SNL ASC Software Quality Plan establishes the signatories commitments to improving software products by applying cost-effective SQE practices. This plan enumerates the SQE practices that comprise the development of SNL ASC's software products and explains the project teams opportunities for tailoring and implementing the practices.

  14. Nmag micromagnetic simulation tool - software engineering lessons learned

    CERN Document Server

    Fangohr, Hans; Franchin, Matteo

    2016-01-01

    We review design decisions and their impact for the open source code Nmag from a software engineering in computational science point of view. Key lessons to learn include that the approach of encapsulating the simulation functionality in a library of a general purpose language, here Python, eliminates the need for configuration files, provides greatest flexibility in using the simulation, allows mixing of multiple simulations, pre- and post-processing in the same (Python) file, and allows to benefit from the rich Python ecosystem of scientific packages. The choice of programming language (OCaml) for the computational core did not resonate with the users of the package (who are not computer scientists) and was suboptimal. The choice of Python for the top-level user interface was very well received by users from the science and engineering community. The from-source installation in which key requirements were compiled from a tarball was remarkably robust. In places, the code is a lot more ambitious than necessa...

  15. The ultimate CASE (Computer-Aided Software Engineering) tool

    Energy Technology Data Exchange (ETDEWEB)

    Sharp, J.K.

    1990-01-01

    The theory and practice of information engineering is being actively developed at Sandia National Laboratories. The main output of Sandia is information. Information is created, analyzed and distributed. It is the life blood of our design laboratory. The proper management of information will have a large, positive impact on staff productivity. In order to achieve the potential benefits of shared information a commonly understood approach is needed, and the approach must be implemented in a CASE (Computer-Aided Software Engineering) tool that spans the entire life cycle of information. The commonly understood approach used at Sandia is natural language. More specifically, it is a structured subset of English. Users and system developers communicate requirements and commitments that they both understand. The approach is based upon NIAM (Nijssen's Information Analysis Methodology). In the last three years four NIAM training classes have been given at Sandia. The classes were all at the introductory level, with the latest class last October having an additional seminar highlighting successful projects. The continued growth in applications using NIAM requires an advanced class. The class will develop an information model for the Ultimate CASE Tool.'' This paper presents the requirements that have been established for the Ultimate CASE Tool'' and presents initial models. 4 refs., 1 tab.

  16. The influence of change software of engine control unit on chosen parameters of its work

    Directory of Open Access Journals (Sweden)

    Piotr GUSTOF

    2007-01-01

    Full Text Available In this work was presented the influence of changes software of engine control unit Fiat Stilo 1,9 JTD on chosen parameters of its work: maximum power, engine torque, acceleration, maximum speed and average fuel consumption.

  17. Enhancing diterpenoid concentration in Salvia miltiorrhiza hairy roots through pathway engineering with maize C1 transcription factor.

    Science.gov (United States)

    Zhao, Shujuan; Zhang, Jinjia; Tan, Ronghui; Yang, Li; Zheng, Xiaoyu

    2015-12-01

    Tanshinones are valuable natural diterpenoids from danshen (Salvia miltiorrhiza Bunge). Here, it was demonstrated that maize transcription factor C1 improved the accumulation of tanshinones by comprehensively upregulating the pathway genes, especially SmMDC and SmPMK in danshen hairy roots, yielding total tanshinones up to 3.59mg g(-1) of dry weight in line C1-6, a 3.4-fold increase compared with the control. Investigation of 2024bp of the SmMDC promoter fragment revealed that C1-mediated upregulation of terpenoid genes was possibly due to the direct interaction of C1 with its recognition sequences. The increase of tanshinones was accompanied by a decrease of salvianolic acid production, the other bioactive ingredient in danshen, by up to 37% compared with the control. This was the result of the downregulation of SmTAT, the entry-point gene of the tyrosine pathway, which promoted metabolic flow to anthocyanins rather than to salvianolic acids. Based on the findings of the present study, it was concluded that cis-acting elements shared by terpenoid and phenylpropanoid biosynthetic genes are partially responsible for the C1-stimulated variation of tanshinone and salvianolic acid concentrations.

  18. Software engineering for the EBR-II data acquisition system conversion

    Energy Technology Data Exchange (ETDEWEB)

    Schorzman, W.

    1988-01-01

    The purpose of this paper is to outline how EBR-II engineering approached the data acquisition system (DAS) software conversion project with the restraints of operational transparency and six weeks for final implementation and testing. Software engineering is a relatively new discipline that provides a structured philosopy for software conversion. The software life cycle is structured into six basic steps: 1) initiation, 2) requirements definition, 3) design, 4) programming, 5) testing, and 6) operations. These steps are loosely defined and can be altered to fit specific software applications. DAS software is encompassed from three sources: 1) custom software, 2) system software, and 3) in-house application software. A data flow structure is used to describe the DAS software. The categories are: 1) software used to bring signals into the central processer, 2) software that transforms the analog data to engineering units and then logs the data in the data store, and 3) software used to transport and display the data. The focus of this paper is to describe how the conversion team used a structured engineering approach and utilized the resources available to produce a quality system on time. Although successful, the conversion process provided some pit falls and stumbling blocks. Working through these obstacles enhanced our understanding and surfaced in the form of LESSONS LEARNED, which are gracefully shared in this paper.

  19. Software Development Standard and Software Engineering Practice: A Case Study of Bangladesh

    CERN Document Server

    Begum, Zerina; Hafiz, Mohd Zulfiquar; Islam, Md Saiful; Shoyaib, Md; 10.3329/jbas.v32i2.2432

    2010-01-01

    Improving software process to achieve high quality in a software development organization is the key factor to success. Bangladeshi software firms have not experienced much in this particular area in comparison to other countries. The ISO 9001 and CMM standard has become a basic part of software development. The main objectives of our study are: 1) To understand the software development process uses by the software developer firms in Bangladesh 2) To identify the development practices based on established quality standard and 3) To establish a standardized and coherent process for the development of software for a specific project. It is revealed from this research that software industries of Bangladesh are lacking in target set for software process and improvement, involvement of quality control activities, and standardize business expertise practice. This paper investigates the Bangladeshi software industry in the light of the above challenges.

  20. Data Mining for Secure Software Engineering – Source Code Management Tool Case Study

    Directory of Open Access Journals (Sweden)

    A.V.Krishna Prasad,

    2010-07-01

    Full Text Available As Data Mining for Secure Software Engineering improves software productivity and quality, software engineers are increasingly applying data mining algorithms to various software engineering tasks. However mining software engineering data poses several challenges, requiring various algorithms to effectively mine sequences, graphs and text from such data. Software engineering data includes code bases, execution traces, historical code changes,mailing lists and bug data bases. They contains a wealth of information about a projects-status, progress and evolution. Using well established data mining techniques, practitioners and researchers can explore the potential of this valuable data in order to better manage their projects and do produce higher-quality software systems that are delivered on time and with in budget. Data mining can be used in gathering and extracting latent security requirements, extracting algorithms and business rules from code, mining legacy applications for requirements and business rules for new projects etc. Mining algorithms for software engineering falls into four main categories: Frequent pattern mining – finding commonly occurring patterns; Pattern matching – finding data instances for given patterns; Clustering – grouping data into clusters and Classification – predicting labels of data based on already labeled data. In this paper, we will discuss the overview of strategies for data mining for secure software engineering, with the implementation of a case study of text mining for source code management tool.