Presentation is loading. Please wait.

Presentation is loading. Please wait.

IT2005 System Analysis & Design

Similar presentations


Presentation on theme: "IT2005 System Analysis & Design"— Presentation transcript:

1 IT2005 System Analysis & Design
Week 10 -System Design

2 Model Model is a presentation of reality.
Just a picture is worth a thousand of words, most system models are pictorial representations of reality.

3 Modelling Methods A set of techniques used to implement a Methodology
• Data Flow Diagrams - – A process model – Depict the flow of data through a system and the work performed by the system • Entity Relationship Diagrams – – A data model – Depict data in terms of entities and relationships described by the data – Consists of several notations • Structure Charts etc.

4 Logical and physical data flow design
Logical DFDs- that illustrate what occurs without showing how it occurs are known as logical DFDs. Physical DFDs- DFDs that show how things happen, or the physical components are called physical DFDs

5 Process Modeling Is a technique for organizing and documenting the Process Requirements and Design for a system. Data Flow Diagram : Popular Process Modeling Technique. Shows the flow of data through the system and the processing performed by the system.

6 Data Flow Diagrams • Systems Analyst (SA) - may first draw Data Flow Diagram - may first draw Document Flow Diagram - Depends on the Methodology

7

8

9

10

11

12 ATI System

13

14 Data Flows Data flow model the passage of data in the system and are represented by lines joining system components. Flows of data in the system can take place: Between two processes From a data store to a process From a process to a data store From entities to a process From process to a entities

15

16

17 Context diagram A common way to begin is to model, the whole system by one process. It shows all the external entities that interact with the system and the data flow between these external entities and the system.

18 Context Diagram defines the scope of the system by identifying the system boundary contains: one process (which represents the entire system) all sources/sinks (external entities) data flows linking the process to the sources and sinks (external entities)

19 Constructing a Context Diagram
identify and list sources/sinks (external entities) identify and list inputs to and outputs from sources/sinks (external entities) create context diagram

20

21

22

23

24

25

26

27

28

29

30

31

32

33 Library System

34

35

36

37 Level-0 Diagram describes the overall processing of the system
show one process for each major processing step or functional requirement can draw duplicate sources, sinks and data stores to increase legibility

38 Drawing a Level-0 Diagram
list the major data stores list major business steps draw a segment for each business step assemble into single DFD re-organize until satisfied number processes

39 DFD context level diagram

40 DFD level 0 diagram Decomposition

41 DFD level 1 diagram

42 Other Questions about Lower level diagrams
1. How deep? (how many levels?) if the process has only one input or one output, probably cannot partition further; can you describe the process in English in about 1/2 page? 2. How broad? (how many processes on a level?) 7 ± two is a reasonable may temporarily place much of the system on a single diagram then re-draw into separate levels

43 Quality Guidelines Completeness Consistency Timing considerations
all components included & in project dictionary Consistency between levels: balancing, leveling Timing considerations assume system never starts and never stops Iterative nature revisions are common Drawing primitives (lowest level) when to stop?

44 Budget monitoring system

45 Top-level DFD diagram

46 Expansion of classify expenditure process

47 DFD Example: Bus Garage Repairs
Buses come to a garage for repairs. A mechanic and helper perform the repair, record the reason for the repair and record the total cost of all parts used on a Shop Repair Order. Information on labor, parts and repair outcome is used for billing by the Accounting Department, parts monitoring by the inventory management computer system and a performance review by the supervisor.

48 DFD Example: Bus Garage Repairs (cont’d)
External Entities: Bus, Mechanic, Helper, Supervisor, Inventory Management System, Accounting Department, etc. Key process (“the system”): performing repairs and storing information related to repairs Processes: Record Bus ID and reason for repair Determine parts needed Perform repair Calculate parts extended and total cost Record labor hours, cost

49 DFD Example: Bus Garage Repairs (cont’d)
Data stores: Personnel file Repairs file Bus master list Parts list Data flows: Repair order Bus record Parts record Employee timecard Invoices

50 Bus Garage Context Diagram
Mechanical problem to be repaired Fixed mechanical problems Supervisor Helper Bus Repair Process System Repair summary Labor List of parts used Inventory Management System Labor Labor, parts cost details Mechanic Accounting

