scispace - formally typeset
Search or ask a question
Author

Norman E. Gibbs

Bio: Norman E. Gibbs is an academic researcher from Carnegie Mellon University. The author has contributed to research in topics: Social software engineering & Personal software process. The author has an hindex of 14, co-authored 32 publications receiving 1383 citations. Previous affiliations of Norman E. Gibbs include Software Engineering Institute & College of William & Mary.

Papers
More filters
Journal ArticleDOI
TL;DR: Extensive testing on finite element matrices indicates that the algorithm typically produces bandwidth and profile which are comparable to those of the commonly-used reverse Cuthill–McKee algorithm, yet requires significantly less computation time.
Abstract: A new algorithm for reducing the bandwidth and profile of a sparse matrix is described. Extensive testing on finite element matrices indicates that the algorithm typically produces bandwidth and profile which are comparable to those of the commonly-used reverse Cuthill–McKee algorithm, yet requires significantly less computation time.

569 citations

Journal ArticleDOI
TL;DR: This report proposes developing a rigorous undergraduate curriculum for a B.A.-degree program in computer science intended as a model not only for high-quality undergraduate colleges and universities, but also for larger universities with strong computer science programs in a liberal arts setting.
Abstract: This report proposes developing a rigorous undergraduate curriculum for a B.A.-degree program in computer science. The curriculum is intended as a model not only for high-quality undergraduate colleges and universities, but also for larger universities with strong computer science programs in a liberal arts setting.

144 citations

ReportDOI
01 Jan 1996
TL;DR: A model is presented that allows the characterization of the maturity of a profession in terms of eight infrastructure components: initial professional education, accreditation, skills development, certification, licensing, professional development, a code of ethics, and a professional society.
Abstract: : A model is presented that allows the characterization of the maturity of a profession in terms of eight infrastructure components: initial professional education, accreditation, skills development, certification, licensing, professional development, a code of ethics, and a professional society. Several mature professions are examined to provide examples of the nature of these components. The current states of the components of software engineering are described, and predictions are made for the evolution of those components as the profession matures.

110 citations

Journal ArticleDOI
TL;DR: This paper compares and analyzes six algorithms which have been suggested recently for use in reducing, by permutations, the bandwidth and profile of sparse matrices.
Abstract: : This paper compares and analyzes six algorithms which have been suggested recently for use in reducing, by permutations, the bandwidth and profile of sparse matrices. This problem arises in many different areas of scientific computation such as in the finite element method for approximating solutions of partial differential equations and in analyzing large-scale power transmission systems.

105 citations

Journal ArticleDOI
TL;DR: A new "hybrid" algorithm for reducing profile is presented which combines the better features of [3] and [5] by first finding a pseudodiameter to produce a leveling and then numbering the leveling level by level according to King's criteria.
Abstract: Large sparse matrix problems arise in many applications areas, such as structural engineering, fluid dynamics, and network analysis. Many algorithms for automatically reordering the rows and columns of the matrix in order to reduce bandwidth and/or profile have been published. Recently, Gibbs et al. [4] concluded that of the many reduction algorithms available, theirs (as described in [3] and implemented as a Fortran program in [1]) and King's (as described in [5] and implemented as a Fortran program as described in [4]) were superior for profile reduction. Although the King algorithm produced the best profile in many cases, it sometimes exhibited erratic behavior due to the strategy of reducing the profile globally by reducing the profile well locally. Furthermore, they found a large class of problems (wide cylinders--Type E3 in [4]) for which there is no good single starting point for the King algorithm. In this paper a new "hybrid" algorithm for reducing profile is presented. This algorithm combines the better features of [3] and [5] by first finding a pseudodiameter to produce a leveling and then numbering the leveling level by level according to King's criteria. Section 2 describes the new profile reduction algorithm. In Section 3 it is compared in production mode with the better algorithms reported on in [4]. A listing of the Fortran subprogram used to implement the new algorithm is given in Appendix A. The changes which must be made to the Fortran subroutine REDUCE [1] to implement the algorithm are given in Appendix B.

64 citations


Cited by
More filters
Journal ArticleDOI
01 Oct 1990
TL;DR: It is suggested that systems development and empirical research methodologies are complementary to each other and an integrated multidimensional and multimethodological approach will generate fruitful research results in IS research.
Abstract: The authors critically review systems development in information systems (IS) research. Several classification schemes of research are described and systems development is identified as a developmental, engineering, and formulative type of research. A framework of research is proposed to explain the dual nature of systems development as a research methodology and a research domain in IS research. Progress in several disciplinary areas is reviewed to provide a basis to argue that systems development is a valid research methodology. A systems development research process is presented from a methodological perspective. Software engineering, the basic method is applying the systems development research methodology, is then discussed. A framework to classify IS research domain and various research methodologies in studying systems development is presented. It is suggested that systems development and empirical research methodologies are complementary to each other. It is further proposed that an integrated multidimensional and multimethodological approach will generate fruitful research results in IS research. >

