DCSIMG
ויז'ואל סטודיו - בלוג MSDN ישראל

אנחנו בפייסבוק

Browse by Tags

פורסם בתאריך 24/04/2013 08:22 על ידי Eran Sharvit

Visual Studio 2012 Bigבשני הפרקים הקודמים סקרנו את שתי היכולות העיקריות של ה-Fakes, כלומר ה-Stubs וה-Shims. בפרק הזה ניכנס קצת יותר לעומק ונראה איך תוכל להתאים את ה-Fakes לצרכיך באמצעות קובץ הקונפיגורציה.

כאשר אנו מוסיפים Fakes לספריה (“Add Fakes Assembly” – זוכרים?) נוסף לנו באופן אוטומטי קובץ קונפיגורציה אחד או יותר תחת Fakes. כך, למשל, כאשר הוספנו Fakes ל-System DLL נוספו לנו שני קבצים תחת Fakes, בצורה הבאה:

image

(שים לב שהקוד ב-System מחולק למעשה בין System.dll ו-mscorlib.dll ולכן נוצרים שני קבצי Fakes עם הגדרות מתאימות).

עכשיו נניח שאנחנו מעוניינים ליצור Shim ל-Console. זה יכול להיות שימושי מאד כאשר הקוד שלנו מצפה לקלט מהמשתמש, או שולח פלט למסך. למשל:

public static void MultipyFromConsole()
{
var m = Convert.ToInt32(Console.ReadLine());
var n = Convert.ToInt32(Console.ReadLine());
var result = m * n;
var strResult = result.ToString();

Console.WriteLine(result);
}

(נניח לשם הדוגמא שהמתודה הזו היא חלק מה-Multiplier class שהוצג בפרק הקודם).

כדי לבדוק את הקוד, נצטרך לעשות Fake ל-Console. אולם כאשר ננסה לגשת ל- System.Fakes.ShimConsole נגלה שהאובייקט הזה לא קיים. מה עושים?

הסיבה שלא מצאנו את האובייקט היא שספריית ה-mscorlib מכילה אלפי אובייקטים (מעל 3000 ב-.NET 3.5 – תוכל לוודא זאת בקלות על ידי הביטוי typeof(string).Assembly.GetTypes().Count() ). יישום Fakes לכולם יגדיל מאד את ספריית ה-Fakes הנלווית ויוריד את הביצועים. לכן בחרו במיקרוסופט ליישם, כברירת מחדל, Fakes רק לחלק קטן מן האובייקטים.

ומה נעשה אם אנחנו בכל זאת רוצים לבצע Fake ל-Console? לשם כך בא לעזרתנו קובץ ההגדרות mscorlib.fakes. אם נבחר אותו נגלה שהוא מכיל את התוכן הבא:

<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
<Assembly Name="mscorlib" Version="4.0.0.0"/>
</Fakes>

הגדרה זו אומרת לקומפיילר ליישם Fakes לאובייקטים שהוגדרו כברירת מחדל. עכשיו אנחנו מעוניינים להוסיף עליהם את Console Shim. לשם כך נוסיף לקובץ הגדרת ShimGeneration בצורה הבאה:

<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
<Assembly Name="mscorlib" Version="4.0.0.0"/>
<ShimGeneration>
<Add TypeName="Console"/>
</ShimGeneration>
</Fakes>

כעת נכתוב את ה-Unit Test ל- MultipyFromConsole. שימו לב שכעת אנחנו יכולים להשתמש ב- System.Fakes.ShimConsole – שנוצר כתוצאה מההגדרה של ShimGeneration:

[TestMethod]
public void TestMultiplyFromConsole()
{
using (ShimsContext.Create())
{
var numTime = 0;
var multipliers = new string[]{"17", "23"};

System.Fakes.ShimConsole.ReadLine =
() => { return (multipliers[numTime++]);};

int multResult = 0;

System.Fakes.ShimConsole.WriteLineInt32 =
(result) => { multResult = result; };

Multiplier.MultipyFromConsole();
Assert.AreEqual(391, multResult);
}
}

מה עשינו פה?

- בעזרת System.Fakes.ShimConsole.ReadLine החלפנו את מתודת ה-ReadLine במתודה שלנו. כיוון ש-ReadLine נקראת פעמיים מתוך הקוד, כתבנו את המתודה כך שבפעם הראשונה תחזיר "17", ובפעם השניה "23".

- מתודת –WriteLine איננה פונקציה אחת, אלא אוסף של מתודות – לפי הפרמטרים שהיא מסוגלת לקבל. כיוון שבקוד הנבדק אנחנו קוראים ל-WriteLine עם פרמטר מסוג Int32, נצטרך להחליף את המתודה WriteLineInt32, או System.Fakes.ShimConsole.WriteLineInt32. כל מה שאנחנו עושים במתודה התחליפית הוא לשמור את הפרמטר ה"מודפס" כדי שנוכל לבדוק אותו אחר כך.

- כעת כל מה שנשאר לנו הוא להשוות את התוצאה שקיבלנו עם התוצאה המצופה (391)

שימו לב שכעת יש לנו Unit test הבודק קלט ופלט ל-Console, אך יכול לרוץ בכל מקום – כולל Test Agent או Build Server – בלי להזדקק למפעיל אנושי שיימצא באינטראקציה אמתית עם ה-Console.

בעזרת קובץ הקונפיגורציה ניתן להסיר ולהוסיף אובייקטים לייצור Fakes. כך, למשל, התג Clear מורה למערכת לא לייצר אף Fake פרט לאלה שנגדיר במפורש. כך אם נרצה, למשל, להגדיר Fakes רק ל-Console ו-IO. StreamWriter, נגדיר את קובץ הקונפיגורציה mscorlib.fakes בצורה הבאה:

<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
<Assembly Name="mscorlib" Version="4.0.0.0"/>
<ShimGeneration>
<Clear/>
<Add TypeName="Console"/>
<Add TypeName="StreamWriter"/>
</ShimGeneration>
</Fakes>

השימוש בתגים Clear ו-Add מומלץ במיוחד כאשר מדובר בספריה גדולה שאינה ספריית מערכת, ולכן ברירת המחדל היא ייצור Fakes לכל האובייקטים בספריה – מה שייקח זמן ויגרום לייצור ספריית Fakes גדולה מאד.

תג נוסף אפשרי הוא Remove – אם נרצה למנוע במפורש ייצור של Fake לאובייקט מסוים.

באותה צורה שניתן להגדיר ShimGeneration ניתן להגדיר StubGeneration כדי לקבוע לאלו אובייקטים ייווצר Stub (ראה הסבר בפרק הראשון בסדרה זו).

 

לסיכום:

 

  • באמצעות קובץ הקונפיגורציה אנחנו יכולים להגדיר במדויק לאלו אובייקטים ייווצרו Shims ו-Stubs
  • כך נוכל לייצר Stubs & Shims לאובייקטים נוספים בספריות המערכת, גם אם לא נוצרים להם Stubs & Shims כברירת מחדל
  • לחילופין, נוכל למנוע יצירת Stubs & Shims לאובייקטים שאיננו מעוניינים להחליף במסגרת הבדיקות, וכך לחסוך זמן ומקום

ולקינוח – חדשות טובות! החל מ-Visual Studio 2012 Update 2 ששוחרר לאחרונה להורדה, יכולת ה-Fakes לא תוגבל רק לבעלי VS2012 Ultimate, וגם מפתחים שרכשו VS2012 Premium יוכלו ליהנות מבדיקות איכותיות באמצעות Fakes!

בברכת בדיקות טובות ואיכותיות!

 

יש לכם שאלות נוספות בנושא VS 2012, ALM  או Testing?
הכנסו עכשיו לפורום העברי שלנו בנושא והתייעצו עם מיטב מומחי הקהילה.

 

 

Photo_5F5B07F8[1]הפוסט נכתב על ידי יואל ארנון, מהנדס תוכנה במיקרוסופט המסייע ללקוחות פרמייר - Premier Field Engineer. בעבר יואל היה יועץ עצמאי וחבר בצוות הפיתוח של MSMQ במיקרוסופט חיפה.

פורסם בתאריך 06/04/2013 18:14 על ידי Eran Sharvit

