Page 123 - DCAP405_SOFTWARE_ENGINEERING
P. 123

Software Engineering                                          Mandeep Kaur,  Lovely Professional University




                    Notes                              Unit 8: Design Engineering


                                     CONTENTS
                                     Objectives
                                     Introduction

                                     8.1  What is Software Design?
                                     8.2  Design Process
                                     8.3  Design Quality

                                     8.4  Design Concepts
                                          8.4.1  Modularity
                                     8.5  Summary
                                     8.6  Keywords
                                     8.7  Review Questions

                                     8.8  Further Readings

                                   Objectives

                                   After studying this unit, you will be able to:

                                       Recognize the design process and design quality
                                       Scan the various design concepts
                                   Introduction


                                   Software design is a process of problem solving and planning for a software solution. After the
                                   purpose and specifications of software are determined, software developers will design or
                                   employ designers to develop a plan for a solution. It includes low-level component and algorithm
                                   implementation issues as well as the architectural view.

                                   8.1 What is a Software Design?


                                   A software design may be platform-independent or platform-specific, depending on the
                                   availability of the technology called for by the design.
                                   Software design can be considered as putting solution to the problem(s) in hand using the
                                   available capabilities. Hence the main difference between Software analysis and design is that
                                   the output of the analysis of a software problem will be smaller problems to solve and it should
                                   not deviate so much even if it is conducted by different team members or even by entirely
                                   different groups. But since design depends on the capabilities, we can have different designs for
                                   the same problem depending on the capabilities of the environment that will host the solution
                                   (whether it is some OS, web , mobile or even the new cloud computing paradigm). The solution
                                   will depend also on the used development environment (Whether you build a solution from
                                   scratch or using reliable frameworks or at least implement some suitable design patterns)








          116                               LOVELY PROFESSIONAL UNIVERSITY
   118   119   120   121   122   123   124   125   126   127   128