Today's software engineer must be able to employ more than one kind of software process, ranging from agile methodologies to the waterfall process, from highly integrated tool suites to refactoring and loosely coupled tool sets. Braude and Bernstein's thorough coverage of software engineering perfect the reader's ability to efficiently create reliable software systems, designed to meet the needs of a variety of customers.
Topical highlights
• Process: concentrates on how applications are planned and developed
• Design: teaches software engineering primarily as a requirements-to-design activity
• Programming and agile methods: encourages software engineering as a code-oriented activity
• Theory and principles: focuses on foundations
• Hands-on projects and case studies: utilizes active team or individual project examples to facilitate understanding theory, principles, and practice
In addition to knowledge of the tools and techniques available to software engineers, readers will grasp the ability to interact with customers, participate in multiple software processes, and express requirements clearly in a variety of ways. They will have the ability to create designs flexible enough for complex, changing environments, and deliver the proper products.