Estimating Software-Intensive Systems


Book Description

Many software projects fail because their leaders don't know how to estimate, schedule, or measure them accurately. Fortunately, proven tools and techniques exist for every facet of software estimation. Estimating Software-Intensive Systems brings them together in a real-world guidebook that will help software managers, engineers, and customers immediately improve their estimates–and drive continuing improvements over time. Dick Stutzke presents here a disciplined and repeatable process that can produce accurate and complete estimates for any project, product, or process, no matter how new or unusual. Stutzke doesn't just describe formal techniques: He offers simple, easy-to-use templates, spreadsheets, and tools you can start using today to identify and estimate product size, performance, and quality–as well as project cost, schedule, and risk reserves. Stutzke shows how to quickly "get your arms around" users' problems and requirements, the structure of a solution, and the process needed to deliver it. You'll learn how to choose the most appropriate estimating techniques and tools; collect accurate data, track progress, and update estimates; and recalibrate estimating models to improve estimation accuracy. Stutzke's techniques apply whether you're creating custom in-house business software, purchasing or customizing "off-the-shelf" technology, or constructing complex, one-of-a-kind military, industrial, or commercial systems. These techniques apply to small and large projects, and to all project life cycles–from agile to plan-driven. This book will help you plan, estimate, budget, schedule, purchase, design, build, test, deploy, operate, and maintain software-intensive systems. It explains how to size software, identify all cost components, calculate the associated costs, and set a competitive price. A separate section covers topics of interest for large projects: designing an appropriate work breakdown structure, collecting data from cost accounting systems, and using earned value measurement. You'll find updates and even more information on this book's companion web site, http://www.sw-estimation.com.




Project Management of Large Software-Intensive Systems


Book Description

The book describes how to manage and successfully deliver large, complex, and expensive systems that can be composed of millions of line of software code, being developed by numerous groups throughout the globe, that interface with many hardware items being developed by geographically dispersed companies, where the system also includes people, policies, constraints, regulations, and a myriad of other factors. It focuses on how to seamlessly integrate systems, satisfy the customer’s requirements, and deliver within the budget and on time. The guide is essentially a “shopping list” of all the activities that could be conducted with tailoring guidelines to meet the needs of each project.




Managing the Development of Software-Intensive Systems


Book Description

Managing the Development of Software-Intensive Systems provides both an introduction to project management for beginner software and hardware developers as well as unique advanced materials for experienced users. This beneficial resource presents realistic case studies for planning and managing verification and validation for large software projects, complex software, and hardware systems, as well as inspection results and testing metrics to monitor project status. Industrial practitioners and students will learn ways to improve how they manage and develop their project management applications and techniques to establish large software applications and systems.




Reliability of Software Intensive Systems


Book Description

Reliability of Software Intensive Systems




Architecting Software Intensive Systems


Book Description

Architectural design is a crucial first step in developing complex software intensive systems. Early design decisions establish the structures necessary for achieving broad systemic properties. However, today's organizations lack synergy between software their development processes and technological methodologies. Providing a thorough treatment of




Software Estimation


Book Description

Often referred to as the “black art” because of its complexity and uncertainty, software estimation is not as difficult or puzzling as people think. In fact, generating accurate estimates is straightforward—once you understand the art of creating them. In his highly anticipated book, acclaimed author Steve McConnell unravels the mystery to successful software estimation—distilling academic information and real-world experience into a practical guide for working software professionals. Instead of arcane treatises and rigid modeling techniques, this guide highlights a proven set of procedures, understandable formulas, and heuristics that individuals and development teams can apply to their projects to help achieve estimation proficiency. Discover how to: Estimate schedule and cost—or estimate the functionality that can be delivered within a given time frame Avoid common software estimation mistakes Learn estimation techniques for you, your team, and your organization * Estimate specific project activities—including development, management, and defect correction Apply estimation approaches to any type of project—small or large, agile or traditional Navigate the shark-infested political waters that surround project estimates When many corporate software projects are failing, McConnell shows you what works for successful software estimation.




Statistics, Testing, and Defense Acquisition


Book Description

For every weapons system being developed, the U.S. Department of Defense (DOD) must make a critical decision: Should the system go forward to full-scale production? The answer to that question may involve not only tens of billions of dollars but also the nation's security and military capabilities. In the milestone process used by DOD to answer the basic acquisition question, one component near the end of the process is operational testing, to determine if a system meets the requirements for effectiveness and suitability in realistic battlefield settings. Problems discovered at this stage can cause significant production delays and can necessitate costly system redesign. This book examines the milestone process, as well as the DOD's entire approach to testing and evaluating defense systems. It brings to the topic of defense acquisition the application of scientific statistical principles and practices.




Reliability, Quality and Safety of Software-Intensive Systems


Book Description

It is, indeed, widely acceptable today that nowhere is it more important to focus on the improvement of software quality than in the case of systems with requirements in the areas of safety and reliability - especially for distributed, real-time and embedded systems. Thus, much research work is under progress in these fields, since software process improvement impinges directly on achieved levels of quality, and many application experiments aim to show quantitative results demonstrating the efficacy of particular approaches. Requirements for safety and reliability - like other so-called non-functional requirements for computer-based systems - are often stated in imprecise and ambiguous terms, or not at all. Specifications focus on functional and technical aspects, with issues like safety covered only implicitly, or not addressed directly because they are felt to be obvious; unfortunately what is obvious to an end user or system user is progressively less so to others, to the extend that a software developer may not even be aware that safety is an issue. Therefore, there is a growing evidence for encouraging greater understanding of safety and reliability requirements issues, right across the spectrum from end user to software developer; not just in traditional safety-critical areas (e.g. nuclear, aerospace) but also acknowledging the need for such things as heart pacemakers and other medical and robotic systems to be highly dependable.




Complex, Intelligent and Software Intensive Systems


Book Description

Software intensive systems are systems, which heavily interact with other systems, sensors, actuators, devices, other software systems, and users. More and more domains are involved with software intensive systems, e.g., automotive, telecommunication systems, embedded systems in general, industrial automation systems, and business applications. Moreover, the outcome of web services delivers a new platform for enabling software intensive systems. Complex systems research is focused on the overall understanding of systems rather than its components. Complex systems are very much characterized by the changing environments in which they act by their multiple internal and external interactions. They evolve and adapt through internal and external dynamic interactions. The development of intelligent systems and agents, which is each time more characterized by the use of ontologies and their logical foundations, builds a fruitful impulse for both software intensive systems and complex systems. Recent research in the field of intelligent systems, robotics, neuroscience, artificial intelligence, and cognitive sciences is a very important factor for the future development and innovation of software intensive and complex systems. The aim of the book “Complex, Intelligent and Software Intensive Systems” is to deliver a platform of scientific interaction between the three interwoven challenging areas of research and development of future ICT-enabled applications: software intensive systems, complex systems, and intelligent systems.