imageאנו שמחים להודיע שכבר עכשיו עדכון Visual Studio 2012 זמין להורדה!

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

היכולות המרכזיות הכלולות בעדכון זה:

  • Quality enablement – יכולות בתחום בדיקות התוכנה והרצת בדיקות באמצעות פורטל וובי ובאמצעות הענן.
  • Agile Planning – יכולות קסטומיזציה נוספות מאפשרות לכם לעבוד בשיטה הנוחה ביותר לצוות הפיתוח שלכם.
  • Line Of business development – יצירת אפליקציות עסקיות באמצעות LightSwitch ו- HTML5 בקלות.

 

נצלו את כל היכולות החדשות והורידו את Visual Studio 2012 Update 2 עכשיו!

רוצים לדעת עוד על העדכון? כנסו לכאן.

פורסם בתאריך 02/04/2013 07:05 על ידי Eran Sharvit

Visual Studio 2012 Smallבעדכון האחרון לכלי הפיתוח Visual Studio 2012 Update 2 שוחררו מספר פיצ’רים חדשים לבודקי תוכנה. בנוסף לשיפור ב- Microsoft Test Manager, העדכון מכיל יכולות ניהול חדשות מבוססות דפדפן שכתבנו עליהם פוסט לא מזמן.

כעת לבודקים יש אפשרות לבצע תסריטי בדיקה שונים כמו למשל לבדוק non-windows apps ולבצע בדיקות ללא התקנת כלים ייעודים במחשב היעד.

ה- test hub החדש שהוצג מאפשר גם לכל חברי צוות הפיתוח לראות ולערוך test cases וכמובן מאפשר למנהלים לעקוב אחר כל צעדי הבדיקה.

וידאו חדש באתר Channel 9 נותן הצצה ליכולות החדשות:

 

בודקים תוכנה באמצעות הכלים של מיקרוסופט? כנסו לפורום בעברית שלנו אם יש לכם שאלות בנושא!

הצטרפו לעמוד הפייסבוק שלנו על מנת לקבל את כל העדכונים על כנסים ואירועים למפתחים.

פורסם בתאריך 02/03/2013 13:03 על ידי Eran Sharvit

MSSharePoint2013אנו שמחים להודיע שהחל מהיום מנויי MSDN Premium ו- MSDN Ultimate זכאים לקבל מנוי מפתח ל- Office 365 למשל שנה!

להרשמה להטבה לחצו כאן

הודעה זאת מצטרפת כבר להטבות הקיימות: קבלת מנוי מפתח לאפליקציות Windows Phone וקבלת מנוי מפתח לאפליקציות Windows 8.

עם הרישיון החדש תוכלו לפתח אפקליציות חדשות אשר מרחיבות את הדרך שאנו צורכים מידע ומאפשרות לשלב שירותי ענן ושירותי ווב ולעטוף הכל בממשק המוכר והאהוב של Office ו- Sharepoint.

אתם יכולים לפתח אפליקציות Office באמצעות הכלים, השפה והטכנולוגיה שאתם מכירים. אתם יכולים לפבלש את האפליקציות שפיתחתם ל- Office Store שמהווה marketplace גלובלי המאפשר לקהל הרחב להוריד ולרכוש את האפליקציות שלכם בקלות.

בתור בעלי רישיון מפתח Office 365 אתם זכאים ל:

  • אתר SharePoint Online המאפשר לכם לבצע קסטומיזציות ויצירה ובדיקה של אפליקציות
  • גישה ל- “NAPA”, כלי הפיתוח של Office 365 המאפשרים לכם יצירת אפליקציה מהדפדפן
  • גישה ל- Microsoft Seller Dashboard

 

למדו עוד על פיתוח אפליקציות Office

פיתוח נעים!

פורסם בתאריך 30/01/2013 15:18 על ידי Eran Sharvit

vs20120_logoשוחרר העדכון בגרסת CTP שהיא למעשה גרסת Preview לקהילה הטכנולוגית.

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

להורדת העדכון לחצו כאן

העדכון הנוכחי כולל יכולות ב-4 קבוצות עיקריות:

  1. Agile Planning
  2. Quality Enablement
  3. Line of Business Development
  4. Developer Experience

 

 

 

יש לכם שאלות בנושא Visual Studio ו-ALM? כנסו לפורום שלנו בעברית.

 

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

פורסם בתאריך 17/10/2012 16:33 על ידי Eran Sharvit

vs20120_logoכולכם כבר יודעים שמגרסת 2012 ששוחררה לאחרונה Visual Studio הפך למעשה כלי פיתוח המסוגל לנהל את כל מחזור החיים של התוכנה: משלב התכנון, דרך שלב הפיתוח ועד לשלב הבדיקות. לנו המפתחים, זה כמובן עושה את החיים הרבה יותר “קלים” במובן הזה שאנחנו כבר לא צריכים ללהטט וללמוד את רזי השימוש בכלים שונים – אנחנו מקבלים כלי אחד שעושה את כל מה שאנו זקוקים לו’ או בניסוח יותר גיקי -  One tool to rule them all.

עם זאת, כן ישנן מספר גרסאות ל- VS 2012 וזאת על מנת לאפשר לכם המפתחים, לבחור את הגרסה המתאימה ביותר לכם לפי הצרכים שלכם, של הפרוייקט וכמובן התקציב. העיקרון הוא פשוט: ככל שהגרסה מתקדמת יותר, היא מכילה יותר יכולות ופיצ’רים כך שלמעשה הגרסה החינמית (Express) היא בהחלט עוצמתית אך כמובן שמכילה הכי פחות פיצ’רים, ואילו גרסת ה- Ultimate, היא הגרסה החזקה ביותר המכילה את כל היכולות של הגרסאות מתחתיה ועוד.

פוסט זה נועד לכל המפתחים המקצוענים אשר משתמשים בגרסת ה- Professional החזקה, אך מבקשים להרחיב את היכולות ו/או נדרשים מפרוייקטי התוכנה שלהם לגרסה מקיפה ומקצועית יותר הכוללת פיצ’רים נוספים אשר אינם כלולים בגרסת ה- Professional.

אתם מוזמנים לנסות את גרסת הניסיון של Visual Studio 2012 Premium

 

 

כלים לאבטחת איכות הקוד- Code Quality Tools

אז גרסת Visual Studio Professional 2012 או בקיצור VS Pro, מספקת יכולות unit testing עם תמיכה ב- test explorer החדש ותמיכה בפריימוורק בדיקות צד שלישי כגון NUnit. xUnit, QUnit. בהחלט מרשים.

גרסת הפרימיום, בנוסף ל- MS Test,  מוסיפה עוד מגוון יכולות הנוגעות לאבטחת איכות הקוד:

  • Code Coverge – עוזר לכם לראות כמה מן הקוד שלכם מכוסה מבחינת בדיקות יחידה, ממש עד רמת שורת הקוד, על מנת שתגלו את הפערים בזמן.
  • Code Metrics – עוזר לכם למדוד איפה יש סיבוכיות מיותרת שיכולה להביא לבאגים ותחזוקה מיותרת.
  • Static Code Analysis – עוזר לכם להחיל חוקים ו- best practices על הקוד על מנת למנוע בעיות אבטחה ויציבות. עוזר לכם גם לאכוף את מתודולוגיית הפיתוח בארגון/חברה שלכם.
  • Code Profiling – עוזר לכם לזהות בעיות ביצועים של הקוד שלכם, לזהות דליפות זיכרון, race conditions ו- deadlocks.
  • Code Clone Analysis – פיצ’ר חדש ב- 2012, שסורק את הקוד שלכם במטרה למצוא כפילויות. עוזר לכם למצוא קוד ששוכפל באמצעות copy and paste ועוזר לכם למצוא היכן צריך לבצע refactoring.
    אתם יכולים לראות וידאו בנושא.
  • Code Review – עוד פיצ’ר חדש ב- 2012 המאפשר בצורה נוחה וקלה לתת סקירות קוד או לקבל סקירות קוד מאחרים. עוד בוידאו כאן.

 

Suspend and Resume

