Introduction to Embedded Software Development He Zongjian 13816533720.

Slides:



Advertisements
Similar presentations
Microsoft Developer Network Academic Alliance Overview.
Advertisements

E-Science Data Information and Knowledge Transformation Thoughts on Education and Training for E-Science Based on edikt project experience Dr. Denise Ecklund.
EMPLOYABILITY SKILLS FOR DATABASE COMPUTING STEM Annual Conference 2012 Jing Lu and Al Monger Technology School Southampton Solent University.
Professional Services Developer Program Services
Learning Enhances Awareness LEA – IJMA Learning Enhances Awareness LEA 2008.
The Bold, New Extreme Programming Experiment - Now in Its Ninth Year Brian Spears Follett Software Company McHenry, IL 2009 Agile Conference Student: Nick.
H-Tech. H-Tech: Objective European online university Technical and humanist For students around the world Engineering Bachelors and Masters degrees.
SharePoint 2007 Operations Module 1: Introduction.
PRODUCT FOCUS 4/14/14 – 4/25/14 INTRODUCTION Our Product Focus for the next two weeks is Microsoft Office 365. Office 365 is Microsoft’s most successful.
2010 Challenges and Initiatives for Ministry of Education and Science of Georgia.
An Introduction to Information Systems in Organizations
1 SYS366 Week 1 - Lecture 2 How Businesses Work. 2 Today How Businesses Work What is a System Types of Systems The Role of the Systems Analyst The Programmer/Analyst.
Corporate and Professional Education Innovative Educational Solutions Community Briefing Series October 23, 2007.
Expectations for the Week & the Software Development Lifecycle JAMS Workshop Makerere University September 2010.
Faruk Çubukçu Virtualization samples, short.
A brief look at Canadian post secondary computer technology studies.
Unite! is an easy-to-use online tool that connects you and your business or organization to the future workforce in your community. Go to
Software Developer Career. ◦ Desktop Program development ◦ Web Program Development ◦ Mobile Program Development.
Mr. Batchelor HP IT Essentials I & Honors level II New Version 4.1.
10969A Active Directory® Services with Windows Server® Course 10699A
Introduction to Project Management
Team Launch Introduction. Real projects are large and complex, and most software is created by teams Merely throwing people together does not result in.
Computers & Employment By Andrew Attard and Stephen Calleja.
Fundamentals of Information Systems, Second Edition 1 Information Systems in Organizations.
Microsoft Dynamics AX 2009 Integration and Development with the.NET Framework Closing.
E Copyright © 2004, Oracle. All rights reserved. Next Steps Continuing your education.
CS 732 Software Engineering Semester 1/2545 Dr.Choonhapong Thaiupathump.
MIS3300_Team8 Service Aron Allen Angela Chong Cameron Sutherland Edment Thai Nakyung Kim.
CSE 436 Software Engineering Workshop Course Overview Christopher Gill CSE 436 January 2007 Department of Computer Science and Engineering.
Career Opportunities in Information Technology There are four main categories of IT jobs, grouped by the main focus of the job: Sales and support Software.
Web 2.0: Making the Web Work for You - Illustrated Unit C: Collaborating and Sharing Information.
Fluid Mechanics and Energy Transport BIEN 301 Juan M. Lopez, E.I.T. Research Consultant LeTourneau University Adjunct Lecturer Louisiana Tech University.
PBL in Team Applied to Software Engineering Education Liubo Ouyang Software School, Hunan University CEIS-SIOE, January 2006, Harbin.
TEACHER FEEDBACK WEBSITE HTVN TEAM. AGENDA 1.TEAM INTRDUCTION 2.PROJECT OVERVIEW 3.PLAN 4.PRODUCT ARCHITECTURE 5.DATABASE DESIGN 6.TEST PLAN & TEST REPORT.
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
Practices of Mainframe Education in Tongji University Dr. Gene Fuh Guest Professor of TongJi University
CS 110: Introduction to Computer Science Frequently asked questions about a CS major and CS career.
IT Job Roles & Responsibilities Shannon Ciriaco Unit 2:
CS Software Testing Company Sponsored Projects An Overview Fall 2009 Instructor: Aditya Mathur August 24, 2009.
Large Software Projects Deborah Black Vice President, Windows Division Microsoft.
Paul Butterworth Management Technology Architect
Challenges in KeyStone Workshop Getting Ready for Hawking, Moonshot and Edison.
Introduction to IS & Fundamental Concepts Infsy 540 Dr. R. Ocker.
ME2016 ME2601 ME Course summary Johann Packendorff.
 What are CASE Tools ?  Rational ROSE  Microsoft Project  Rational ROSE VS MS Project  Virtual Communication  The appropriate choice for ALL Projects.
