Skip to main content
  • Textbook
  • © 2020

Guide to Efficient Software Design

An MVC Approach to Concepts, Structures, and Models

Authors:

  • Presents software design as an important step in developing software, regardless of the software development process used
  • Emphasizes model-view-controller (MVC) as an underlying architectural principle
  • Provides numerous classroom-tested discussion questions, hands-on exercises, and illuminating case studies to help students to improve their practical programming skills

Part of the book series: Texts in Computer Science (TCS)

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (35 chapters)

  1. Front Matter

    Pages i-xxiii
  2. Introduction to Software Design

    • David P. Voorhees
    Pages 1-15
  3. Program Design Fundamentals

    1. Front Matter

      Pages 17-17
    2. Program Design Criteria and Simple Design Models

      • David P. Voorhees
      Pages 19-25
    3. Program Design and Performance

      • David P. Voorhees
      Pages 55-60
    4. OOP Case Study: Considering Performance

      • David P. Voorhees
      Pages 61-75
    5. SP Case Study: Considering Performance

      • David P. Voorhees
      Pages 77-90
    6. Program Design and Security

      • David P. Voorhees
      Pages 91-101
    7. OOP Case Study: Considering Security

      • David P. Voorhees
      Pages 103-114
    8. SP Case Study: Considering Security

      • David P. Voorhees
      Pages 115-123
  4. Introduction to Software Design

    1. Front Matter

      Pages 125-125
    2. Characteristics of Good Software Design

      • David P. Voorhees
      Pages 127-136
    3. OOD Case Study: Transition to Software Design

      • David P. Voorhees
      Pages 137-155
    4. SD Case Study: Transition to Software Design

      • David P. Voorhees
      Pages 157-174
    5. Introduction to Model-View-Controller

      • David P. Voorhees
      Pages 175-179
    6. OOD Case Study: Model–View–Controller

      • David P. Voorhees
      Pages 181-217
    7. SD Case Study: Model–View–Controller

      • David P. Voorhees
      Pages 219-247
  5. Software Design Perspectives

    1. Front Matter

      Pages 249-249

About this book

This classroom-tested textbook presents an active-learning approach to the foundational concepts of software design. These concepts are then applied to a case study, and reinforced through practice exercises, with the option to follow either a structured design or object-oriented design paradigm. The text applies an incremental and iterative software development approach, emphasizing the use of design characteristics and modeling techniques as a way to represent higher levels of design abstraction, and promoting the model-view-controller (MVC) architecture.

Topics and features: provides a case study to illustrate the various concepts discussed throughout the book, offering an in-depth look at the pros and cons of different software designs; includes discussion questions and hands-on exercises that extend the case study and apply the concepts to other problem domains; presents a review of program design fundamentals to reinforce understanding of the basic concepts; focuses on a bottom-up approach to describing software design concepts; introduces the characteristics of a good software design, emphasizing the model-view-controller as an underlying architectural principle; describes software design from both object-oriented and structured perspectives; examines additional topics on human-computer interaction design, quality assurance, secure design, design patterns, and persistent data storage design; discusses design concepts that may be applied to many types of software development projects; suggests a template for a software design document, and offers ideas for further learning.

Students of computer science and software engineering will find this textbook to be indispensable for advanced undergraduate courses on programming and software design. Prior background knowledge and experience of programming is required, but familiarity in software design is not assumed.

Authors and Affiliations

  • Le Moyne College, Syracuse, USA

    David P. Voorhees

About the author

Dr. David P. Voorhees is Director of Computer Science, Cybersecurity, and Software Applications & Systems Development, and McDevitt Associate Chair of Computer Science in the Department of Mathematics & Computer Science at Le Moyne College, Syracuse, NY, USA.

Bibliographic Information

  • Book Title: Guide to Efficient Software Design

  • Book Subtitle: An MVC Approach to Concepts, Structures, and Models

  • Authors: David P. Voorhees

  • Series Title: Texts in Computer Science

  • DOI: https://doi.org/10.1007/978-3-030-28501-2

  • Publisher: Springer Cham

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: Springer Nature Switzerland AG 2020

  • Hardcover ISBN: 978-3-030-28500-5Published: 02 January 2020

  • Softcover ISBN: 978-3-030-28503-6Published: 26 August 2021

  • eBook ISBN: 978-3-030-28501-2Published: 01 January 2020

  • Series ISSN: 1868-0941

  • Series E-ISSN: 1868-095X

  • Edition Number: 1

  • Number of Pages: XXIII, 519

  • Number of Illustrations: 194 b/w illustrations, 11 illustrations in colour

  • Topics: Software Engineering, Data Storage Representation

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access