אם אתם עובדים כמפתחים, בטח נתקלתם יותר מפעם אחת בסיטואציה הבאה: אתם עובדים על משימת פיתוח כלשהי, לגמרי in the zone, לא מעט קבצים פתוחים, breakpoints, pending changes וכו’ ואז לפתע מגיע ראש הצוות, מבקש לעזוב הכל כי התגלה איזה באג קריטי בסביבת הייצור שדורש תיקון מיידי. אם זה מוכר לכם, בטח תשמחו לגלות שבגרסת הפרימיום נוספה יכולת חדשה שמטפלת בדיוק בנקודה כואבת זאת: supend and resume. רק תלחצו על suspend והמצב של סביבת הפיתוח יישמר, מה שייאפשר לכם לעבוד בנוחות על משימה אחרת לגמרי. בסיום תלחצו על resume – וסביבת הפיתוח תשחזר בדיוק את ה- state שהיה קודם: קבצים פתוחים, breakpoints, pending changes וכו’. מאד נוח. עוד על כך בוידאו הזה.

 

Agile Tools

VS 2012 הציגה כלי Agile חדשים על מנת שתוכלו לעבוד על המשימות השוטפות בצורה יעילה ופשוטה יותר וכמובן לפי העקרונות והקונספט של מתודולוגיית ה- Agile. בגרסת הפרימיום תמצאו כלים שונים כגון ה- task board החדש המאפשר לכם לראות את ה- product backlog items ברזולוציה של מטלות וכמובן את סטטוס המטלות. גרסת הפרימיום גם כוללת את כלי התכנון של ה- product backlog ו- spring planning המאפשר לכם להקליט ולנהל את ה- backlog והספרינטים שלכם, כולל capacity managmnet. עוד כל כך בוידאו כאן.

 

StoryBoards

storyboarding זהו תוסף לתוכנת ה- power point המאפשר לכם ליצור ולהפיץ בקלות StoryBoarding לשאר אנשי הצוות ובעלי העניין. יש המון אלמנטים שכבר כלולים (כגון דפי ווב, טבלאות, ווידג’טים ועוד הרבה קומפוננטות אחרות) ואתם גם יכולים ליצור ולשתף בקלות אלמנטים אחרים שהפרוייקט זקוק להם.

 

Testing

גרסת הפרימיום של 2012 נותנת לכם גישה לכל כלי הבדיקות שבעבר היו קיימים רק לגרסת Ultimate, בחריגה אחת בלבד: כלי בדיקות הביצועים עדיין נגישים רק לבעלי גרסת Ultimate.

כלי הבדיקות החדשים שכלולים כעת בגרסת הפרימיום הם נושא לפוסט שלם, אך בסקירה מהירה אנו יכולים למנות:

  • test case management – ביחד עם Microsoft Test Manager, סט של כלים לביצוע וניהול בדיקות.
  • כלי בדיקות ידניות – תמיכה ב- fast forward playback  לביצוע אוטומציה של בדיקות. עוד על כך בוידאו הזה.
  • Exploratory testing – פיצ’ר חדש ב- 2012, מאפשר לכם לבדוק בפשטות ובמהירות את האפליקציה שלכם מבלי לבנות test case. אתם יכולים לשחזר ולהקליט באגים ואפילו לבצע הנדסה לאחור של test case.
  • Automated functional testing – אתם מעוניינים לבצע בדיקות אוטומטיות לאפליקציית הווב שלכם? בדיקות Coded UI בגרסת הפרימיום מאפשרות בדיוק את זה ויכולות להווצר מבדיקות ידניות או from scratch. עוד על כך בוידאו הזה.
  • כלי פידבק חדש – מאפשר לכם לקבל ולהגיב על פידבקים שהתקבלו מבעלי עניין חיצוניים אשר משתמשים בכלי חינמי אשר ניתן להורדה.
  • Lab Management – מאפשר תמיכה במעבדת בדיקות וירטואלית, המאפשרת לכם לנהל אוטומציה מקצה לקצה של תהליך ה- build, ההפצה והבדיקה. עוד בוידאו הבא.

 

סיכום

למרות שגרסת ה- Professional בהחלט חזקה ומתאימה לפיתוח אפליקציות מורכבות, כדאי מאד להכיר את היתרונות המשמעותיים של גרסת ה- Premium, ההופכים את הכלי להרבה יותר עוצמתי ולכלי המסוגל לספק פתרון ALM מקצה לקצה. הכלים החדשים הכלולים בגרסת הפרימיום מפשטים את תהליך הפיתוח ומאפשרים לכם סביבת עבודה אחידה מבלי להזדקק למספר כלי צד שלישי, שלא תמיד עובדים בצורה אינטגרטיבית טובה ופשוטה.

אתם מוזמנים לנסות את גרסת הניסיון של Visual Studio 2012 Premium.

יש לכם שאלות נוספות בנושא Visual Studio? הכנסו לפורום שלנו בעברית!

פורסם בתאריך 19/09/2012 16:44 על ידי Eran Sharvit

vs20120_logo_4F90B5F1

לאחרונה חברת גרטנר ביצעה סקירה מקיפה של שוק ה- ALM ומתוך 16 ספקים בתחום, מיקרוסופט מוצבה כמובילת השוק - גם בציר יכולת הביצוע וגם בציר שלמות החזון, כשהיא משאירה מאחור שחקנים מרכזיים כמו IBM ו- HP.

יש לשים לב שהדוח נכתב על בסיס VS 2010. בגרסת 2012 החדשה רק שיפרנו והוספנו יכולות ופיצ’רים רבים נוספים כמו גם שיפורים בעזרת פידבקים שקיבלנו ממכם המשתמשים, מה שמבטיח הגדלה נוספת של הפער מול המתחרים.

 

Visual Studio מובילה על פני IBM ו- HP בדוח גרטנר על שוק ה- ALM

 

אודות מחקר גרטנר

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

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

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

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

 

מעמדה של מיקרוסופט בשוק ה- ALM

אמנם מיקרוסופט לא הייתה הראשונה שנכנסה לשוק ה- ALM, אך כיום ניתן לומר שהיא מובילה את השוק הזה.
"מכוח מעמדה בשוק כספקית של פלטפורמות וכלי פיתוח מובילים, פועלת מיקרוסופט כמובילה טכנולוגית בשוק ה-ALM", נכתב באותה סקירה של השוק ע"י גרטנר. "פרט ל-IBM, מיקרוסופט מציעה את כלי ה-ALM הרחבים ביותר בשוק מבחינה פונקציונלית. החברה נוטה להוציא גרסאות חדשות כל 18 חודשים, אולם היא גם נדרשת לתיאום מול עדכונים וגרסאות חדשות של פלטפורמות מרכזיות. על מנת לפצות על מחזורי פיתוח ארוכים, עושה צוות המוצר שימוש ב- MSDN כדי לספק הרחבות (מה שנקרא "Power Tools") וגישה מוקדמת לקטעי תוכנה אחרים."

 

בסיס לקוחות רחב ומגוון

עוד נכתב בדוח ש"מיקרוסופט מחזיקה בסיס לקוחות רחב, החל מעסקים קטנים ובינוניים (SMB) וכלה בארגונים גדולים וענפים, כך שהאתרים הגדולים ביותר שלה כוללים למעלה מ-10,000 משתמשים. בניגוד לכלים אחרים ב- Magic Quadrant, מיקרוסופט היא היצרנית היחידה הקושרת באופן הדוק את מערכת הגרסאות שלה לשאר כלי תכנון ה-ALM."

 

תמיכה בסביבות הטרוגניות

