The Experimental Training Course - PowerPoint PPT Presentation

About This Presentation
Title:

The Experimental Training Course

Description:

The Experimental. Training Course. SE MSF .NET. An Experimental ... Integrated Development Environments (IDEs) Managing Security Requirements. Security in .NET ... – PowerPoint PPT presentation

Number of Views:137
Avg rating:3.0/5.0
Slides: 75
Provided by: nikitaiboy
Category:

less

Transcript and Presenter's Notes

Title: The Experimental Training Course


1
The Experimental Training Course
SE MSF .NET
2
Authors of the Presentation
  • Nikita I Boyko, mboyko_at_acm.org
  • Alexey G Dubinsky, dubinsky_at_ukr.net, Associate
    Professor, PhD, Dnipropetrovsk National
    University
  • Irina V Mozgovaya, mir_ra_at_mail.ru, Associate
    Professor, PhD, Dnipropetrovsk National
    University
  • Vladimir L Pavlov, vlpavlov_at_ieee.org, Intel
  • Alexandr D Firsov, phirsof_at_mail.ru, Associate
    Professor, PhD, Dnipropetrovsk National University

3
Agenda
  1. Introduction
  2. Course Content
  3. How We Developed The Course
  4. Conclusions

4
History of the SE MSF .NET Course
  • July 2003 N. Boyko (mboyko_at_acm.org) and V.
    Pavlov (vlpavlov_at_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 ACM in 1968, the second version was
    published in 1978.
  • IEEE-CS the same steps were undertaken in 1977
    and 1983
  • At the end of 1980s ACM and IEEE-CS teamed up
    and released a 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 ??2001CS
  • 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 lists the five
    major characteristics that a CS-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
  1. Introduce students to the core disciplines from
    the Software Engineering section of CC2001CS
  2. Train students in Software Engineering methods
    using Microsoft Solution Framework as an example
  3. Provide the experience of working on software
    projects in a team environment
  4. 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
Module abbreviation Module Name
??.11 Software Development Life Cycle
??.50 Object-Oriented Approach to Software Development
??.52 Financial Planning and Analysis of Software Projects
??.61 Document Flow Management for Software Development Projects
??.77 Project Management
15
Some Related Courses
  • Course that is based on Ian Sommervilles
    classical book
  • http//www.comp.lancs.ac.uk/computing/resources/Ia
    nS/SE6/Slides/index.html
  • A number of universities (for example Saint
    Petersburg State University, Russia) build their
    courses using these materials
  • Microsoft training courses
  • 1846 Microsoft Solutions Framework Essentials
  • http//www.microsoft.com/traincert/syllabi/1846AFi
    nal.asp
  • 2710 Analyzing Requirements and Defining
    Microsoft .NET Solution Architectures
  • http//www.microsoft.com/traincert/syllabi/2710bfi
    nal.asp

16
Agenda
  1. Introduction
  2. Course Content
  3. How We Developed The Course
  4. Conclusions

17
The CC2001CS 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 Microsoft Solutions 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
  • All MSF-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
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
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
InfrastructureSupportOperationsLogisticsCommer
cial release management
22
MSF Project Management Discipline
Procurement Management
Risk Management
Communications Management
Human Resource Management
Integration Management
Cost Management
Time Management
Scope Management
Bridge between MSF and PMBOK
Quality Management
Team Leads
Program Management
Product Management
Development
Test
User Experience
Release 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 Mathematics of
    Dnipropetrovsk National University
  • Chairs
  • Software Development
  • Computational Mathematics and Mathematical
    Cybernetics (CMMC)
  • 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
Lectures Chair of CMMC N. Boyko K. Runduyev Chair of Software Development I. Mozgovaya Lab work Chair of CMMC A. Firsov Chair of Software Development O. Beloborodko
29
The Course is Planned for Two Semesters
  • 1st semester
  • 9 lectures
  • 9 lab 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 Departments Laboratory
  • 9 classes lab work on .NET using web-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
  1. Course introduction
  2. Microsoft .NET Framework review
  3. UML language review
  4. Project Management in IT.
  5. The review of Web-service based architecture. XML
    and SOAP
  6. MSF Team Model
  7. Risk management in IT-projects
  8. The Envisioning phase of the MSF Process Model
  9. The Planning phase of the MSF Process Model

34
Lectures that the Students Attend During the
Second Semester
  1. Course Review
  2. Conceptual, Logical and Physical Design in the
    MSF Process Model
  3. Design Patterns
  4. UML Meta Model
  5. The Development Phase in the MSF Process Model
  6. The Stabilizing Phase in the MSF Process Model
  7. Software Testing
  8. The Deployment Phase in the MSF Process Model

35
Lectures That the Students Attend During the
Second Semester (2)
  1. Management in IT-operations. Overview of ITIL and
    MOF
  2. Integrated Development Environments (IDEs)
  3. Managing Security Requirements. Security in .NET
  4. Creating Windows Applications in .NET
  5. Employment in IT. Professional Ethics
  6. Rational Unified Process
  7. Agile Processes, eXtreme Programming
  8. SW/CMMCMMI
  9. 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-site using XML
  • Expand the site with database interaction
  • Create web-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 with
    MSF 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
  • Deans 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 Sommervillels 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

51
Agenda
  1. Introduction
  2. Course content
  3. How We Developed The Course
  4. Conclusions

52
The Training Course SE MSF.NET
  • Has been created by the following 12 people O.
    Biloborodko, N. Boyko, A. Dubinsky, S.Zemlyana,
    E.Kolesnikova, D.Malenko, I.Mozgova, V.Pavlov,
    O.Pylypenko, K.Runduev, O.Fedorenko, A.Firsov
    under the leadership of vice president of the
    Managers Union of Dnipropetrovsk, CTO of eLine
    Software V.Pavlov
  • Sponsored by The Managers Union of
    Dnipropetrovsk
  • Please send your comments on this course to
    se.msf.net_at_elinesoftware.com

53
Managers Union Support
  • Student kits
  • Presentation handouts for every lecture
  • Students CDs
  • Computers are upgraded in a Department's lab
  • Purchasing books for the Department's library

54
What is a Project?
  • A project is a temporary venture, with a finite
    beginning and end, whose goal is to create a
    unique product or service
  • Project management is an independent discipline
    that has been rapidly developing throughout the
    last decades
  • Constraints budget, schedule, quality
  • Project Management methods

55
Course Development as a Project
  • The development of the course is considered to be
    a project
  • It is reasonable to use project management
    methodologies in our case
  • We have chosen MSF (see slide 16)
  • Are there any specifics?
  • Similarity to software projects
  • Adaptation is necessary
  • MSF has been reworked

56
MSF Adaptation for the Educational Project
  • Modified Team Model
  • Completely different Process Model
  • Project and Risk Management disciplines have
    undergone minor changes

57
Traditional MSF Team Model
Stakeholder
Product Management
Customer
Project Team
6
Program Management
Project Sponsor
Development
Role Cluster
External Stakeholder
User Experience
User
Testing
Release Management
Maintenance
58
Adapted Team Model
Stakeholder
Coordination
Sponsor
Project Team
Teacher care
Teacher
7
Student care
Development
Student
Role Cluster
External Stakeholder
Potential Employer
Business care
Testing
Institutionalization
University
59
Role Clusters
  • Coordination
  • coordinating the teamwork and managing schedule
    and budget constraints
  • Institutionalization
  • correspondence to educational standards and
    coordination with other courses
  • Teacher-care
  • assurance that training materials are complete
    enough for teaching the course

60
  • Student-care
  • the course is designed to be interesting and
    understandable for students as well as useful for
    their future careers
  • Business-care
  • students are to acquire the necessary skills and
    qualities to attract potential employers
  • Development
  • creating training materials, quizzes and
    laboratory tasks
  • Testing
  • verification that the quality of the course
    corresponds to predetermined norms and
    requirements

61
Project Outputs
  • Project vision/scope
  • Course curriculum
  • Project structure definition
  • Presentations for all lectures and laboratory
    work, additional materials
  • Template
  • Recommendation
  • Trainer's CD contains current versions of these
    materials
  • A new version of the CD is released every two
    weeks on a regular basis

62
Testing
  • Careful testing of the outputs is one the most
    important constituents of the project work
  • The team performs continual testing of the course
    materials in open lectures
  • the lecture rehearsal is conducted by the author
    and the tester of the course team
  • open lectures occur once a week on weekends
  • IT-specialists and university lecturers from
    Dnipropetrovsk and other Ukrainian cities are
    invited to the lecture rehearsals

63
Lecture Lifecycle
  • An author creates an initial version
  • A tester submits remarks on how to improve the
    lecture, and then the author revises it
  • At a general project group meeting, the lecture
    is discussed and the author revises it again
  • Open rehearsal is conducted
  • After an open lecture rehearsal, the author
    revises it taking feedback into account
  • A proofreader corrects the presentation
  • External peer-review is conducted
  • The lecture is corrected accounting for the notes
    from external reviewers
  • Perhaps we are to involve a graphical designer?

64
External Review
  • Another quality assurance procedure is the
    reviewing of created materials
  • The course curriculum has been successfully
    reviewed by professionals from a number of
    top-rated American, Russian and Ukrainian
    universities
  • Currently the lectures of the first term are
    being reviewed

65
Risks
  • Project risk is an uncertain event or condition
    that, if occurs, has a positive or negative
    effect on project objectives (PMBOK)
  • Being unmanaged, risks can become problems
  • Risk analysis is performed according to the MSF
    Risk Management Discipline
  • A number of obstacles, that could have hampered
    the success of the project, have been identified
  • Measures have been planned and taken to minimize
    or abolish major risks

66
Some Results of Risk Analysis
  • OBSTACLE There is no projector for showing Power
    Point presentations at the department auditoriums
  • SOLUTION Before each lecture students get
    individual kits with printed handouts
  • OBSTACLE The time in a computer auditorium is
    limited some students do not have Internet
    access
  • SOLUTION Each student gets two CDs with free
    software and additional course materials
    including the copies of useful web-sites
  • OBSTACLE The university library does not have
    enough books and manuals for the course
  • SOLUTION Necessary books have been bought for
    the departments library
  • OBSTACLE computers in the laboratory of the
    Applied Mathematics department do not have enough
    memory for using Microsoft .NET Framework
  • SOLUTION Additional memory has been installed

67
Agenda
  1. Introduction
  2. Course content
  3. How We Developed The Course
  4. Conclusions

68
Research Project
  • While working on the course, an idea was born to
    conduct research on formalizing MSF using SPEM
  • Its result has been reported at the Moscow State
    University conference which took place on March
    4th, Moscow, Russia

69
The Evolution of the Course
  • This course is supposed to be a basis for a set
    of the following courses
  • Software Engineering
  • IT-Project Management using Microsoft Solution
    Framework
  • IT-operations Management
  • Object Oriented Analysis and Design Using UML
    Language
  • Object Oriented Programming in C Language

70
The Discussion of the Course
  • The Guild of Certified Professionals,
    Dnipropetrovsk, Ukraine, November 17th, 2003
  • International conference "United Information
    Space", Dnipropetrovsk, Ukraine, December
    3rd-4th, 2003
  • Microsoft Workshop "Contemporary Technologies and
    their Training Approach". Nizhniy Novgorod, NNGU,
    February 14th, 2004, Moscow, Russia, February
    16th, 2004
  • Workshop Teaching IT in Ukrainian Universities",
    Dnipropetrovsk, Ukraine, March 30th, 2004
  • Report on Microsoft Research Academic Days -
    St. Petersburg, Russia, April 22nd, 2004

71
Conclusion
  • The course of Software Engineering is being
    developed at Dnipropetrovsk National University
    (DNU, Ukraine) the course covers all core SE
    disciplines from the IEEE / ACM Computing
    Curricula 2001 Computer Science volume
  • The participants of this project organized their
    efforts by adapting contemporary project
    management approaches

72
You can download this presentation from
  • http//www.it-education.ru
  • http//www.vlpavlov.com

73
Questions?
? ? ?
74
The picture of the space ship Ocean-O is used
in the background. Such satellites are
manufactured at the Ukrainian factory UMZ,
located in Dnipropetrovsk
Write a Comment
User Comments (0)
About PowerShow.com