Spyware - Computer Security - Computer Protection - Software
Phishing - Spam - Email Virus - Antivirus
Python for Software Design is a concise introduction to software design using the Python programming language.
Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging.
The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practice each new concept.
About the Author
Allen B. Downey, Ph.D., is an Associate Professor of Computer Science at the Olin College of Engineering in Needham, Massachusetts. He has taught at Wellesley College, Colby College, and UC Berkeley. He has a doctorate in computer science from UC Berkeley and a Master's degree from MIT. Dr Downey is the author of a previous version of this book, titled How to Think Like a Computer Scientist : Learning with Python , which he self-published in 2001.
Modeling Software with Finite State Machines: A Practical Approach explains how to apply finite state machines to software development. It provides a critical analysis of using finite state machines as a foundation for executable specifications to reduce software development effort and improve quality. This book discusses the design of a state machine and of a system of state machines. It also presents a detailed analysis of development issues relating to behavior modeling with design examples and design rules for using finite state machines. This volume describes a coherent and well-tested framework for generating reliable software for even the most complex tasks. The authors demonstrate that the established practice of using a specification as a basis for coding is wrong. Divided into three parts, this book opens by delivering the authors' expert opinions on software, covering the evolution of development as well as costs, methods, programmers, and the development cycle. The remaining two parts encourage the use of state machines: promoting the virtual finite state machine (Vfsm) method and the StateWORKS development tools.
The management and control of software projects is now seen as a critical factor in the successful development of efficient and cost-effective software products. The unprecedented demand for software has been met with a dramatically increasing number of products of varying size and complexity being made available. Thus the ability to effectively manage and control the software engineering lifecycle will ensure a competitve advantage in a highly competitive industry.
This book offers a systematic analysis of the critical factors involved in software engineering control and the means to achieve greater control of software projects. The central argument advocates an expansion of the current practice to include the control of development, maintenance, and re-use of software. The book not only describes what factors should be changed in the control of software engineering, it also provides guidelines for the enhancement of control factors.
A number of detailed `real-life' case studies of software engineering departments are included to illustrate the processes and principles involved.
This book will be of interest to managers, project leaders, analysts, and programmers involved with medium to large scale software engineering projects. Additionally, higher management and consultant-level software engineers will be able to keep up-to-date on the latest research on controlling software projects.
Zone Labs Articles
Zone Labs Books