Presentation is loading. Please wait.

Presentation is loading. Please wait.

תוכנה.

Similar presentations


Presentation on theme: "תוכנה."— Presentation transcript:

1 תוכנה

2 תוכניות ותוכנות תוכנית – אוסף של פקודות בשפה המובנת למחשב.
תוכנה – אוסף של תוכניות מחשב. Manage the computer resources Provides tools for users Act as an intermediary between organization & stored information

3 חומרה ותוכנה Application software Operating System
3rd generation language 4th generation software tools Programs written for specific application חומרה ותוכנה Operating System Schedule computer events Allocates computer resources Surrounds & controls access to HW Monitor events HARDWARE SYSTEM SOFTWARE APPLICATION SOFTWARE Language Translators Interpreters Compliers Utility Programs Routine operations Manage data

4 סוגי תוכנות תוכנת המערכת (System Software) – מנהלת את משאבי המחשב.
תוכנה יישומית (Application Software) – מסייעת בביצוע משימה (עסקית) מסוימת.

5 תוכנת המערכת מערכת ההפעלה Operating System תוכניות שירות.
Allocation & Assignment Allocates resources to the application jobs in the execution queue Provides location in the primary memory Controls the input/output, peripherals,communication devices Scheduling Schedules, prioritizes, & coordinates jobs Monitoring Monitors the activities of the O/S תוכניות שירות.

6 מושגים בתחום מערכות הפעלה
Multiprogramming – A method of executing more than one programs concurrently using the same computer.Only one program is actually using the CPU at any given moment but other resources such as input/output can be serviced at the same time. Multitasking – multiprogramming on single-user O/S is called multitasking. Multithreading – is the ability of an O/S to execute different parts of the same program,called threads,simultaneously

7 MULTIPROGRAMMING ENVIRONMENT TRADITIONAL SINGLE-PROGRAM SYSTEM
מושגים בתחום מערכות הפעלה Multiprogramming/ Multitasking Multiprogramming - מספר תוכניות פעילות במקביל Multitasking – multiprogramming במערכת המיועדת למשתמש יחיד OPERATING SYSTEM UNUSED MEMORY PROGRAM 1 PROGRAM 2 PROGRAM 3 MULTIPROGRAMMING ENVIRONMENT OPERATING SYSTEM UNUSED MEMORY PROGRAM 1 TRADITIONAL SINGLE-PROGRAM SYSTEM

8 מושגים בתחום מערכות הפעלה - המשך
Time slicing/ sharing – מספר רב של משתמשים עושים שימוש באותו מעבד. המעבד מקציב פרק זמן קצוב לכל משתמש.

9 מושגים בתחום מערכות הפעלה - המשך
Parallel processing – מספר מעבדים, כל אחד מטפל בחלק מתוכנית או בתוכנית אחרת. Program CPU TASK 2 TASK 3 TASK 1 RESULT

10 מושגים בתחום מערכות הפעלה - המשך
Virtual memory- שיטת עבודה עם זיכרון משני, המדמה את הזיכרון הראשי. המערכת קובעת אילו חלקים יימצאו בזיכרון הראשי, ומתי הם יוצאו על מנת להכניס חלקים אחרים. גודל חלקים אילו יכול להיות קבוע (Page 2-4Kb)או משתנה(Segment) באופן כזה מספר רב של תוכניות נמצא בזכרון הראשי שאר החלקים שלא נעשה בהם שימוש ברגע נתון נמצאים בזכרון משני יתרון – מספר רב של תוכניות ניתנות להפעלה במכונה אחת

11 ממשק משתמש ממשק פקודה ממשק גרפי
(User Interface = UI) - "נקודת המגע" בין המערכת למשתמש ממשק פקודה (command line) המשתמש מפעיל את המערכת ע"י הקשת פקודות טקסטואליות ממשק גרפי (Graphical User Interface = GUI) המשתמש מפעיל את המערכת בעזרת סמלים גרפיים ואמצעי הצבעה

