Computer Systems Engineering Management
eBook - ePub

Computer Systems Engineering Management

  1. 392 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Computer Systems Engineering Management

Book details
Book preview
Table of contents
Citations

About This Book

Computer Systems Engineering Management provides a superb guide to the overall effort of computer systemsbridge building. It explains what to do before you get to the river, how to organise your work force, how to manage the construction, and what do when you finally reach the opposite shore. It delineates practical approaches to real-world development issues and problems presents many examples and case histories and explains techniques that apply to everything from microprocessors to mainframes and from person computer applications to extremely sophisticated systems

Frequently asked questions

Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes, you can access Computer Systems Engineering Management by Robert S. Alford in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Engineering. We have over one million books available in our catalogue for you to explore.

Information

Publisher
CRC Press
Year
2018
ISBN
9781351087728
Edition
1

1
Engineering and Development Overview

1.1 The Scope of Engineering and Development
1.2 Productivity, Quality, and Cost Control
1.3 Computer Systems
1.4 Engineering Organizational Overview
1.5 Engineering Methodologies
1.6 A Word About Standards
Further Reading
Throughout the history of engineering a principle seems to emerge: Great engineering is simple engineering. Ideas which become too cumbersome, inflexible, and problematic, tend to be replaced with newer, conceptually cleaner ideas which, compared with the old, are aesthetic in their simplicity.
James Martin
Thirty years ago or so, a new age was born, the age of the computer. It did not take long for this new creation of man to become an important part of our daily lives, and with the advent of the microprocessor in the mid 1970s, the computer rapidly spread to many new applications. By the early 1980s, the computer had become so commonplace that children began learning programming along with their fundamental reading and writing skills, and the home computer had started to become a reality.
Along with this great new age came a whole new engineering field. By the late 1960s, electrical engineers with skills in the computer and digital design area became very much in demand, and the industry’s appetite for software people became almost insatiable. Universities began to offer degree programs in computer science, and a whole new set of professions came into being. The race was on to create new products and services, all based on the technology of the computer system. Microprocessors now control everything from children’s toys to locomotives, personal computers are so commonplace that they seem natural in the office or the home, and supercomputers of tomorrow are under development to tackle problems whose solutions have eluded us for ages.
The age of the computer, and the extremely rapid growth of the industry it fostered, have brought their own problems with them. The pressure to get products to market (or win a contract, or get to space first), coupled with a new and somewhat undisciplined engineering field, has resulted in as many failures as successes. Engineering organizations presented with the task of designing and maintaining computer-based systems continue to struggle with the problems associated with applying advanced technology to commercial ventures effectively and efficiently.
Computer systems engineering and development can be managed, as numerous successful efforts attest. There are, however, many organizations that do not manage the process well at all, resulting in the infamous cost overruns and inferior products that we all have heard about. What, then, is the difference between the successful and the not-to-successful engineering organization in the computer systems field? A major difference is in the management and leadership within the organization. The tools and techniques for success are the topic of this book.

1.1 The Scope of Engineering and Development

There is little question as to the importance of the activities of the Engineering and Development Department within any high-technology company. Where the development of computers and computer-based products are concerned, the creative skills of the engineers, and the ability of the engineering organization to deliver a high quality product is essential to the success of the company.
The overall scope of responsibility may vary depending on the organization and the product, but in general is very broad, extending from early product planning and research to the delivery of a completely integrated and tested product. Carefully defining this scope of responsibility is important to the success of the organization and its interactions with other departments.
Typically, the Engineering and Development Department is the technology drive behind the company. Working closely with Marketing and other departments, they assist in strategic planning and requirements development. When the requirements for a new product have been defined, it is the responsibility of Engineering and Development to determine the best technical solution to meet the overall needs of the company. All of this occurs prior to what is normally considered the development effort.
Given a defined set of requirements and objectives, and a technical approach, Engineering must plan a development effort consistent with the requirements and capabilities of the company. The product then enters the development phase, when it must be designed and implemented. This includes electronic, electrical, mechanical, packaging, software, firmware, diagnostics, and documentation considerations.
Once the development is completed, the product must be integrated and tested. Often this is the most difficult and challenging part of the effort. Finally the whole product must be readied for release, and then turned over to Manufacturing so that it can be reliably and cost-effectively produced in quantity. This step is often referred as “taking it from the lab to the cookie cutter. “Effectively accomplishing this vital step of the project often makes the difference between a successful product and an “also ran.“ Many otherwise good designs have not succeeded because Engineering did not know how to accomplish this step.
Image
Figure 1.1 The scope of engineering and development.
Finally there is product support. It is my belief that support does not belong within the Engineering and Development organization, but rather in a dedicated support group. This point is elaborated in Chapter 2 in the discussions on organization. It is, however, important to establish whether normal support is within the scope of the Engineering and Development organization, and if so, to budget, plan, and staff for it.
The scope of Engineering and Development is, therefore, very broad, and goes well beyond what many think of as development. This is illustrated in Figure 1.1. In the following chapters we will address all of these areas. References to additional sources where more detailed information can be obtained are provided at the end of each chapter.

1.2 Productivity, Quality, and Cost Control

