David C. Kung
Software_Engineering#
TDD#
Security#
Security#
Patterns#
The new edition of Software Engineering presents a step-by-step methodology that integrates Modeling and Design, UML, Patterns, Test-Driven Development, Quality Assurance, Configuration Management, and Agile Principles throughout the life cycle. The overall approach is casual and easy to follow, with many practical examples that show the theory at work. The author uses his experiences as well as real-world stories to help the reader understand software design principles, patterns, and other software engineering concepts. The book also provides stimulating exercises that go far beyond the type of question that can be answered by simply copying portions of the text.
The new edition of Software Engineering is now available for the first time in McGraw Hill Connect! Connect for this course features the MHeBook, Writing Tool, Proctorio, and the Connect authoring tool that offers the ability to create your own questions.
Table of Contents
Part I: Introduction and System Engineering
Chapter 1 Introduction
Chapter 2 Software Process and Methodology
Chapter 3 System Engineering
Part II: Analysis and Architectural Design
Chapter 4 Software Requirements Elicitation
Chapter 5 Domain Modeling
Chapter 6 Architectural Design
Part III: Modeling and Design of Interactive Systems
Chapter 7 Deriving Use Cases from Requirements
Chapter 8 Actor-System Interaction Modeling
Chapter 9 Object Interaction Modeling
Chapter 10 Applying Responsibility-Assignment Patterns
Chapter 11 Deriving a Design Class Diagram
Chapter 12 User Interface Design
Part IV: Modeling and Design of Other Types of Systems
Chapter 13 Modeling and Design of Event-Driven Systems
Chapter 14 Activity Modeling for Transformational Systems
Chapter 15 Modeling and Design of Rule-Based Systems
Part V: Applying Situation-Specific Patterns
Chapter 16 Applying Patterns to Design a State Diagram Editor
Chapter 17 Applying Patterns to Design a Persistence Framework
Part VI: Implementation and Quality Assurance
Chapter 18 Implementation Considerations
Chapter 19 Software Quality Assurance
Chapter 20 Software Testing
Part VII: Maintenance and Configuration Management
Chapter 21 Software Maintenance
Chapter 22 Software Configuration Management
Part VIII: Project Management and Software Security
Chapter 23 Software Project Management
Chapter 24 Software Security
David Kung is a full professor of the Department of Computer Science and Engineering at The University of Texas at Arlington. He is also the director of the Software Engineering Research Center, and director of the Software Engineering programs. He has more than 30 years software engineering experience working in academia and industry. He works with numerous companies in terms of training, consulting, and research collaboration. His research and teaching include agile methods, software design patterns, and testing OO software and Web applications. He has written/edited four books and published more than 100 technical articles. He and his students have designed and prototyped an agile development environment (IDE), and the OO software testing and maintenance environment, called OOTWorks, which was licensed to several leading IT, and telecommunications companies. The material presented in the book has been developed and taught during the last ten years. It is also used by the author to teach on-site training courses for several leading IT companies. Some companies adopt the methodology after the training courses.