בדוח נקבע שעבור לקוחות המעוניינים לפתח ב- .NET ובסביבות מיקרוסופטיות, הרי שפתרון ה- ALM של מיקרוסופט הוא הטוב והמלא ביותר כיום בשוק, אך יש גם התייחסות לתמיכה שלה בסביבות הטרוגניות, אשר בגירסאות החדשות של Visual Studio בהחלט נתמכות. "אף על פי שמיקרוסופט היא אחת היצרניות היחידות המכסה את כל ההיבטים של ה-SDLC, האתגר הגדול ביותר הניצב בפניה הוא תמיכה בפיתוח לא-מיקרוסופטי. למרות זאת, עשתה החברה התקדמות ניכרת בתמיכה ב- Eclipseוביכולת להרחיב את ה-TFS עם קוד Java. האתגר הגדול ביותר העומד בפניה היום הוא לתפור יחד סביבה מעורבת הכוללת מפתחים על פלטפורמות לא מיקרוסופטיות שהסביבה שלהם כוללת כלי SCCM אחרים, והצעדים הדרושים כדי לתפור את כל זה יחד. TFS היא מערכת חזקה, אבל אם הארגון שלכם אינו משתמש ב-.NET או בטכנולוגיות מיקרוסופטיות אחרות, זו לא תהיה הבחירה הטבעית שלכם בשוק מוצרי ה-ALM. עם המעבר של פלטפורמות הפריסה לענן, זה כבר לא רק עניין של Java ו-.NET, ומיקרוסופט תצטרך להמשיך ולהפגין מחויבות ארוכת טווח לתמיכה בפלטפורמות אחרות הנדרשות על ידי המשתמשים."

 

פונקציוליות רחבה

הדוח נותן סקירה של הפונקציונליות הנרחבת אשר נתמכת וכוללת בין השאר:

ניהול דרישות, ניהול פרויקטים , ניהול איכות, ניהול ליקויים, ניהול תהליכי בנייה, ניהול גרסאות, ניהול מעבדה, ניהול שינויים, ניהול מטלות, מידול.

 

נקודות חוזק

עוד הדוח קובע מספר נקודות חוזק, ביניהן:

ספקים שותפים, רשת פיתוח, מחיר, תמיכה ב-Office, SharePoint ו-Project.

לקריאת הדוח במלואו – לחצו כאן.

פורסם בתאריך 13/09/2012 15:46 על ידי Eran Sharvit

vs20120_logo_4F90B5F1

במציאות בה קבוצות פיתוח מפתחות אפליקציות אשר צריכות להיות מותאמות לפלטפורמות שונות ומגוונות כגון ווב, iOS, Android וכו', אין זה נדיר שצוותי הפיתוח והבדיקות עובדים בסביבות הטרגניות. חלקם מפתחים ב- Visual Studio, חלקם ב- Eclipse, חלקם על גבי Windows, חלקם על גבי Linux או Mac ולכל אלה מתווספים בעלי עניין נוספים כמו מנהל המוצר ומנהל הפרויקט שבכלל לא משתמשים בכלי הפיתוח עצמם.

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

 

אפקטיביות בסביבה הטרוגנית עם 2012 Team Explorer Everywhere

 

Team Explorer Everywhere - חוצה פלטפורמות

הגירסה החדשה של Visual Studio מביאה את בשורת ה- ALM גם לסביבות פיתוח הטרוגניות באמצעות Team Explorer Everywhere. עד כה משתמשי TEE היו צריכים לרכוש את ה- Client Access License ואת ה- TEE, ומשתמשי ה- Visual Studio רק היו צריכים לרכוש את ה- Client Access License. אלא שלאחרונה הוכרז ש- TEE מוצע חינם (כן, חינם אין כסף) כתוסף ל- Eclipse. למעשה ה- TEE הינו plugin מבוסס Java המשולב ב- IDE של Eclipse, ומעניק לחברי צוות הפיתוח נגישות ל- TFS ממערכות הפעלה שאינן מבוססות Windows, לרבות Linux או Mac OS. קבוצות הפיתוח יכולות להשתמש ב- TFS, על אף העובדה שהם חוצים טכנולוגיות שונות.

אפקטיביות בסביבה הטרוגנית עם 2012 Team Explorer Everywhere

דוגמה לתהליך חוצה פלופורמה כולל תרחיש לפיו אנשי הבדיקות יכולים להשתמש ב- Microsoft Test Manager כדי לדווח על באגים שמצאו באפליקצית iPad. מפתחי ה-Eclipse יעברו על הבאגים ויבחנו את הקוד על גבי מק. לאחר מכן הם ישתמשו ב- TEE כדי להבצע check-in של השינויים שבוצאו עם קישור לבאג עצמו. כל המידע זורם חזרה אל ה- TFS ומאפשר דווח מרוכז של התהליך כולו החוצה טכנולוגיות שונות.

 

אין צורך ברכישת CAL כדי לצפות בדוחות

כעת אין יותר צורך ברכישת רשיון CAL בכדי לצפות בדוחות אשר מופקות מה- TFS. זו בשורה חשובה לאותם בעלי עניין שמדי פעם רוצים לצפות בדוחות על מנת לבחון את התקדמות הפיתוח או נושאים אחרים. עבור משתמשים אלו רכישת הרשיון הוותה חסם שהיה מונע את השתתפותם הפעילה בתהליך הפיתוח.

 

מה חדש ב- Team Explorer Everywhere 2012

הגרסה החדשה של TEE מצטרפת למשפחת המוצרים של Visual Studio 2012 וכוללת מספר שיפורים חשובים:

  • התקנה פשוטה ישירות מהרשת.
    ב-TEE 2010 היה צריך להוריד חבילת plugin ולהוסיף אותה ידנית אל ה-Eclipse. את TEE 2012 ניתן כעת להתקין ללא הורדה נפרדת אלא כחבילת התקנה ישירות ממיקרוסופט, כך שתהליך ההתקנה מבוצע אוטומטי.

אפקטיביות בסביבה הטרוגנית עם 2012 Team Explorer Everywhere 

  • ממשק Team Explorer חדש
    בדומה לממשק למשתמשי 2012 Visual Studio, גם משתמשי TEE יקבלו חוויה דומה בממשק ה-Team Explorer החדש. חלונות ה-Pending Changes וה-Build Explorer הורחבו לכלול מידע נוסף. הבשורה הגדולה יותר היא שנוספו אפשרויות הגדרות וניהול שהיו בלעדיות עד כה למשתשי ה-Visual Studio. 
  • תמיכה ב-Local Workspace
    פיצ'ר חדש וחשוב זה של TFS 2012 נתמך גם עבור משתמשי ה-Eclipse.
  • תמיכה ב- TFS בענן
    מוצר חדש נוסף שנוסף למשפחת ה-Visual Studio ALM 2012 הנתמך גם הוא עבור משתמשי ה-Eclipse.
  • עורך work item מובנה
    אם בגרסת TEE 2010 עריכת הבאגים או המשימות היתה מתבצעת דרך דפדפן חיצוני, בגרסת 2012 ניתן לערוך אותם ישירות מתוך ה-Eclipse.

 

לסיכום

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

יש לכם שאלות נוספות בנושא ALM או VIsual Studio?
הכנסו להתייעץ עם מיטב המומחים בפורום העברי שלנו!

 

kobi-moraz_1EF73F30[1] הפוסט נכתב על ידי קובי מורז, מוביל תחום ALM בחברת CodeValue, ארכיטקט ALM ומנהל פרוייקטים בהטעמות TFS. ליצרת קשר ומידע נוסף בבלוג שלו.

CodeValue מובילה במתן מענה ובפיתוח פתרונות תוכנה למגוון חברות ומציעה מגוון רחב של שירותים מקצועיים ושירותי ייעוץ. החברה מתמחה ומתמקדת במספר נושאים מרכזיים העומדים היום בקדמת הטכנולוגיות של עולם התוכנה:
Cloud Computing, Mobile, UX, Microsoft Technologies, ALM and TFS

פורסם בתאריך 13/09/2012 11:19 על ידי Eran Sharvit

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

לאחר שחיכינו בסבלנות והורדנו את גרסאות הבטא וה- RC, אתמול סוף סוף שוחררה גרסת Visual Studio 2012 לאוויר העולם. ברחבי העולם ציינו את המאורע בשידור ישיר של ההשקה מרדמונד, ואילו אנחנו חגגנו את ההשקה כאן בתל-אביב מול הים, עם בירות והרבה מצב רוח, ועם שידור ישיר כמובן מרדמונד. היה כיף!

 

השקה חגיגית – גם לקהילת המפתחים המקומית בישראל