Introduction Fall 2001 Foundations of Computer Systems Prerequisite:91.166* or * Section A Instructor: Dr. David Hutchinson Office:
Why You Should All Become Computer Engineers ECE 200 (Fall 2015) Saurabh Bagchi School of Electrical and Computer Engineering Purdue University.
CSE 102 Introduction to Computer Engineering What is Computer Engineering?
Software Engineer Basic IntroductionJob ClassificationCompetenciesJob OverviewJob content.
The integration of science, technology, engineering and mathematics to solve complex, real- world problems in order to prepare students for careers using.
Undergraduate Computing education in China XU, Yang Feb
Elluminate’s Integration to Blackboard Introducing Building Block Version 2.
ECE 424 Embedded Systems Design Lecture 1: Course Overview & Administrative Details Ning Weng Friday, August 17, 2012.
+ Game Design Careers. + Game Development Developing an interesting video game is a very challenging task. It usually takes many different people working.
Using Blackboard as a Tool to Teach Online Technology Skills in College Classrooms Dr. Victoria Haddad Adjunct Professor, College of Technology Wilmington.
M253 Students Study Guide Mrs. Fatheya Al Mubarak – AOU Dammam.
Internal developer tools and bug tracking Arabic / Hebrew Windows 3.1Win95 Japanese Word, OneNote, Outlook
2 Careers in Drafting Permission granted to reproduce for educational use only. © Goodheart-Willcox Co., Inc. Identify many career possibilities related.
Education Portal Solutions for Higher Education Education portals create a common gateway to the data and services that the people throughout your university.
In an increasingly competitive industry is certified by a recognized provider as Microsoft exam will dramatically improve your chances busy. Microsoft.
Information Systems in Organizations 1.1 Introduction to MIS.
TOPIC : PROJECT MANAGER
Succeeding as a Systems Analysts
Dwight O’Neal Period 1 and 6
Partner Readiness Guide Cloud Application Development
Advanced Programing practices
The Vertically-Integrated Projects (VIP) Program: Integrating Undergraduate Education and Graduate Research Bloom, B. S. (Ed.). (1956). Taxonomy of educational.
OU BATTLECARD: Oracle Linux Training and Certification
OU BATTLECARD: Oracle Data Integrator
OU BATTLECARD: Oracle Identity Management Training
Presentation transcript:

Introduction to Embedded Software Development He Zongjian

Learning by doing Project Project  Source code server  Progress control  MSF Speech Speech  Microsoft MSF expert  ICOP -- CTO

Windows ChallengE Reference web site: Reference web site: 

FAQ Resources Teacher Assistant: Teacher Assistant: 

Brief Introduction An elective course of Embedded Computing An elective course of Embedded Computing 3-credit course, 3 hours per week. 3-credit course, 3 hours per week. Has been available for 2 years, over 260 students have taken this course. Has been available for 2 years, over 260 students have taken this course.

Goals make the student understand the characteristics of embedded system and embedded software make the student understand the characteristics of embedded system and embedded software understand the features and architecture of Windows CE, especially the differences from other embedded operating systems. understand the features and architecture of Windows CE, especially the differences from other embedded operating systems. know how to customize the OS and how to develop applications and device drivers. know how to customize the OS and how to develop applications and device drivers. give the students more practice via one or two projects. give the students more practice via one or two projects.

Achievement Students show great interests in this course. Students show great interests in this course. More than 200 undergraduate students and over 20 graduate students have selected this course. More than 200 undergraduate students and over 20 graduate students have selected this course. It has largest attendance among all the elective courses It has largest attendance among all the elective courses

Achievement (continued) Windows CE club is set et up. Now, more than 150 members have joined the club. Windows CE club is set et up. Now, more than 150 members have joined the club. Huaheng Cup Software development Competition Huaheng Cup Software development Competition Microsoft internship program Microsoft internship program

Differences from Windows Programming Application Development Application Development API , MFC API , MFC Development Tools Development Tools Common Application Common Application  Networking , database Application Development Application Development Device Driver Development Device Driver Development OS Design OS Design Windows CE Kernel Architecture Windows CE Kernel Architecture

Two teaching methods in SSE 03 Traditional way >= 50% Traditional way >= 50% Learning by doing <= 50% Learning by doing <= 50%

Course Agenda Embedded System(2) Embedded System(2) Embedded Operating System(2) Embedded Operating System(2) Introduction to Windows CE (2) Introduction to Windows CE (2) Application Development (6) Application Development (6) Windows CE OS Development (6) Windows CE OS Development (6) Windows CE System Architecture(4) Windows CE System Architecture(4) Driver Development (4) Driver Development (4) BSP Development & Other Topics (4) BSP Development & Other Topics (4) Summary and Case study : (2) Summary and Case study : (2)  vehicle electronic Lab Course (16) Lab Course (16)

Learning by doing CMU Learning by Doing + the situation of China + the involvement of software industry CMU Learning by Doing + the situation of China + the involvement of software industry Use large-scale applied or virtual software projects Use large-scale applied or virtual software projects Organize students like software company members Organize students like software company members Organize teaching courses like real software developing process Organize teaching courses like real software developing process

