פרוייקט באקסס

פרוייקט באקסס

לפרוייקט צריך לצרף תרשים ERD? מישהו יכול להסביר לי בקצרה מה זה
 

duducohn

New member
תרשים ERD

נתחיל בראשי תיבות: ERD - Entity Relationshio Diagram. תרשים ER הוא בעברית תרשים ישויות קשרים. מה זה? מערכות מידע בנויות ממספר רכיבים: נתונים, קשרים בין הנתונים ופעולות שניתן לבצע על פעולות אילו. הנתונים עצמם מאוחסנים ב"תבניות" שנקראות בסיסי נתונים. בדרך כלל לכל מערכת בסיס נתונים אחד. בסיס הנתונים עצמו מורכב ממבנים שנקראים טבלאות. טבלאות ב- Access אני מניח שאתה כבר מבין ויודע. הבעייה היא כיצד מגדירים את הטבלאות ובצורה *** נכונה *** ? תרשים ER יכול לסייע לנו בזאת. כיצד? אנחנו מגדירים מודל המורכב ממספר מצומצם של רכיבים: ישות שזה "משהו" שאוספים עליו מידע במערכת. מקובל לסמן ישות בסימן מלבן כאשר בתוך המלבן רושמים את שם הישות. דוגמאות לישויות - תלמיד, מחלקה, קורס. תכונה שהיא מאפיין כלשהו של הישות. מקובל לסמן תכונה באליפסה, כאשר בתוך האליפסה רושמים את שם התכונה ואת האליפסה מחברים בקו לישות אליה היא שייכת. דוגמאות לתכונות של הישות תלמיד - שם תלמיד, מ"ז תלמיד, כתובת וכדומה, (אם שמת לב אז תכונה מזכיר לך משהו?). הרכיב השלישי הוא קשר שבעצם מבטא איזו תלות סמנטית בין מספר ישויות. מקובל לסמן קשר במעוין, כאשר בתוך המעוין רושמים את מהות הקשר. נקח דוגמא מהמקרה שלנו. יש לנו ישות שנקראת תלמיד. יש לנו ישות שנקראת קורס. מה הקשר ביניהן? נכון, תלמיד לומד קורס. לכן, אנחנו נסרטט מלבן שבתוכו יהיה רשום תלמיד (כמובן שמסביב למלבן זה נסרטט אליפסות שמתארות את תכונות הישות תלמיד). אנחנו נסרטט מלבן שבתוכו יהיה רשום קורס ואליפסות שמתארות את תכונות הקורס. בין מלבן התלמיד לבין מלבן הקורס נסרטט מעוין, נחבר אותו בקו אחד לישות תלמיד ובקו אחד לישות קורס. בתוך המעוין נרשום את מהות הקשר. במקרה שלנו "לומד ב". תתחיל בבקשה בזה, אח"כ נמשיך.
 

magnet מושך

New member
סחטן על השם בבקשה

הי ERD Entity relationship diagram --- תרשים ישויות קשרים- באיזו מסגרת זה קורה שמבקשים לכלול בפרוייט חומר לא ידוע התבקשת להכין תרשים ERD בלי לדעת מה זה? אני מבין שאתה גם לא מכיר את תהליך התכנון והניתוח של מערכת מידע לכן תשובתי תהיה מלאה אך לא מעמיקה בתקווה שתבין. ERD - הוא מודל העוסק בניתוח ואיפיון מערכת מידע ומתמקד בניתוח מבנה הנתונים מונחים בסיסיים - ישות - גורם לגביו אנו מעוניינים לאגור מיידע (טבלה) תכונה - ליישות יש תכונות שהן השדות בטבלה. קשרים - הקשר בין הישויות (שתיים או יותר )מבטא תלות שיש לה משמעות. ERD - הוא שלב שבו אנו מארגנים באופן ויזואלי את הישויות שלגביהן אנו מעונינים לשמור(לאגור) מידע ואת סוג הקשרים בינהן. עזוב זה לא יעבוד כך תן את המייל שלך ואני אשלח לך חומר בנושא. או שתעיין בספר הבא: "תכנון ניתוח ועיצוב מערכות מידע" כרך ב' מאת פרץ שובל בהצלחה
 

מאלתרת

New member
ועוד איך קורה