האירוע שודר בשידור ישיר מרדמונד, שם הציגו בכירי מיקרוסופט את ה- KeyNote החגיגי והסבירו על הפיצ’רים החדשים. אתם יכולים לצפות בהקלטת האירוע כאן. אנחנו לעומת זאת, החלטנו לחגוג גם את המאורע ביחד עם קהילת המפתחים המקומית, ואין מקום מתאים וכיפי יותר מול הבריזה של הים על הטיילת בתל אביב, שם עשינו קוקטייל חגיגי אשר כלל גם הרצאות ודמואים מעניינים של אנשי מפתח ממיקרוסופט ומקהילת המפתחים, להראות טעימה קטנה מהיכולות החדשות של כלי הפיתוח. כבר אמרנו שהיה מאד כיף, לא?.. כמובן שגם העברנו בשידור ישיר את ה- KeyNote מרדמונד.
זה המקום להודות לכל המרצים שלקחו חלק באירוע והעבירו הרצאות מעניינות בנושאי VS:
רחלי פקין, צביה גיטלין ומיכאל דובינסקי ממיקרוספט, אייל ורדי מ- E4D, אריאל גור אריה מקפיטו ושמוליק סגל מסלע. תודה!

ללמוד בקלות על היכולות החדשות של Visual Studio 2012

במקביל להרצאות וידאו מרדמונד של Soma,   Jason Zander ו- Brian Harry שהסבירו כיצד ניתן לפתח אפליקציות מודרניות שתמיד מחוברות ומעודכנות באמצעות היכולות החדשות של VS, צוות הפיתוח של VS שחרר יותר מ- 60 סרטונים המסבירים על הפיצ’רים השונים. באתר ההשקה תוכלו למצוא את כל הסרטונים למפתחים או בתחום ה- ALM.

 

הורידו עכשיו את Visual Studio 2012!

באחת מן הגרסאות המלאות לניסיון, או באחת מן גרסאות ה- Express החינמיות ללא הגבלת זמן.

פורסם בתאריך 11/09/2012 10:57 על ידי Eran Sharvit

vs20120_logo_4F90B5F1

יש האומרים שאנשי פיתוח ווב מתחלקים לשתי מחנות. מצד אחד אנשי ה- server side - בדרך כלל הם אוהבים להתעסק בתכנות של לוגיקה ואלגוריתמיקה. מן הצד השני אנשי ה- Front end - אלו בדרך כלל אלופים ב- Java script ובבניית CSSים, עם ידע מעמיק בכל היכולות המיוחדות של כל הדפדפנים על מנת להוציא את מירב הפוטנציאל מכל דפדפן. 

לאנשי ה- server side יש בדרך כלל רתיעה מהעבודה על ה- Front end. הם בדרך כלל מתלוננים על כך שסביבות הפיתוח בתכנות Java Script ו- CSS לא עשירות כמו סביבות הפיתוח ב- C#, וכל הידע בנושא היכולות של הדפדפנים מצוי אך ורק בראשם של המתכנתים ולא בסביבות הפיתוח עצמן.
ובכן, תפיסה זו עלולה להשתנות עם Visual Studio 2012.

 

מה התחדש ב- Visual Studio 2012

טוב, אין ספק ש- Visual Studio 2012 לבדו לא יהפוך מתכנת Server Side למומחה Front End..  אך הגרסה החדשה של VS עושה צעד משמעותי בהקלת העבודה עבור מי שאינו מומחה Front End ובוודאי עוזרת מאוד למי שכבר מומחה. לראשונה, חוויית השימוש בפיתוח ווב דומה לחווית השימוש בכתיבת קוד Server Side כמו C#. בנוסף, Visual Studio 2012 כולל בתוכו ידע רב בנושא היכולות של הדפדפנים השונים ויודע להציע אוטומטית קוד אשר ממצה את הפוטנציאל הגלום בכל דפדפן.

שינוי באופן אוטומטי של תכונות שמתאימות לדפדפן ספציפי

עורך ה- CSS החדש כולל בתוכו מיפוי של כל ה- Properties ב- CSS אל יכולות התמיכה של הדפדפנים השונים. כלומר, אותו ידע שמצוי בדרך כלל בראשם של המתכנתים, עכשיו קיים בסביבת הפיתוח ומאפשר ביצוע התאמות לכל סוגי הדפדפנים, תוך שינוי באופן אוטומטי של תכונות שמתאימות לדפדפן ספציפי.

פיתוח ווב עם Visual Studio 2012

 

כאשר נראה ליד התכונה (במקרה זה transform) את סימן ה snipet, נוכל ע"י הקשה על TAB לקבל את כל המופעים של תכונה זו בדפדפנים השונים:

פיתוח ווב עם Visual Studio 2012

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

פיתוח ווב עם Visual Studio 2012

 

עימוד אוטומטי לפי היררכיות תוך כדי הקלדה

עורך ה- CSS החדש כולל עימוד אוטומטי לפי היררכיות תוך כדי הקלדה לצורך שמירה על קובץ קריא ומסודר, צריך רק להקליד וה editor כבר מסדר את המבנה ההיררכי. תכונה זו מוכרת בהעורכי קוד של C# או VB.NET והוא עתה זמין גם בעורך CSS.

פיתוח ווב עם Visual Studio 2012

Picker מובנה בתוך עורך ה- CSS

עורך ה-CSS החדש מציע כלי מובנה לבחירת צבעים ותכונות נוספות שקשורות בתצוגה צבעונית. כאשר כותבים את תכונת ה- color ולוחצים Alt +tab נפתח color picker. הכלי מאפשר בחירה של צבע בצורה ויזואלית בעזרת העכבר והוא באופן אוטומטי יכניס את הקוד המתאים. הכלי מאפשר השוואה של הצבע הקיים עם הצבע החדש ועד שאני לא יבחר הוא לא ישנה. הכלי גם מאפשר לבחור באופן ויזואלי ערכים של תכונות נוספות כמו שקיפות (Opacity) ועוד.

פיתוח ווב עם Visual Studio 2012

 

דימוי חוויית ה- types על ידי תמיכה ב- XML Documentation Comments וזיהוי משתנים

אחד החידושים המשמעותיים ביותר לדעתי, הינו התמיכה ב- types של עורך ה- java script.
בניגוד ל- #C , ב- Java Script אין תמיכה מובנית ל- types, אלא שניתן לתת מידע על ה- type של הפונקציה על ידי כתיבת הערות XML Documentation Comments.
עורך ה- Java Script החדש לוקח את זה כמה צעדים קדימה ומשתמש בהערות אלו על מנת לדמה תמיכה מלאה ב- types. תמיכה זו מקלה מאוד את עבודת הצוות ומאפשרת למתכנתים להשתמש בפונקציות שנכתבו על ידי מתכנת אחר באופן יעיל יותר.

כאשר יש לנו משתנה בפונקציה שאנחנו מגדירים את ה type שלו בהערות, ה intelitrace מתאים את עצמו ומציג ערכים המתאימים ל type של המשתנה.

פיתוח ווב עם Visual Studio 2012

 

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

פיתוח ווב עם Visual Studio 2012

 

בנוסף לשימוש בהערות, העורך גם מזהה משתנים. Intelitrace חכם בזיהוי סוג המשתנה והתאמה אליו, באופן זה אנחנו חוסכים שגיאות של שימוש בתכונות שלא קיימות במשתנה הדינמי.

פיתוח ווב עם Visual Studio 2012

 

 

פיתוח ווב עם Visual Studio 2012

 

יכולת " goto definition"

בנוסף לעורך קבצי javascript הגרסה החדשה כוללת יכולת "goto definition" שהיתה מאד חסרה עד כה לניווט מהיר ויעיל בקוד שלנו. יש לציין שהיה ניתן לקבל את התכונה הזאת בגרסאות קודמות, אך רק ע"י התקנת תוספים ל VS. תכונה זו מאפשרת קפיצה ישירה למקור הפונקציה או להגדרתה הראשונית וכך להבין יותר את משמעותה. אחד השימושים היעילים בתכונה זו היא בשימוש בספריות עזר כגון jquery,dojoודומיהם. בעזרת תכונה זו ניתן לצלול לתוך קוד הספריה שאנחנו משתמשים בה, להבין מה בדיוק היא עושה ולדבג בעיות באתר.

 

פיתוח ווב עם Visual Studio 2012

 

לסיכום

