Software Design
eBook - ePub

Software Design

A Comprehensive Guide to Software Development Projects

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

Software Design

A Comprehensive Guide to Software Development Projects

About this book

This book is perhaps the first attempt to give full treatment to the topic of Software Design. It will facilitate the academia as well as the industry. This book covers all the topics of software design including the ancillary ones.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
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 use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Software Design by Murali Chemuturi 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.
1
Introduction to Design
Introduction
The term design is not just used for product design. It is also used in the following contexts:
1.Design of a product
2.Design of a service
3.Design of a facility to manufacture a set of products or to deliver a set of services
4.Design of physical systems, such as a material handling system
5.Design of a network, such as a transportation network
6.Design of organizational processes, such as planning processes, project management processes, and so on
There are many more occasions where we use the term design. All of these have some common objectives to be achieved:
1.There is a set of functionalities to be achieved.
2.The functionality has to be delivered securely, safely, and efficiently.
3.The functionality has to be achieved in a cost-effective manner.
4.It must be possible to implement the design with the available technology.
Many times, a design already exists that needs to be improved to take advantage of the latest developments in technology or to gain a competitive advantage over existing designs.
In this book, we focus the discussion on the product design, and that also applies to designing a software product. But before we can move on to product design, we need to understand what a product is.
Product
We need to understand what a product is so that we can design a better/new product. Let us first look at what a product is.
The Merriam-Webster dictionary defines a product as “something produced” and as “something that is marketed or sold as a commodity.”
The Oxford Dictionary defines a product as “an article or substance that is manufactured or refined for sale.”
The law defines a product as “a commercially distributed good that is a tangible personal property; output or result of a fabrication, manufacturing, or a production process; and passes through a distribution channel before being consumed or used.”
In all these definitions, emphasis is placed on the aspect of selling, except in the definition of law. So, we need to look up what the marketing discipline has to say about products. The field of marketing has come up with a number of definitions for a product.
One definition of product is: “a product is something of value for which a customer is willing to pay.” This definition emphasizes the necessity of having a customer willing to pay. If the product cannot attract a buyer, then it is not a product. Then, the questions that crops up is, “Would a customer buy this product?” or, paraphrasing it, “Would I buy this product?” If we answer one of these questions with a “yes,” the next question would be, “Which class of people would buy this product and what are their preferences?” The answers to these two questions will guide us in designing a product that will meet the preferences of the potential customers.
Another definition of a product is: “a product is something that fulfills a need or a want and has a market to sell it.” This definition has two key aspects, namely fulfillment of a need or want and the existence of a market in which it can be sold.
Then, one more definition of a product is: “a product is a bundle of benefits.” This definition focuses on what benefits the customer expects from the product. Obviously, the customer needs to derive some benefit from the product. The benefits may be:
1.Functional benefit: A car helps people go from a place to another place. A light bulb gives light. A stove helps in cooking food.
2.Visual benefit: The product brings beauty to a place. A painting on a wall attracts people and gives satisfaction to the owner. A good dress makes the individual appear more beautiful. A beautiful car attracts glances from onlookers.
3.Comfort benefit: A seat in a car makes the journey comfortable. Air conditioning in a home makes one’s stay comfortable. Paved roads make the drive comfortable.
4.Convenience benefit: A steering wheel in a car is more convenient than a handlebar. A refrigerator is more convenient than an icebox. A laptop is more convenient than a desktop. A mouse is more convenient for using the computer than giving commands using the keyboard.
5.Relaxation benefit: A video game provides relaxation. Radio or a CD/DVD player in a car provides relaxation while driving. A television provides relaxation in the home.
6.Notional benefit: The benefit is in the feeling. A beauty cream gives you the confidence that you look more attractive. A perfume can make you feel desirable.
There are many ways of classifying products. Let us look at some classifications.
1.Product classification based on use: Some products are used to produce another product. A lathe machine is a product that is used to produce products or components. A coffeemaker is used to produce coffee. Some products are used to provide a service. A television is used to provide entertainment. A telephone is used to converse with people not in close vicinity. A coach (bus) is used to transport people. Some products are used to produce products as well as to provide a service. A personal computer is used to produce software products as well as to surf the Internet.
2.Product classification based on durability: Some products can be used in a recurring manner again and again. Some products can be used only once. Electricity is a good example of a single-use product, as are food products and all medicines. They need to be consumed upon production and are not available for a second use. A car, on the other hand, can be used again and again.
3.Product classification based on its finality: Some products go directly to their customers for use. All the consumer products we use in our homes are end products. These are final products. Some products are used as components or subassemblies in other products. They are not used directly. A car seat is used as a component inside a car. It is not directly used as an end product.
4.Product classification based on hardness: Products are classified as hard products and soft products. All documents, books, scripts, computer software, and all types of intellectual property come under soft products. All other products, including soft toys, are hard products.
There are, of course, other classifications of products from the standpoint of the market and production processes.
Definition of Design
The word design can be used as a verb and as a noun. In its verb form, design is the process of carrying out the design, and in its noun form, design is the outcome of the process of design.
The Merriam-Webster dictionary gives multiple meanings for the word design. The most appropriate ones for our context are given as “to conceive and plan out in the mind” and “to devise for a specific function,” as well as “to make a drawing, pattern, or sketch.” All of these are appropriate to describe the meaning of the word design.
While Wikipedia does not have a section for “design” per se, it has a section for “product design.” It states, “The product designer’s role is to combine art, science, and technology to create new products that other people can use.” This also gives the definition of design in an indirect way; thus, “Design combines art, science, and technology to create new products that other people can use.”
The Industrial Designers Society of America (http://www.idsa.org/) defines industrial design as “the professional service of creating and developing concepts and specifications that optimize the function, value and appearance of products and systems for the mutual benefit of both the user and manufacturer.”
I have developed a definition of design drawing upon my own experience, observation, and study: “Design is a creative process to ensure that a defined set of functionality is delivered efficiently, economically, aesthetically, securely, and safely; record that design in a manner that can be easily understood and implemented to realize the product by those fabricating/constructing/developing the product; and to ensure that the resultant product is reliable, safe, secure, flexible, maintainable, and marketable. It draws upon the knowledge base of science and engineering together with social sciences and aesthetics as well as the knowledge repository of the organization.”
There could be many more definitions of the term design. From the above definitions, we can draw these inferences:
1.Design involves conceptualization in the mind.
2.Design involves devising a product.
3.Design involves combining art, science, and technology.
4.Design involves creating as well as developing concepts and specifications.
5.Design involves optimization of the function, value, and appearance.
6.Design involves ensuring safety and security.
7.Design involves ensuring an aesthetically pleasing appearance to the target market segment.
8.Design involves defining and ensuring the capacity of the product.
9.Design involves ensuring cost effectiveness in all aspects from conceptualization through use.
10.Design involves recording the design for others qualified to understand and manufacture/develop the product.
11.Design involves ensuring reliability in performance and delivering the defined functionality over the life of the product.
Let us look at each of these inferences.
Design involves conceptualization in the mind: It is necessary to understand what needs to be achieved and how to achieve it. First, we need to understand the functionality that is to be achieved. Then, we need to understand how to deliver that functionality. The functionality can be a single function or multiple functions. This requires that the designer be a technical person with the necessary technical skills to understand the functionality. Second, the designer needs to be a thinker, especially an original thinker, to understand how to deliver the functionality. He or she must have knowledge of alternative methods of delivering the functionality. For example, let us consider the design of matchsticks and a matchbox. To the ancients, fire was a na...

Table of contents

  1. Cover
  2. Halftitle
  3. Title Page
  4. Copyright Page
  5. Dedication
  6. Contents
  7. Foreword
  8. Preface
  9. Acknowledgments
  10. Author
  11. 1. Introduction to Design
  12. 2. Introduction to Software Product Design
  13. 3. Approaches to Software Design
  14. 4. Elements of Software Design
  15. 5. Software Design Activities
  16. 6. Data, Storage, and Retrieval
  17. 7. Data Design
  18. 8. Product Architecture Design
  19. 9. Security and Safety Design
  20. 10. Input Design
  21. 11. Output Design
  22. 12. Code Design
  23. 13. Process Design
  24. 14. Help Design
  25. 15. Establishing the Software Design
  26. 16. Quality Assurance in Software Design
  27. 17. Engineering Drawings for Establishing Software Design
  28. 18. Handling Software Design Projects
  29. Appendix A: Creativity and Innovation for Software Designers
  30. Appendix B: Who Can Be a Software Designer?
  31. Appendix C: Roles and Responsibilities
  32. Appendix D: Knowledge Management
  33. Appendix E: Sample Set of Drawings
  34. Index