1/193
REVIEWER
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Software Quality
Degree to which a software product meets established requirements.
Software Quality Assurance
A set of activities that define and assess the adequacy pf software processes to provide evidence that establishes confidence that the software processes are appropriate.
Customer Focus
Organizations depend on their customers, and thus need to understand their current and future needs.
Leadership
An organization’s leaders should create an internal environment in which employees are involved in achieving quality targets.
Involvement of People-Employees
All levels enable benefiting from their capabilities to promote software quality issues.
Process Approach
Managing activities and resources as processes results in their improved efficiency.
System Approach to Management
Process achieves higher effectiveness and efficient through identification, analysis, and understanding of interrelated processes.
Continual Improvement
Continual combined improvement of quality and processes effectiveness and efficiency performance are a permanent objective of the organization.
Factual Approach of Decision-making
Decisions should be based on data and information. This allows for objective decision making that will lead to positive action.
Mutually Beneficial Supplier Relationships
Understanding that an organization’s supplier relationships based on mutual benefits contributes to improved of performance of the organization with regard to quality, efficiency, and effectiveness.
Data Necessary for Operating the Software System (Data)
The required data include lists of codes and parameters, and also standard test data.
Computer Programs (the code)
Activate the computer system to perform the required application. It is a collection of instructions that can be executed by a computer.
Procedures
The order and schedule within which the software or project programms are performed.
Documentation
Is to instruct or support new software product version developers, maintenance staff, and end-users of the software product.
Software Errors
Made by software designer or programmer. An error may refer to a grammatical error in one or more of the codes lines or a logical error.
Software Faults/Defect
Software errors that cause improper functioning of the software in a specific application. and in rare cases, of the software in general.
Software Failures
These are results of software faults.
Faulty Requirements Definition.
Usually prepared by the client is one of the main causes of software errors. It is also the root causes of software erros.
Client-developer communication Failures
Misunderstandings resulting from a defective client-developer communication are additional causes for errors that previal in early stages of the development process.
Deliberate Deviations from Software Requirements
An action that often causes software errors. This situation occurs when the developer incorrectly interprets a requirement.
Logical Design Errors
Software errors can enter the system when professionals designing the system.; Software engineers, system analysts, and system architects
Coding Errors
Wide range of reasons cause programmers to make?
Noncompliance with documentation and coding instructions
Even if the quality of the “noncomplying” software is acceptable, difficulties will inevitably be presented when trying to understand it.
Shortcomings of the Testing Process
Testing process affect the error rate by leaving a greater number of errors undetected or uncorrected.
User Interface and Procedure Errors
User Interfaces direct users in areas such as the perfomance of input and output activities, and data collection and processing.
Documentation Errors
Concern to the development and maintenance teams are those foind in the “design” software manuals, documents, and user manual.
McCall Factor Model
It provide a practical, up-to-date method for classifying software quality requirements. Also it has 11 software requirements of software quality factors.
Product Operation Factors
According to McCall’s model, five software quality factors are included in this category, all deal with requirements that directly affect the daily operation of the software.
Correctness
Related to the outputs of software systems, such as a query display of a customer’s balance in the sales accounting information system or the air supply.
Reliability
Deals with failures to provide service. The requirements can refer to the entire system or one or more of its separate functions.
Efficiency
Deals with the hardware resources needed to perform all the functions of the software system in conformance with all other requirements.
Integrity
Defined to cope with risks of “nonfriendly” unauthorized attempts to damage the software system and its performance.
Usability
Deals with the scope of staff resources needed to train a new employee and to operate the software system.
Product Revision Factors
Factors deal with those requirements that affect the complete range of software maintenance activities.
Maintainability
Determines the efforts needed by users and maintenance personnel to identify the reasons for software failure, to correct the failure, and to verify the success of the correction.
Flexibility
Deals with the capabilities and efforts required to support adaptive maintenance activities.
Testability
Deals with the testing process of a software system, as well as with its operation.
Product Transition Factors
Pertains to the adaptation of software to other environments, and its interaction with other software systems.
Portability
Relates to adaptation of a software system to other environments consisting of different hardware.
Reusability
Deals with “two-directional” requirements. One direct is the use of a software module. The other direction related to a requirement to develop modules.
Interoperability
Focuses on creating interfaces with other software systems or equipment firmware.
Functional Suitability
Capability to fulfill the functions needed by the customers, stated or implied.
Performance Efficiency
Relates to the amount of hardware resources required to fulfill the software system tasks.
Compatibility
Refers to the capability of a software system or component to exchange information with other software systems.
Reliability
Deals with failures to provide service.
Security
Relates to the capability of a system product to protect the software system, data stores and information.
Satisfaction
User perception of the extent the software product meets user expectations in relation to the requirements.
Supportability
Ease of performing install tasks and various maintenance tasks of error corrections.
Survivability
Continuity of service.
Understandability
User’s capability to find out how to use the software for particular tasks and to grasp the conduction of use.
Verifiability
Defines design and programming features.
Effectiveness
Relates to the sucessful completion of tasks
Evolvability
Efforts required to fulfill future requirements for software system changes
Expandability
Future efforts required to serve larger populations
Human Engineering
Deals with the “man-machine” user interface with the application or software
Manageability
administrative tools that support software modification during the software development
Modifiability
Efforts that will be needed to modify the software product
productivity
Relates to the rate at which the software product performs tasks.
Safety
Designed to eliminate conditions that may be hazrdous to equipment
Business Model
Describes the rationale of how organization creates, delivers, and captures value. It defines the manner by which the business enterprise delivers value to customers.
Custome Systems Written on Contract
Organization makes profits by selling tailored software development services for clients.
Custom Software Written In-house
Organization develops software to improve organizational efficiency.
Commercial Software
Company makes profits by developing and selling software to other organizations.
Mass-market software
Company makes profits by developing and selling software to consumers.
Commercial and Mass-market Firmware
Company makes profits by selling software in embedded hardware and systems.
Critically
Potential to cause harm to the user or prejudice the interests of the purchaser varies depending on the type of product.
Uncertainty of Users Wants and NEeds
Requirements for software that implements a familiar process in an organization are better known than the requirements for consumer product that is so new.
Range of Environments
Software written for use in a specific organization only has to be compatible with its own computer environment.
Cost of Fixing Errors
Cost more to fix an error after the product is built than it would if the error was discovered during the requirements phase of a project.
Regulations
Regulatory bodies and contractual clauses may require the use of software practices other than those would normally be adopted.
Project Size
Takes several years and require hundreds of developers are common in certain organizations.
Communication
addition to project scope, that can increase the quantity of person-to-person communication or make communications more difficult.
Concurrent Developer-Developer Communcation
Communication with other people on the same project is affected by how the work is distributed
Developer-Maintainer Communcation
Communication with developers is greatly facilitated when they work in the same area.
Communcation between Managers and Developers
Progress reports must be sent to upper management.
Organization’s Culture
Organization has a culture that defines how people work
Control Culture
Motivated by the need for power and security.
Skill Culture
Defined by the need to make full use of one’s skills.
Collaborative Culture
illustrated by Hewlett-Packard, is motivated by a need to belong.
Thriving Culture
Motivated by self-actualization and can be seen in start-up organizations.
Contractual Conditions of Software Development,
Maintenance, and SQA activities:
Commitments and conditions between the software developer-maintainer and the customer are defined in the contract.
Subjection to Customer-Supplier Relationship
All software development and SQA activities throughout the process are overseen by the customer
The need for teamwork
Motivate the establishment of a project team rather than assigning the whole project to one professional.
SQA plan and project plan
Preparing a comprehensive SQA plan that includes the SQA activities and responsibility for their performance.
Pre-project Process-contract Review
Supporting the organizational to carry out contract reviews.
Cost of software quality
Evaluating the costs of software quality according to the findings of the SQAP activities.
SQA Trustess
Staff members who, being strongly interested in software quality, volunteer part of their time to promoting quality.
SQA committees
Either permanent or ad hoc
Permanent Committees
commonly deals with SCC, CA, procedures, methods, development tools, and quality metrics.
Ad hoc Committees
Deal with specific cases such as updates of a specific procedure.
SQA Plan (SQAP)
Deals with the activities and tasks the SQA function is required to carry out over the next year and enables estimating resources to perform. Also a comprehensive plan that directs the work of the SQA function for a year.
Software product risks to users
presents a project list, where for each project, an evaluation of software product risks has to be performed by the SQA function.
Development equipment and tools of software projects
Presents a list of projects, where for each project, a list of equipment and tools.
Standards, practices, and conventions for software projects
Activity that will evaluate lists of?
Resources and schedule estimates for the SQA function
estimates for the SQA function activities planned for the next year.
Assessment of staff skills and knowledge requirements and
resulting training needs
Deals with the evaluation of skills and knowledge required from project staff
Project Plan
Deals with the activities and tasks to be performed by the project team
Control methods
Project manager and the department management control project implementation by defining the monitoring practices.
Mapping the Development Process
Involves preparing detailed definitions of each of the project’s activities.
Product Risks
State where the software product may cause damage to the developer or to the user of the software.