פיתוח ווב באמצעות Visual Studio 2012 הפך להיות חוויה שיותר ויותר דומה לפיתוח #C. התכונות החדשות מגבירות באופן משמעותי הפרודקטיביות, חוסכות הרבה זמן ועוגמת נפש ובנוסף כוללות ידע חשוב על התכונות המיוחדות של הדפדפנים, אשר לא בהכרח מצוי אצל כל מתכנת.
תכונות נוספות שהוסיפו ל VS עבור מתכנתי ה WEB כוללות DOM Explorer חדשPage inspector, javascript console ועוד. ניתן לראות את הרשימה המלאה כאן.

 

לשאלות נוספות בתחום Web Development, כנסו לפורום שלנו בעברית!

 

untitled

הפוסט נכתב ע"י גלעד לוי, יועץ בכיר בקבוצת היועצים של מיקרוסופט (MCS ) העוסקת בייעוץ בתחומי ארכיטקטורה, פיתוח, CRM ו- ALM.

פורסם בתאריך 20/08/2012 14:52 על ידי Eran Sharvit

VS2012_logo_5F926945 כל מי שמפתח במתודולוגיית Agile/Scrum וודאי יסכים עם ההנחה שמנהלי המוצר\Product Owner מהווים ציר מרכזי וחשוב שדרכו הכל זורם במהירות. הם אלו שיוצרים את ה- backlog items, מתעדפים את העבודה, וקובעים מה יכנס לכל ספרינט.

ה- Web Access בגירסה החדשה של TFS 2012 עבר מתיחת פנים משמעותית שבעיקרה ייעול העבודה של מנהל המוצר והתאמה מלאה למתודולוגיית Agile/Scrum.

 

אז מה השתנה מהגירסה הקודמת?

ממשק הניהול TFS Web Access היה קיים בגרסת 2010, אלא שהוא היה פחות מכוון למתודולוגיית פיתוח Scrumית. כך למשל, יצירה וניהול של backlog items (פעולה מרכזית ובסיסית במתודולוגיית Scrum) היתה אפשרית, אך הרבה פחות נגישה ויעילה. ההוספה של פריט למשל, הצריכה מעבר דרך מספר שלבים. גרסת 2012 מציגה גישה שונה אשר מותאמת באופן מיטבי למטלות המרכזיות של מנהל המוצר. פעולות אלו הפכו לזמינות יותר, יעילות ונוחות.

 

יצירה מהירה של product backlog items

ראשית, אחד השינויים הבולטים ביותר בגירסה החדשה הינו מרכזיותו של ממשק ניהול ה- backlog items. בגירסה זו, מסך ה- backlog Items הינו הראשוני והמרכזי אשר מוצג כברירת מחדל עם הכניסה למערכת. אם בעבר נדרש היה מנהל המוצר ליצור משימה (product backlog item) חדשה, הוא היה צריך לייצר PBI חדש ורק לאחר מכן להכניס מספר ערכים בחלון נפרד שהיה נפתח, הרי שהגירסה החדשה כוללת ממשק Add Panel שמיועד ליצירה מהירה של משימות. תהליך היצירה מצריך בסך הכל כתיבה של ה- title, בחירה של type, וה- item נוצר עם ערכי ברירת מחדל.

חידושים ב- Web Access של TFS 2012המייעלים את עבודתו של מנהל המוצר תוך התאמה למתודולוגיית Agile/Scrum

 

ניהול תעדוף באמצעות Drag and Drop

ניהול התעדוף של משימות מתבצע באופן אינטואיטיבי על ידי גרירה של משימות (drag and drop) למעלה או למטה. כך גם ההוספה של משימה לספרינט נעשית על ידי הגרירה שלה אל רשימת הספרינטים המצויה בעמודה השמאלית.

חידושים ב- Web Access של TFS 2012המייעלים את עבודתו של מנהל המוצר תוך התאמה למתודולוגיית Agile/Scrum

 

ניתוב משימות על ידי חיזוי התקדמות

ניתוב המשימות למפתחים מתבצע על ידי חיזוי של קצב התקדמות (velocity) אופייני של כל צוות פיתוח. נתון זה מתבסס על ביצועי עבר (נקודות) של המפתחים. במסך הניהול ניתן לראות, באופן אינטואיטיבי ופשוט, את הקווי החיזוי (forecast lines), אשר מגדירים מה יכנס לכל ספרינט. מנהל המוצר יכול לשנות את ההגדרה על ידי גרירה של המשימות לספרינטים אחרים או על ידי שינוי ה- velocity המוערך של צוות הפיתוח.

חידושים ב- Web Access של TFS 2012המייעלים את עבודתו של מנהל המוצר תוך התאמה למתודולוגיית Agile/Scrum

 

תכנון ספרינטים

ה- Sprint planning view מאפשר תכנון יעיל של ספרינטים ברזולוציה של משימה בודדת. במסך זה כל Backlog item מיוצג על ידי שורה מודגשת ותחתיה כל המשימות, השייכות לאותו item ומוקצות למתכנתים. כשהמתכנת מסיים את כל המשימות ה- item מסתיים. במסמך זה ניתן לשבור כל Item למשימות ולשייך משימה\item למפתח מסויים. ניתן גם לבצע Load Balancing של העבודה על כל ספרינט וכל זאת תוך ניתור של ה- capacity שיש לרשותי עבור כל חבר צוות או פעילות (activity).

חידושים ב- Web Access של TFS 2012המייעלים את עבודתו של מנהל המוצר תוך התאמה למתודולוגיית Agile/Scrum

 

ניהול הספרינט באמצעות Task board

לפי מתודולוגיית Scrum יש להציב לוח משימות (task board) עם פתקים אשר מאפשר נראות מקסימלית להתקדמות העבודה בכל ספרינט - אילו משימות בעבודה, אילו משימות עוד לא החלו וכו'. אותו לוח קיים גם ב- ממשק ה- task board של TFS Web Access 2012 עם ייצוג של הפתקיות אשר ניתן לגרור ממקום למקום. כל פתק כולל את המשימה, את מספר השעות שהוקצו להשלמת המשימה ואת השיוך לקטגוריה (to do, in progress, done).

חידושים ב- Web Access של TFS 2012המייעלים את עבודתו של מנהל המוצר תוך התאמה למתודולוגיית Agile/Scrum

 

סיכום

עם האימוץ הנרחב של מתודולוגיית Scrum בקרב קבוצות פיתוח היה ברור שיש צורך בכלי ניהול עבור מנהל המוצר, אשר יהיה מותאם למתודולוגיה זו ויאפשר תקשורת מיטבית בינו לבין חבריו לצוות הפיתוח. ה - Web Access של TFS 2012 ממש את החזון הזה ואני משוכנע שיביא לייעול מקסימלי של תהליך ניהול המוצר והפיתוח.

יש לכם שאלות נוספות בנושא ALM או VIsual Studio?
הכנסו להתייעץ עם מיטב המומחים בפורום העברי שלנו!

 

YanivLevin הפוסט נכתב ע”י יניב לוין, מנהל קבוצת ה ALM ב E4D Solutions.
יניב מתמחה במתודולוגיות תהליך ניהול חיי המוצר (Application Lifecycle Management), ובהטמעות של Microsoft Team System / Team Foundation Server. יניב עובד עם Team System מאז גירסת 2008, וייעץ למגוון פרוייקטים ולקוחות.

פורסם בתאריך 16/08/2012 02:29 על ידי Eran Sharvit

vs20120_logoאנו שמחים לבשר שהחל מאתמול ניתן להוריד את Visual Studio 2012 Team Foundation Server 2012 ו- .NET 4.5 מהרשת.

מנויי MSDN יכולים להוריד את הגרסאות החדשות מכאן, בעוד מספר ימים תוכלו לרכוש באמצעות  דף המוצר באתר Visual Studio וכמובן כבר עכשיו אתם יכולים להוריד גרסת ניסיון מוגבלת זמן או את אחד ממוצרי משפחת Express החינמיים.

בקרו באתר Visual Studio על מנת להוריד את הגרסה המתאימה לכם.

גרסאות אלו הן פרי עבודה מאומצת של צוותי הפיתוח השונים אשר ביצעו את הפיתוח באמצעות שימוש בכלי הפיתוח שלנו ומתודולוגיות Agile אשר גרמו לנו לשחרר את הגרסאות בחצי מה- milestones מבעבר.

 