51 Logical and physical data flow design
Logical DFDs- that illustrate what occurs without showing how it occurs are known as logical DFDs. Physical DFDs- DFDs that show how things happen, or the physical components are called physical DFDs

52 What is a good data flow diagram?
The absence of flowchart structures protection of data Good naming conventions

53 Differences between flowcharts and data flow diagrams
DFDs are not program flow chats and should not include control elements. A good DFD should; Have no data flows that split up into a number of other data flows. Have no crossing lines

54 Not include flowchart loops of control elements
(process “compare” has outgoing data flows that are labeled by the conditions under which a data flow occurs, rather than by the contents of the data flow.) Control Signals From a process Loops

55 Not include data flows that act as signals to activate processes
Input signal ( end of month)

56 Method of describing the process
Structured English Decision tree Decision Table

57 SUMMARY OF ER-DIAGRAM NOTATION FOR ER SCHEMAS
Symbol Meaning ENTITY TYPE WEAK ENTITY TYPE RELATIONSHIP TYPE IDENTIFYING RELATIONSHIP TYPE ATTRIBUTE KEY ATTRIBUTE MULTIVALUED ATTRIBUTE COMPOSITE ATTRIBUTE DERIVED ATTRIBUTE TOTAL PARTICIPATION OF E2 IN R CARDINALITY RATIO 1:N FOR E1:E2 IN R STRUCTURAL CONSTRAINT (min, max) ON PARTICIPATION OF E IN R E1 R E2 N E1 R E2 (min,max) R E

58

59 Questions What is the different between super key and candidate key
Explain the distinctions among the terms primary key, candidate key, and super key.

60 answer A super key is a set of columns that uniquely identifies a row. A Candidate key would be a MINIMAL set of columns that uniquely identifies a row. So essentially a Super key is a Candidate key with extra unnecessary columns in it.

61 Draw notation to the followings
Entity Attribute Relationship Key Attribute Multivalued attributes Derived Attribute Weak Entity Identifying Relationship

62 Conceptual Design Notations Entity Relationship Attribute

63 Conceptual Design Attribute Key Attribute Multivalued attributes
Derived Attribute Weak Entity Identifying Relationship

64 Explain the term ‘Degree’
Number of participating entity types. Unary Relationship A relationship between the instances of a single entity type e.g. Person is married to a Person Employee manages Employees Binary Relationship A relationship between the instances of two entity types e.g. An employee works for a department Employee manages Works-for Employee Department

65 Degree of Relationship Type
Ternary Relationship A simultaneous relationship among the instances of three entity types Supplier s supplies part p to project j Part Supplier Supplies Project

66 Explain term ‘Cardinality’
Cardinality Ratios for Binary Relationships Specify the number of instances of one entity that can (or must) be associated with each instance of another entity. The possible cardinality ratios for binary relationship types are 1:1 1:N M:N

67 Phases of Database Design
Miniworld Requirements collection and Analysis Functional Requirements Data Requirements Functional Analysis Conceptual design High-level transaction Specification Conceptual Schema DBMS-independent Logical design DBMS-specific Logical (Conceptual) Schema Application Program design Physical Design Transaction Implementation Internal Schema Application Programs

68 Entity Types Strong (Regular) Entity
An entity that exists independently of other entity types Employee Weak Entity An entity types whose existence depends on some other entity Dependent

69 Entity Types Identifying Owner
The entity type on which the weak entity type depends e.g. Employee is the Owner of Dependent Identifying Relationship A relationship between a weak entity type and its owner has

70 Attributes Multi-valued Attribute Composite Attribute
An attribute that may take on more than one value for a given entity instance e.g. Employee Skills, Qualifications Composite Attribute An attribute that can be broken down into component parts e.g. Address (Street, City, State, Postal Code) Name (First Name, Middle Initials, Last Name)

71 Key Attribute (Identifier)
An attribute (or combination of attributes) that uniquely identifiers individual instances of an entity type e.g. Emp No Composite Identifier An identifier that consists of a composite attribute e.g. Flight Id (Flight No, Date)

72 Explain ‘Associative entities’
The presence of one or more attributes on a relationship suggests that the relationship may be represented as an entity type. An associative entity is an entity type that associates the instances of one or more entity types and contains attributes that are relevant to the relationship between those entity instances. The associative entity type CERTIFICATE is represented with the diamond relationship symbol enclosed within the entity rectangle.