12 תפקידי מערכת ההפעלה תזמון משימות וקביעת עדיפויות.
ניהול הזיכרון הראשי והקצאתו למשימות שונות. ניהול התקני קלט/ פלט. תקשורת עם המשתמש.

13 מערכות הפעלה נפוצות Windows(XP,2000,CE etc) Mac OS
Unix (machine independent) Linux (Unix-like open-source software,shareware OS) PALM OS

14 תוכניות שירות תוכניות עזר (ניהול קלט/פלט, תקשורת וכד')
סביבות פיתוח תוכנה

15 תוכניות עזר מאפשרות עבודה נוחה יותר עם המחשב.
מאפשרות ניצול יותר של משאבי המחשב.

16 סביבות פיתוח תוכנה שפת תכנות היא שפה הקרובה לשפת האדם (בד"כ), בעלת אוצר מילים מוגבל וחוקים תחביריים נוקשים, שמטרתה הוא מתן פקודות לביצוע ע"י המחשב. אוסף פקודות הנכתב בשפת תכנות (תוכנית) עובר תרגום לשפת מחשב(binary machine code) על מנת שהמחשב יוכל לבצע את הפקודות.

17 OTHER OBJECT CODE MODULES
תהליך התרגום של תוכנית COMPILER LINKAGE EDITOR OTHER OBJECT CODE MODULES SOURCE CODE PROGRAM OBJECT CODE LOAD MODULE התכנית המקורית מוזנת למחשב (קלט) התכנית נקלטת ע"י תכנית שירות שנקראת "מהדר" – Compiler המהדר מתרגם את התכנית לשפת מכונה (וגם בודק שגיאות תחביריות) התכנית בשפת מכונה מאוחסנת בזכרון המחשב

18 דורות בעולם התכנות דור ראשון – שפת מכונה.(0 & 1 )
דור שני – שפת סף (Assembly) תלויה בסוג מכונה/מעבד עושה שימוש בפקודות (e.g., load,sum) דור שלישי – שפה עילית (high level language) דור רביעי –nonprocedural/less procedural,natural language

19 דורות בעולם התכנות - המשך
שפות דור שלישי: FORTRAN COBOL BASIC PASCAL C/ C++ Java

20 דורות בעולם התכנות - המשך
סוגי שפות דור רביעי וחבילות תוכנה : Query languages:high-level,interactive,online language for retrieving data stored in databases or files(e.g., some of SQL functionality) Report generators:software for creating customized reports,provide more control over data formatting & manipulation (e.g., some of Crystal functionality) Graphics languages :computer language that displays data from files or databases in graphic format (e.g., some of SAS functionality) Application generators:software that can quickly generate entire IS application using preprogrammed modules (e.g., Microsoft FrontPage Web development) Very High-Level Programming Languages:generate program code with fewer instructions than conventional language ,designed as productivity tools (e.g., APL) Application Software Packages:A prewritten,preceded commercially available set of programs that eliminates the need to write SW programs for certain functions (e.g., SAP) PC Software tools: word processing SW,desktop publishing SW,spreadsheets,data management SW,presentation graphics SW, SW,Web browser,groupware

21 Object Oriented Programming
גישת עיצוב ותכנות בה התוכנית מאופיינת כעצמים בעלי תכונות ופעולות מוגדרות עליהם עליהם מאפיינים של גישה זו: ייצוג טוב יותר של המציאות Encapsulation- סגירות Reusability- שימוש חוזר inheritance- הורשה מאובייקט לאובייקט (Panda is a Mamal) Abstraction and information hiding Mammal Endangered Fox Bear Panda שעון מעורר כעצם כפתורים אנלוגי / דיגיטאלי עגול / מרובע צבע מחוגים תכונות פעולות כוון שעה כוון צלצול הפעל צלצול נתק צלצול

22 Object Oriented Programming
Class vs. Object Polymorphism Overloading Visual Programming UML – Unified Modeling Language Java – platform-independent,object-oriented programming language Active-X

23 Web standards - basics HTML – Hypertext Markup Language
Page description language for creating Web pages & other hypermedia documents XML – eXtensible Markup Language General-purpose language that describes the structure of document & supports links to multiple documents,allowing data to be manipulated by the computer.Used for both Web application & non-Web application

24 תוכנה יישומית תוכנה לשימוש משתמש קצה. סוגי תוכנות:
תוכנה לשימוש משתמש קצה. סוגי תוכנות: חבילות תוכנה אופקיות – מיועדות לבצע סוג מסוים של פעילות בתחומים עיסקיים שונים (עיבוד תמלילים, גליון אלקטרוני). חבילות תוכנה אנכיות – עונות על רוב הצרכים בתחום מסוים (הנהלת חשבונות, ניהול משאבי אנוש). מערכות תוכנה ייעודיות – מפותחות ספציפית עבור גורם מסוים (מינהל סטודנטים). ASP - Application Service Provider

25 נתונים: ניהולם וארגונם

26 הצורך ב- DBMS Traditional file environment (file system)
Data Redundancy & Confusion Program-Data Dependence Lack of Flexibility Poor Security Lack of Data Sharing & Availability The Database Approach to Data Management BDMS- Database Management System A collection of data organized to service many applications at the same time by storing & managing data so that they appear to be in one location

27 DB,DBMS Database - A collection of data organized to service many applications at the same time by storing & managing data so that they appear to be in one location BDMS(Database Management System) Special software to create & maintain a DB & enable business applications to extract & to populate data without having to create separate files or data storage definitions DBMS acts as an interface between application programs & physical data files Separating the logical & physical views of the data

28 מושגי יסוד שדה - אוסף של bytes המייצג עובדה (FIELD).
רשומה – אוסף של שדות שיש ביניהם קשר (RECORD). (עשוי לייצג יישות) שדה מפתח - שדה המקבל ערך ייחודי עבור כל רשומה (KEY). קובץ – אוסף של רשומות דומות (FILE). בסיס נתונים – אוסף של קבצים DATABASE. הייררכיה: Database File (Table) Record Field Byte Bit

29 Database Management System (DBMS)
מערכת המאפשרת הקמה, אחזקה ושימוש בנתונים, ללא קשר לתוכנה היישומית שתשתמש בנתונים מרכיבים של DBMS Data Definition Language – שפה בעזרתה מגדירים את הנתונים שבבסיס הנתונים (content & structure of DB) Data Manipulation Language – שפה בעזרתה מבצעים פעולות על הנתונים בבסיס הנתונים (data extraction ) Data Dictionary – אוסף הגדרות של הנתונים בבסיס הנתונים(data characteristics,physical representation,data inventory )

30 תכונות של מסד נתונים ו- DBMS
בטיחות הנתונים. שיתוף נתונים. תיעוד. הפקת דוחות. סיוע בעיבוד נתונים אי תלות בין נתונים לתוכנות יישומיות. הפרדת נתונים מהתוכניות. מניעת כפילות נתונים. גיבוי והתאוששות. איכות הנתונים

31 מודל נתונים לוגי שיטות שונות לייצוג מבנה הנתונים בבסיס הנתונים. שיטות מקובלות כיום: מודל טבלאי/ יחסי/ רלאציוני - RDBMS 2D tables called Relations Each table consist of Tuples מודל מכוון עצמים - OODBMS Hybrid object-relational DBMS מודל נתונים רב מימדי Cube DW/OLAP מודל נתונים היררכי – Treelike Structure 1-M מודל נתונים רשתי Network Structure M-M -

32 המודל הטבלאי/ יחסי/ רלאציוני
הנתונים מיוצגים בטבלאות. שדה – שורה בטבלה. רשומה – שורה בטבלה.

33 Standard Query Language דוגמא לשאילתות בשפת SQL
שפת שאילתות (כולל אד-הוק) שהפכה לסטנדרט גישה ועדכון מסדי נתונים דוגמא לשאילתות בשפת SQL SELECT Part_Number, Part_Desc,Unit_Price FROM PART; FROM PART WHERE Unit_Price<25; SELECT PART.Part_Number, SUPPLIER.Supplier_Number, SUPPLIER.Supplier_Name FROM PART,SUPPLIER WHERE PART.Supplier_Number = SUPPLIER.Supplier_Number

34 עיצוב בסיסי נתונים מתבצע ברמות שונות:
הרמה הלוגית – מתכננים את המבנה מחוץ לבסיס הנתונים (במסמך תיכנון). לדוגמא ERD – Entity Relationship Diagram הרמה הפיזית- מיישמים את התיכנון בבסיס הנתונים עצמו באמצעות DBMS. Distributed DB – מאוחסן ביותר מרמה פיזית אחת

35 ארכיטקטורה של מערכות מידע

36 ארכיטקטורה המבנה של היחידות הפיזיות המרכיבות את המערכת, והקשרים ביניהן.

37 מבנים אפשריים של מערכות מידע בארגון
Centralized System – מערכת ריכוזית בה מתבצעים כל העיבודים, הניהול והקצאת המשאבים, ביחידה מרכזית. Decentralized System – מערכת מבוזרת לחלוטין בה העיבודים, הניהול והקצאת המשאבים נעשים ביחידות אוטונומיות בארגון. Distributed System - – מערכת המצויה על הרצף שבין מערכת ריכוזית לביזורית

38 יתרונות ריכוזיות עלויות נמוכות יותר. ניהול כוח אדם אפקטיבי.
ניצול טוב של משאבי המערכת. אחידות ואפשרות לשילוב. הקצאת משאבים אפקטיבית. התאמה לתכנון כלל ארגוני. אמצעים טובים לאבטחה, גיבוי ושחזור.

39 יתרונות ביזוריות הנעה ומעורבות של המשתמשים. בקרה טובה של המשתמשים.
זמני תגובה טובים למשתמשים. התאמה לצרכי המשתמשים. נוחות בביצוע שינויים מקומיים.

40 מבנים אפשריים של חלוקת תפקידים בין שרתים ותחנות עבודה (לקוחות)

41 ארכיטקטורת שרת/ לקוח CLIENT SERVER REQUESTS DATA, SERVICE
משאבים מוגבלים משאבים רבים

42 מרכיבי יישום תצוגת יישום – מסכי מימשק המשתמש (presentation layer)User Interface Layer לוגיקת היישום – הכללים על-פיהם מתבצעות הפעולות הכלולות ביישום ,Business Logic Layer ניהול נתונים – טיפול בגישה לנתונים (כתיבה, עידכון, מחיקה, שליפה והצגה) ,Data Access Layer בארכיטקטורת שרת-לקוח כל אחד ממרכיבי היישום יכול להיות מאוחסן בשרת או בלקוח

43 קריטריונים לחלוקת המשימות בין השרת ללקוח
כמות המידע שתעבור על-גבי רשת התקשורת. שליטה ובקרה. מורכבות ההפרדה. ניצול ואיזון המשאבים.

44 אפשרויות לנקודת הממשק בין השרת ללקוח
תצוגה מבוזרת. תצוגה על ידי הלקוח. ביזור לוגיקת היישום שרת נתונים. ניהול נתונים מבוזר.

45 אפשרויות לנקודת הממשק בין השרת ללקוח
Data Logic Interface לקוח

46 ארכיטקטורת שרת/ לקוח חסרונות:
יש צורך בכתיבת תוכניות מתאימות לארכיטקטורה. עומס על השרתים. קושי בניהול, פיקוח ותחזוקה יתרונות: תעבורה לא גבוהה. אין בעיות של עקביות נתונים. אבטחת נתונים פשוטה.

47 סיכום למדנו מהי תוכנה, ואלו סוגי תוכנות קיימים:
מערכות הפעלה, תוכנות שירות, תוכנות יישומיות הצגנו מושגים בסיסיים במערכות הפעלה למדנו על דורות של שפות תיכנות למדנו על איחסון נתונים בעבר, וכיום (DBMS) הצגנו את מודל הנתונים הרלציוני למדנו על ארכיטקטורה בכלל, וארכיטקטורת שרת-לקוח בפרט


Download ppt "תוכנה."

Similar presentations


Ads by Google