The msgor objective of every engineering organization is (or should be) to deliver quality product on time and within budget. The areas on which to focus to achieve this objective are productivity, quality, and cost control. These are much more than buzzwords, they are the primary focus of many successful efforts.
Productivity is an often abused term. Productivity is much more than the number of lines of code per day or the number of designs completed per year. It implies value. That which is produced must be of value, and value must be factored into the productivity. It is also very difficult to measure productivity with any precision. However, it is often easy to tell by comparison which organization is most productive, and most engineers and managers can readily recognize when they themselves are in a productive environment.
Quality is somewhat easier to define and quantify. Quality implies error-free software that performs the intended function easily and efficiently, and hardware that seldom fails, and if it does is easy to repair or replace. Quality is designed into products, and good quality assurance is as important within the engineering department as it is in manufacturing.
Cost control is always a critical element, and takes on added importance in the computer systems field where a large part of the value of the product is related to engineering costs. Engineering cost overruns in mass-produced products, where the engineering is amortized over a large number of units, have less of an impact on overall profit margins than manufacturing costs. With computer systems, however, this is often not the case, especially when the system has a large software content. In these cases, a large portion of the cost of each unit is the cost of engineering that went into the initial development and must be recovered over the life of the product. A large cost overrun in engineering, or a high ongoing support cost, can severely impact or eliminate profits.
Productivity, quality, and cost control are three issues that are important to managers, engineers, and the success of any engineering and development organization. Why then are there so many organizations where the productivity is low, the product has problems, and where cost overruns and schedule slippages are common? And much more importantly, what steps can be taken to insure success? That is what we will explore in this book. Tools and techniques that can be used to increase productivity, improve quality, and contain costs will be presented, as will real-world tested methods and procedures used in successful computer systems development efforts that can be adapted to the needs of your organization and projects.

1.3 Computer Systems

What is a computer system? For that matter what is a system? System is another one of those much abused words in the age of the computer. Webster defines system as “a set or arrangement of things so related or connected as to form a unity . . .. “The space shuttle, with all of it’s launch and support facilities, is certainly a system. So is a burglar alarm or a word processor.
A computer system, at least as the term is used in this book, is a very broadly defined term. It encompasses very small as well as very large systems. It may be only software or a combination of software and hardware. It may have one processor or many. It’s development time may be measured in weeks, months, or years. It may be mass produced or one of a kind. It contains one or more processors or comprises software and/or hardware for use on one or more computers or processors.
For larger projects the use of disciplined techniques and procedures has become common. It is doubtful that the more complex systems could ever be built otherwise. For small and even some medium-size projects, however, the need to plan, specify, and design are shortchanged in many organizations. The most common excuse is “we don’t have time, our schedules are too tight.“ These smaller endeavors are computer systems too, and their development can greatly benefit from some of the techniques used with larger systems if those techniques are properly scaled and applied.
At the other extreme is the organization that tries to apply a methodology suitable to building a spacecraft to a problem that should only take several months of effort. This approach is equally headed for failure. It will not be productive, and in fact good engineers will not long put up with such an environment.
If the scope of computer systems development is to be so broad as to encompass everything from consumer products to telecommunications systems, so must the tools and methodologies used to develop them. Common sense must prevail in the use of the techniques described. Size the methods to the job and “don’t swat flies with a sledge hammer.“ On the other hand recognize the usefulness of the tools even in seemingly small efforts, and the need for good discipline no matter how small the task.

1.4 Engineering Organizational Overview

There are more different ways to organize a computer systems engineering group than anyone can imagine. One of the most common mistakes (fortunately not a serious one) that a new engineering manager makes is to put too much emphasis on developing one of those neat little hierarchical organizational charts with his or her name on top. It is important to establish a well-defined organization in which everyone knows what his or her responsibilities are, but the problem is more complex than the classic organizational chart would lead you to believe.
The type of organization that works best depends very much on the size and scope of the organization, the diversity of the projects to be handled, and the people involved. As Andrew Grove, President of Intel Corporation, points out in his book High Output Management, in high-tech organizations the knowledge base and the power base are normally not the same people. The classic top-down hierarchical structure simply will not work in such an environment.
We do need organization however, and Chapter 2 discusses this in some detail. For our purposes we will specify that the computer systems engineering function consists of five major functional areas: systems engineering; hardware development; software development; technical publications; and quality assurance. In any individual case one or more of these may not be included, or they may be combined into different groupings. In Chapter 2 we will look at different ways to organize these areas, depending on the situation at hand and the people available.

1.5 Engineering Methodologies

Methodologies are nothing new. It is probably a safe bet that the early Romans developed a methodology for building aqueducts. A methodology provides a simple, organized, and stepwise approach to solving the engineering problems with which the organization deals. There are many different variations on the theme, but all have the same basic characteristics. They all break the problem (or the process) into steps, and solve these steps using a set of techniques suited to the problem. Each step produces as its output the primary input for the next step. Usually some means of quality control is provided along with loopbacks to previous steps when problems are encountered.
Whether or not you have a formal methodology in your organization, you undoubtedly have an informal one of your own that you use for problem solving, or you would not be successful in the field of computer systems. If your organization is larger than a handful of people, there are significant advantages to having a documented methodology in place. A good methodology will improve commun...

Table of contents

  1. Cover
  2. Half Title
  3. Title Page
  4. Copyright Page
  5. Dedication
  6. Preface
  7. Introduction
  8. Table of Contents
  9. 1. Engineering and Development Overview
  10. 2. The Modern Engineering Environment
  11. 3. The Project Plan
  12. 4. Systems Engineering
  13. 5. Hardware Development
  14. 6. Software Development
  15. 7. Technical Publications
  16. 8. Integration and Test
  17. 9. Technical Reviews
  18. 10. Configuration Control Procedures
  19. Index