1,387 citations

Book
01 Jan 1980
TL;DR: This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency.
Abstract: ....The most comprehensive guide to designing practical and efficient algorithms!.... The Algorithm Design Manual, Second Edition "...the book is an algorithm-implementation treasure trove, and putting all of these implementations in one place was no small feat. The list of implementations [and] extensive bibliography make the book an invaluable resource for everyone interested in the subject." --ACM Computing Reviews "It has all the right ingredients: rich contents, friendly, personal language, subtle humor, the right references, and a plethora of pointers to resources."-- P. Takis Metaxas, Wellesley College "This is the most approachable book on algorithms I have." -- Megan Squire, Elon University, USA This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding onthe first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students. The reader-friendly Algorithm Design Manual provides straightforward access to combinatorial algorithms technology, stressing design over analysis. The first part, Techniques, provides accessible instructionon methods for designing and analyzing computer algorithms. The second part, Resources, is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations and an extensive bibliography. NEW to the second edition: Doubles the tutorial material and exercises over the first edition Provides full online support for lecturers, and a completely updated and improved website component with lecture slides, audio and video Contains a unique catalog identifying the 75 algorithmic problems that arise most often in practice, leading the reader down the right path to solve them Includes several NEW "war stories" relating experiences from real-world applications Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java ADDITIONAL Learning Tools: Exercises include "job interview problems" from major software companies Highlighted take-home lesson boxes emphasize essential concepts Provides comprehensive references to both survey articles and the primary literature Exercises points to relevant programming contest challenge problems Many algorithms presented with actual code (written in C) as well as pseudo-code A full set of lecture slides and additional material available at www.algorist.com Written by a well-known algorithms researcher who received the IEEE Computer Science and Engineering Teaching Award, this new edition of The Algorithm Design Manual is an essential learning tool for students needing a solid grounding in algorithms, as well as a special text/reference for professionals who need an authoritative and insightful guide. Professor Skiena is also author of the popular Springer text, Programming Challenges: The Programming Contest Training Manual.

1,272 citations

Book
01 Jan 2015
TL;DR: This updated edition includes new worked programming examples, expanded coverage and recent literature regarding incompressible flows, the Discontinuous Galerkin Method, the Lattice Boltzmann Method, higher-order spatial schemes, implicit Runge-Kutta methods and code parallelization.
Abstract: Computational Fluid Dynamics: Principles and Applications, Third Edition presents students, engineers, and scientists with all they need to gain a solid understanding of the numerical methods and principles underlying modern computation techniques in fluid dynamics By providing complete coverage of the essential knowledge required in order to write codes or understand commercial codes, the book gives the reader an overview of fundamentals and solution strategies in the early chapters before moving on to cover the details of different solution techniques This updated edition includes new worked programming examples, expanded coverage and recent literature regarding incompressible flows, the Discontinuous Galerkin Method, the Lattice Boltzmann Method, higher-order spatial schemes, implicit Runge-Kutta methods and parallelization An accompanying companion website contains the sources of 1-D and 2-D Euler and Navier-Stokes flow solvers (structured and unstructured) and grid generators, along with tools for Von Neumann stability analysis of 1-D model equations and examples of various parallelization techniques Will provide you with the knowledge required to develop and understand modern flow simulation codes Features new worked programming examples and expanded coverage of incompressible flows, implicit Runge-Kutta methods and code parallelization, among other topics Includes accompanying companion website that contains the sources of 1-D and 2-D flow solvers as well as grid generators and examples of parallelization techniques

1,228 citations

Journal ArticleDOI
Michele Benzi1
TL;DR: This article surveys preconditioning techniques for the iterative solution of large linear systems, with a focus on algebraic methods suitable for general sparse matrices, including progress in incomplete factorization methods, sparse approximate inverses, reorderings, parallelization issues, and block and multilevel extensions.

1,219 citations

Journal ArticleDOI
TL;DR: An efficient algorithm to determine whether an arbitrary graph G can be embedded in the plane is described, which used depth-first search and has time and space bounds.
Abstract: This paper describes an efficient algorithm to determine whether an arbitrary graph G can be embedded in the plane. The algorithm may be viewed as an iterative version of a method originally proposed by Auslander and Parter and correctly formulated by Goldstein. The algorithm used depth-first search and has O(V) time and space bounds, where V is the number of vertices in G. An ALGOL implementation of the algorithm succesfully tested graphs with as many as 900 vertices in less than 12 seconds.

1,183 citations