Introduction
Page: 3-32 (30)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010005
PDF Price: $15
Abstract
Sets the scope of the eBook. Explains what is meant by a durable tool in my software toolbox. Defines the meaning of Software Engineering. Introduces the first tools in the tool box including the Scientific Method, problem solving, abstraction, process, planning, programming, and more. Provides an overview of the eBook and lays out the topics to be covered.
Methods, Process & Metrics
Page: 33-73 (41)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010006
PDF Price: $15
Abstract
Introduction of software lifecycles, development of process models, review of existing development approaches. Introduction of software metrics and their uses. Comparison of several models of development from waterfall to spiral to incremental to rapid application development to Agile. Establishment of metrics explained as the basis for managing development lifecycles and projects.
Project Planning, Risk and Management
Page: 74-103 (30)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010007
PDF Price: $15
Abstract
Discussion of project management, risk management, and planning of projects. Additional focus on management topics including organizing, staffing, leading, and controlling IT teams. A conceptual model for project management is presented and discussed. Details of project planning, project planning templates, and tracking methods are presented. A focus on scheduling and estimating is also included.
Requirements Analysis: Getting it Right Eventually
Page: 104-128 (25)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010008
PDF Price: $15
Abstract
Understanding problem exploration, analysis, and description. Use of standard analysis and design techniques including structured analysis and design, information engineering, Object Oriented Analysis and Design, and more. Examples of analysis problems are discussed. Use cases and scenarios are introduced. Essential systems requirements and analysis methods explored.
Architecture & Design
Page: 129-166 (38)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010009
PDF Price: $15
Abstract
Defining architecture and its relationship to requirements implementation and the design process. Introduction of architecture styles, architecture patterns, design patterns and discussion of their relationship to the development process. Review of tiered architectures, Client/Server principles, distributed architectures, and related topics. Introduction and discussion of many Internet implementation architectures including Web based static architectures, CGI, SAPI, .Net, and mobile architectures like iPad environments.
Implementation
Page: 167-194 (28)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010010
PDF Price: $15
Abstract
Exploration of multiple types of implementation work in the software industry including writing, programming, process development, and management. Description of useful technical document templates and approaches, programming methods and considerations, programming environments, languages, and related topics. Discussion of process engineering methods, challenges, models, and techniques. Reflections on proven management experience in staffing, organizing, recruiting, and staff development.
Testing & Reliability Engineering
Page: 195-232 (38)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010011
PDF Price: $15
Abstract
Full description of testing in the lifecycle of software development. Discussion of test phases, test planning, test design, and test types. Focus on test environments, conceptual model for test environments, and a generic test process. Test planning approaches are presents with a test plan example. Detailed discussion of test case development including test factor analysis, glass box testing, black box testing, and scenario based testing. Discussion of software reliability testing methods and test methods including test tracking, reporting, and metrics.
Support
Page: 233-254 (22)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010012
PDF Price: $15
Abstract
Discussion of a topic not often covered in software engineering books. Based on real world experience running a large enterprise support organization responsible for a portfolio of web applications managing hundreds of millions of dollars of revenue. The scope, methods, and techniques of organizing and managing support engineering organization are presented and explained. This includes software delivery, software maintenance, software evolution, and more. Discussion of concepts of system drift introduced for the first time.
Abstract
Review of industry tool framework models including Software Engineering Environments, CASE tools, IDEs, and more. Special focus on tool evaluation processes, tool research, environment configuration, and tool assessment practices.
The Profession and the Future
Page: 279-291 (13)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010014
PDF Price: $15
Abstract
A look at the history and potential of the software engineering field. Starting from the days of Babbage a model for software work is presented and an argument is made around the impact of software developers in the world at large now and in the future.
Appendix 1: List of Tools, Concepts and Methods
Page: 292-299 (8)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010015
PDF Price: $15
Appendix 2: List of Acronyms
Page: 300-304 (5)
Author: James J. Cusick
DOI: 10.2174/9781608054763113010016
PDF Price: $15
Introduction
"Software Engineering now occupies a central place in the development of technology and in the advancement of the economy. From telecommunications to aerospace and from cash registers to medical imaging, software plays a vital and often decisive role in the successful accomplishment of a variety of projects. The creation of software requires a variety of techniques, tools, and especially, properly skilled engineers. This e-book focuses on core concepts and approaches that have proven useful to the author time and time again on many industry projects over a quarter century of research, development, and teaching. Enduring, lasting, and meaningful concepts, ideas, and methods in software engineering are presented and explained. The book covers essential topics of the field of software engineering with a focus on practical and commonly used techniques along with advanced topics useful for extending the reader’s knowledge regarding leading edge approaches. Building on the industrial, research, and teaching experiences of the author, a dynamic treatment of the subject is presented incorporating a wide body of published findings and techniques, novel organization of material, original concepts, contributions from specialists, and the clear, concise writing required to keep the attention of readers. Using over 20 years of lecture notes, transcripts, course notes, view graphs, published articles, and other materials, as well as industry experience on commercial software product development a “virtual toolbox” of software techniques are shared in this volume."