1 / 74

The Experimental Training Course

The Experimental Training Course. SE MSF .NET. Authors of the Presentation. Nikita I Boyko , mboyko@acm.org Alexey G Dubinsky , dubinsky@ukr.net, Associate Professor, PhD, Dnipropetrovsk National University

marlow
Download Presentation

The Experimental Training Course

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Experimental Training Course SE MSF .NET

  2. Authors of the Presentation • Nikita IBoyko, mboyko@acm.org • Alexey GDubinsky, dubinsky@ukr.net, Associate Professor, PhD, Dnipropetrovsk National University • Irina V Mozgovaya, mir_ra@mail.ru, Associate Professor, PhD, Dnipropetrovsk National University • Vladimir L Pavlov, vlpavlov@ieee.org, Intel • Alexandr D Firsov, phirsof@mail.ru, Associate Professor, PhD, Dnipropetrovsk National University

  3. Agenda • Introduction • Course Content • How We Developed The Course • Conclusions

  4. History of the SE MSF .NET Course • July 2003 – N. Boyko (mboyko@acm.org)andV. Pavlov (vlpavlov@ieee.org) came up with the idea to create the course • Project team was formed • The course was given a name SE MSF .NET • August 2003 – open rehearsal of lectures began • September 2003 – pilot lecturing began • February 2004 – student teams started to work on course projects • June 2004 – exam

  5. Real World Practical Demands • Many representatives of Ukrainian and Russian software development companies consider that IT graduates must: • possess knowledge of contemporary software development processes; understand how software is developed and created • be familiar with modern concepts of software testing, configuration management, requirement management, etc. • posses skills and knowledge of software development techniques, UML, CASE-tools • know technical English

  6. ACM • Association for Computing Machinery • Founded in 1947 • More than 75,000 members • More than 100 conferences conducted annually • More than 25 periodicals • International collegiate programming contests • http://www.acm.org

  7. IEEE-CS • Institute of Electrical and Electronic Engineers Computer Society • More than 100,000 members • More than 140 conferences conducted annually • More than 20 periodicals • http://www.ieee.org • http://www.computer.org

  8. Computing Curricula 2001 • The first attempt to create computing curricula recommendation for Computer Science was undertaken by ACMin 1968, the second version was published in 1978. • IEEE-CS – the same steps were undertaken in 1977 and 1983 • At the end of1980’s ACM andIEEE-CS teamed upandreleaseda Computing Curricula in 1991 • 2001 – the last version was released • http://www.computer.org/education/cc2001 • In 2002,Saint Petersburg State University (Russia)published the translation of СС2001-CS in Russianhttp://se.math.spbu.ru/cc2001

  9. CС2001 Structure • СС 2001 consists of 5 volumes: • Computer Science • Software Engineering • Computer Engineering • Information Systems • Overview

  10. The Diversity of the Computing Field Software Engineering SE SE MSF .NET CS IS Information Systems Computer Science CE Computer Engineering

  11. Software Engineering in СС2001:CS • Core disciplines: • SE1. Software design • SE2. Using APIs • SE3. Software tools and environments • SE4. Software processes • SE5. Software requirements and specifications • SE6. Software validation • SE7. Software evolution • SE8. Software project management • Elective disciplines: • SE9. Component-based computing • SE10. Formal methods • SE11. Software reliability • SE12. Specialized systems development

  12. Characteristics of CS Graduates • Section 11.1 of the СС2001-CS liststhe fivemajor characteristics that aCS-graduate must possess • One of the five characteristics is “significant project experience”: • To ensure that graduates can successfully apply the knowledge they have gained, all students in computer science programs must be involved in at least one substantial software project. Such a project demonstrates the practical application of principles learned in different courses and forces students to integrate material learned at different stages of the curriculum.

  13. The Objectives of Our Software Engineering Course • Introduce students to the core disciplines from the Software Engineering section of CC2001:CS • Train students in Software Engineering methods using Microsoft Solution Framework as an example • Provide the experience of working on software projects in a team environment • Teach basic knowledge of the Microsoft .NET Framework

  14. The extract from the list of skills that a Ukrainian university graduate must posses. Specialty “7.080403 – Software Development for Automatic Control Systems”

  15. Some Related Courses • Course that is based on Ian Sommerville‘s classical book: http://www.comp.lancs.ac.uk/computing/resources/IanS/SE6/Slides/index.html Anumber of universities (for example Saint Petersburg State University, Russia) build their courses using these materials • Microsofttraining courses • 1846 “Microsoft Solutions Framework Essentials” http://www.microsoft.com/traincert/syllabi/1846AFinal.asp • 2710 “Analyzing Requirements and Defining Microsoft .NET Solution Architectures” http://www.microsoft.com/traincert/syllabi/2710bfinal.asp

  16. Agenda • Introduction • Course Content • How We Developed The Course • Conclusions

  17. The CC2001:CS standard Course SE MSF.NET Software Engineering Knowledge of Software Engineering MSF Teamwork in a software project Project experience .NET

  18. Microsoft Solutions Framework • There is a number of software project management methodologies (RUP, MSF, CDM, XP etc.) • We have chosen MicrosoftSolutions Framework (MSF) • flexibility and scalability • totally free • the whitepapers have been translated into Russian http://www.microsoft.com/rus/msf • two of the project participants are Microsoft Endorsed MSF Practitioners

  19. What is MSF? • The MSF is a collection of Microsoft's proven practices on managing successful IT projects • Microsoft barely markets MSF, and they do not sell it. Instead, Microsoft focuses on making money *USING* MSF • Microsoft initially made MSF available in 1994. The latest version of MSF is 3.0; it was released in 2002. Like Windows, or any other products, MSF evolves and matures as long as new versions are released • AllMSF-related materials are open for public access. Besides this, anyone can download the set of templates of all the documents used in MSF projects for free

  20. Bug Convergence Zero Bug Bounce Pilot Complete Pre-Production Test Complete MSF Process Model Deployment complete Deployment Stable Interim Milestone Core Team Organized Site Deployments Complete Interim Milestone Vision/Scope Drafted Core Components Deployed Release Readiness Approved Vision/Scope Approved Technology Validation Functional Specification Baselined User Acceptance Testing Complete Release Candidates Master Plan Baselined Master Schedule Baselined Development and Test Environment Set Up Scope Complete Project Plans Approved Proof of Concept Complete Internal Build 1 Complete Internal Build 2 Complete Internal Build n Complete

  21. Program Management ProductManagement Development UserExperience Test ReleaseManagement MSF Team Model Project managementSolution architectureProcess assuranceAdministrative services Technology consultingImplementation architecture and designApplication developmentInfrastructure development Business valueMarketingCustomer advocacyProduct planning Test planningTest engineeringTest reporting AccessibilityInternationalizationUser advocacyTraining/support materialUsability research and testingUser interface design InfrastructureSupportOperationsLogisticsCommercial release management

  22. MSF Project Management Discipline Risk Management Procurement Management Communications Management Human Resource Management Integration Management Time Management Cost Management Scope Management “Bridge” betweenMSF and PMBOK Quality Management at overall project level at sub-team level

  23. MSF Risk Management Discipline 2 Analyze and Prioritize Risk Statement 1 Identify Master Risk List 3 5 Plan and Scedule Control Top Risks 6 Learn Track and Reprt RiskKnowledge Base, 4

  24. MSF Readiness Management Discipline Define KnowledgeSkillsAbilities Assess Evaluate Change

  25. Why .NET? • For implementing software solutions, students need an appropriate development framework • A typical situation is modeled: an IT specialist needs to become familiar with new technology in bounded terms • .NET is a new technology promoted by Microsoft • Advantages: • actively promoted by Microsoft • will be highly used in the nearest future • Students learn only those elements of .NET Framework which are required for working on practical tasks

  26. Pilot Deployment of the Course • Department of Applied Mathematicsof Dnipropetrovsk National University • Chairs: • Software Development • Computational Mathematics and Mathematical Cybernetics (CM&MC) • Course“System Analysis and Design of Informational Systems”

  27. First Attendees of the Course • 4th year students of the Department of Applied Mathematics,Dnipropertrovsk National University • Specialties: • Software Development for Automatic Control Systems • Intellectual Decision Making Systems

  28. Classes are Lectured by the Department of Applied Mathematics Faculty

  29. The Course is Planned for Two Semesters • 1st semester: • 9lectures • 9lab classes • 2nd semester: • 17 lectures • 17 lab classes

  30. 26 Lectures • Software Engineering – 12 • MSF-based Project Management – 8 • .NET Technologies– 3 • Additional Topics – 3

  31. 26 Classes in the Department’s Laboratory • 9 classes – lab workon .NET usingweb-based technologies (HTML, SOAP) • 17 classes – team work on projects

  32. Material Distribution among Semesters • Fall (the first) semester of 2003/2004 • Familiarizing with .NET • Specific topics of SE and MSF • 3 lab tasks • Spring (the second) semester of 2003/2004 • Profound topics of SE • Detailed study of MSF • Course project

  33. Lectures that the Students Attend During the First Semester • Course introduction • Microsoft .NET Framework review • UML language review • Project Management in IT. • The review of Web-service based architecture. XML and SOAP • MSF Team Model • Risk management in IT-projects • The Envisioning phase of the MSF Process Model • The Planning phase of the MSF Process Model

  34. Lectures that the Students Attend During the Second Semester • Course Review • Conceptual, Logical and Physical Design in the MSF Process Model • Design Patterns • UML Meta Model • The Development Phase in the MSF Process Model • The Stabilizing Phase in the MSF Process Model • Software Testing • The Deployment Phase in the MSF Process Model

  35. Lectures That the Students Attend During the Second Semester (2) • Management in IT-operations. Overview of ITIL and MOF • Integrated Development Environments (IDEs) • Managing Security Requirements. Security in .NET • Creating Windows Applications in .NET • Employment in IT. Professional Ethics • Rational Unified Process • Agile Processes, eXtreme Programming • SW/CMM+CMMI • Overview of Component Software Development (CORBA, COM, RMI, Advanced Aspects of .NET Programming)

  36. Feedback From Students • The course is interesting, useful and unusual • Students like that the course contains plenty of information about contemporary achievements and tendencies in the IT-industry • Students of the course often feel as if they have read “the table of contents”, but not the book itself

  37. Feedback From Students (2) • The scope of the course is very broad and does not allow them to learn many areas deeply, even though details are important in programming • Students appreciate that they do not need to write the lectures down – leaving more time for absorbing information • Some students, however, do need to write the lecture down – sometimes people remember information better while writing

  38. Lab Tasks of the 1st Semester • Three compulsory lab tasks • Create a small (static) web-siteusingXML • Expandthe sitewith database interaction • Createweb-services

  39. Lab Tasks of the 2nd Semester • Complete a course project Work in a team of 5-8 students • The team performs its work in compliance withMSF methodology • The team reports the status to the supervisor on a regular basis • At the end of the 2nd semester student teams compete in a contest

  40. Student Projects • Requirements • The project must not be for profit • The result of the project must be useful for the university • .NET technologies must be used • Potential customers • Dean’s office • University department • Lyceum of Information technology

  41. Student Documentation A Vision Scope document

  42. Master Risk List

  43. A Use-case Diagram

  44. Every Student Receives: • Presentation handouts for each lecture • Additional materials for every lecture (hardcopies of referenced articles, printouts of diagrams,etc.) • CD that contains materials on software engineering • CD that contains necessary .NET-related materials (including free software)

  45. CD 1 “Informational Resources on Software Engineering” • Materials on Software Engineering, including • SWEBOK Standard • Ion Sommervillel’s presentations to his course “Software Engineering” • Materials on UML, including • UML and SPEM standards • Materials on MSF, including • MSF whitepapers in Russian and English languages • Document templates for MSF-based projects • A video presentation of the MSF overview lecture • Materials on CMM, including • SW-CMM and CMMI official CMU SEI documentation • Other resources • Materials on RUP, Agile, etc.

  46. CD 2 “Resources on Microsoft .NET” • Installation packages: • MSDE 2000 SP3 • Microsoft .NET Framework SDK 1.1 • Microsoft Web Matrix (the latest available version) • SharpDeveloper (the latest available version) • Additional materials: • Off-line copies of useful web-resources • Current C# language ISO standard • Current HTML and XML W3C standards • Current CLI ISO standard

  47. Students’ Knowledge Control • Regular control (quizzes during lectures) • Midterm control (midterm examination and quizzes) • Laboratory tasks (1st term) • Course project (2nd term) • The course peaks with the exam. Three questions: • Software Engineering • MSF • Microsoft .NET Framework and ASP.NET

  48. Possible Alternatives for the Examination • A student, who successfully passes an approved certification exam before April 15th, is exempt from the course exam • IBM 486 “Object-Oriented Analysis and Design with UML” • MS 74-100 “Microsoft Endorsed MSF Practitioner Exam” • . . .

  49. Knowledge Transfer • While working on the course one of the team members (a university lecturer) passed his exams and became a Microsoft Endorsed MSF Practitioner, another team member (a student) became a Microsoft Certified Solutions Developer (MCSD) for .NET

  50. Encouraging the Students • A Prize CD, which contains a video of recognized professional lectures, is given to students who finish their laboratory tasks first • Department competition among student projects • Winners will receive a prize - a set of IT books

More Related