
Alain Abran and James W. Moore, Executive Editors
|
| The Software Engineering Body of Knowledge (SWEBOK®) outlines generally accepted knowledge about software engineering. Its 10 knowledge areas summarize basic concepts and list references for detailed information. In its 2004 review cycle, SWEBOK editors received and replied to almost 10,000 comments from 378 reviewers in 41 countries. This open and transparent consensus process makes SWEBOK stand out from other sources of software engineering knowledge. |
|
|
Michael Blaha
|
| Many applications are information systems that store and retrieve data from a database. These applications typically have a direct representation. Application concepts are represented as tables with their fields stored as columns in tables. This direct approach works well for applications with fixed structure. However, it fails for applications with structure that is not fully known as the application is being built. This ReadyNote presents softcoded values, a generic mechanism that you can use for defining and storing data at runtime. Various applications can incorporate the softcoding mechanism as needed. Softcoding is a technique used for database applications, for coping with the database’s rigidity. |
|
|
Robert J. Muller
|
| Data modeling and database design are slowly making the transition that programming made a decade ago to object-oriented (OO) techniques. Most software professionals know the basics of OO programming. This ReadyNote provides data modelers with some ideas about how to apply OO thinking to data modeling. |
|
|
Elisabeth A. Strunk and John C. Knight
|
| As airplanes have become increasingly dependent on capabilities provided by onboard computing systems, avionics—or aviation electronics—has assumed an increasingly significant role in aircraft development and production. Engineers from many specialties are involved in developing digital avionics systems, and it is helpful for them to know what the various avionics systems are for, how they work, and some of the issues that must be addressed in their construction. This ReadyNote provides that overview for students and practitioners alike. |
|
|
Norman R. Howes
|
| Norman Howes, who has more than 30 years of experience leading projects for organizations including E-Systems, Lockheed-Martin, and the Institute for Defense Analyses, begins his Series in Distributed Systems Software Engineering with this no-nonsense approach to common problems and solutions in distributed systems project management. Both new and experienced project managers can benefit from discussions of topics such as earned value theory, risk management, and budgeting. The ReadyNote comes with a free download of Howes's original Modern Project toolkit, supplementing various points in the text and adaptable to future projects. (Instructions for downloading the toolkit are on page 2 of the .pdf.) |
|
|
Lawrence Peters,
|
| Surprisingly, the most common means of reviewing software engineering professionals actually have the effect of demotivating them and reducing their performance level. This ReadyNote identifies what drives software engineers to higher performance levels and what does not. It advocates an alternative method for evaluating personnel based on the Balanced Scorecard. Although initially applied to corporate strategy development, the Balanced Scorecard has proven itself flexible enough for use in a broad range of applications, including personnel evaluation. |
|
|
Christof Ebert
|
| Success for globally dispersed software projects involves more than effective outsourcing strategies. It requires a commitment to communication, teamwork, and management across locations. Too often, organizations become overwhelmed by the challenges that accompany a globally dispersed project, realizing too late that minimizing risk and anticipating inevitable problems would have increased their chances for success. This ReadyNote summarizes experiences, guidance, processes, and approaches that deal with the dynamics of globally distributed teams. |
|
|
Per Bjorke and Richard Hall Thayer
|
| Building on established standards and adaptable to projects of any scale, this ReadyNote is a detailed guide to creating a ConOps document that will facilitate communication between software users and developers. The text also features two real-world examples of ConOps documents, one for air traffic management and the other for a public utility. |
|
|
Richard Hall Thayer and Merlin Dorfman
|
| In this tutorial, Richard Thayer, a consultant in software engineering/project management and a retired professor of software engineering, and Merlin Dorfman, of Cisco Systems, aim to further the use of IEEE software engineering standards by introducing these standards at the university undergraduate level and providing three detailed examples of specifications based on the standards. The ReadyNote contains many charts and diagrams, and concludes with a list of selected references on system and software requirements engineering. |
|
|
Susan K. Land and John W. Walz
|
| ISO 9001 does not tell you how to satisfy its criteria; it is a descriptive model providing users with a picture of what it means to conform to the standard. It does not describe how to accomplish set goals but describes the criteria that the end results should support. This ReadyNote is a best-practices supplement to ISO 9001 and the IEEE Software Engineering Standards set, providing the link between the “what” and the “how to” of the software process improvement leading to certification. |
|
|
Susan K. Land
|
| Software process definition, documentation, and improvement are integral parts of a software engineering organization. This ReadyNote gives engineers practical support for such work by analyzing the specific documentation requirements that support the CMMI Project Planning process area. It also shows how the application of IEEE standards, and their use as reference material, can facilitate the development of sound software engineering practices. |
|
|
Steven L. Tanimoto
|
| Python, an increasingly popular general-purpose programming language, offers a variety of features that make it especially well-suited for artificial intelligence applications. These include support for rapid prototyping, automatic memory management, object-oriented programming, and functional programming. This ReadyNote will help professional programmers pick up new skills in AI prototyping and will introduce students to Python’s AI capabilities. |
|
|
Donald J. Reifer
|
| This guide offers a step-by-step process for estimating software costs. Built on public-domain information and cost models, it gives the formulas software developers need to estimate the effort and time required to design, develop, test, and deliver their software projects. Intentionally methodology-independent, The Poor Person’s Guide includes examples for tailoring recommended processes to specific situations practitioners face in their day-to-day work. It concludes with industry benchmarks to help confirm that the estimates derived are realistic. |
|
|
Susan K. Land, CSDP; William C. Hobart Jr., PhD; and John W. Walz
|
| When applied correctly, software measurement can help the project lead or program manager do a better job at implementing more realistic software plans, more precisely track and report progress against those plans, and take corrective action when required. |
|
|
Richard E. (Dick) Fairley
|
| Presenting a concise how-to about managing risk in software projects, Risk Management for Software Projects starts with common risks and typical mitigation strategies, and goes on to explain more elaborate frameworks and metrics for assessing and managing risk, including critical-path analysis, requirements triage, and earned-value calculations. In an easy-to-read format with many simple yet effective examples, the author helps practicing software developers with little formal training put the various risk management techniques in a universe. This ReadyNote also includes helpful checklists, templates, and tools for assessing and managing risk. |
|
|
Jim X. Chen
|
| Many scientists in different disciplines realize the power of graphics, but are also bewildered by the complex implementations of a graphics system and numerous graphics tools. More often than not, they choose the wrong software tools and end up with unsatisfactory results. When they face a graphics problem with many tools available, simply searching online will not help. A shortcut to graphics theory, tools, and applications, this ReadyNote provides an exhaustive list of currently available graphics tools, categorizing them by their major applications and functions. Through this categorization, author Jim X. Chen, of George Mason University, helps learners and researchers understand the means and application areas in computer graphics, including visualization, modeling, animation, simulation, and virtual reality. A detailed appendix also offers many online resources. |
|
About IEEE Ready NotesIEEE ReadyNotes are guidebooks and tutorials that serve as a quick-start reference for busy computing professionals. This catalog lists the current collection, each of which is available as an immediate PDF download. IEEE ReadyNotes sell for $19 or less.
|