1.13. Putting it All Together (Key Points)

  • Discussed the elusive nature of quality, especially in the context of software.

  • Attempted to define quality and highlighted the fact that quality is an attribute “of something” and therefore cannot be defined on its own, without a context.

  • Defined what is quality assurance and how it differs from testing or quality control.

  • Defined the four different priorities vying against each other in a project: budget, time, functionality, and quality. Of these four, quality is the least measurable and most elusive. Therefore, it tends to get thrown out when pressure is applied by budget, time, functionality, or their combination.

  • Defined the six different levels of quality within a software project: data quality, code quality, model quality, process quality, management quality, and the overall creation and management of the quality environment. Of these, model quality, its associated process quality, and the overall quality environment are of direct interest to us in this book.

  • A process has three dimensions: the what, the how, and the who. All three dimensions exist within a process at the same time. They form part of a software process as well as a quality process.

  • Modeling and quality are interrelated. Modeling helps us not only to understand the reality but also to create new reality. Within software development environments, modeling occurs in three different spaces or regions of work. The problem space creates models to understand the business and functional issues of the system, the solution space creates models of the solution as well as traces the solutions to the problems, and the background space creates models of the architecture as well as provides for project management and quality management.

  • The UML enhances quality because it provides an industry-standard mechanism to communicate within and among projects.

  • The UML enhances the quality of visualization, specifications, construction, and documentation work going on within a project.

  • Not all UML diagrams apply to all modeling spaces—Table 1.2 presents the focus of each of the UML diagrams to respective modeling spaces.

  • There are three levels of quality-control checks: checking the syntax of the models, making sure that they semantically represent what they are meant to represent, and seeing that the models have some aesthetic sense around them.

  • Quality assurance of software process deals with the necessary aspect of the process, followed by the sufficient aspect of the process, and finally the malleability of the process or its ability to change.

  • Reuse and patterns have a direct beneficial effect not only on the productivity of the project, but also on its quality. Quality and usability of the software produced are interrelated because usable software is perceived by users as having higher quality.

  • There are six different types of popular UML-based projects: new development, integration, package implementation, outsourcing, data warehousing/conversion, and educational projects.

  • These projects could be further categorized as small, medium, and large.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.138.135.80