73 Attributes on relationships
Date Completed Emp id Emp Name Course id Course Title Completes Course Employee

74 A university registrar's office maintains data about the following entities:
courses, including number, title, credits, syllabus, and prerequisites; Course offerings, including course number, year, semester, section number, instructor(s), timings, and classroom; students, including student-id, name, and program; instructors, including identification number, name, department, and title. Further, the enrollment of students in courses and grades awarded to students in each course they are enrolled for must be appropriately modeled. Construct an E-R diagram for the registrar’s office. Document all assumptions that you make about the mapping constraints.

75

76 Consider a university database for the scheduling of classrooms for final exams.
This database could be modeled as the single entity set exam, with attributes course-name, section-number, room-number, and time. Alternatively, one or more additional entity sets could be modeled, along with relationship sets to replace some of the attributes of the exam entity set, as course with attributes name, department, and c-number section with attributes s-number and enrollment, and dependent as a weak entity set on course room with attributes r-number, capacity, and building a. Show an E-R diagram illustrating the use of all three additional entity sets listed.

77

78 University registrar’s tables:
student (student-id, name, program) course (courseno, title, syllabus, credits) course-offering (courseno, secno, year, semester, time, room) instructor (instructor-id, name, dept, title) enrolls (student-id, courseno, secno, semester, year, grade) teaches (courseno, secno, semester, year, instructor-id)

79 Construct an E-R diagram for a car-insurance company whose customers own one or more cars each. Each car has associated with it zero to any number of recorded accidents.

80 1 m 1 0..*

81 person (driver-id, name, address)
car (license, year, model) accident (report-number, date, location) participated(driver-id, license, report-number, damage-amount)

82 Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted.

83

84 Hospital tables: patients (patient-id, name, insurance, date-admitted, date-checked-out) doctors (doctor-id, name, specialization) test (testid, testname, date, time, result) doctor-patient (patient-id, doctor-id) test-log (testid, patient-id) performed-by (testid, doctor-id)

85 Explain the difference between a weak and a strong entity set.
Answer: A strong entity set has a primary key. All tuples in the set are distinguishable by that key. A weak entity set has no primary key unless attributes of the strong entity set on which it depends are included.

86

87 ER DIAGRAM – Entity Types are: EMPLOYEE, DEPARTMENT, PROJECT, DEPENDENT

88 Designing an ER Diagram
Consider the following set of requirements for a University database. Design an ER diagram for this application: The university keeps track of each student's name, student number, social security number, current address and phone number, permanent address and phone number, birthdate, sex, class (freshman, graduate), major department, minor department (if any), degree program (B.A., B.S., ... Ph.D.).  Some user applications need to refer to the city, state, and zip code of the student's permanent address and to the student's last name.  Both social security number and student number are unique for each student. All students will have at least a major department. Each department is described by a name, department code, office number, office phone, and college.  Both the name and code have unique values for each department. Each course has a course name, description, course number, number of credits, level and offering department.  The course number is unique for each course. Each section has an instructor, semester, year, course, and section number.  The section number distinguishes sections of the same course that are taught during the same semester/year; its value is an integer (1, 2, 3, ... up to the number of sections taught during each semester). A grade report must be generated for each student that lists the section, letter grade, and numeric grade (0,1,2,3, or 4) for each student and calculates his or her average GPA.

89 University ER Diagram Department Student Course Section Degree
Major In Department DName DCode OfficeNumber OfficePhone College Name StudentID SSN Birth date Student Sex Minor In Class Address Offer City State Zip Grade_Report Course CName CourseDesc CNumber Credits Letter Grade Instructor Year GPA Belong_To Numeric Grade Section SectionNumber Semester

90 Structured English IF credit limit exceeded THEN IF customer has bad payment history THEN refuse credit ELSE IF purchase above Rs. 1000/= ELSE refer to manager ELSE allow credit

91 Structured English used to
Explain the conditions which occurs in a process. Identify the decisions which makes these conditions occur. Find alternative actions to be taken The process is defined by using three types of statements Sequence structure Decision structure Iteration structure

92 System design Approaches
Modern structured design Information engineering Prototyping JAD RAD Object-oriented


Download ppt "IT2005 System Analysis & Design"

Similar presentations


Ads by Google