280 likes | 288 Views
An online system for recording and analyzing attendance, engagement, leave, scholarships, feedback, and fees records, serving as a centralized database for students/staff/faculty.
E N D
Principles of Engineering System Design Dr T Asokan asok@iitm.ac.in
INTRODUCTION TO SYSTEMS DESIGN Functional Decomposition using IDEF0 diagram: Example
Example: Unified Data REcording System - UDARE Objectives: • Online recording and compilation of attendance for students/staff/faculty on day‐to‐day basis. • Real time analysis of slot‐wise engagement of students/faculty. • Serve as a real time data base for leave/salary/scholarship computation. • Serve as a real time data base for students’ feedback on courses/ feedback analysis. • Serve as a real time centralized data base for fees records of all students. • A real time data base for venue allocation/time slots for year long Lit‐Soc activities happening in the institute
Use U-Dare Services Software regulations Request Services Provide U- Dare Services Main server Maintenance personnel Students Internet server Staff Faculty
Network database Power supply Feedback Data search request User Identity Authentication (A1) Accept user request/provide feedback (A2) Display data Navigation request Provide navigation services Control operation (A3) Cashless transaction request Enable cashless transaction Provide utility services (A4) Maintenance and repair (A5) Proper functioning Maintenance services UDARE SYSTEM A0 diagram:
Network database Power supply Data search request Feedback Process request (A31) Navigation request Search for data (A32) Provide navigation details Cashless transaction request Extract data (A33) Display information Transaction details UDARE A3 diagram:
Network database Power supply Login and password Connect to the network (A321) Search for desired data in the network database (A322) Extract data from the network UDARE A32 diagram:
Network database Power supply Find the category of the information asked by the user A3321 Connect to the network Collect data from the corresponding category (academic/ administrative/ general) A3322 Extract data UDARE A322 diagram
Level-1 function PROVIDE U-DARE SERVICE Maintenance and repair User identity Authentication Accept user request/ provide feed back Control operation Provide services A4 A5 A3 A1 A2 A53… A43…. A52 A51 A41 A42 A12… A11 A21 A22 A23 Level-2 function Extract data Process request Search data A32 A33 A31 A331 A332 A312 A311 Level-3 function Search for data in database Connect to network A321 A322 A3213… A3211 A3212 Find the category of infunction asked by user Collect data A3122 A3121 A31223 A31222 A31213 A31221 A31212 Lower-level function A31211
Common mistakes in Developing Functional Architecture • Including external systems and their functions • Choosing the wrong name for a function • Creating a decomposition of a function that is not a partition of that function • Violating the law of conservation of inputs, outputs, or controls
Finishing the Functional Architecture • Defining System errors and the failure modes and inserting functionality to detect the errors and recover • Inserting appropriate functionality for some combination of built-in-self-test (BIST) and external testability
Error detection Functions Failure:Deviation in behavior between the system and its requirements Error :A subset of the system state, which may lead to system failure.Fault:a defect in the system that can cause an error. Fault tolerance is the ability of a system to tolerate faults and continue performing.
Fault tolerance can be achieved only for those errors that are observed. Functions associated with fault tolerance are: Error detectionDamage confinementError recoveryFault isolation and reporting
Error detection is defining possible errors, deviations in the subset of the system’s state from the desired state, in the design phase before they occur, and establishing a set of functions for checking for the occurrence of each error. • Type checks, range checks, timing checks • Damage confinement is protecting the system from the possible spread of failure to other parts of the system. • Firewalls
Error recovery attempts to correct the error after the error has been detected and the errors extent defined. • Backward recovery, forward recovery • Fault isolation and reportingattempts to determine where in the system the fault occurred that generated the error.
Functions for error detection, damage confinement, error recovery, and fault isolation and reporting should be included in the functional architecture. These functions should be defined for each state variable of the system.
Tracing Requirements to functional Architecture All elements of the set of input/output requirements should be traced to appropriate functions that have been defined in the functional decomposition
Functional model review Once a functional model is developed, it should be reviewed by individuals that have substantial knowledge of the system’s functioning This review should : • Try alternative decompositions • Disaggregate the functions differently • Reevaluate functional dominance in terms of feedback and control • Catch interface errors
Summary • Need for functional modelling • Procedure • De-composition and composition • Hately-Pirbhai Template • IDEF0 modelling • Evaluation- Scenario tracing • Fault tolerance • Requirement mapping