ודורשים להכליל בתיעוד כל מיני תרשימים בלי ללמד תחילה כמו שצריך. בהזדמנות זאת גם אני שואלת שאלה כללית: מה ההבדל בין ניתוח מערכת שמכילה DSD וDFD ושד יודע מה עוד לתכנון מסד נתונים המכיל ERD ותהליך נרמול. גם בנרמול אני מבינה יש גישות שונות, אז מעניין גם לדעת מה ההבדל והיתרונות בין נירמול בשלבים לשיטת BDSF(אולי טעיתי בשם). אשמח אם מישהו מהמקצוענים פה יעשה קצת סדר בבלגאן הזה.
 

duducohn

New member
סדר בדברים - DSD

DSD - Data Storage Diagram: תרשים שמתאר את הקבצים במערכת (הדגש הוא על המילה קבצים) עם הקשרים ביניהם, כאשר הקשרים ביניהם באים לידי ביטוי בחצים המציינים את הקשר ואת כיוונו. דוגמא: קובץ תלמיד שמכיל את פרטי התלמיד וגם קודים של הקורסים שהוא לומד. קובץ קורסים שמכיל קוד קורס, שם קורס, מחלקה וכו. נניח שאני רוצה את פרטי התלמיד ושמות הקורסים שהוא לומד. בקובץ תלמיד מופיע רק קוד הקורס, לכן עלי לשלוף באמצעות קוד הקורס את הרשומה מקובץ קורסים ואז אוכל לדעת את שם הקורס. בתרשים DSD אסרטט את שני מלבנים עם השדות הרלוונטים בתוכם, כולל כמובן קוד קורס בתלמיד וקוד קורס בקורס. בנוסף אסרטט חץ מכיוון שדה קוד קורס בקובץ תלמיד לכיוון שדה קוד קורס בקובץ קורס. (אגב אם שמת לב זה שימוש במה שמוגדר כמפתח זר). כעת לפי הסרטוט ניתן לדעת כיצד לשלוף מידע מכלל המערכת וזאת לפי החיצים המקשרים. הערה חשובה - שיטה זו היא די מיושנת מהסיבה הפשוטה שהיא מתאימה למערכות קבצים שאינן בסיסי נתונים. למערכות בסיסי נתונים משתמשים במודלים אחרים. אגב, מאוד מפליא אותי שעוד מלמדים את השיטה הזו בבית הספר.
 

duducohn

New member
סדר בדברים - DFD

DFD - Data Flow Diagram: תרשים המתאר את זרימת המידע במערכת. הערה חשובה - נא לא להתבלבל עם המונח תרשים זרימה שזהו תרשים שמתאר אלגוריתם לפתרון בעייה. בעיקרון תרשים DFD זהו תרשים שאמור לסייע לנו להבין את זרימת המידע במערכת תוך שימוש ב- 4 סמלים בסיסיים. ב- DFD מנסים לתקוף את הבעייה מהכיוון של הבנת התהליכים המתבצעים במערכת. ב- ERD מנסים לתקוף את הבעייה דרך הבנת הנתונים של המערכת והקשרים ביניהם. בשתי השיטות חובה לבצע תהליך של נרמול. כאשר ב- ERD הנרמול הוא פשוט פעולה טכנית הנגזרת ישירות מהתרשים. ב- DFD ניתן לבצע נרמול גם בצורות נורמליות 1,2 ו-3 כנראה מה שאת מגדירה בשלבים. ניתן גם לבצע נרמול ישיר נקרא BCNF (כנראה לזה התכוונת). וגם לבצע בשיטת ERD. אוכל לתת לך כלל אצבע שאני נוקט בו. כאשר המערכת היא גדולה ומורכבת אני מעדיף להשתמש ב- DFD כדי שאוכל להבין את זרימת המידע והתהליכים הקורים המערכת. כאשר המערכת היא קטנה ולא מסובכת ויחסית די בקלות אפשר להבין את התהליכים המתרחשים בה, אני מעדיף לתקוף את הבעייה מכיוון ה- ERD כי זה הרבה יותר קצר. ספר מצויין שעוסק בנושא צויין למעלה: תכנון ועיצוב מערכות מידע, כרך ב' בהוצאת האוניברסיטה הפתוחה. מחברו הוא פרופ' פרץ שובל. הערה אחרונה לגבי דרישות בתיעוד בלי ללמד תחילה כמו שצריך. אני די מסכים איתך והלוואי וזה היה נכון רק במחשבים. הבעייה שזה קורה גם במקצוע הרבה יותר חשוב ואני מתכוון למתמטיקה. יצא לי לסייע לתלמידים במקצוע זה ולעיתים אני המום מהצורה שבה מלמדים מקצוע זה. אח"כ מתפלאים מדוע התלמידים לא מתקשים בחומר ושונאים את המקצוע. אגב ספר מצויין הוא כפי
 

