|
Showing 1 - 6 of
6 matches in All Departments
Software maintenance work is often considered a dauntingly rigid
activity - this book proves the opposite: it demands high levels of
creativity and thinking outside the box. Highlighting the creative
aspects of software maintenance and combining analytical and
systems thinking in a holistic manner, the book motivates readers
not to blithely follow the beaten tracks of "technical
rationality". It delivers the content in a pragmatic fashion using
case studies which are woven into long running story lines. The
book is organized in four parts, which can be read in any order,
except for the first chapter, which introduces software maintenance
and evolution and presents a number of case studies of software
failures. The "Introduction to Key Concepts" briefly introduces the
major elements of software maintenance by highlighting various core
concepts that are vital in order to see the forest for the trees.
Each such concept is illustrated with a worked example. Next, the
"Forward Engineering" part debunks the myth that being fast and
successful during initial development is all that matters. To this
end, two categories of forward engineering are considered: an inept
initial project with a multitude of hard evolutionary phases and an
effective initial project with multiple straightforward future
increments. "Reengineering and Reverse Engineering" shows the
difficulties of dealing with a typical legacy system, and tackles
tasks such as retrofitting tests, documenting a system,
restructuring a system to make it amenable for further
improvements, etc. Lastly, the "DevOps" section focuses on the
importance and benefits of crossing the development versus
operation chasm and demonstrates how the DevOps paradigm can turn a
loosely coupled design into a loosely deployable solution. The book
is a valuable resource for readers familiar with the Java
programming language, and with a basic understanding and/or
experience of software construction and testing. Packed with
examples for every elaborated concept, it offers complementary
material for existing courses and is useful for students and
professionals alike.
Software maintenance work is often considered a dauntingly rigid
activity - this book proves the opposite: it demands high levels of
creativity and thinking outside the box. Highlighting the creative
aspects of software maintenance and combining analytical and
systems thinking in a holistic manner, the book motivates readers
not to blithely follow the beaten tracks of "technical
rationality". It delivers the content in a pragmatic fashion using
case studies which are woven into long running story lines. The
book is organized in four parts, which can be read in any order,
except for the first chapter, which introduces software maintenance
and evolution and presents a number of case studies of software
failures. The "Introduction to Key Concepts" briefly introduces the
major elements of software maintenance by highlighting various core
concepts that are vital in order to see the forest for the trees.
Each such concept is illustrated with a worked example. Next, the
"Forward Engineering" part debunks the myth that being fast and
successful during initial development is all that matters. To this
end, two categories of forward engineering are considered: an inept
initial project with a multitude of hard evolutionary phases and an
effective initial project with multiple straightforward future
increments. "Reengineering and Reverse Engineering" shows the
difficulties of dealing with a typical legacy system, and tackles
tasks such as retrofitting tests, documenting a system,
restructuring a system to make it amenable for further
improvements, etc. Lastly, the "DevOps" section focuses on the
importance and benefits of crossing the development versus
operation chasm and demonstrates how the DevOps paradigm can turn a
loosely coupled design into a loosely deployable solution. The book
is a valuable resource for readers familiar with the Java
programming language, and with a basic understanding and/or
experience of software construction and testing. Packed with
examples for every elaborated concept, it offers complementary
material for existing courses and is useful for students and
professionals alike.
Build straightforward and maintainable APIs to create services that
are usable and maintainable. Although this book focuses on
distributed services, it also emphasizes how the core principles
apply even to pure OOD and OOP constructs. The overall context of
Creating Maintainable APIs is to classify the topics into four main
areas: classes and interfaces, HTTP REST APIs, messaging APIs, and
message payloads (XML, JSON and JSON API as well as Apache Avro).
What You Will Learn Use object-oriented design constructs and their
APIs Create and manage HTTP REST APIs Build and manage maintainable
messaging APIs, including the use of Apache Kafka as a principal
messaging hub Handle message payloads via JSON Who This Book Is For
Any level software engineers and very experienced programmers.
Gain insight into essential data science skills in a holistic
manner using data engineering and associated scalable computational
methods. This book covers the most popular Python 3 frameworks for
both local and distributed (in premise and cloud based) processing.
Along the way, you will be introduced to many popular open-source
frameworks, like, SciPy, scikitlearn, Numba, Apache Spark, etc. The
book is structured around examples, so you will grasp core concepts
via case studies and Python 3 code. As data science projects gets
continuously larger and more complex, software engineering
knowledge and experience is crucial to produce evolvable solutions.
You'll see how to create maintainable software for data science and
how to document data engineering practices. This book is a good
starting point for people who want to gain practical skills to
perform data science. All the code will be available in the form of
IPython notebooks and Python 3 programs, which allow you to
reproduce all analyses from the book and customize them for your
own purpose. You'll also benefit from advanced topics like Machine
Learning, Recommender Systems, and Security in Data Science.
Practical Data Science with Python will empower you analyze data,
formulate proper questions, and produce actionable insights, three
core stages in most data science endeavors. What You'll Learn Play
the role of a data scientist when completing increasingly
challenging exercises using Python 3 Work work with proven data
science techniques/technologies Review scalable software
engineering practices to ramp up data analysis abilities in the
realm of Big Data Apply theory of probability, statistical
inference, and algebra to understand the data science practices Who
This Book Is For Anyone who would like to embark into the realm of
data science using Python 3.
|
You may like...
Atmosfire
Jan Braai
Hardcover
R590
R425
Discovery Miles 4 250
Loot
Nadine Gordimer
Paperback
(2)
R383
R310
Discovery Miles 3 100
Loot
Nadine Gordimer
Paperback
(2)
R383
R310
Discovery Miles 3 100
The Black Phone
Ethan Hawke, Jeremy Davies, …
DVD
R176
Discovery Miles 1 760
|