You are on page 1of 9

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI

WORK INTEGRATED LEARNING PROGRAMMES


Digital
Part A: Content Design
Course Title Software for Embedded Systems
Course No(s) IS ZC424 / ES ZC424
Credit Units 3
Credit Model
Content Authors Neena Goveas

Course Objectives
No

CO1 To introduce various methodologies, components, frameworks and development systems the
can be used to design and develop software for todays embedded systems

CO2 To apply the various methodologies, frameworks and use the development systems in
implementing embedded systems

CO3 To bring in a perspective of end to end solutions using embedded systems and interdisciplinary
approach to learning and understanding the software development for embedded systems

Text Book(s)
T1 Douglass, Bruce Powel., Real-Time UML, Pearson Education, 3rd Edition, 2004
T2 Peter Barry & Patrick Crowley, Modern Embedded Computing, Designing Connected,
Pervasive, Media-Rich Systems, Morgan Kaufmann, 1st Edition, 2012

Reference Book(s) & other resources


R1 Douglass, Bruce Powel., Real-Time UML Workshop for Embedded Systems, Elsevier, 1st
Edition, 2011
R3 Peckol James K., Embedded Systems A Contemporary Design Tool, Wiley, 1st Edition,
R4 Raghavan, Lad, Neelakandan, Embedded Linux System Design And Development, Auerbach
Publications, First Edition, 2006
R5 Robert Love, Linux Kernel Development, Pearson Education, 3rd Edition
R6 Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley
Publishing.
R7 Various application notes and whitepapers from Freescale & Intel
Content Structure
Part I: Introduction

1. Introduction to the World of Real Time and Embedded Systems


1.1. Introduction to real time systems
1.2. Time, Performance and Quality of Service
1.3. Hard and Soft Real Time Systems
1.4. Overview of hardware and software for embedded systems
1.5. Overview of design, development and test of embedded systems

Part II: Embedded Software Development Methods

2. Object Orientation with UML Structural Aspects


2.1. Object Orientation with UML
2.2. Objects, Classes, and Interfaces
2.3. Relations
2.3.1. Associations
2.3.2. Aggregation
2.3.3. Composition
2.3.4. Generalization
2.3.5. Dependency
2.4. Packages, components and subsystems
3. Object Orientation with UML 2.0 Dynamic Aspects
3.1. Behavior and the UML
3.2. Types of Behavior
3.3. Behavior Primitives: Activities and Actions
3.4. Behavior and the single object
3.4.1. Statechart diagrams
3.4.2. Activity Diagrams
3.5. Interactions
3.5.1. Sequence diagrams
3.5.2. Timing Diagrams
4. Requirements Analysis of Real Time Systems
4.1. Requirements
4.2. Use case diagrams
4.3. Detailing the use cases
5. Architectural Design
5.1. Overview of Design
5.2. What is Architectural Design?
5.2.1. Logical Architecture
5.2.2. Physical architecture
5.2.3. Subsystem and component view
5.2.4. Concurrency and Resource view
5.2.5. Distribution View
5.2.6. Safety and Reliability view
5.2.7. Deployment view
5.3. Concurrency and Resource Design

Part III: Embedded Software Components

6. OS and non-OS based software development for Embedded Systems


7. Operating Systems Overview
7.1. Need for an operating system
7.2. Process & Threads
7.3. Scheduling
7.4. Inter-task synchronization
7.5. Memory Management
7.6. Storage File Systems
7.7. Boot Sequence
8. Embedded Linux
8.1. Tool Chain
8.2. Anatomy of Embedded Linux
8.3. Building a Kernel
8.4. Boot loader
8.5. Debugging
8.6. Memory Management
8.7. Inter-task synchronization
8.8. POSIX Threads
9. Embedded Graphics and Multimedia
9.1. Screen Display
9.2. Graphics Stack
9.3. Media Decode
9.4. Media Frameworks
10. Networks for Embedded Systems
10.1. Networking Basics
10.2. Ethernet
10.3. TCP/IP Networking
10.4. Wi-Fi and IEEE 802.11
10.5. Bluetooth
11. Application Frameworks: Android
11.1. Android Framework Architecture
11.2. Android Application Architecture
11.3. Android Development Environment
11.4. Overview of various other frameworks and OS (iOS, Windows, QT)

Learning Outcomes:
No Learning Outcomes

LO1 To learn and apply various methodologies that can be used to develop software for modern
embedded systems

LO2 To understand the hardware and software components used in modern embedded systems and
the technology that is used to build them

LO3 To get a deeper understanding of the big picture of modern embedded system software

LO4 To design and develop embedded system software


Part B: Learning Plan

Academic Term First Semester 2017-2018


Course Title SOFTWARE FOR EMBEDDED SYSTEMS
Course No IS ZC424 /ES ZC424
Lead Instructor Neena Goveas

Contact Hour 1
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 1 Introduction to the world of real


CH time and embedded systems

Post CH

Contact Hour 2
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 1 Time, Performance and Quality of


CH Service
Hard and Soft Real-Time Systems

Post CH

Contact Hour 3
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 2 Object Orientation with UML


CH Structural Aspects
Objects, Classes, and
Interfaces

Post CH