Learning by doing (Contd.) 20% teaching, 80% projects 20% teaching, 80% projects Teachers give the key points to students; students learn knowledge by self-study and doing projects. Teacher works as consultants. Teachers give the key points to students; students learn knowledge by self-study and doing projects. Teacher works as consultants. The grading criterion is whether students can finish software projects on schedule and on demand. The grading criterion is whether students can finish software projects on schedule and on demand.

Sources of projects 1. Consider whether Microsoft can provide some detailed project requirements, the projects can be virtual or real. Students can be grouped and “ bid ” for the projects. 1. Consider whether Microsoft can provide some detailed project requirements, the projects can be virtual or real. Students can be grouped and “ bid ” for the projects. 2. Students can be organized to join “ Microsoft Windows Embedded Student ChallengE ” competition. 2. Students can be organized to join “ Microsoft Windows Embedded Student ChallengE ” competition. 3. Some internal embedded projects in school. 3. Some internal embedded projects in school.

Training of engineering experience During the whole projects, we want to focus on training the engineering attainment of students. Not only lies in the usage of CASE tools, but also in the management of software process. From the initial business plan to analysis and design, coding and testing, product release and so on. All of these should be strictly according to the process of software companies. During the whole projects, we want to focus on training the engineering attainment of students. Not only lies in the usage of CASE tools, but also in the management of software process. From the initial business plan to analysis and design, coding and testing, product release and so on. All of these should be strictly according to the process of software companies.

Responsibility of the teacher Provide fundamental course introduction and introduction to tools and technologies. Provide fundamental course introduction and introduction to tools and technologies. Help students to build the develop environment and tools (code management, bug management) Help students to build the develop environment and tools (code management, bug management) assort with project process (coding, testing and communication) assort with project process (coding, testing and communication) Provide technical support (solving problems in projects) and so on … Provide technical support (solving problems in projects) and so on …

How students get knowledge 1. The teacher ’ s necessary explanation. 1. The teacher ’ s necessary explanation. 2. Self-learning. This is the main approach of getting knowledge. 2. Self-learning. This is the main approach of getting knowledge. 3. Communications between students. 3. Communications between students.

Organization of the students Divided into several groups. Each students can act as a specific role, such as : Architect , Program Manager , Developer , Test and so on. Divided into several groups. Each students can act as a specific role, such as : Architect , Program Manager , Developer , Test and so on. Each student takes his own responsibility and finishes the program together. Each student takes his own responsibility and finishes the program together. In order to let students experience different roles, we can perhaps put one student in different groups and let him / her act as different roles. In order to let students experience different roles, we can perhaps put one student in different groups and let him / her act as different roles.

Phase of the projects Divide the project into several phases. For example, writing business planning, project designing, software developing, testing and software release. Divide the project into several phases. For example, writing business planning, project designing, software developing, testing and software release. At the beginning of each phase, teachers or experts from enterprise can tell the students the tasks of this phase and important things. At the end of each phase, teachers or experts should review the results to see whether they can pass. If the result passes, they can go to next phase, or else, they should redo or modify it. At the beginning of each phase, teachers or experts from enterprise can tell the students the tasks of this phase and important things. At the end of each phase, teachers or experts should review the results to see whether they can pass. If the result passes, they can go to next phase, or else, they should redo or modify it.

How to grade Students are divided into several groups. For each group, we give the members the same result. Students are divided into several groups. For each group, we give the members the same result. We treat each group as a unit so that team working can be trained. We treat each group as a unit so that team working can be trained.

Future vision We would like to make this course and this teaching mode as a brand and this brand can have certain effect in software industry. We would like to make this course and this teaching mode as a brand and this brand can have certain effect in software industry. We may give the students a “ Learning by doing ” certification, so that students who take part in this course can have more advantages in job hunting. We may give the students a “ Learning by doing ” certification, so that students who take part in this course can have more advantages in job hunting.

Course Selection if in agenda select it else goto Mrs. Ji xuelian’s office before 20th end if

Reference Web site us/dnanchor/html/mobileembedded.as p?frame=true us/dnanchor/html/mobileembedded.as p?frame=true us/dnanchor/html/mobileembedded.as p?frame=true us/dnanchor/html/mobileembedded.as p?frame=true

Reference Newsgroup microsoft.public.windowsce.app.development microsoft.public.windowsce.app.development microsoft.public.windowsce.embedded microsoft.public.windowsce.embedded microsoft.public.windowsce.embedded.vc microsoft.public.windowsce.embedded.vc microsoft.public.windowsce.platbuilder microsoft.public.windowsce.platbuilder microsoft.public.windowsce.targeted.device microsoft.public.windowsce.targeted.device microsoft.public.windowsce.update microsoft.public.windowsce.update