גרסה חדשה לכלי הפיתוח ביחד עם שחרור גרסת Windows 8 RTM

פיתוח אפליקציות Windows 8 בקלות וביעילות היא אחת מן המטרות החשובות ביותר של גרסה זאת של כלי הפיתוח ולכן במקביל, שחררו אתמול את גרסת ה- RTM של Windows 8 להורדה עבור מנויי MSDN או גרסת ניסיון לציבור הרחב.

Blend + SketchFlow

במקביל לגרסת ה- Blend המגיעה עם Visual Studio 2012 RTM אנו משחררים גרסת Blend + Sketch Flow Preview for Visual Studio 2012, גרסה שעונה לפידבקים רבים שקיבלנו ממפתחים, כולל תמיכה ב- WPF, Silverlight. פרטים נוספים בנושא זה תוכלו למצוא בבלוג של צוות הפיתוח של Blend.

מה חדש

סקוט הנסלמן יצר סדרה של סרטוני וידאו קצרים ומומלצים, כל אחד בן 4-6 דקות, סרטונים הסוקרים בצורה מהירה את הפיצ’רים המרכזיים בתחום ה- Model Binding, HTML/CSS/JS Editor, Page Inspector, Web API ועוד רבים.
בקרוב נמשיך לספר לכם יותר פרטים על הפיצ’רים השונים של הגרסאות החדשות.

יש לכם שאלות נוספות בנושא ALM או VIsual Studio?
הכנסו להתייעץ עם מיטב המומחים בפורום העברי שלנו!

פורסם בתאריך 14/08/2012 14:14 על ידי Eran Sharvit

VS2012_logoיכולות Agile חדשות וחשובות ל- Team Foundation Server ו- Team Foundation Service נחשפו אתמול בוועידת Agile2012 שנערכת בימים אלו בטקסס: תמיכה במתודולוגיית הפיתוח kanban ויכולות של התממשקות TFS מול Git, באמצעות שורת הפקודה.

Kanban for Team Foundation Service

kanban היא מתודולוגיית ניהול צוותי פיתוח שצוברת תאוצה, ומטרתה לאפשר לצוותי הפיתוח לנהל את הפרוייקטים בצורה יותר טובה ויעילה. עכשיו אתם יכולים להשתמש בתבנית Kanban עם שאר כלי ה- Agile הכלולים כבר ב- Team Foundation Service.

סרטון הדגמה

 

אינטגרציה של Git ו- TFS

מערכות ניהול קוד מבוזרות (DVCS) נהיות פופולריות מיום ליום. אחת המערכות הפופולריות ביותר היא Git. אתמול, מיקרוסופט הכריזה על הכלי Git-tf, אשר מאפשר למפתחים לעבוד עם Git בצורה לוקאלית – לערוך, לבצע commit, branch וכו’- ובסופו של דבר לסנכרן הכל מול TFS repository מרכזי. המשמעות היא, שעכשיו אתם יכולים להנות מכל העולמות – DVCS ו- TFS.

Git-tf יכול לעבוד בצורה מצויינת בצוותי פיתוח היברידיים למשל – ייתכן שבחברה שלכם יש צוות פיתוח שעובד עם כלי הפיתוח של Visual Studio מול שרת TFS ומרוצה מכך מאד. במקביל, ייתכן שישנו עוד צוות פיתוח בפלטפורמה אחרת העושה שימוש ב- XCode ורוצה לעבוד מול Git כיוון שזוהי השיטה הנוחה לו ביותר. מעתה, בעזרת שימוש ב- Git-tf ניתן לעשות זאת בקלות ולסנכרן את כל עבודת צוותי הפיתוח מול שרת TFS מרכזי!

 

איך מתחילים

Git-tf עובד מול התקנה רגילה של Git וכל מה שאתם צריכים הוא להוריד את הכלי מכאן ולקרוא את הקובץ בשם Git-TF_Getting_Started.html שידריך אותכם כיצד להתקין ולהשתמש.

סרטון הדגמה בן 15 דקות על הכלי וכיצד להשתמש בו:

שימו לב שנכון לכתיבת פוסט זה הכלי אינו תומך ב- Team Foundation Service בענן אלא רק בשרתי TFS On Premise מגרסאות 2008, 2010 ו- 2012, אך תמיכה זאת מתוכננת בהחלט בקרוב.

לאחר ההתקנה תוכלו ליצור Git repo מקומי משרת ה- TFS שלכם באמצעות פקודת git tf clone.
תוכלו לבצע pull לשינויים האחרונים משרת ה- TFS על ידי פקודת git tf fetch ותוכלו להכניס את השינויים האחרונים ל- TFS באמצעות פקודת git tf checkin.

בצילום המסך למטה אנו רואים את הפקודות האפשריות שקיימות נכון להיום:

 

Git-tf – כלי חוצה פלטפורמות בקוד פתוח

Git-tf זהו כלי חוצה פלטפורמת, כך שתוכלו להריץ אותו מ- Windows, Mac, Linux וכו’. לא זאת ועוד – פרוייקט זה שוחרר בקוד פתוח ב- CodePlex על מנת שהקהילה תוכל להשפיע, לתרום ולשפר את הכלי. אנו כמובן נמשיך להיות מעורבים ולהוביל קדימה, אך גם אתם מעתה יכולים להשפיע.
אגב, אם אתם כבר “חיים” בעולם שמשלב בין Git ל- TFS, אתם וודאי מכירים פרוייקט קוד פתוח אחר הדומה במטרתו, פרוייקט בשם Git-tfs. אכן פרוייקט זה דומה, אך הוא לא תוכנן ופותח כפרוייקט חוצה פלטפורמות, כמו פרוייקט Git-tf החדש שפיתחנו.

אז אם אתם מעוניינים לשלב את עולם ה- Git DVCS עם עולם ה- TFS בקלות, נוחות ויעילות – נסו את הכלי החדש ותנו לנו פידבק!

יש לכם שאלות נוספות בנושא ALM או VIsual Studio?
הכנסו להתייעץ עם מיטב המומחים בפורום העברי שלנו!

פורסם בתאריך 08/08/2012 14:06 על ידי Eran Sharvit

VS2012_logoאחד מהאתגרים הגדולים ביותר בכתיבת unit testing לאפליקציה שלנו היא העובדה שלעתים אנו תלויים בגורמים חיצוניים שמקשים עלינו לבדוק כל יחידה בצורה עצמאית. למשל, קטע קוד הכותב למדפסת או למערכת קבצים.

 

שימוש ב- Fakes ב- Visual Studio 2012

VIsual Studio 2012 מציגה פיצ’ר חדש ושימושי שנקרא Fakes. הפיצ’ר נותן לכם 2 יכולות חדשות: להוסיף stubs ו- shimes באמצעות כתיבה מינימלית של קוד וללא שימוש ב- mocking framework חיצוני, מה שמאפשר כתיבת בדיקות קלה ומהירה יותר במקרים של קוד שבד”כ נתקשה לבדוק אותו בשל התלות שלו בגורמים “חיצוניים”.

אחד מכללי הברזל של Unit Testing אומר, כי עלינו לבדוק כמה שיותר את הקוד שביחידה שלנו, וכמה שפחות את הקוד ש"בסביבה". כך, למשל, אם יש לנו פונקציה שמחשבת ערך מסויים (נניח מכפלה של שני מספרים), שומרת אותו לקובץ ומדפיסה אותו במדפסת, נשאף לכתוב לה בדיקות הבודקות את נכונות החישוב, וכן בודקות שאכן למדפסת ולקובץ נשלח הערך הנכון.

לא נרצה לכתוב בדיקה שתהיה תלויה בהמצאות מדפסת בזמן הרצת הבדיקה, או בזכויות גישה לתקיה מסוימת בדיסק – מה שייתכן שלא יתקיים אם אנחנו מריצים את הבדיקה על ה-Build Server או בכלל בענן.
כדי להשיג את המטרה הזו, נצטרך אובייקט "מפוברק" (Fake) שיחליף את הסביבה האמיתית.

אם כתבנו את הקוד לפי כללים נכונים והשתמשנו כיאות ב-Dependency Injection , הקוד שלנו ייראה כך בערך:

