You are on page 1of 23

SESSION 11

SYSTEM ARCHITECTURE
Issues that affect System Architecture
ERP
Initial and TCO
Scalability
Web Integration
Legacy System Interface
Processing Options
Security

TCO -ISSUES
Changes in Government regulations
Is in house development still the best choice?
If a certain package was chosen initially then is it
still the best choice?
Have there been any change of technology that
might affect the software project?
Updating of the TCO

LEGACY SYSTEM INTERFACE


Data formats
Compatibility
Cost of the interface

PROCESSING OPTIONS
On line Processing
Batch Processing
High speed processing and data storage for
transaction processing system
Speedy recovery and back up for 24/7 systems

TESTING
Black box vs white box vs grey box
Unit
System
Integration
Regression
Acceptance testing
1.
Alpha
2.
Beta

TESTING
Unit Testing: It is a software verification and
validation method in which a programmer tests if
individual units of source code are fit for use. A
unit is the smallest testable part of an application.
In procedural programming a unit may be an
individual program, function, procedure, etc.
Integration Testing: It is an activity where the
individual software modules are combined and
tested as a group.
System Testing: System testing of software or
hardware is testing conducted on a complete,
integrated system to evaluate the system's
compliance with its specified requirements.

SOFTWARE TESTING
Regression Testing: Regression testing is any
type of software testing which seeks to uncover
software regressions. Such regressions occur
whenever software functionality that was
previously working correctly, stops working as
intended.
Acceptance Testing: Black box testing carried out
prior to the final delivery of the product.

Alpha testing takes place at developers' sites, and


involves testing of the operational system by
internal staff, before it is released to external
customers.
Beta testing takes place at customers' sites, and
involves testing by a group of customers who use
the system at their own locations and provide
feedback, before the system is released to other
customers

SOFTWARE QUALITY ASSURANCE


Testing for quality
Recovery testing
Security testing
Stress testing
Performance testing

TESTING STRATEGIES

Black box

Equivalence Partitioning (divides the input domain of a


program into classes of data from which test cases
are derived)
Orthogonal arrays
Boundary value analysis

white box testing


Basis

path testing (flow graphs, independent paths)

DEBUGGING PROCESS - ISSUES


Remote bugs in the program
The symptom may be temporary
The symptom may be due to human error
Difficulty in reproducing the same input
The symptom may be intermittent

QUALITY CONTROL
Defined as the characteristic or attribute of
something.
Quality of conformance is the degree to which the
design specifications are followed during
implementation.
All work products should have defined,
measurable specifications to which we may
compare the output of each process.

QUALITY ASSURANCE

It consists of a set of auditing and reporting


functions that assess the effectiveness and
completeness of quality control activities.

THE COST OF QUALITY


Prevention Cost: Cost of quality planning, formal
technical reviews, test equipment and training.
Appraisal Cost: Include activities to gain product
condition through each process.
Failure Cost: Costs that would not have been
present if there had been zero defects.

Internal

Failure: When failure is detected prior to


shipment. Cost includes rework, repair and failure
mode analysis.
External Failure: Cost associated with failures
occurring after the product is shipped.

SQA ACTIVITIES
Quality Assurance Planning
Oversight
Record Keeping
Analysis
Reporting

SOFTWARE REVIEWS
Cost impact of the defects
Defect amplification and removal

REVIEW REPORTING AND REPORT


KEEPING
What was reviewed
Who reviewed it
What were the findings and conclusions.

REVIEW GUIDELINES
Review the product and not the producer
Set an agenda and meet it
Limit debates
Enunciate problem area, dont solve every
problem noted
Take notes
Limit number of participants
Develop a checklist for the products
Allocate resources
Conduct training for the reviewers
Review the earlier reviews

MEASURING QUALITY
Correctness: Defects per KLOC
Maintainability: Uses Mean Time To Change
(MTTC)
Integrity: Defines threat and security

Threat

is the probability that an attack of a specific


kind will take place
Security is the probability that the attack of the
specific type will be repelled.
Integrity = |1- (threat(1-security))|

DEFECT REMOVAL EFFICIENCY

DRE = E/(E+D) where E is the number of errors


found before delivery and D is the number of
defects found after delivery.

SOFTWARE RELIABILITY
It is the probability of a error free operation of a
computer program in a specified environment for
a specified time.
MTBF = MTTF + MTTR
Software Availability is the probability that a
program is operating according to requirements
at a given point of time.
Availability = [ MTTF/(MTTF+MTTR)]*100

SOFTWARE SAFETY

It is a software quality assurance activity that


focuses on the identification and assessment of
potential hazards that may affect software
negatively and cause an entire system to fail.

You might also like