Contact Hour 4
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 2 Relations:
CH Associations
Aggregation
Composition
Generalization
Dependency
Structural Diagram
Post CH

Contact Hour 5
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 2 Packages, components and


CH subsystems

Post CH

Contact Hour 6
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 3 Object Orientation with UML 2.0


CH Dynamic Aspects
Types of Behavior
Behavior Primitives

Post CH

Contact Hour 7
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 3 Object Orientation with UML 2.0


CH Dynamic Aspects
Behavior and the single
object: Statechart diagrams

Post CH

Contact Hour 8
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 3 Object Orientation with UML 2.0


CH Dynamic Aspects
Behavior and the single
object: Activity diagrams

Post CH

Contact Hour 9
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH
During T1 Ch 3 Object Orientation with UML 2.0
CH Dynamic Aspects
Sequence Diagram

Post CH

Contact Hour 10
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 3 Object Orientation with UML 2.0


CH Dynamic Aspects
Timing Diagram

Post CH

Contact Hour 11
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 5 Requirements Analysis of Real


CH Time Systems
Requirements
Use case diagrams

Post CH

Lab Create UML Diagrams using freely Lab Session 1 in the Lab Sheet
available UML tools such as
ArgoUML, Star UML etc

Contact Hour 12
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 5 Requirements Analysis of Real


CH Time Systems
Detailing the use cases

Post CH

Contact Hour 13
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 8 Architectural Design


CH Overview of Design
What is Architectural
Design?
o Logical
Architecture
o Physical
architecture

Post CH

Contact Hour 14
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T1 Ch 8 Architectural Design


CH Subsystem and component
view
Concurrency and Resource
view
Distribution View
Safety and Reliability view
Deployment view

Post CH

Contact Hour 15
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During Review
CH

Post CH

Contact Hour 16
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During Review
CH

Post CH

Contact Hour 17
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T2 Ch 7 Operating Systems Overview


CH Process & Threads
Scheduling

Post CH
Contact Hours: 21-10-2017
Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T2 Ch 7 Operating Systems Overview


CH Inter-task synchronization
Memory Management
Storage File Systems

Post CH

Contact Hour 22-10-2017


Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T2 Ch 8 Embedded Linux


CH Anatomy of Embedded
Linux
Application Frameworks: Android
Android Framework Architecture

Post CH Learn how to create an Android


project with Android Studio. Learn
how to build a simple user
interface and handle user input.
https://developer.android.com/train
ing/basics/firstapp/index.html

Contact Hour 28-10-2017


Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During T2 Ch 12 Networks for Embedded Systems


CH Networking Basics
Ethernet
TCP/IP Networking

Post CH Download Wireshark from


https://www.wireshark.org/

Contact Hour 29-10-2017


Type Content Ref. Topic Title Study/HW Resource Reference

Pre CH

During Revision
CH

Post CH
Laboratory Details:

1. Wireshark tool for the lab exercise related to networking can be downloaded from
https://www.wireshark.org/
2. Android SDK and associated tools can be downloaded and installed following the instructions at
https://developer.android.com/index.html. These are required for Android based lab exercises
Note: Lab sessions suggested above are meant for learning purpose and will not have a separate evaluation
component.

Evaluation Scheme:
Legend: EC = Evaluation Component; AN = After Noon Session; FN = Fore Noon Session
No Name Type Duration Weight Day, Date, Session, Time
EC-1 Quiz-I Online - 5%
Quiz-II Online - 5%
Quiz-III Online - 5%
EC-2 Mid-Semester Test Closed 2 hours 35% 23/09/2017 (FN) 10 AM 12 Noon
Book
EC-3 Comprehensive Open 3 hours 50% 05/11/2017 (FN) 9 AM 12 Noon
Exam Book

Syllabus for Mid-Semester Test (Closed Book): Topics in Session Nos. 1 to 16


Syllabus for Comprehensive Exam (Open Book): All topics (Session Nos. 1 to 32)
Important links and information:
Elearn portal: https://elearn.bits-pilani.ac.in
Students are expected to visit the Elearn portal on a regular basis and stay up to date with the latest
announcements and deadlines.
Contact sessions: Students should attend the online lectures as per the schedule provided on the Elearn portal.
Evaluation Guidelines:
1. EC-1 consists of either two Assignments or three Quizzes. Students will attempt them through the course
pages on the Elearn portal. Announcements will be made on the portal, in a timely manner.
2. For Closed Book tests: No books or reference material of any kind will be permitted.
3. For Open Book exams: Use of books and any printed / written reference material (filed or bound) is
permitted. However, loose sheets of paper will not be allowed. Use of calculators is permitted in all
exams. Laptops/Mobiles of any kind are not allowed. Exchange of any material is not allowed.
4. If a student is unable to appear for the Regular Test/Exam due to genuine exigencies, the student should
follow the procedure to apply for the Make-Up Test/Exam which will be made available on the Elearn
portal. The Make-Up Test/Exam will be conducted only at selected exam centres on the dates to be
announced later.
It shall be the responsibility of the individual student to be regular in maintaining the self study schedule as given
in the course handout, attend the online lectures, and take all the prescribed evaluation components such as
Assignment/Quiz, Mid-Semester Test and Comprehensive Exam according to the evaluation scheme provided in
the handout.