public class Multiplier
{
private IPrintHandler m_printHandle;
private IFileSystemHandler m_fileHandle;
public Multiplier(IPrintHandler printHandle, IFileSystemHandler fileHandle)
{
m_printHandle = printHandle;
m_fileHandle = fileHandle;
}
public int MultipySaveAndPrint(int m, int n)
{
var result = m * n;
var strResult = result.ToString();
m_printHandle.Print(strResult);
m_fileHandle.Save(strResult);
return result;
}
}

כאשר ה-Interfaces בהם אנו משתמשים יוגדרו כך:

public interface IFileSystemHandler
{
void Save(string strToSave);
}

public interface IPrintHandler
{
void Print(string strToPrint);
}

במקום אחר בקוד יופיע יישום של IFileSystemHandler ו-IPrintHandler שאכן כותב לקובץ ומדפיס למדפסת.

(עוד על Dependency Injection).

 

Stubs

כדי לבדוק את ה-Multiplier ללא תלות במדפסות או במערכת קבצים, כל מה שנצטרך לעשות הוא לכתוב יישום משלנו ל-IPrintHandler ו-IFileSystemHandler. את זה נעשה בצורה הבאה, תוך שימוש בתכונת ה-Fake של Visual Studio 2012:

נוסיף ל-Solution שלנו Test Project וניצור ממנו Reference לפרוייקט שבו כתבנו את ה-Multiplier (בדוגמא שיצרתי הוא נקרא TrialLib).
כעת נצביע על ה-Reference ונלחץ על מקש העכבר הימני. יופיע התפריט הבא:

clip_image002

נבחר Add Fakes Assembly וכעת יתווספו לפרוייקט שני אלמנטים חדשים – ספריה בשם TrialLib.Fakes וקובץ הגדרות באותו שם:

clip_image004

בשלב זה, Visual Studio 2012 כבר ייצר לנו יישום ל-Interfaces, שבו נוכל להחליף כל מתודה שנרצה. כך, למשל, נוכל לכתוב Unit Test בצורה הבאה:

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using TrialLib;
using TrialLib.Fakes;

namespace TryConsoleUnitTestProject
{
[TestClass]
public class UnitTestMultiplier
{
[TestMethod]
public void TestMultiply()
{
string ActualSavedString = "";
string ActualPrintedString = "";
var stubSave = new StubIFileSystemHandler
{
SaveString = (string textToSave) => { ActualSavedString = textToSave; }
};

var stubPrint = new StubIPrintHandler
{
PrintString = (string textToSave) => { ActualPrintedString = textToSave; }
};

var multiplier = new Multiplier(stubPrint, stubSave);
var Actual = multiplier.MultipySaveAndPrint(5, 7);

Assert.AreEqual<int>(35, Actual);
Assert.AreEqual<string>("35", ActualSavedString);
Assert.AreEqual<string>("35", ActualPrintedString);

}
}
}

שימו לב לצורת הכתיבה – Fakes כבר יצר עבורי Class המיישם את ה- Interface (בשם Stub ולאחריו שם ה-Interface), ומה שנשאר לי הוא להחליף את המתודות שמעניינות אותי במתודות בדיקה.

שם המתודה יורכב מקומבינציה של השם המקורי והפרמטרים – כך מתודת ה- Save שמקבלת פרמטר מסוג String תקרא SaveString, ובדוגמא הזו החלפתי אותה במתודה משלי שפשוט שומרת את הפרמטר במשתנה ActualSavedString כדי לבדוק אחר כך אם אמנם נשלח למתודה הפרמטר הנכון.

בצורה דומה טיפלנו במתודת ה-Print. כך בדקתי שהמתודה שולחת את הטקסט הנכון לשמירה ולהדפסה, ללא צורך לעבוד באמת מול מדפסת או דיסק.

בדוגמא זו השתמשתי בשיטה הנקראת Stub (כפי שמעיד גם שם ה-Classes ש-Fake ייצר בשבילנו, כלומר StubIFileSystemHandler ו- StubIPrintHandler . זוהי השיטה הנכונה, לדעתי, לבודד את המתודה הנבדקת מהסביבה האמיתית. אם תרצו, זו כנראה השיטה שילמדו בהוגוורטס אם אי פעם ילמדו שם הנדסת תוכנה..

 

Shimes – כאשר אין אפשרות לבצע Refactor לקוד

קיים עדיין בעולם (לא אצלכם חלילה) קוד שפונה ישירות לרכיבים חיצוניים – דרך ספריות של מיקרוסופט או של צד שלישי – ולא עושה לשם כך שימוש בממשק ברור וניתן להחלפה. כמובן שהטיפול הנכון בקוד כזה הוא כתיבתו מחדש בצורה נכונה, תוך שימוש ב-Dependency Injection כמו שהראינו למעלה. בכל זאת, קיימים עדיין מנהלים בעולם (לא המנהלים שלכם חלילה) שהאפשרות של שכתוב מחדש של כל המערכת גורמת להם גירוד במקומות לא נעימים, ובכל זאת הם דורשים שתוסיפו Unit Tests למתודות הישנות.

בשביל האפשרות הזו נוצרו כוחות האופל – ה-Shims. הם מאפשרים ל- Fakes להחליף כל קריאה למתודה בקריאה "מפוברקת" גם בלי שהקוד הקורא מודע לכך, ובזה מאפשרים, בעצם, לכתוב Unit Tests לכל קוד שהוא. כמו שכל מי שהתעסק עם כוחות אופל יודע, השימוש בהם בדרך כלל אינו בחינם, אבל על כך – בפוסט הבא.

מומלץ לקרוא את הבלוג המצויין של  Peter Provost להבנה מלאה של Stubs ו-Shims.

יש לכם שאלות נוספות בנושא VS 2012, ALM  או Testing?
הכנסו עכשיו לפורום העברי שלנו בנושא והתייעצו עם מיטב מומחי הקהילה.

 

Photo_5F5B07F8[1]הפוסט נכתב על ידי יואל ארנון, מהנדס תוכנה במיקרוסופט המסייע ללקוחות פרמייר - Premier Field Engineer. בעבר יואל היה יועץ עצמאי וחבר בצוות הפיתוח של MSMQ במיקרוסופט חיפה.

פורסם בתאריך 02/08/2012 01:47 על ידי Eran Sharvit

VS2012_logoנדמה שהחבר’ה מרדמונד לא נחים לרגע – עוד לא הספקנו להתאושש מחגיגות השקת Windows 8 בגרסת ה- RTM וכבר בשורה משמחת נוספת והפעם למפתחים: העבודה על גרסת Visual Studio 2012 הסתיימה וברגעים אלו ממש המהנדסים שלנו אורזים ומכינים את הגרסה להפצה לערוצים השונים.

סמיכות האירעים איננה מקרית – אנו מעוניינים לספק כלים מעולים ביחד עם פלטפורמות מעולות וכדי לעשות זאת אנו עושים מאמצים עצומים על מנת לשחרר מספר טכנולוגיות ומוצרים במקביל: Visual Studio 2012, Windows Server 2012, .NET 4.5 וכמובן Windows 8.

 

מתי ההורדה תהיה זמינה?

גרסת ניסיון תהיה זמינה לציבור המפתחים הרחב כבר ב- 15 לאוגוסט כאן.

בתאריך זה מנויי MSDN יוכלו להוריד מכאן אחת מן הגרסאות המלאות של Visual Studio 2012:

Visual Studio Professional, Premium, Test Professional וכמובן Ultimate.

בנוסף לגישה המוקדמת להפצה הטבה משמעותית נוספת שיקבלו מנויי MSDN היא חשבון מפתחים חינם לשנה שלמה ל- Windows Store ול- Windows Phone.

תאריך ההשקה הרשמי הוא ה- 12 לספטמבר.

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

תודה לכל מי שהוריד את גרסאות ה- Developer Preview, Beta וה- Release Candidate ונתן פידבקים אשר אפשרו לנו לשחרר מוצר איכותי ופשוט יותר לשימוש.

אם יש לכם שאלות בנושא Visual Studio 2012 אתם מוזמנים לפורום שלנו בעברית ומיטב מומחי הקהילה ישמחו לענות לכם.

More Posts Next page »