מאלתרת

New member
../images/Emo51.gif

דודו, תודה על התשובה ברורה ועיניינית דווקא התכוונתי לבסיסי נתונים טבלאיים. 3 שאלות נוספות אם אפשר: א) האם מקובל ו/או מומלץ לצרף את 2 השיטות האלה, כלומר להגדיר תהליכים DFD ולעבור ישר לישויות קשרים ה- ERD. ב)לגבי שיטה BCNF שמעתי שהיא חדישה ואינה מקצועית, המורה אמר לי שמקצוענים מנרמלים לפי 1NF 2NF 3NF ולא עושים סלט - מה דעתך? ג)מה דעתך על הספר "בסיסי נתונים טבלאיים ושפת SQL" המחבר רז הייפרמן. כעת מעניין אותי הקטע תכנון בסיסי נתונים ולא השפה. המון תודה.
 

duducohn

New member
תשובות לפי הסדר ההפוך

אתחיל בתשובות בסדר הפוך. ג . הספר של רז הייפרמן. ראשית, יש לו שני ספרים בשם כזה. ישן וחדש. שניהם מצויינים והם עוסקים באותו נושא. כאשר החדש כולל גם התייחסות לבסיסי נתונים מונחי עצמים ( Object Oriented ). אם את צריכה רק בסיסי נתונים טבלאיים אז זה לא משנה איזה מהדורה יש לך. שתי המהדורות מצויינות. שנית, הספר הזה אינו עוסק באיפיון (תרשימי DFD וכו) אלא, רק בבסיסי נתונים, שפת SQL וכו. כך שאם את צריכה להבין ולבצע אפיון של המערכת. אז כפי שצויין על ידי קודמי ועל ידי הספר בהא הידיעה הוא ספרו של פרופ' פרץ שובל. ב . מטעמי נימוס לא אומר מה דעתי על המורה. אבל מתשובתי תביני. המודל שנקרא נרמול בצורות 1NF, 2NF 3NF היה המודל הראשון של תהליך הנרמול והוא פותח על ידי ד"ר קוד. יותר מאוחר הסתבר שישנם מקרים שהמודל אינו מטפל בהם ואז המודל שוכלל על ידי ד"ר קוד ועוד מדען מחשבים שנקרא בויס. המודל המשוכלל נקרא BCNF - בויס-קוד Normal Form. לכן, אין שום קשר למקצוענות או משהו מעין זה. בעיקרון להערכתי למעלה מ- 95% מהמקרים בשתי שיטות הנרמול נקבל אותה תוצאה. אבל כפי שציינתי ישנם מקרים שבהם 1-2-3 לא עולה עליהם ואילו BCNF כן. אגב, יותר מאוחר הסתבר שגם BCNF לא מספיק ואז המודל שוכלל גם לצורות 4NF ו- 5NF וכאן הוכח שזה מכסה את כל המקרים. לגבי הסלט. כפי שציינתי BCNF יותר משוכלל אבל להערכתי לא תהיה לך בעייה להגיע לתוצאה הנכונה גם דרך 1-2-3. לכן, תעשי במה שאת מרגישה יותר נוח ויותר קל. א . אפשרי לעשות DFD ולאחר מכן ERD. אבל אני אינני ממליץ. אסביר מדוע. כפי שכבר ציינתי ב- DFD אנו תוקפים את הבעייה דרך הבנת התהליכים. כאשר אחד התוצרים של תרשימי ה- DFD הוא מאגרי המידע כולל השדות המוכלים בהם ומילון הנתונים הצמוד אליהם. לכן, כל שנותר לי הוא פשוט לבצע את תהליך הנרמול לפי כללי הנרמול. אם לעומת זאת אפנה לתרשים ERD יהיה עלי לבצע תהלך חשיבתי נוסף של הבנת הנתונים והקשרים ביניהם, כולל סרטוט התרשים. כפי שכבר ציינתי קודם אני נוהג להתמודד עם בעייה באופן הבא: בעייה גדולה ומורכבת אז תרשימי DFD, בהמשך נרמול וכו. בעייה קטנה שיחסית קל להבין את התהליכים בה אז ישירות לתרשים ERD, מהסיבה שזה יותר קצר.
 
למעלה