Author: Frank Tsui
Publisher: Jones & Bartlett Learning
ISBN: 0763785342
Category : Computers
Languages : en
Pages : 410
Book Description
Computer Architecture/Software Engineering
Essentials of Software Engineering
Author: Frank Tsui
Publisher: Jones & Bartlett Learning
ISBN: 0763785342
Category : Computers
Languages : en
Pages : 410
Book Description
Computer Architecture/Software Engineering
Publisher: Jones & Bartlett Learning
ISBN: 0763785342
Category : Computers
Languages : en
Pages : 410
Book Description
Computer Architecture/Software Engineering
Software Engineering at Google
Author: Titus Winters
Publisher: O'Reilly Media
ISBN: 1492082767
Category : Computers
Languages : en
Pages : 602
Book Description
Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering. How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the worldâ??s leading practitioners construct and maintain software. This book covers Googleâ??s unique engineering culture, processes, and tools and how these aspects contribute to the effectiveness of an engineering organization. Youâ??ll explore three fundamental principles that software organizations should keep in mind when designing, architecting, writing, and maintaining code: How time affects the sustainability of software and how to make your code resilient over time How scale affects the viability of software practices within an engineering organization What trade-offs a typical engineer needs to make when evaluating design and development decisions
Publisher: O'Reilly Media
ISBN: 1492082767
Category : Computers
Languages : en
Pages : 602
Book Description
Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering. How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the worldâ??s leading practitioners construct and maintain software. This book covers Googleâ??s unique engineering culture, processes, and tools and how these aspects contribute to the effectiveness of an engineering organization. Youâ??ll explore three fundamental principles that software organizations should keep in mind when designing, architecting, writing, and maintaining code: How time affects the sustainability of software and how to make your code resilient over time How scale affects the viability of software practices within an engineering organization What trade-offs a typical engineer needs to make when evaluating design and development decisions
A Philosophy of Software Design
Author: John K. Ousterhout
Publisher:
ISBN: 9781732102217
Category : Computer programs
Languages : en
Pages : 0
Book Description
"This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply."--Amazon.
Publisher:
ISBN: 9781732102217
Category : Computer programs
Languages : en
Pages : 0
Book Description
"This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply."--Amazon.
Software Engineer's Reference Book
Author: John A McDermid
Publisher: Elsevier
ISBN: 1483105083
Category : Technology & Engineering
Languages : en
Pages : 1137
Book Description
Software Engineer's Reference Book provides the fundamental principles and general approaches, contemporary information, and applications for developing the software of computer systems. The book is comprised of three main parts, an epilogue, and a comprehensive index. The first part covers the theory of computer science and relevant mathematics. Topics under this section include logic, set theory, Turing machines, theory of computation, and computational complexity. Part II is a discussion of software development methods, techniques and technology primarily based around a conventional view of the software life cycle. Topics discussed include methods such as CORE, SSADM, and SREM, and formal methods including VDM and Z. Attention is also given to other technical activities in the life cycle including testing and prototyping. The final part describes the techniques and standards which are relevant in producing particular classes of application. The text will be of great use to software engineers, software project managers, and students of computer science.
Publisher: Elsevier
ISBN: 1483105083
Category : Technology & Engineering
Languages : en
Pages : 1137
Book Description
Software Engineer's Reference Book provides the fundamental principles and general approaches, contemporary information, and applications for developing the software of computer systems. The book is comprised of three main parts, an epilogue, and a comprehensive index. The first part covers the theory of computer science and relevant mathematics. Topics under this section include logic, set theory, Turing machines, theory of computation, and computational complexity. Part II is a discussion of software development methods, techniques and technology primarily based around a conventional view of the software life cycle. Topics discussed include methods such as CORE, SSADM, and SREM, and formal methods including VDM and Z. Attention is also given to other technical activities in the life cycle including testing and prototyping. The final part describes the techniques and standards which are relevant in producing particular classes of application. The text will be of great use to software engineers, software project managers, and students of computer science.
Software Engineering for Modern Web Applications: Methodologies and Technologies
Author: Brandon, Daniel M.
Publisher: IGI Global
ISBN: 1599044943
Category : Computers
Languages : en
Pages : 402
Book Description
"This book presents current, effective software engineering methods for the design and development of modern Web-based applications"--Provided by publisher.
Publisher: IGI Global
ISBN: 1599044943
Category : Computers
Languages : en
Pages : 402
Book Description
"This book presents current, effective software engineering methods for the design and development of modern Web-based applications"--Provided by publisher.
How to Engineer Software
Author: Steve Tockey
Publisher: John Wiley & Sons
ISBN: 1119546672
Category : Computers
Languages : en
Pages : 1188
Book Description
A guide to the application of the theory and practice of computing to develop and maintain software that economically solves real-world problem How to Engineer Software is a practical, how-to guide that explores the concepts and techniques of model-based software engineering using the Unified Modeling Language. The author—a noted expert on the topic—demonstrates how software can be developed and maintained under a true engineering discipline. He describes the relevant software engineering practices that are grounded in Computer Science and Discrete Mathematics. Model-based software engineering uses semantic modeling to reveal as many precise requirements as possible. This approach separates business complexities from technology complexities, and gives developers the most freedom in finding optimal designs and code. The book promotes development scalability through domain partitioning and subdomain partitioning. It also explores software documentation that specifically and intentionally adds value for development and maintenance. This important book: Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code Explains how to derive verification (acceptance) test cases from a semantic model Describes project estimation, along with alternative software development and maintenance processes Shows how to develop and maintain cost-effective software that solves real-world problems Written for graduate and undergraduate students in software engineering and professionals in the field, How to Engineer Software offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.
Publisher: John Wiley & Sons
ISBN: 1119546672
Category : Computers
Languages : en
Pages : 1188
Book Description
A guide to the application of the theory and practice of computing to develop and maintain software that economically solves real-world problem How to Engineer Software is a practical, how-to guide that explores the concepts and techniques of model-based software engineering using the Unified Modeling Language. The author—a noted expert on the topic—demonstrates how software can be developed and maintained under a true engineering discipline. He describes the relevant software engineering practices that are grounded in Computer Science and Discrete Mathematics. Model-based software engineering uses semantic modeling to reveal as many precise requirements as possible. This approach separates business complexities from technology complexities, and gives developers the most freedom in finding optimal designs and code. The book promotes development scalability through domain partitioning and subdomain partitioning. It also explores software documentation that specifically and intentionally adds value for development and maintenance. This important book: Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code Explains how to derive verification (acceptance) test cases from a semantic model Describes project estimation, along with alternative software development and maintenance processes Shows how to develop and maintain cost-effective software that solves real-world problems Written for graduate and undergraduate students in software engineering and professionals in the field, How to Engineer Software offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.
Just Enough Software Architecture
Author: George Fairbanks
Publisher: Marshall & Brainerd
ISBN: 0984618104
Category : Computers
Languages : en
Pages : 378
Book Description
This is a practical guide for software developers, and different than other software architecture books. Here's why: It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face. It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties. It cultivates declarative knowledge. There is a difference between being able to hit a ball and knowing why you are able to hit it, what psychologists refer to as procedural knowledge versus declarative knowledge. This book will make you more aware of what you have been doing and provide names for the concepts. It emphasizes the engineering. This book focuses on the technical parts of software development and what developers do to ensure the system works not job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail. It provides practical advice. Software design decisions influence the architecture and vice versa. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design.
Publisher: Marshall & Brainerd
ISBN: 0984618104
Category : Computers
Languages : en
Pages : 378
Book Description
This is a practical guide for software developers, and different than other software architecture books. Here's why: It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face. It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties. It cultivates declarative knowledge. There is a difference between being able to hit a ball and knowing why you are able to hit it, what psychologists refer to as procedural knowledge versus declarative knowledge. This book will make you more aware of what you have been doing and provide names for the concepts. It emphasizes the engineering. This book focuses on the technical parts of software development and what developers do to ensure the system works not job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail. It provides practical advice. Software design decisions influence the architecture and vice versa. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design.
The Essence of Software Engineering
Author: Ivar Jacobson
Publisher: Addison-Wesley
ISBN: 0133153134
Category : Computers
Languages : en
Pages : 360
Book Description
SEMAT (Software Engineering Methods and Theory) is an international initiative designed to identify a common ground, or universal standard, for software engineering. It is supported by some of the most distinguished contributors to the field. Creating a simple language to describe methods and practices, the SEMAT team expresses this common ground as a kernel–or framework–of elements essential to all software development. The Essence of Software Engineering introduces this kernel and shows how to apply it when developing software and improving a team’s way of working. It is a book for software professionals, not methodologists. Its usefulness to development team members, who need to evaluate and choose the best practices for their work, goes well beyond the description or application of any single method. “Software is both a craft and a science, both a work of passion and a work of principle. Writing good software requires both wild flights of imagination and creativity, as well as the hard reality of engineering tradeoffs. This book is an attempt at describing that balance.” —Robert Martin (unclebob) “The work of Ivar Jacobson and his colleagues, started as part of the SEMAT initiative, has taken a systematic approach to identifying a ‘kernel’ of software engineering principles and practices that have stood the test of time and recognition.” —Bertrand Meyer “The software development industry needs and demands a core kernel and language for defining software development practices—practices that can be mixed and matched, brought on board from other organizations; practices that can be measured; practices that can be integrated; and practices that can be compared and contrasted for speed, quality, and price. This thoughtful book gives a good grounding in ways to think about the problem, and a language to address the need, and every software engineer should read it.” —Richard Soley
Publisher: Addison-Wesley
ISBN: 0133153134
Category : Computers
Languages : en
Pages : 360
Book Description
SEMAT (Software Engineering Methods and Theory) is an international initiative designed to identify a common ground, or universal standard, for software engineering. It is supported by some of the most distinguished contributors to the field. Creating a simple language to describe methods and practices, the SEMAT team expresses this common ground as a kernel–or framework–of elements essential to all software development. The Essence of Software Engineering introduces this kernel and shows how to apply it when developing software and improving a team’s way of working. It is a book for software professionals, not methodologists. Its usefulness to development team members, who need to evaluate and choose the best practices for their work, goes well beyond the description or application of any single method. “Software is both a craft and a science, both a work of passion and a work of principle. Writing good software requires both wild flights of imagination and creativity, as well as the hard reality of engineering tradeoffs. This book is an attempt at describing that balance.” —Robert Martin (unclebob) “The work of Ivar Jacobson and his colleagues, started as part of the SEMAT initiative, has taken a systematic approach to identifying a ‘kernel’ of software engineering principles and practices that have stood the test of time and recognition.” —Bertrand Meyer “The software development industry needs and demands a core kernel and language for defining software development practices—practices that can be mixed and matched, brought on board from other organizations; practices that can be measured; practices that can be integrated; and practices that can be compared and contrasted for speed, quality, and price. This thoughtful book gives a good grounding in ways to think about the problem, and a language to address the need, and every software engineer should read it.” —Richard Soley
Advances in Computer Science for Engineering and Education IV
Author: Zhengbing Hu
Publisher: Springer Nature
ISBN: 3030804720
Category : Technology & Engineering
Languages : en
Pages : 468
Book Description
This book comprises high-quality refereed research papers presented at the Fourth International Conference on Computer Science, Engineering and Education Applications (ICCSEEA2021), held in Kyiv, Ukraine, on January 23–24, 2021, organized jointly by the National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”, National Aviation University, and the International Research Association of Modern Education and Computer Science. The topics discussed in the book include state-of-the-art papers in computer science, artificial intelligence, engineering techniques, genetic coding systems, deep learning with its medical applications, and knowledge representation with its applications in education. It is an excellent source of references for researchers, graduate students, engineers, management practitioners, and undergraduate students interested in computer science and their applications in engineering and education.
Publisher: Springer Nature
ISBN: 3030804720
Category : Technology & Engineering
Languages : en
Pages : 468
Book Description
This book comprises high-quality refereed research papers presented at the Fourth International Conference on Computer Science, Engineering and Education Applications (ICCSEEA2021), held in Kyiv, Ukraine, on January 23–24, 2021, organized jointly by the National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”, National Aviation University, and the International Research Association of Modern Education and Computer Science. The topics discussed in the book include state-of-the-art papers in computer science, artificial intelligence, engineering techniques, genetic coding systems, deep learning with its medical applications, and knowledge representation with its applications in education. It is an excellent source of references for researchers, graduate students, engineers, management practitioners, and undergraduate students interested in computer science and their applications in engineering and education.
Cleanroom Software Engineering
Author: Stacy J. Prowell
Publisher: Pearson Education
ISBN: 0768685117
Category : Computers
Languages : en
Pages : 412
Book Description
Cleanroom software engineering is a process for developing and certifying high-reliability software. Combining theory-based engineering technologies in project management, incremental development, software specification and design, correctness verification, and statistical quality certification, the Cleanroom process answers today's call for more reliable software and provides methods for more cost-effective software development. Cleanroom originated with Harlan D. Mills, an IBM Fellow and a visionary in software engineering. Written by colleagues of Mills and some of the most experienced developers and practitioners of Cleanroom, Cleanroom Software Engineering provides a roadmap for software management, development, and testing as disciplined engineering practices. This book serves both as an introduction for those new to Cleanroom and as a reference guide for the growing practitioner community. Readers will discover a proven way to raise both quality and productivity in their software-intensive products, while reducing costs. Highlights Explains basic Cleanroom theory Introduces the sequence-based specification method Elaborates the full management, development, and certification process in a Cleanroom Reference Model (CRM) Shows how the Cleanroom process dovetails with the SEI's Capability Maturity Model for Software (CMM) Includes a large case study to illustrate how Cleanroom methods scale up to large projects.
Publisher: Pearson Education
ISBN: 0768685117
Category : Computers
Languages : en
Pages : 412
Book Description
Cleanroom software engineering is a process for developing and certifying high-reliability software. Combining theory-based engineering technologies in project management, incremental development, software specification and design, correctness verification, and statistical quality certification, the Cleanroom process answers today's call for more reliable software and provides methods for more cost-effective software development. Cleanroom originated with Harlan D. Mills, an IBM Fellow and a visionary in software engineering. Written by colleagues of Mills and some of the most experienced developers and practitioners of Cleanroom, Cleanroom Software Engineering provides a roadmap for software management, development, and testing as disciplined engineering practices. This book serves both as an introduction for those new to Cleanroom and as a reference guide for the growing practitioner community. Readers will discover a proven way to raise both quality and productivity in their software-intensive products, while reducing costs. Highlights Explains basic Cleanroom theory Introduces the sequence-based specification method Elaborates the full management, development, and certification process in a Cleanroom Reference Model (CRM) Shows how the Cleanroom process dovetails with the SEI's Capability Maturity Model for Software (CMM) Includes a large case study to illustrate how Cleanroom methods scale up to large projects.