Key quality concern for IT projects
Providing customers with systems they need |
Meet requirements at affordable price |
Requires a commitment from all parties |
Costs of remedying lapses in quality great. |
Quality characteristics
ISO 9126-1:2001, seeks to define a set of standard characteristics by which software quality can be measured |
- |
Functionality: meet user requirements |
- |
Reliability: Consistent |
- |
Usability: Intuitive, minimum training |
- |
Efficiency: good with resources |
- |
Maintainability: easy to modify |
- |
Portability: between platforms |
Quality plan
Specifies standards that apply to the project |
Maybe existing, new, industry, modified versions of existing, developed internally |
Specifies how, when and by whom the quality control activities should be undertaken |
Specifies quality assurance processes |
May also include configuration management and change control procedures |
Quality process requirements
Entry requirements state what must exist before the stage or activity can begin |
Implementation requirements define how the process should be done |
Exit requirements indicate what should be in place for a successful sign-off of the activity |
Formal inspection structure
Preparation. The reviewers review the documentation and annotating the product and recording defects |
Meeting: discussion of potential defects, confirm or deny they actually are defects. Agree follow up of each. |
Recording: follow-up actions, responsibilities, agreement of outcome and sign-off if appropriate |
Follow up |
- |
advising the project manager of the outcome; |
- |
planning remedial work; |
- |
Signing off when complete |
V Model
Model in which the solid lines represent the forward progress of the project and the dotted lines represent the way in which quality control is exercised
ISO9001:2008
specifically aimed at producers and suppliers of any products and services, not necessarily software |
Organisations are inspected and awarded ISO 9001 certification by accredited auditors |
ISO 9001:2008 is based on the following principles: |
- |
Customer focus: understanding and meeting or exceeding the customer requirements |
- |
Leadership: providing this for the organisation to give it the purpose, unity and direction to achieve quality objectives |
- |
People: involvement of staff at all levels of the organisations involved |
- |
Process approach: attention to individual processes which produce intermediate or deliverable products |
- |
Systems approach to management: focusing on inter-related processes producing deliverable products; |
- |
Continual improvement |
- |
Factual approach to decision-making |
- |
Mutually beneficial client-supplier relationships |
|
|
Definitions of quality
A degree or level of excellence |
Conformance to standard |
Deliverables should be fit for purpose |
Reliability |
Quality criteria
Quality criteria must be specified at beginning, before product developed |
Each product definition includes a section headed quality criteria |
- |
Used by team to ensure fit for purpose |
- |
Specific, measureable and achievable |
Company should develop standards for product definitions for its quality procedures |
Defect removal process
ID defects so you can remove them |
Easy at end of project in dynamic testing |
Techniques for IDing defects at beginning stages |
- |
desk checking: Authors, or creators, of products review what they have produced |
- |
document review: other people read document to ensure meets QC |
- |
peer review: The author’s co-workers (or peers) examine copies of the document and make comments about it. Answer things liek: is it feasible, is there a better way, does it conform to company standards, does it communicate with other parts of the system, are requirements covered, are there any ambiguities |
- |
Inspection Formal review of product. |
- |
Walkthrough: The author takes the audience through the documents and they feed back their comments on it |
- |
Pair programming: in agile development environments, code developers sometimes work in pairs. The pair take turns to type in code at the workstation while the other advises and checks on what is being entered. |
- |
Static testing: Software tools analyse structure of code. Look at the branches and loops in a program and calculate a measure of complexity. More complex = difficult to maintain |
Evaluating suppliers
Important to establish whether those third party suppliers have the necessary quality procedures in place to ensure that the software to be supplied is to the standard expected. |
Must be recognised that the supplier and the customer have different business objectives. Making a project a success therefore needs both parties to see the project as a joint venture |
Evaluating suppliers
Important to establish whether those third party suppliers have the necessary quality procedures in place to ensure that the software to be supplied is to the standard expected. |
Must be recognised that the supplier and the customer have different business objectives. Making a project a success therefore needs both parties to see the project as a joint venture |
|
|
Failure
Cannot guarantee software will never fail |
Hardware & infrastructure might also fail |
Examine ways system will behave in event of various types of failure |
Might need to make it ‘fail safe’ so that it will revert to a safe state |
QC vs QA
The quality control framework is called the quality management system (QMS) |
The QMS may be based on the ISO 9001 series of standards |
The QMS includes quality strategy and quality assurance processes |
Quality strategy defines QMS and includes |
- |
procedures and standards for creating a project quality plan |
- |
a definition of quality criteria |
- |
quality control procedures |
- |
quality assurance procedures |
- |
a statement of compliance with or allowed deviation from industry standards |
- |
acceptance criteria |
- |
Allocation of responsibilities for defining or undertaking quality-related activities |
Quality assurance is like an audit. It is designed to confirm that proper procedures are in place and have been applied correctly |
QC = Quality control
QA = Quality assurance
Dynamic testing levels
Unit |
Test data for usual range of input |
Functions tested |
Test various comboss & sequences |
Test for outliers of limits |
Alphabetic fields tested longer than that which the system should permit |
Mandatory fields are left blank |
Ensures unit will not fail because of bad data or unusual combinations but will handle them in a predefined way |
Record all faults |
Integration |
Links a number of system components and runs them as a whole |
checks that the units communicate properly |
Systems |
Final stage in testing by the development professionals |
Running the whole system on the infrastructure that will be used when the system is operational |
Operational, response time, workload cope, effect of high loading |
User acceptance |
Can the users operate the system? Does it meet their expectations, not just their requirements? |
Regression |
Running an agreed set of test data through the system again to confirm that the original error has been corrected and no further errors have been introduced or uncovered |
For each type of testing, a set of test data and a set of expected results must be produced
- Test data for usual range of input expected for system
- Functions tested
Capability maturity models
Where the organisation is assessed as being at a particular level of process maturity |
Assessment can be internal or external |
Capability maturity model (CMM) has five levels |
(1) Initial. Any organisation would be at this level by default. Good quality work may be done, but customers cannot be sure that this is always the case. |
(2) Managed. Some basic project management and other systems are in place. |
(3) Defined. The way each task in software development is done is defined to enable consistent good practice. |
(4) Quantifiably managed. Processes and their products are measured and controlled – for example, the number of errors created in each process |
(5) Optimising. The measurement data collected is analysed to find ways of improving processes. |
|
Created By
https://www.jchmedia.com
Metadata
Favourited By
Comments
No comments yet. Add yours below!
Add a Comment
More Cheat Sheets by NatalieMoore