System Design and Simulations PDF

Document Details

SupportiveEpic5775

Uploaded by SupportiveEpic5775

Ghana Communication Technology University

Albert Osei Owusu

Tags

system design computer simulation software design introduction to system design

Summary

This presentation explains system design and computer simulation. It highlights the importance of system design as a plan for arranging elements to achieve a goal, and it introduces concepts like design trade-offs and the advantages and disadvantages of simulation.

Full Transcript

SYSTEM DESIGN AND SIMULATIONS Albert Osei Owusu Outline Introduction to System Design Introduction to Simulation Design Design is a plan for arranging elements in such a way as best to accomplish a particular purpose Design “There are two ways of constructing a software design: One...

SYSTEM DESIGN AND SIMULATIONS Albert Osei Owusu Outline Introduction to System Design Introduction to Simulation Design Design is a plan for arranging elements in such a way as best to accomplish a particular purpose Design “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.” - C.A.R. Hoare Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the implementation domain Design knowledge is a moving target The reasons for design decisions are changing very rapidly Halftime knowledge in software engineering: About 3-5 years What I teach today will be out of date in 3 years Cost of hardware rapidly sinking “Design window”: Time in which design decisions have to be made The Purpose of System Design Bridging the gap between the desired and existing systems in a manageable way. Develop a plan for the system Ensure that the system is reliable and efficient Eight System Design Issues How to use the results from the Requirements Analysis for System Design ¨ Nonfunctional requirements =>  Activity 1: Design Goals Definition ¨ Use Case model =>  Activity 2: System decomposition (Selection of subsystems based on functional requirements, coherence, and coupling) ¨ Object model =>  Activity 4: Hardware/software mapping  Activity 5: Persistent data management How to use the results from the Requirements Analysis for System Design ¨ Dynamic model =>  Activity 3: Concurrency  Activity 6: Global resource handling  Activity 7: Software control  Activity 8: Boundary conditions Activities of system design (UML activity diagram). Define Define Implement design goals subsystems subsystems Map subsystems to hardware/ software platform Manage persistent data Define access control policies Select a global control flow Describe boundary UML- Unified conditions Modeling Language Design Goals Reliability Traceability of Modifiability requirements Maintainability Fault tolerance Understandability Backward-compatibility Adaptability Cost-effectiveness Reusability Robustness Efficiency High-performance Portability Good documentation Well-defined interfaces Design Goals User-friendliness Ease of remembering Reuse of components Ease of use Rapid development Increased productivity Minimum number of errors Low-cost Readability Flexibility Ease of learning Relationship Between Design Goals Typical Design Trade-offs Functionality vs. Usability Cost vs. Robustness Efficiency vs. Portability Rapid development vs. Functionality Cost vs. Reusability Backward Compatibility vs. Readability Introduction to Simulation A computer simulation imitates the operation of various kinds of real-world facilities or physical processes. The facility or process is usually referred to as a system. To study it scientifically one has to make a set of assumptions about how the system works. These assumptions usually take the form of mathematical or logical relationships that constitute a model of the real- world system. Application Areas of Computer Simulation Designing and analyzing manufacturing systems Evaluate military systems or logistics requirements. Determining requirements or evaluating protocols for communication protocols. Determining hardware and software requirements for computer systems. Application Areas of Computer Simulation Designing and operating transportation systems such as airports, freeways, ports, and subways. Evaluating designs for service organizations such as contact centers, fast-food restaurants, hospitals, and post offices. Reengineering of business processes Analyzing supply chains Determining ordering policies for inventory systems Analyzing mining operations Advantages with Computer Simulation Most complex, real-world systems with stochastic elements cannot be accurately described by a mathematical model that can be evaluated analytically, simulation is the only available type of evaluation. Simulation allows one to estimate the performance of an existing system under some projected set of operation conditions. Alternative proposed system designs can be pre- evaluated via simulation to see which design meets the system requirements best. Much better control over experimental conditions can be maintained in a simulation than experimenting with Drawbacks with Computer Simulation Models to study large-scale systems tend to be very complex, writing computer programs that execute these models can be a very tedious and hard task. A second problem is that the computational complexity of large scale simulations, extremely large amount of computer time is sometimes required. Drawbacks with Computer Simulation Verification of the correctness of the simulation model and its implementation can be hard to accomplish. Stochastic simulation models produce output that is itself random, and must therefore be treated as only an estimate of the true characteristics of the model. When Simulation is not Appropriate When the problem can be solved using common sense. When the problem can be solved analytically. When it is easier to perform direct experiments. When the simulation costs exceed the savings. When the resources or time are not available. When system behavior is too complex or can’t be defined. When there isn’t the ability to verify and validate the model. Pitfalls with Computer Simulation Failure to have a well-defined set of objectives at the beginning of the simulation. Failure to have the entire project team involved at the beginning of the study. Inappropriate level of model detail. Failure to communicate with management throughout the course of the simulation study. Misunderstanding of simulation by the management. Pitfalls with Computer Simulation Failure to have people with knowledge of simulation methodology and statistics on the modeling team. Making a single replication of a particular system design and treating the output statistics as true answers. Failure to have a warm-up period, if the steady state behavior of a system is of interest. Comparing alternative system designs based on one replica for each design. Using wrong performance measures.

Use Quizgecko on...
Browser
Browser