Systems Design Tools People Data Job Design Interface
Systems Design Tools People Data Job Design Interface Design Entity Relationship Diagram File & Database Design Selection Matrices Process Network Data Flow Diagram Module & Program Design Data & Process Distribution Network Design Technology Select Architecture Acquire Hardware and Software Design New System ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 7
People Data Process Network Design Phase Technology Entering the design phase, technology begins to take on a larger role. Essential Models People Model Data Model Division Process Model Denver Department Validate Time. Sheet Interface & Job Design Network Model Calculate Pay Report Pay LA NYC Phoenix Employee File/DB Design Program Design Distribution Design Implementation Models ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 8
SYMBOLS FOR DATA FLOW DIAGRAMS (DFD) DATA FLOW PROCESS EXTERNAL ENTITY DATA STORE ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 15
DATA FLOW DIAGRAM GENERATE BALANCE GENERATE BILL CUSTOMER FILE PAYMENT FILE GENERATE REPORT CUSTOMER MANAGER ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 16
CONTEXT DIAGRAM • DATA FLOW DIAGRAM FOR ENTIRE SYSTEM WITH MAJOR INPUTS, OUTPUTS * INPUT EN TITY PROCESS ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי OUTPUT ENTITY 18
Accounts Payable (AP) DFD Invoice Vendor Invoice 1. 0 Approve & Prioritize Bills Check AP Statement Bank Check Info and New Balance 2. 0 Prepare Check Selected Bill Prioritized Bills Shoe Box Old Balance Check Register Context Diagram Balanced Checkbook Register Info 3. 0 Compare ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי Statement Bank 24
Sales Order (SO) DFD Customer Sales Order Process Sales Order Picking Tickets Order Filling Station Daily Sales Report Sales Manager Context Diagram Customer 2. 0 Enter Order Entered Sales Order 1. 0 Open Mail Sales Order Form Entered Sales Orders History File Inventory Master Records to be updated Inventory Master File Updated Inventory Master Records Daily Order Sales Picking Filling 4. 0 Tickets Station Print Daily Sales Report ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע Manager Daily Sales Report 25 פרופ’ שיזף רפאלי 3. 0 Update Inventory Master File
STRUCTURED ANALYSIS Deliverables : התוצרים • DATA DICTIONARY: Controlled Definitions of Descriptions of all Data, such as Variable Names & Types of Data (ER) • PROCESS SPECIFICATIONS: Describes Logic of Processes at Module Level טבלאות החלטה , DFD, פסאודוקוד * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 26
STRUCTURED DESIGN • DESIGN RULES / TECHNIQUES TO DESIGN SYSTEM, TOP DOWN IN HIERARCHICAL FASHION • STRUCTURE CHART • STRUCTURED PROGRAMMING • MODULE • SEQUENCE CONSTRUCT • SELECTION CONSTRUCT * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 27
STRUCTURE CHART PROCESS PAYROLL GET VALID CALCULATE WRITE INPUTS PAY OUTPUTS CALCULATE GROSS PAY NET PAY GET VALIDATE UPDATE WRITE INPUTS MASTER FILE OUTPUTS (WHITE BOXES ARE MODULES) ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 28
STRUCTURED PROGRAMMING • DISCIPLINE TO ORGANIZE, CODE PROGRAMS • SIMPLIFIES CONTROL PATHS • EASY TO UNDERSTAND, MODIFY • MODULE HAS ONE INPUT, ONE OUTPUT * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 29
STRUCTURED PROGRAMMING • MODULE: Logical Unit of Program. Performs Specific Task(s) • SEQUENCE CONSTRUCT: Sequential Steps or Actions in Program Logic; Streamlines Flow • SELECTION CONSTRUCT: IF Condition R is True THEN Action C ELSE Action D • ITERATION CONSTRUCT: WHILE Condition is True DO Action E * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 30
FLOW CHART SYMBOLS PROCESS DOCUMENT PREDEFINED PROCESSING MERGE DECISION DISK MANUAL OPERATION TAPE INPUT/OUTPUT COMM LINK ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 32
SYSTEM FLOWCHART 1 START 2 READ PRINT REPORT >$10, 000 PROCESS A <$10, 000 2 PROCESS B MORE? END 1 ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 33
PROCESS A SYSTEM FLOWCHART SEQUENCE PROCESS B R TRUE PROCESS D PROCESS E TRUE PROCESS C S SELECTION ITERATION ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 34
OBJECT - ORIENTED SOFTWARE DEVELOPMENT • • • DE-EMPHASIZES PROCEDURES SHIFTS FOCUS FROM MODELS & DATA TO OBJECTS, WHICH COMBINE DATA & PROCEDURES • OBJECTS REUSABLE • SYSTEM: Classes; Objects; Relationships • REDUCES DEVELOPMENT TIME & COST * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 35
COMPUTER AIDED SOFTWARE ENGINEERING (CASE) • AUTOMATION OF SOFTWARE METHODOLOGIES • PRODUCES CHARTS; DIAGRAMS; SCREEN & REPORT GENERATORS; DATA DICTIONARIES; PROGRESS REPORTS; ANALYSIS; CHECKING TOOLS; CODE; DOCUMENTATION * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 38
COMPUTER AIDED SOFTWARE ENGINEERING (CASE) INCREASES PRODUCTIVITY & QUALITY: • ENFORCES DEVELOPMENT DISCIPLINE • IMPROVES COMMUNICATION • DESIGN REPOSITORY FOR OBJECTS • AUTOMATES TEDIOUS TASKS • AUTOMATES TESTING & CONTROL • REQUIRES ORGANIZATIONAL DISCIPLINE * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 39
SOFTWARE REENGINEERING • SALVAGES & UPGRADES AGING SOFTWARE • DELAYS EXPENSIVE REPLACEMENT • REVERSE ENGINEERING: Converting Existing Programs, Files, Database for Use in New Applications * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 40
SOFTWARE REENGINEERING • REVISE DESIGN & PROGRAM SPECIFICATIONS • FORWARD ENGINEERING: USE REVISED MATERIALS TO GENERATE NEW, STRUCTURED CODE; STRUCTURED & MAINTAINABLE SYSTEM • * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 41
END-USER DEVELOPMENT • END-USERS DEVELOP INFORMATION SYSTEM • WITH LITTLE HELP FROM • TECHNICAL SPECIALISTS • USING 4 th GENERATION TOOLS • * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 47
END-USER DEVELOPMENT • STRENGTHS: • INCREASED PRODUCTIVITY USING 4 th GENERATION TOOLS • QUERY LANGUAGES • GRAPHICS • REPORT GENERATORS • APPLICATION GENERATORS • SHORT DEVELOPMENT TIMES • * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 48
END-USER DEVELOPMENT WEAKNESSES: • RELATIVELY INEFFICIENT • SLOW TRANSACTION PROCESSING • MAY CARRY HIGH COST • LARGE FILES CAN DEGRADE PERFORMANCE • NONPROCEDURAL APPROACH MAY HAMPER LOGIC & UPDATING REQUIREMENTS * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 49
END-USER DEVELOPMENT MANAGEMENT BENEFITS: • IMPROVED REQUIREMENTS DETERMINATION • INCREASED USER INVOLVEMENT & SATISFACTION • DEVELOPMENT CONTROLLED BY USERS • REDUCED APPLICATION BACKLOG * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 50
END-USER DEVELOPMENT MANAGEMENT PROBLEMS: • INSUFFICIENT REVIEW / ANALYSIS • LACK OF STANDARDS & CONTROLS • UNCONTROLLED DATA • PROLIFERATION OF “PRIVATE” INFO SYSTEMS * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 51
END-USER DEVELOPMENT INFORMATION CENTER: • SPECIAL FACILITY WITHIN ORGANIZATION • PROVIDES TRAINING, SUPPORT FOR • END-USER COMPUTING • * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 52
OUTSOURCING CONTRACTING: • • • COMPUTER CENTER OPERATIONS TELECOMMUNICATIONS NETWORKS APPLICATION DEVELOPMENT TO EXTERNAL VENDORS * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 53
ADVANTAGES OF OUTSOURCING: • • ECONOMY SERVICE QUALITY PREDICTABILITY FLEXIBILITY MAKING FIXED COSTS VARIABLE FREEING UP HUMAN RESOURCES FREEING UP CAPITAL * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 54
DISADVANTAGES OF OUTSOURCING: • LOSS OF CONTROL • VULNERABILITY OF STRATEGIC INFORMATION • DEPENDENCY * ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 55
PENALTY FOR PROBLEMS REWARDS & PENALTIES OF OUTSOURCING HIGH LOW AIRLINE RESERVATIONS PAYROLL PLANT SCHEDULING HIGH OUTSOURCING POTENTIAL ENGINEERING ANALYSIS TOOLS CAFETERIA ACCOUNTING REWARDS FOR EXCELLENCE ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי HIGH 56
Design Major Design Alternatives • Build Custom Solution – technical professionals – end users – outside contractors קנה • Buy Application Package בנה – off-the-shelf – customize from baseline ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי או ? 57
Is there a software package available that meets requirements? No Build custom solution Yes Will major changes be required to package? Acquire package and bring under organization control קנה או בנה Does the application play a strategic role? Yes No One way to decide whether to Build or Buy Yes Build custom solution No Will major changes to package be required? No Yes Acquire package Adapt practices Maintain vendor support Can business change to fit package? No Build custom solution Yes Acquire package Reengineer practices Maintain vendor support
Designing Friendly Systems מכונה - ממשק אדם • • More key points simplicity makes learning possible consistency leverages learning ask not what is on screen, but in user's mind • expect worst-case scenario • filmmakers “story board, ” we prototype ניתוח ותכנון מערכות מידע -- מחשבים ומערכות מידע פרופ’ שיזף רפאלי 60
Operating system functions (2/2) • Coordinator for application programs – Manage resources » memory » devices – Coordinate activities – Manage files • User interface (GUI) CIS 551 62
Why do operating systems matter? • They provide different features – e. g. , memory management, GUI • Programs are written for an O/S – choose applications, then choose O/S • O/S used to be proprietary – choice of O/S dictated choice of hardware CIS 551 63
64 Trends in operating systems • • • Multi-programming Multi-processing Virtual memory Interprocess communications More features – new kinds of I/O supported – better integration of programs • Require more powerful hardware CIS 551
65 CIS 551
66 Program Execution Process current +next 5 slides On the disk: … p : = x + y; write(‘dfile. dat’, p); . . . CIS 551
67 Scene 2 : Act 1 … p : = x + y; write(‘dfile. dat’, p); . . . CIS 551 Compiler Machine instructions
68 CIS 551
69 Scene 2 : Act 2 Saved to Machine instructions CIS 551
70 Scene 2 : Act 3 Use the program CIS 551
71 Scene 3 Machine instructions CIS 551 Copied to RAM Begins to execute
Generations of programming languages • Machine language (1 st) • Assembler language (2 nd) • High-level languages (3 rd) – Ada, BASIC, C, C++, COBOL, FORTRAN, LISP, Pascal, PL/1, etc. – Java, Visual BASIC, C#, etc. • Fourth- and fifth-generation – SQL, Prolog, query languages, etc. CIS 551 73
74 CIS 551
75 CIS 551
77 Object Linking & Embedding 4 Object Linking & Embedding (OLE) allows user to copy text/graphics from one document to another or to embed text/graphics from one program into another program/document 4 Server Application supplies objects user places in other applications 4 Client application accepts objects from other applications 4 Copy copies data from one application & places it in another 4 Link is used when user wants changes made to the server object to appear automatically in all linked client objects 4 Embed is used when user wants an object to become part of the client document CIS 551
OBJECT-ORIENTED PROGRAMMING • COMBINES DATA & PROCEDURES INTO A SINGLE OBJECT • PROGRAM SENDS MESSAGE TO OBJECT TO PERFORM EMBEDDED PROCEDURE • OBJECT’S DATA ENCAPSULATED FROM REST OF SYSTEM • CREATES REUSABLE CODE • REDUCES TIME AND COST OF WRITING SOFTWARE * CIS 551 78
OBJECT-ORIENTED PROGRAMMING • VISUAL PROGRAMMING: SELECT AND ARRANGE OBJECTS RATHER THAN WRITE CODE • CLASS: ALL OBJECTS OF A CLASS HAVE ALL FEATURES OF THAT CLASS • INHERITANCE: SPECIFIC CLASS RECEIVES FEATURES OF A MORE GENERAL CLASS • OVERRIDE: SUBCLASS MAY OVEERRIDE INHERITED METHOD (e. g. : Printout of an HOURLY worker Pay Check may differ from that of a WEEKLY worker) • CIS 551 * 79
OBJECT-ORIENTED PROGRAMMING • JAVA: Sun Microsystems OBJECT-ORIENTED PROGRAMMING LANGUAGE • APPLET: TINY PROGRAM TO EXECUTE SMALL FUNCTION • APPLETS DOWNLOADED FROM NETWORK • RUN ON ANY COMPUTER & OPERATING SYSTEM • RESULT SAVED ON NETWORK, NOT ON PC • ONLY NETWORK VERSION OF SOFTWARE NEEDS UPGRADE * CIS 551 80
81 JAVA • Write Once Run Anywhere (!? ) • Object Oriented Programming Language • Using applets allows: – elimination of need for large & expensive hardware – elimination of lots of storage and maintenance overhead CIS 551
82 . NET (dot Net) • . NET is Microsoft's next-generation Visual Studio development environment, yet another new programming language (C#), and a new data-exchange and messaging framework, based on XML and SOAP. • While java promises platform portability, . NET promises language portability. CIS 551
83 TIME SHARING MANY USERS SHARE LARGE CPU: • TIME IN CPU DIVIDED INTO SLICES (e. g. : 2 MILLISECONDS) • EACH USER HAS ACCESS TO CPU DURING SLICE • SINCE CPU IS FAST, CAN DO MUCH DURING TIME SLICE • USER’S JOB SWAPPED OUT AT END OF SLICE CIS 551*
84 MULTIPROCESSING • TWO OR MORE PARALLEL PROCESSORS IN SYSTEM • PROGRAM CAN BE DIVIDED TO BE PROCESSED BY MULTIPLE CPUs • CAN PROCESS LARGE PROGRAMS MORE RAPIDLY * CIS 551
85 Applications CIS 551
86 Web Services The Generic Web Service Architecture CIS 551
The Turing Machine A device that could determine the truth of mathematical statements without human involvement by following a deterministic sequence of instructions. 89 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
HOW CHARACTERS ARE STORED n n n BIT: Binary Digit. On/Off, 0/1, Magnetic/Not BYTE: Group of bits for one character – EBCDIC- Extended Binary Coded Decimal Interchange Code (8 bits per byte) – ASCII- American Standard Code for Information Exchange (7 or 8 bits per byte) PARITY BIT: extra bit added to each byte to 09/01/2022 help 91 detect errors מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן
What does all this mean? n n n n Pentium IV 950 MHz 32 MB EDO ECC RAM 256 KB pipeline burst cache 17”, SVGA 1024 x 768 Monitor, 85 hz 128 Mb VRAM, 64 bit video 24. 0 GB EIDE Hard Drive (11 ms seek, 16 MB/s transfer) One 3. 5” Diskette Drive 24 x CD ROM drive PCI, USB & ISA slots Sound. Blaster MPEG video 56 k data/fax modem, v. 34, MNP 5 Built-in 10/100 Ethernet Keyboard and mouse מחשבים ומערכות מידע – יסמין ויערה Windows 94 XP גור - יובל דן $? 09/01/2022
TYPES OF MEMORY n n RAM : Random Access Memory – Dynamic: Changes thru processing – Static: Remains constant (power on) ROM : Read Only Memory (preprogrammed) – PROM: Program can be changed once – EPROM: Erasable thru ultraviolet light – EEPROM: Electrically erasable * 96 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
CENTRAL PROCESSING UNIT CONTROL UNIT ROM ARITHMETIC/LOGIC UNIT CLOCK RAM PRIMARY (MAIN) MEMORY 97 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
Try Intel’s museum n http: //www. intel. com/museum/index. htm/ 98 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
History of microprocessors n Intel: 1971 - 4004 1974 - 8080 1982 - 80286 1989 - 486 1993 - Pentium 1995 - Pentium Pro 1999 - Celeron 99 n 2000 transistors n 250, 000 transistors n 5 million transistors n 10 million - billions of transistors מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
Moore’s “Law” Actually, more of an observation or prediction n In the late 1960 s, Gordon Moore (cofounder of Intel) predicted that the number of transistors that could be placed on a single chip would double every year n Not quite right, more like every 18 months n 104 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
COMPUTER GENERATIONS 1. VACUUM TUBES: 1946 -1956 2. TRANSISTORS: 1957 -1963 3. INTEGRATED CIRCUITS: 1964 -1979 4. VERY LARGE-SCALE INTEGRATED CIRCUITS: 1980 -PRESENT 106 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
MICROPROCESSOR VLSI CIRCUIT WITH CPU n n WORD LENGTH: BITS PROCESSED AT ONE TIME MEGAHERTZ: ONE MILLION CYCLES PER SECOND DATA BUS WIDTH: BITS MOVED BETWEEN CPU & OTHER DEVICES REDUCED INSTRUCTION SET COMPUTING (RISC): EMBEDS MOST USED INSTRUCTIONS ON CHIP TO ENHANCE SPEED * 107 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
Advances in # of transistors on a microprocessor 110 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
CLIENT / SERVER NETWORKED COMPUTERS n CLIENT: user (PC, workstation, laptop) requires data, application, communications it does not have n SERVER: component (computer) having desired data, application, communications * n 112 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
CLIENT / SERVER CLIENT REQUESTS SERVER DATA, SERVICE USER INTERFACE DATA APPLICATION FUNCTION NETWORK RESOURCES 113 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
Network Computers (NC) (Oracle and Sun), Or… Net PC : Intel’s industry spec. n A massively pared-down computer that downloads both software and data from the network rather than storing locally. n “Thin Client” n Java’s role n TCO!!! n 114 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
SEQUENTIAL & PARALLEL PROCESSING SEQUENTIAL PARALLEL Program TASK 1 CPU CPU TASK 1 TASK 2 TASK 3 RESULT Program TASK 2 CPU RESULT 115 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
CENTRALIZED / DISTRIBUTED CENTRALIZED: PROCESSING BY CENTRAL COMPUTER SITE – ONE STANDARD – GREATER CONTROL n DISTRIBUTED: PROCESSING BY SEVERAL COMPUTER SITES LINKED BY NETWORKS – MORE FLEXIBILITY – FASTER RESPONSE n 120 מחשבים ומערכות מידע – יסמין ויערה גור - יובל דן 09/01/2022
The End 121 09/01/2022
- Slides: 112