Presentation on theme: "Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether."— Presentation transcript:
Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether the IT system meet the QoS (quality of Service) requirements of performance. The goal is to obtain or to provide the highest performance at the lowest cost. A system: – HW, SW, firmware, Computer performance evaluation: – the selection of computer system, – The design of applications – Equipment – Analysis of existing systems
QoS (Quality of Service) QoS attributes of an IT sytems: – Response time – Throughput – Availability – Reliability – Security – Scalability – Extensibility
Response Time The time it takes a system to react to a human request is called the response time.
Throughput The rate at which requests are completed from a computer system is called throughput and it measured in operations per unit time.
Example 1.1 Assume that an I/O operation at a disk in an OLTP system takes 10 msec on average. If the disk is constantly busy (i.e., its utilization is 100%), then it will be executing I/O operations continuously at a rate of one I/O operation every 10 msec or 0.01 sec. So, the maximum throughput of the disk is – 100 (= 1 /.01) I/Os per second. – But if the rate at which I/O requests are submitted to the disk is less than 100 requests/sec, then its throughput will be equal to the rate at which requests are submitted.
Availability Availability is defined as the fraction of time that a system is up and available to its customers. a system with 99.99% availability over a period of thirty days would be unavailable for
Reasons for unavailability Failures – Failure detection, diagnosis and recovery Overloads – Admission control Controlling and limiting the number of requests that are handled concurrently by IT system.
Reliability The Reliability of a system is the probability that it functions properly and continuously over a fixed period of time. Difference between availability and reliability. – When the time period during which the reliability is computed becomes very large, the reliability tends to the availability.
Security Confidentiality: – only authorized individuals are allowed access to the relevant information. Data Integrity: – information cannot be modified by unauthorized users. Non-repudiation: – senders of a message are prevented from denying having sent the message.
Scalability A system is said to be scalable if its performance does not degrade significantly as the number of users, or equivalently, the load on the system increases.
Extensibility Extensibility is the property of a system to easily evolve to cope with new functional and performance requirements.
System Life Cycle Performance Engineering (PE) – The method used to assure that QoS requirements are met are part of the discipline called PE.
Phase 1. Requirements Analysis and Specification During this phase of the life cycle of a computer system, the analysts, in conjunction with users, gather information about what they want the system to do. The result of this analysis is a requirement specifications document that is divided into two main parts: – Functional requirements – Non-functional requirements
Phase 1. Requirements Analysis and Specification Functional requirements specify – the set of functions the system must provide with the corresponding inputs and outputs – the interaction patterns between the system and the outside world (users). – The functional requirements usually include information about the physical environment and technology to be used to design and implement the system. Non-functional requirements – Deal with QoS requirements
Phase 2. System design System design is the stage in which the question "How will the requirements be met?" is answered. In this phase, the system architecture is designed, the system is broken down into components, major data structures, – including files and databases, are designed, – algorithms are selected and/or designed, and – pseudo code for the major system components is written. – the interfaces between the various components are specified.
Phase 2. System design A key recommendation is that special care be given to the non-functional requirements at the design stage since decisions made at this stage are more likely to have a strong impact on system performance, availability, reliability, and security. Moreover, problems caused by poor decisions made at this stage are much more expensive and time consuming to correct than those generated by decisions made at the later stages of the development life cycle.
Phase 3. System Development The various components of the system are implemented. Components are then interconnected to form the system.
Phase 4. System Testing Unit testing: – Components can be tested in isolation. Tested components are put together into subsystems tested further until the system meets its specification requirements. Load testing – Testing performance by executing simulated transactions with virtual users.
Phase 5. System deployment During system deployment, many configuration parameters (e.g., maximum number of TCP connections, maximum number of threads, timeout periods, database connection pool size) have to be set for optimal performance. The models described in this book can be used to predict the performance of a computer system under different configuration scenarios so that a proper set of values can be selected for the workload conditions expected to be seen in the field.
Phase 6. System Operation Features monitored to check if the QoS requirements are being met during system operation – Workload – External Performance Metrics – Internal Performance Metrics – Availability
Phase 6. System Operation Workload – peak period – Characteristics of the arrival process of requests – Unusual patterns External Performance Metrics – measurement of user-perceived satisfaction and statistics (e.g., mean, standard deviation, percentiles) relative to response time, throughput, and probability that requests are rejected. Internal Performance Metrics Availability
Phase 6. System Operation Internal Performance Metrics – identification of internal factors that aid in the diagnosis of performance failures and bottleneck detection. – Include the utilization of processors, storage devices, and networks, and the number of requests waiting in the various software and hardware queues. Availability – determination of the percentage of time that a system is available to service requests.
Phase 7. System Evolution To satisfy new user requirements. Whether the existing resources will be able to support the old and new workloads while still meeting the QoS requirements for both of them. Predictive models of computer performance are needed to answer these types of questions.
A reference model for IT system IT systems are designed and built to serve the ne Social systems and IT systems are usually integrated to form a "socio-technical" system eds of and interact with human beings.
Business and Social Model The business model deals with the elements of the business that need to reflected in the design of an IT system. – E.g. # of branches Social model of the bank – Elements related to privacy polices to be enforce – Accessibility polices to disabled peoples
User Interaction Model describes the interactions between customers and the system. – how users request services from the system, – how often, and what is a typical sequence of submitted requests.