MVoc Software Application Development2023
MVoc Software Application Development2023
MVoc Software Application Development2023
M.Voc
in
SOFTWARE APPLICATION
DEVELOPMENT
Vision
Mission
M1. Offer quality education in emerging vocational domains in technology and
management
M4. Inculcate innovation mind set to excel in the emerging dynamic, global economy.
Program Description
The program provides an excellent platform for students to develop their overall skills
to build a career in the Software Application Development domain in the IT industry.
The two-year structure of this program enables one to be a skilled professional in Web,
Android, and iOS platforms. Students learn to write both cross-platform and native
apps for Web, Android, iPhones, iPads, and Wearables. Managerial and
entrepreneurial topics are integrated into the course curriculum. Special training for
professional soft skills development is also included. By integrating the industry
recommended “Domain Practical” approach with lecture mode of course delivery,
software application and programming related subjects are taught through hands-on
training in the classroom itself.
1
The Semester-1 is dedicated for General Software Development using Full stack
technologies. The Semester 2 is dedicated for Android based App Development and its
related technologies. The students must complete 40 working days of internship on
Mobility/Web and related technology in a reputed company as part of the semester 2.
The semester 3 is dedicated to iOS-based App Development and its encompassing
technologies. The semester 4 consists of a 90 days internship in a reputed firm related
to Android/iOS/Web development. The 90 days internship can be done using Native or
Cross Platform technologies.
At least two general courses are included in first three semesters. As mandated by the
UGC, a MOOC course with duration not less than eight weeks is made part of the
syllabus and the students can take it up anytime during 2nd, 3rd or 4th semester. But,
he/she has to successfully complete the same before the completion of the fourth
semester. Since, the Software Application Development programme is mostly practical
and lab oriented, it requires more time for delivering various courses and hence
additional hours ae to be engaged on either working days or holidays to meet the total
time requirements.
2
Program Specific Objectives (PSO):
Software Application Development
PSO Description
PSO1 Analyze and synthesize the underlying structures of software/mobile
applications by utilizing advanced programming constructs and tools to
provide effective and sustainable solutions for software/mobile
applications.
PSO2 Develop applications effectively in multidisciplinary teams to meet
technological and societal goals of industry while managing the
requirements for software/mobile application testing and deployment.
PSO3 Apply information technology principles to develop solutions that fulfill.
social and ethical responsibility.
M1 M2 M3 M4 M5
PSO1 3 3 3 3 1
PSO2 3 3 3
PSO3 3 3 3
3
Program Outcomes (PO): - Software Application Development
At the end of the program the student will be able to:
PO Description
PO1 Demonstrate skills in developing software applications using Web, Android
and iOS software platforms.
PO2 Analyze customer requirements to identify software requirements.
PO3 Demonstrate skills in applying relevant technology tools in Software/Mobile
application development
PO4 Create solutions by using modern software tools and enhance effectiveness
of application development process
PO5 Create solutions by utilizing modern software tools and enhance user
Experience
PO6 Develop collaborative work and leadership skills for enhancing reliability of
project execution
PO7 Develop adequate communication skills to aid project information flows and
client satisfaction
PO8 Identify and select product and service opportunities in Software Industries
PO1 3 3 1
PO2 3 3 1
PO3 3 3 1
PO4 3 3 2
PO5 3 2 2
PO6 3 3
PO7 1 1
PO8 1 2 3
4
PROGRAMME STRUCTURE
FIRST SEMESTER
Hours Marks
Sl. Course
No Name of the Course End Credits
Code L T P Internal
Semester
1 23-493- Communication Skills
Development 3 50 50 3
0101
(G-T)
2 23-493- Fundamentals
of Management 3 50 50 3
0102
(G-T)
Object Oriented
3 23-493- Programming
3 2 50 50 4
0103 and Web
Technologies
(G-P)
23-493- Product Engineering
4 0104 (D-T)
4 4
50 50
5 23-493- Algorithm
and Data 2 1 2 50 50 4
0105
Structures
(D-P)
6 23-493- Database and
Backend 2 1 2 50 50 4
0106
Technologies
(D-P)
7 23-493- Full stack
Development 2 1 50 50 4
0107 2
(MERN Stack)
(D-P)
8 23-493- Software Lab I
(Web, Kotlin,
0108 Git & Sql) 8 50 50 4
(LAB)
Total 800 30
5
SECOND SEMESTER
Hours Marks
Sl. Course Code
No. Name of the Course End Credits
L T P Internal
Semester
1 23-493- Project
Management (G-T) 3 50 50 3
0201
2 23-493- Android App
0202 Development - 3 2 50 50 4
Kotlin & XML
(D-P)
Internship –
23-493- 40 Working days. 50 50
8 Android/Web App 8
0208 Development
Total 800 30
6
THIRD SEMESTER
Programming with
3 23-493-
Swift 2 2 50 50 4
0303
(D-P)
iOS App
4 23-493-
Development- 2 50 50 4
0304 2
SwiftUI Framework
(D-P)
Applied
5 23-493-
Technologies in 2 50 50 4
0305 2
iOS(D-P)
Note: Any Cross Platform Technology may be considered for Elective – III (G- T/D-T).
7
FOURTH SEMESTER
Hours Marks
Sl. Cours
N e Name of the Course L T P Internal End Credits
o Code Semester
*Main Internship (90
working days during
Semester IV in an IT firm
1 23- where students contribute
493- to a live
100 200 28
0401 iOS/Android/Cross-
platform/Web application
development) and Viva
voce (Continuous
Assessment – 100 marks,
Final report – 100 marks
&Viva-Voce – 100 marks)
2 23- MOOC courses from the list
493- of courses shortlisted from
0402 the list of
NPTEL/SWAYAM
courses (or MOOC
COURSES 50 50 2
recognized by UGC), or CU
SAT MOOC portal and
approved by the academic
committee, with a duration
of not less than eight weeks,
Total 150 250 30
GT: General Theory, G-P: General Practical, D-T: Domain Theory, D-P: Domain
Practical.
*The objective of Major Project is to provide students with practical exposure to the
world of Software Application Development whereby they get an opportunity to apply
the knowledge and skill acquired throughout the course. The students are required to
undertake the internship training with an organization. The project should be live
(under development) or modification of existing work and should be based on Software
Application Development (Web, Android, iOS) and related technologies. The student
should notify the concerned faculty and make sure that the selected project is relevant
to the domain. The project will be for 90 working days. Each student will be allotted to
a faculty guide for the project.
8
LIST OF ELECTIVES
● Wearable Technologies in Android.
● Watch OS Programming
● Cross Platform Development using React Native
● iOS App Development Fundamentals using Storyboard Framework
● Cross Platform Development using Flutter
● Java Middleware using Spring Boot
● Game Development using Unity and C#.
● Programming with Python
● Internet of Things (IoT)
● Machine Learning for Software application Development.
● Introduction to Android Auto
● Augmented Reality for Ios App Development Using ARkit
● Cyber Security
MODE OF EVALUATION
Mode of Evaluation will be fully internal with a total of 100 marks for all courses except for Main
Internship in semester IV. The evaluations are classified as follows: -
1) Domain Theory and General Theory (Group I), subjects will be evaluated using 50 marks for
continuous assessment throughout the semester and 50 marks are for End- semester examination
(theory based).
2) Domain Practical and General Practical (Group II), subjects will be evaluated using 50 marks
for continuous assessment and 50 marks for End-semester examinations. The end-semester exam
will be conducted as 25 marks for theory and 25 marks for practical exam.
3) The Lab exams (Group III) will be evaluated using 50 marks for continuous assessment
throughout the semester and 50 marks for practical exams.
4) For 23-493-0309 - Professional Skills Development (Training Programme) (Group IV), for
this subject in Semester III, the entire 100 marks will be awarded through continuous assessment
by the teachers through case analysis, group discussion, team building tasks, leadership role,
problem solving exercises, personal improvement, report writing, presentations etc.
5) For 23-493-0208 Internship – Android/Web App Development in semester II (Group V),
out of a total of 100 marks, 50 marks are for continuous assessment including evaluation of
written report and remaining 50 marks will be awarded through a viva voce examination
conducted by a board of not less than two internal examiners.
9
6) For 23-493-0401 Main Internship in Semester IV (Group V), the maximum marks shall be
300, of which 100 marks each will be allotted on the basis of: -
● Continuous evaluation of the project work
● Submission and evaluation of the project report at the department
● Viva–voce examination carried out by a board of examiners.
7) For 23-493-0402 MOOC Course (Group VI), the student may enroll in any one of the approved
MOOC courses from the list of courses shortlisted by DDUKK Centre Council from the list of
NPTEL/SWAYAM courses (or MOOC COURSES recognized by UGC), or CUSAT MOOC
portal and approved by the academic committee, with a duration of not less than eight weeks,
during the period of M.Voc (SAD) programme. In any case the MOOC course should be
completed before the end of fourth semester. The course credits for MOOC course will be two
credits and the same will be awarded after completion of assessment as prescribed by the Centre
Council in the fourth semester.
7 In addition to those listed above, all elective courses come under Group I
10
Assessment scheme for courses under Group I
Apply / Analyze 40 %
The question paper for the End-Semester examination shall be set by the concerned teacher in advance
which shall be scrutinized by the respective Centre/Department Council or by a committee consisting
of the HOD and faculty members or subject experts offering the courses in that semester to ensure
that:
Modifications can be suggested by the council if necessary and such suggestions shall be
incorporated in the final version of the question paper.
The End-Semester (DT/GT) question paper shall have three parts (except for practical
examinations), namely Part-A, Part-B and Part C. The maximum marks for End-Semester
Examinations will be 50.
● In Part A, there will be 5 compulsory questions which will be of short answer type. Each
question in Part A carries two marks.
● In Part-B, will consist of six questions out of which students must answer four questions.
Each question will carry five marks in this part.
● In Part-C, students will answer two questions of 10 marks each from a group of three
questions.
11
5 23-493-0202 Android App Development - Kotlin & XML (D-P)
Remember / Understand 20 %
Apply / Analyze 40 %
* The weightage will be evenly split between theory and practical parts.
The maximum marks for End-Semester Examinations will be 50 which is evenly divided between
the two parts. The End-Semester (DP/GP) question paper will be divided into two parts, namely
Part-I (theory), and Part-II (practical).
● The Part-I carries 25 marks and has two Sections namely Section-A and Section-B.
○ Section A will have 4 questions each of 5 marks, out of which 3 needs to be answered.
○ The Section-B has 2 questions of 10 marks each out of which 1 question needs to be
answered.
● Part-II, in practical mode, will have three questions of 25 marks each out of which 1 question
needs to be answered.
● Both Part I and Part II will be of 90 minutes duration.
12
3. Courses Under Group III
The End-Semester lab exam will be of 50 marks. The number of questions can be varied according
to the nature of the subject and the distribution of marks for each question will be decided by the
examiners concerned based on the norms set by the Centre/Department council. The Understand /
Remember part of the assessment can be done by two methods:
● through viva-voce conducted during the examination
● through evaluating how the student conceives the problem using various methods such as
FlowCharts, Figma Wireframes, Algorithms, etc.
13
Assessment scheme for courses under Group IV
Remember / Understand 20 %
Apply / Analyse 40 %
Remember 5%
Understand 10 %
Apply 15 %
Analyze 20 %
Evaluate 20 %
Create 30 %
14
Evaluation of Project Report: One copy of the final project report duly signed by the faculty in
charge and Director is to be submitted for evaluation. The project explanation should contain a
minimum following technical component:
Viva Voce: Viva voce will be conducted by a board of examiners of not less than three members.
The student will have to submit proof of completion of the selected course as well as assessment
results for the MOOC course by the offering institution to the MOOC Course Coordinator. In case
the offered course does not have a separate examination for final assessment, the faculty
guide/coordinator of the MOOC Course, as approved by the Director / Department Council, shall
coordinate the conduct of an assessment for the course selected by the student and arrange for the
award of marks.
Those students who are interested to be evaluated by the host institution may be permitted for it also.
The credit so obtained can be used for finalizing the semester results. This has to be done by obtaining
permission from the HoD/Department Council well in advance.
The faculty coordinator of the MOOC course has to place the marks obtained by the students in
continuous evaluation and for the end semester examination/or the score received from the host
institution in the passing board of the department.
15
SEMESTER 1
Hours Marks
Sl. Course
No Name of the Course End Credits
Code L T P Internal
Semester
1 23-493- Communication Skills
Development 3 50 50 3
0101
(G-T)
2 23-493- Fundamentals
of Management 3 50 50 3
0102
(G-T)
Object Oriented
3 23-493- Programming
3 2 50 50 4
0103 and Web
Technologies
(G-P)
23-493- Product Engineering
4 0104 (D-T)
4 4
50 50
5 23-493- Algorithm
and Data 2 1 2 50 50 4
0105
Structures
(D-P)
6 23-493- Database and
Backend 2 1 2 50 50 4
0106
Technologies
(D-P)
7 23-493- Full stack
Development 2 1 50 50 4
0107 2
(MERN Stack)
(D-P)
8 23-493- Software Lab I
(Web, Kotlin,
0108 Git & SQL) 8 50 50 4
Total 800 30
16
23-493-0101 COMMUNICATION SKILLS DEVELOPMENT
COURSE DESCRIPTION
The course aims to equip students to communicate effectively using oral, written, and
electronic modes of communication. Learning outcomes are displaying competence in oral,
written, and visual communication, applying communication theories, and responding
effectively to cultural communication differences, understanding of opportunities in the field
of communication and use of current technology-enabled communication.
COURSE OUTCOMES
CO1 2 1 2 3
CO2 2 1 2 3 3
CO3 1 3 3
CO4 3 3
CO5 3 3
17
Module 1
Module II
Module III
Principles of Letter Writing, Nature & Function of letters, Principles, Elements of structure,
Forms of Layout, Styles of presentation. Business Correspondence: Inviting quotations,
sending quotations, placing orders, Sales letters, Claim & adjustment letters and social
correspondence.
Module IV
Module V
18
REFERENCES
1. Krishmohan and Meera Banerjee, Developing Communication Skills, Macmillan India
Ltd,2015, ISBN-13: 978-9384872892
2. Meenakshi Raman and Sangeeta Sharma, Technical Communication: Principles and
Practice, 2nd Edition, Oxford University Press, 2011, ISBN-13:978-0198065296
3. Chaturvedi P.D and MukeshChaturvedi, The Art and Science of
Business Communication, 4e, Pearson, 2017, ISBN-13:978-9332587281
4. Sanjay Kumar and PushpLata, Communication Skills, Oxford University Press, 2011,
ISBN-13:978-0198069324
5. Beebe T. and Mottet X., Business and professional communication: Principles and
skills for leadership, NY: Pearson, 2015, ISBN-13:978-1323151471
6. Thomas Elliott Berry, The Most Common Mistakes in English Usage , TMH
Publication, 1971, ISBN-13:978-0070050532
7. Asha Kaul, Effective Business Communication, Pearson /Prentice Hall of India Pvt
Ltd, 2000, ISBN-13:9788120317093
19
23-493-0102 FUNDAMENTALS OF MANAGEMENT
COURSE DESCRIPTION
The course is designed to impart knowledge in foundational principles and practices of
management, and Organizational behavior in the context of contemporary organizations.
The course helps in developing an understanding and awareness of the essentials of
managing the way organizations behave. It analyzes basic management functions to develop
and maintain a competitive advantage in the changing business environment from the
perspective of an employer and employee.
COURSE OUTCOMES
CO1 1 2 2 1
CO2 1 1 1
CO3 1 2 2 2
CO4 3 3 3
CO5 3 3 3
20
Module I
Module II
Module III
Manpower Planning, Job analysis, Recruitment & Selection, Training & Development,
Performance management. Leadership: Influence, Leadership Style, Leadership
Development. Introduction to Controlling, Control process- Types of Control System - How
and what to Control.
Module IV
Module V
Managing Teams- Kinds, characteristics and enhancing work team effectiveness. Group
Dynamics, Stress and Behavior - Sources of Managerial Stress – managing stress. Conflicts
in organization and management.
REFERENCES
1. Stoner J. A., Freeman A. E., and Gilbert D. A. G., Management, 6th Edn, Prentice-
Hall of India, 2002, ISBN-13:9788131707043
2. Koontz H., and Weihrich H., Essential of management: An international perspective,
New Delhi: Tata McGraw-Hill publishing Co. Ltd, 2008, ISBN-13:9780071067676.
3. Robbins S. P., and Coulter M., Management. Prentice Hall of India Private Limited,
2014, ISBN-13: 9780131439948.
4. Robbins, S. P., and Judge, T., Essentials of organizational behaviour, Pearson, 2012,
ISBN-13: 9780132545303.
21
5. Stephen P. Robbins, Mary Coulter &Neharika Vohra, Management 10e, Pearson
Education Inc.(Prentice Hall), 2011, ISBN-13: 978-0132090711.
6. Parikh M., & Gupta R. K., Organisational behaviour. Tata McGraw Hill Education
Pte. Limited, 2010, ISBN-13:978-0070153196
7. Williams Chuck, TripathyManasRanjan, Management: An Innovative approach to
learning and teaching, Cengage Learning, 2013, ISBN-13:978-8131519509
22
23-493-0103 OBJECT ORIENTED PROGRAMMING AND WEB
TECHNOLOGIES
COURSE DESCRIPTION
The course equips the students to understand the fundamentals and advanced concepts in Object-
Oriented Programming. It also introduces web technologies like HTML, XML, protocols used,
protocol architectures, web architectures, JSON, HTML5, Socket programming, and its
implementations. It enables the students to write programs using Kotlin and Object-Oriented concepts.
The web technology’s part allows us to understand how internet and HTTP works. It gives the
students an understanding of how WebSocket’s works.
COURSE OUTCOMES
Module 1
Module 2
Encapsulation: Private Properties. Getters and Setters. Access Modifiers. Inheritance: Superclasses
and Subclasses, Overriding Methods, Abstract Classes and Interfaces. Polymorphism: Method
Overloading, Method Overriding, Late Initialization. Object-Oriented Design Principles: Single
Responsibility Principle, Open-Closed Principle, Liskov Substitution Principle, Interface Segregation
Principle, Dependency Inversion Principle. Exception Handling.
23
Module 3
Generics in Kotlin. Higher-Order Functions. Lambdas in Kotlin. Collections in Kotlin. Coroutines in
Kotlin. Object-Oriented Design Patterns: Singleton Pattern, Factory Pattern, Observer Pattern,
Decorator Pattern. Streams. File Handling.
Module 4
Introduction to Web: In Perspective, Origin. Before the web: TCP/IP. Birth of WWW: HTTP. Web
Servers, Web Browsers. HTML & its Roots, XML & Applications, JSON. Architectural Patterns-
Architectural Design Tenets. Thin Client-Fat Client.
Module 5
Internet Programming: IP: Packet Format, Addressing, Addressing Class, Routing, Protocols --
Network: ARP, ICMP, DHCP, Transport: TCP, UDP. IPv6, Wireless IP, FTP, SNMP, SMTP.
Domain: DNS, DDNS, NIS, LDAP. File: FTP, SFTP, TFTP. Mail: SMTP, MIME, POP, IMAP. Web
Socket
REFERENCES
1. Skeen, J., & Greenhalgh, D. (2017). Kotlin Programming: The Big Nerd Ranch Guide. Big Nerd
Ranch Guides.
2. Jemerov, D., & Isakova, S. (2017). Kotlin in Action. Manning Publications. ISBN-10:
1617293296
3. Griffiths, D., & Griffiths, D. (2019). Head First Kotlin. O'Reilly Media. ISBN-10: 1491996692
4. Leiva, A. (2017). Kotlin for Android Developers. Leanpub. ISBN-10: 1549612153
5. Ebel, N. (2017). Mastering Kotlin: Learn advanced Kotlin programming techniques to build
apps for Android, iOS, and the web. Packt Publishing. ISBN-10: 1788470715
6. Udemy. (n.d.). Object-Oriented Programming in Kotlin. [Video Course]. Retrieved from
https://www.udemy.com/course/object-oriented-programming-in-kotlin/
7. Udacity. (n.d.). Kotlin for Android Developers. [Video Course]. Retrieved from
https://www.udacity.com/course/kotlin-for-android-developers--ud888
8. JetBrains. (n.d.). Official Kotlin documentation. Retrieved from
https://kotlinlang.org/docs/home.html
24
23-493-0104 PRODUCT ENGINEERING
COURSE DESCRIPTION
COURSE OUTCOMES
CO3 Design and create wireframe and prototype using figma. Create
CO1 3 1 2 2
CO2 1 1 2 2 3 3
CO3 2 2 3 3 3 3
CO4 2 3 2 2
CO5 2 3 3 2
Module I
Introduction- Professional software development, Software engineering ethics, Case studies,
Software Processes- Software process models, Process activities, Requirements Engineering,
System Modelling, Design and Implementation, Coding Standards, Software Testing and Evolution.
Module 2
Usability and user interface design – Design considerations for mobile and touch devices – UI
components-UI Design Patterns and Anti Patterns- Material Design: The basics: material design,
Apple Design System,Material Web,views, layouts, resources, Designing User interface components:
25
Widgets, Typography, Icons, and Transitions.
Module 3
The Full Design: prototyping, visuals, design, animation. Mobile Wireframing: Representing
inputs, gestures and motion, Mobile Prototyping using Figma – Introduction to Prototyping, creating
components using Figma, After Delay Animation, Animated Button Prototype, Tab Bar Animation,
Scrolling Content and Sticky Elements, Video Prototype, Drag Gestures, Menu, Plugins
Module 4
Software Testing - Types of application Testing – Usability, Compatibility, interface, services, low-
level resource, performance, operational, installation & security, User Testing: Concepts, different
types of user testing, User Testing vs. Usability testing.
Module 5
Practical Tasks- Selection of a suitable android/iOS app/Web app, Prepare Test cases, Script
identification and modification, Manual and Automated testing, Usability testing, Performance
Testing, Security & Compliance Testing, Device Testing, Maintain the Test case Sheet and generate
Test summary Report.
REFERENCES
1. Ian Sommerville, Software Engineering (10th Edition), Pearson Education, 2017, ISBN-
13:978-9332582699
2. Frank Tsui and Orlando Karam, Essentials of Software Engineering, Jones & Bartlett
Learning LLC, 2016, ISBN-13:978-1284106008
3. PrajyotMainkar, Expert Android Programming, Packt Publishing, 2017, ISBN-13: 978-
1786468956
4. Jon Hoffman , Swift 4 Protocol-Oriented Programming, Packt Publishing , 2017, ISBN-
13:978-1788470032
5. Daniel Knott, Hands-On Mobile App Testing: A Guide for Mobile Testers and
Anyone Involved in the Mobile App Business, Addison Wesley, 2015, ISBN- 13:978-
0134191713
6. Jeffrey Rubin, Dana Chisnell, Jared Spool, Handbook of Usability Testing: How to Plan,
Design, and Conduct Effective Tests, John Wiley & Sons; 2008, ISBN-13: 978-
0470185483
7. Greg Nudelman, Android Design Patterns: Interaction Design Solutions for Developers,
Wiley; 1 Kindle Edition, 2013, ISBN-13:978-1118394151
8. Ian Clifton, Android User Interface Design: Turning Ideas and Sketches into Beautifully
Designed Apps (Usability), Addison-Wesley Professional; 1 Kindle Edition, 2013, ISBN-
13:978-0321886736
26
23-493-0105 FULL STACK DEVELOPMENT
COURSE DESCRIPTION
This course provides a beginner-level overview of web design and development and hands-on
experience with the in-demand skills, frameworks, and languages of today. This course covers the
front-end development of web applications using html, CSS, JavaScript, and React.js. Providing a
course in this area can bolster the employability of the students at industry giants and also help them
find success through self-employability.
COURSE OUTCOMES
CO1 3 3 1 1
CO2 1 2 3 3
CO3 3 2 2 3
CO4 2 3 2 3
CO5 3 2 3 2
Module 1
Process and Design : How to approach building a site, Understanding your audience and their needs,
How to present information visitors want to see.
Design and build Websites: Introduction to HTML, HTML Essentials, HTML: Structure, Shadow
DOM, Text, Lists, Links, Images, Tables, Forms, Extra Markup, Video and Audio. Introducing CSS,
Color, Text, Boxes, Lists, Tables and Forms, Layout, Images, HTML5 layout elements, how old
browsers understand new elements, Styling HTML5 layout elements with CSS
Module 2
Interactive front end web development: Introduction to TypeScript, ArrayFunctions, ES6, Creating
TypeScript development environment, Basic JavaScript Instructions, Functions, Methods and
27
Objects, Decisions and Loops, Intermediate JavaScript solutions and the DOM (Document Object
Model) manipulation, JQuery, Ajax and JSON, APIs.
Module 3
Introduction to ReactJs, React Components and libraries, React states and events, React rendering
and conditional content, Forms and functional front end web applications using React, React hooks:
Introducing Hooks, useState, useEffect, useContext, useRef, useReducer,useCallback, useMemo,
Custom Hooks.
Module 4
Module 5
Docker compose: image repository, Docker Hub, Load Balancing: PM2, Start, Log Stream,
Environment Variables, Graceful Exit. Connection Pool. Token: JWT, Access, Refresh. Auth2.0.
FCM Notification: Overview of Firebase Cloud Messaging, Differences between FCM and other
messaging solutions, Setting up FCM. Using the Firebase console to send notifications, Sending
notifications using the REST API, Understanding notification payloads and options, Testing
notifications.
REFERENCES
1. "Web Design with HTML, CSS, JavaScript and Jquery Set" by Jon Duckett. Wiley, ISBN 978-
1118907443.
2. "Express.js: Node.js Framework for Web Application Development" by Daniel Green. Apress,
ISBN 978-1484200336.
3. "Full Stack JavaScript: Learn Backbone.js, Node.js and MongoDB" by Azat Mardan.
CreateSpace Independent Publishing Platform, ISBN 978-1501098424.
4. "Full Stack Web Development For Beginners: Learn Ecommerce Web Development Using
HTML5, CSS3, Bootstrap, JavaScript, MySQL, and PHP" by Riaz Ahmed. Independently
published, ISBN 979-8693245594.
5. "TypeScript Handbook" by Microsoft. Microsoft Corporation, ISBN 978-1-5093-0698-8.
6. "Programming TypeScript" by Boris Cherny. O'Reilly Media, Inc., ISBN 978-1-492-06648-8.
7. "Effective TypeScript" by Dan Vanderkam. O'Reilly Media, Inc., ISBN 978-1-492-07361-5.
8. "TypeScript Deep Dive" by Basarat Ali Syed. Leanpub, ISBN 978-0-991-79714-8.
9. "TypeScript Essentials" by Christopher Nance. Packt Publishing, ISBN 978-1-78328-998-5.
28
23-493-0106 DATABASE AND BACKEND TECHNOLOGIES
COURSE DESCRIPTION
This course analyzes the different functionalities of DBMS including DDL, DML, and DCL
statements. The topics are not limited to but also include creation, deletion, editing of databases. It
also includes triggers, aggregate functions, views, joins, and stored procedures. The MongoDB tool
is employed to implement CRUD operations in real-time scenarios. The Realm helps to write efficient
NoSQL databases and the GraphQL enables the students to write backend API effectively.
COURSE OUTCOMES
CO Learning Outcomes Cognitive Level
CO1 Understand the basic building blocks of DBMS. Understand
CO2 Understand the structure of GraphQL and its applications. Understand
CO3 Understand Realm constructs and its application. Understand
CO4 Apply intermediate DBMS concepts to retrieve data. Apply
CO5 Design advanced table structures and retrieve data from it. Create
Module 1
Relational vs. Non-relational databases, SQL, Popular SQL databases and RDBMS‟s, document-
oriented databases, Categories of Non-relational databases, popular non-relational databases,
comparing document-oriented and relational databases using examples, How to choose SQL or No-
SQL database to work with a real-life problem.
Module 2
Getting Started with SQL: Relational Database Fundamentals, Database Models, Database Design
Considerations. SQL Fundamentals: SQL Statements, Keywords, Datatypes, Nulls, Constraints. The
Components of SQL: DDL, DML, DCL. Building and Maintaining a Simple Database Structure:
Simple Database, Create, Alter, Deleting. Multi-table Relational Database: Design, Indexes,
Integrity, Normalization.
Module 3
Manipulating Database Data: Add, Select, Update, and Delete data, Zeroing In on the Data You Want:
Select, Where, Logical Operators, Group By, Having, Order By. Using Relational Operators: Union,
Intersect, Except, Join, On vs. Where, Nested Queries, Recursive Queries. Database Security,
Protecting Data: Transaction, Commit & Rollback, Locking Database Object, Backup, Savepoint &
Subtransactions, Advanced Topics: Cursors, Procedures, Triggers, Exception Handling, Functions,
Views.
29
Module 4
Mongo DB server- Installation, MongoDB Basics, MongoDB CRUD Operations, SQL to MongoDB,
MongoDB Indexing, Monitoring & Backup, Create User in MongoDB & assign Roles, Indexing,
Aggregation: report creation, MongoDB Shared Cluster, Deployment.
Module 5
GraphQL : Introduction- GraphQL & Relay, GraphQL vs REST. GraphQL Server: Setting Up,
Node.js, Schema, MongoDB, HTTP Interface, Editor. The Query Language: Documents &
Operations, Fields, Variables, Directives, Aliases, Fragments & Mutations. Searching and Filtering
RealmObjects – Supported Types, Realm Instances & Objects, Realm Configurations, Annotations
„@‟, Realm Controllers, Realm Adapters, Realm Transactions.
REFERENCES
1. DejanSarka, SQL Server 2016 Developer's Guide, Packt Publishing Limited , 2017, ISBN-
13:978-1786465344
2. Cyrus Dasadia , AmolNayak , MongoDB Cookbook , Packt Publishing , 2016, ISBN-13:
978-1785289989
3. Luc Perkins , Eric Redmond, Jim Wilson, Seven Databases in Seven Weeks: A Guide to
Modern Databases and the NoSQL Movement, 2nd Edition, Pragmatic Bookshelf, 2018,
ISBN-13:978-1680502534
4. Gerardus Blokdyk - Realm (database) Third Edition, 5STARCooks, 2018, ASIN:
B07CVSL2KW
5. Alex Banks (Author), Eve Porcello - Learning GraphQL: Declarative Data Fetching for
Modern Web Apps, Shroff/O'Reilly, 2018, ISBN-10 : 9352137582.
30
23-493-0107 ALGORITHM AND DATA STRUCTURES
COURSE DESCRIPTION
Acquire some basic mathematical tools and techniques for algorithm analysis. To familiarize themselves with
basic data structures and to develop the ability to choose the appropriate data structure for designing efficient
algorithms. Learn some basic algorithms with their rigorous proofs of correctness and efficiency analysis of
implementation using appropriate data structures.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 To know about some basic data structures, their implementation and some of Understand
their standard applications.
CO2 To develop the ability to analyze the running time and prove the correctness Analyse
of basic algorithms.
CO3 Define advanced data structures such as balanced search trees, hash Create
tables, spatial data structures and create the different data structures to
solve a problem.
CO4 Describe and compare the performance of various sorting algorithms like Analyse
quicksort, mergesort and heapsort and describe algorithms on trees and
graphs such as traversals, shortest path and minimum spanning tree.
CO5 To develop the ability to design and analyze simple algorithms using the Create
appropriate data structure learned in the course.
Mapping of course outcomes with programme outcomes - Low=1, medium=2, High=3
CO1 1 3 2
CO2 2 2 3
CO3 2 3
CO4 2 3
CO5 2 3
Module 1
Data Structures and Algorithms, Measuring Running time of Algorithms, Asymptotic Analysis, Big
O Notation, Finding Big O, Tight and Loose Upper Bounds, Big O analysis of Algorithms, Finding
Time Complexity, Big O analysis of Algorithms: Examples, Worst case, Best case and Average Case
Analysis, Common Complexities, Abstract Data Types.
31
Module 3
Stacks, The Stack Abstract Data Type , Simple Array-Based Stack Implementation ,Reversing Data
Using a Stack , Matching Parentheses and HTML Tags ,Queues, The Queue Abstract Data Type ,
Array-Based Queue Implementation, Double-Ended Queues , The Deque Abstract Data Type,
Implementing a Deque with a Circular Array
Module 5: Trees
Introduction to trees, Binary Tree, Strictly Binary Tree and Extended Binary Tree, Full binary tree
and Complete Binary Tree, Array Representation of Binary trees, Linked Representation of Binary
Trees,Traversal in Binary Tree, Preorder Traversal, Inorder Traversal, Postorder Traversal, Level
order traversal, Finding height of a Binary tree, Constructing Binary tree from Traversals,
Constructing binary tree from inorder and preorder traversals, Constructing binary tree from inorder
and postorder traversals Binary Search Tree- Introduction, Traversal in Binary Search Tree,
Searching in a Binary Search Tree, Nodes with Minimum and Maximum key, Insertion in a Binary
Search Tree, Deletion in a Binary Search Tree
REFERENCES
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L Rivest, Clifford Stein. Introduction to Algorithms,
Third Edition, PHI Learning, 2009. ISBN:978-81-203-4007-7.
2. Sanjoy DasGupta, C. H. Papadimitriou, Umesh Vazirani. Algorithms, First Edition, Tata McGraw Hill,
2006. ISBN: 978-0073523408.
3. Aaron M. Tanenbaum, Moshe J. Augenstein, Yedidyah Langsam, Data Structures using Java, Pearson
Education, 2003, ISBN 13: 9780130477217.
4. Ellis Horowitz, SartajSahni, Dinesh P. Mehta, Fundamentals of Data Structures in C++, Silicon Press,
2007.
5. Jean Paul Tremblay and Paul G Sorenson, An introduction to Data Structures with Applications,McGraw-
Hill, Singapore, 1984
32
23-493-0108 SOFTWARE LAB I (WEB, KOTLIN, GIT & SQL)
COURSE DESCRIPTION
This course employs the concepts taught in the first semester for developmental purposes.
JAVA, SQL, and Web are used for the implementation of real-world scenarios that enable
students to understand the principles and functionalities behind each of the programming
languages respectively. The students can design solutions by applying the concepts learned
so far.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CLO1 Create advanced applications based on Java Create
CLO2 Create advanced databases based on SQL and Create
SQLite
CLO3 Design and create projects based on Create
Web architectures
CO1 1 2
CO2 3 3 2
CO3 3 3 3
Module I
Module II
SQL Basics: Programs to familiarize with the following concepts.
33
e. MongoDB: CRUD.
f. Aggregation: Group By, Order By.
g. Realm
Module III
Web Basics: Programs to familiarize with the following concepts.
h. Figma Wireframes
i. HTML.
j. Layouts and Positioning.
k. TypeScript.
l. React.
m. NodeJs.
REFERENCES
34
SECOND SEMESTER
Hours Marks
Sl. Course
No. Code Name of the End Credits
Course L T P Internal
Semester
1 23- Project
Management (G- 3 1 50 50 3
493-
T)
0201
2 23- Android App
493- Development - 3 1 2 50 50 4
0202 Kotlin & XML
(D-P)
3 23- Android App
493- Development - 3 1 2 50 50 4
0203 Jetpack Compose
(D-P)
4 23- Cloud and
493- Advanced 1 4 50 50 3
0204 Technologies
(D-P)
5 23- Elective – I (G-T/D- 50 50
3 3
493- T)*
0205
6 23- Elective – II (D-T) 50 50
493- 3 3
0206
Software Lab II
7 23- (Android & Cloud)
4 50 50
493- (LAB) 2
0207
Internship –
23- 40 Working days. 50 50
8 Android/Web App 8
493-
Development
0208
Total 800 30
35
23-493-0201: PROJECT MANAGEMENT
COURSE DESCRIPTION
The course introduces project management terms and concepts. Students will discover
the project life cycle and learn how to build a successful project from pre-
implementation to completion. Project management topics such as resources, costs,
time constraints, and project scopes are also discussed in the course.
COURSE OUTCOMES
Learning Cognitive
Outcomes Level
CO1 Understand the concepts of project definition and Understand
life cycle
CO1 1 2
CO2 2 2 3
CO3 2 2 3
CO4 3
36
Module 1
Basics of Project Management: Introduction, Need for Project Management, Project
Management Knowledge Areas, The Project Life Cycle, Project Management
Processes, The Project Manager (PM), Challenges in project management. Business
Case, Project screening and Selection Techniques. Project Planning: Introduction, Need
and Process. Structuring concepts and Tools- (WBS, OBS, and LRC).
Module II
Module III
Project Planning Tools (Bar charts, CPM, and PERT): Introduction, Development of
Project Network, Time Estimation, Determination of the Critical Path, PERT Model,
Measures of variability,
Module IV
Module V
Project Execution, Project Control Process, Purpose of Project Execution and Control.
Project Cost Control and Time cost Tradeoff. Project Close-out, Termination and
Follow-up: Project Close-out, Project Termination, Project Follow-up, Project
Management Software’s.
37
REFERENCES
1. Bentley, The Essence of the Project Management Method, 7th Edition. CAIS
Management, 2011, ISBN-139780954663568
38
23-493-0202 Android App Development - Kotlin & XML (D-P)
COURSE DESCRIPTION
This course equips students for developing mobile applications based on the Android framework,
Jetpack and Kotlin. The core contents include fundamentals such as the android environment,
architectures, and frameworks, it also has an in-depth assessment of android controls, dialogs,
coroutines, styles, life-cycle events, notifications, localization, fragments, views, adapters, intents,
services, and broadcasts. The above features are evaluated and employed in projects.
COURSE OUTCOMES
CO Learning Outcomes Cognitive Level
CO1 Understand the basic working principle of Android App Development. Understand
CO2 Apply Compose to build efficient UI Apply
CO3 Apply Intermediate Android framework components to create Apply
applications.
CO4 Analyze various asynchronous programming constructs and its Analyze
applications.
CO5 Create basic to intermediate android applications. Create
Module I
Android Studio. Introduction to Building Tools: Kotlin, JDK, JRE, Android SDK, Android
Developer Tools. Setting up Android Environment and Emulator. Android Architecture: Overview
of the Stack, Linux Kernel, Native Libraries, Dalvik Virtual Machine, Android Virtual Machine
(ADT), Dalvik Debug Monitor Server (DDMS), LogCat, Application Licensing, Gradle.
Introduction: Building Blocks, Android Emulator, AndroidManifest.xml, R.java file, uses-
permission, Project Structure, Layout resource. Android Life Cycle: Activity, Intent. Hello World.
User Interface: Working with basic control: Button, TextView, EditText, Toast, ImageButton,
ChekcBox, Button, Toast, Toggle Button, Switch Button, Image Button, Check Box, Alert Dialog,
Spinner, Auto Complete Text View, Rating Bar, Date Picker, Time Picker, Progress Bar, Android
Menus, Layout Manager.
39
Module II
Intermediate Development I: Notifications, Toast, Custom Toast, Dialogs, Status bar Notifications.
Multithreading: Using Kotlin coroutines: Launch, Async, Dispatchers. Styles and Themes: Creating
and applying simple Style, inheriting built-in Style and User-defined style, Using Styles as themes.
Resources and Assets: Android Resources, Using resources in XML and code, Localization, Handling
Runtime configuration changes.
Module III
Intermediate Development II: Fragment Lifecycle, Fragment Example, Dynamic Fragment. Adaptor:
Array Adaptor, ArrayList Adaptor, Base Adaptor. View: Grid View, Web View, Scroll View.
Creating UI through Kotlin and Compose (XML), Communicating data among Activities and
Fragments.
Module IV
Advanced Intent and Broadcast Receivers: Role of filters, Intent-matching rules, Filters in your
manifest, Filters in dynamic Broadcast Receivers, Creating Broadcast receivers. Receiving System
Broadcast: Understanding Broadcast action, category and data, Registering Broadcast receiver
through code and through XML, Sending Broadcast.
Module V
Services: Overview of services in Android, implementing a Service, Service lifecycle, Android
Service API. WorkerManager vs Services. Multimedia in Android: Multimedia Supported audio
formats, Simple media playback, Supported video formats, and Simple video playback. Location-
Based Services and Google Maps.
REFERENCES
1. Wallace Jackson, Android Apps for Absolute Beginners, Apress, 2012. ISBN-13:978-
1430247883.
2. John Horton - Android Programming with Kotlin for Beginners: Build Android apps starting
from zero programming experience with the new Kotlin programming language, Packt
Publishing Limited, 2019, ISBN-10 : 1789615402.
3. Dmitry Jemerov , Svetlana Isakova - Kotlin in Action, Manning; 1st edition, 2017, ISBN-10 :
1617293296.
4. Dawn Griffiths - Head First Kotlin: A Brain-Friendly Guide, O'Reilly Media, 2019, ASIN :
B07NPZ21QP.
5. Josh Skeen, David Greenhalgh - Kotlin Programming: The Big Nerd Ranch Guide, Big Nerd
Ranch Guides; 1st edition, 2018, ISBN-10 : 0135161630.
6. Neil Smyth - Jetpack Compose 1.2 Essentials: Developing Android Apps with Jetpack Compose
1.2, Android Studio, and Kotlin, Payload Media, 2022, ISBN-10 : 1951442504.
7. Thomas Kunneth - Android UI Development with Jetpack Compose: Bring declarative and
native UIs to life quickly and easily on Android using Jetpack Compose, Packt Publishing, 2022,
ISBN-10 : 1801812160.
40
23-493-0203 Android App Development - JetPack Compose (D-P)
COURSE DESCRIPTION
This course evaluates the advanced features of Android application development. The students get
familiar with JetPack Compose. The students understand predominant Android architectures such as
MVC, MVVM, MVP. Advanced backend features such as API integration using Retrifit/Volley and
Room persistence is explored. Unit testing is integrated with the framework so that students get
overall development experience.
COURSE OUTCOMES
CO Learning Outcomes Cognitive Level
CO1 Understand Room DB and Content Providers. Understand
CO2 Apply Services in App Development. Apply
CO3 Design and create applications using predominant Create
android architectures.
CO4 Create Map based applications. Create
CO5 Create applications consuming API’s Create
Module 1
Recap: Difference between compose and xml. Compose componts: Image ,Button, Text, Text Filed.
Layouts: Row, Column, Box, Scaffold. List: Lazylist, LazyColunm, LazyRow. State Management,
Jetpack Compose Navigation, Compose Interoperability with XML.
Module II
Android design architectures: MVC: - Model, View, Controller. MVP: - Model, View, Presenter.
MVVM: - Model, View, View, Controller. Comparison of architectures, Advantages and
disadvantages of modern design architectures, Writing scalable code. Classes: Sealed Class, Data
Class, Enum Classes, Inline Class. JetPack LiveData.
Module III
Database Integration: Introducing SQLite, SQLite vs RoomDB, Creating a database using
RoomDB and performing CRUD (Create, Read, Update and Delete) operations, Content Providers
& Services: Content Providers. Dependency Injection using Google Dagger Hilt.
Module IV
Web Services and WebView: Consuming web services using Retrofit/Volley, Receiving HTTP
Responses (XML, JSON), Parsing JSON and XML using Gson. Worker Manager: Creating,
scheduling, Work Continuation, ListnableWorkers, Dependency Injection and optimization. Using
WebView, Sensors: How Sensors work, Sensor API. Best practices for performance.
41
Module V
Camera: Taking pictures. Speech API: TextToSpeech, Bluetooth: Controlling local Bluetooth
device, Discovering, and bonding with Bluetooth devices. Animation: Android Animation API.
Android Graphics: Graphics API, 2D Graphics, Canvas, Paint class. Android Application
Deployment on Android Play Store. Future of Android.Telephony Services: Making calls,
accessing phone properties and status, sending messages, Sending Emails. Unit Testing: Junit,
Mockito, Espresso. Wi-Fi: Monitoring and managing Internet connectivity.
REFERENCES
1. Neil Smyth - Android Studio 3.0 Development Essentials: Android 8 Edition, Amazon
Digital Services; 1st edition, 2017, ISBN-10 : 1977540090.
2. Ian Darwin - Android Cookbook: Problems and Solutions for Android Developers,
Second Edition, Shroff/O'Reilly; Second edition, 2017, ISBN-10 : 9352135555.
3. Alex Forrester, Eran Boudjnah, Alexandru Dumbravan, Jomar Tigcal - How to Build
Android Apps with Kotlin: A hands-on guide to developing, testing, and publishing your
first apps with Android, Packt Publishing Limited, 2021, ISBN-10 : 1838984119.
4. Mark Wickham - Practical Android: 14 Complete Projects on Advanced Techniques and
Approaches, Apress; 1st ed. Edition, 2018, ISBN-10 : 1484233328.
5. Nate Ebel - Mastering Kotlin: Learn advanced Kotlin programming techniques to build
apps for Android, iOS, and the web, Packt Publishing Limited, 2019, ISBN-10 :
1838555722.
42
23-493-0204 CLOUD AND ADVANCED TECHNOLOGIES(D-P)
COURSE DESCRIPTION
This course aims to provide an in-depth analysis of Cloud and related technologies.
Various cloud architectures are analyzed and classified which enables students to apply
the knowledge in designing cloud-based solutions in software development. The core
contents discussed in this course are cloud architectures and service models like SaaS,
PaaS, IaaS, FaaS, BaaS, and mBaaS. Evaluating Amazon Lambda, Firebase and
DynamoDB provide students a portal to manage cloud solutions in real-world scenarios.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 Apply cloud solutions on production scenarios Apply
using Firebase or DynamoDB
CO2 Evaluate different cloud service providers, and Evaluate
various cloud service models (FaaS, BaaS)
CO3 Evaluate mobile backend services (mBaaS) and Evaluate
its applications
CO4 Create various cloud service modes (SaaS, PaaS, Create
and IaaS), and deploy solutions based on the
model
CO5 Design and create solutions in Amazon Lambda Create
CO1 3 3 3 3 1 2
CO2 2 2 3 3 1 2
CO3 3 2 2 3 1 2
CO4 3 3 3 3 1 3
CO5 3 2 3 3 1 3
43
Module I
Module II
Module III
Module IV
Module V
Hands on experience in Cloud hosting for each service - PAAS, SAAS and IAAs.
Implementation using real-world examples.
REFERENCES
44
4. Dan C. Marinescu, Cloud Computing, Second Edition: Theory and Practice,
Morgan Kaufmann publishing, 2017, ISBN-13:9780128128107
5. R. Chopra, Cloud Computing: An Introduction, Mercury Learning & Information,
2017, ISBN-13:978-1683920922
6. MiteshSoni , Manisha Yadav, Learning Azure Functions: Build scalable cloud
systems with serverless architecture, Pact Publishing, 2017, ISBN-13: 978-
1787122932
7. Tariq Farooq, Sridhar Avantsa, Pete Sharman , Building Database Clouds in Oracle
12c, Addison-Wesley Professional, 2016 , ISBN-13:978-0-13-431086-2
Note: In addition to the above, web references will be provided during the course.
45
23-493-0207 - SOFTWARE LAB-II (ANDROID & CLOUD)
COURSE DESCRIPTION
This course employs the concepts taught in the second semester for developmental purposes.
Cloud and Android are used for providing robust solutions for real-world scenarios that
enable students to understand the principles and functionalities behind each of the
programming languages and its implementations respectively.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 Design Solution based on advanced android Create
Concepts.
CO2 Design solution based on Cloud Concepts Create
CO1 3 2 3 3 3 3
CO2 3 2 3 3 3
Module I
Android Advanced concepts with receivers, services, maps
⮚ Retrofit
⮚ Multimedia: Sound and Video
⮚ Location: GPS and Internet, Proximity Alerts
⮚ Google Map: Overlays, Geocoder.
⮚ Web Views
⮚ Volley
Module II
Android concepts with sensors, content providers, email and camera, Room
⮚ Sensors: Accelerometer, Motion, Compass, Orientation
⮚ Telephone: Managing Calls.
⮚ Contacts: Accessing Updating and Deleting.
⮚ Email: Sending and Receiving.
⮚ Camera: Surfaces Manipulation.
⮚ Animations: 2D and 3D, OpenGL. Database & Backend
⮚ SQLite
⮚ Room
Module III
Advanced Cloud Concepts
47
⮚ AWS Lambda
REFERENCES
48
23-493-0208 INTERNSHIP I – ANDROID/WEB APP
DEVELOPMENT
COURSE DESCRIPTION
COURSE OUTCOMES
CO1 2 3 2 2 1
CO2 2 3 3 3 2
CO3 2 3 2 3 2
CO4 2 3 3 3 3 3 3 2
CO5 3 3 3 3 3 3 3 3
49
Objective: To provide students with industrial exposure to real world of Product
Development whereby they get an opportunity to apply the knowledge and skill
acquired through the course.
The internship will be of 40 working days duration. The students are required to
undertake the internship training with a reputed IT / Software Development Company
on Android/Web Application development or related technologies.
Student should submit the company details and work details to their concerned Faculty
Guide for approval and feedback before the starting date stipulated by the center. The
internship work will be duly evaluated continuously by the Faculty Guide. Students
have to produce a certificate of internship completion from the company at the time of
rejoining the department, specifying the period of internship.
50
SEMESTER III
Programming with
3 23-493-
Swift 3 1 2 50 50 4
0303
(D-P)
iOS
4 23-493-
fundamentals- 3 1 50 50 4
0304 2
SwiftUI
Framework
(D-P)
Applied
5 23-493-
Technologies in iOS 3 1 50 50 4
0305
(D-P) 2
51
23-493-0301 ENTREPRENEURSHIP AND NEW VENTURE PLANNING
COURSE DESCRIPTION
The course provides an understanding of the nature of entrepreneurship while providing
inputs about policy support and the legal aspects. Different facets of business plan
preparation after idea generation and environmental analysis are discussed. Feasibility
analysis methods and business model planning which play key roles in the success of
new ventures are explained. Financing and valuation of new ventures have evolved into
sophisticated areas of entrepreneurship management and are discussed in both global
and Indian contexts.
COURSE OUTCOMES
CO1 2 2
CO2 3
CO3 1 3
CO4 1 3
CO5 1 2 3
52
Module I
Entrepreneurship, Entrepreneurs, Characteristics of Entrepreneurship, Personality traits
and personal values of entrepreneurs, Creativity and entrepreneurship, Idea generation
and environmental analysis, Entrepreneurship Ecosystem.
Module II
Entrepreneurship and Strategy, Business Models and Strategy, Innovation, Value
proposition and market analysis, the Business Plan, Elements of the Business Plan, The
Marketing and Sales Forecasting.
Module III
Feasibility analysis: market feasibility, financial Feasibility and technical feasibility,
Business model planning, New Value creation.
Module IV
Valuation, New Venture Finance, Determining Financial Needs, Sources of Financing,
debt financing, equity financing, crowd funding, Securing Investors and Structuring the
Deal, Approaching Investors, Structuring the Deal, Negotiation Skills, Networking and
entrepreneurship, Business Incubation, Legal and Tax Issues, Governmental support to
start-ups.
Module V
REFERENCES
1. David Butler, Business Planning: A Guide to Business Start-Up, Butterworth
Heinemann, 2000, ISBN-13:978-0750647069
2. Vasant Desai, Dynamics of Entrepreneurship Development and Management,
Himalaya Publications, 2007, ISBN-13:9788184884975
3. Saha, A. and Sharma, V, Entrepreneurship and New Venture Creation, Excel
Books, 2008, ISBN-13:978-8174466075
4. Peter Ferdinand Drucker, Innovation and Entrepreneurship, London, 1985.
5. AnjanRaichaudhuri, Managing New Ventures: Concepts and Cases in
Entrepreneurship, PHI, 2010, ISBN-13:978-8120341562
6. Clare Griffiths, and Brad Crescenzo, My Start-Up Plan: The business plan
toolkit, Kindle edition, 2012.
7. Donald F. Kuratko, and Jeffrey Scott Hornsby, New Venture Management: The
Entrepreneur's Roadmap, Pearson Education, 2008, ISBN-13:978-013613032
53
23-493-0302 AGILE PROCESS MANAGEMENT
COURSE DESCRIPTION
COURSE OUTCOMES
CO1 1 1 2 2 1 1
CO2 1 1 2 2 2 1
CO3 2 3 2 2 2 1
CO4 2 3 2 2 2 1
CO5 2 3 2 2 2 2
54
Module I
Module II
Principles and Practices, Kanban board and flow, Planning and Estimation, Process
Improvement, Kanban metrics, Example for Kanban project management.
Module III
Module IV
What is Scrum? Scrum benefits, Scrum framework, Sprints, Requirements and user
stories, Product backlog, Estimation and Velocity, Scrum Team structures, Scrum
Events, Artifacts, Planning principles.
Module V
Common Tools: Atlassian Jira, Active Collab, Wrike, Agilo for Scrum, Pivotal Tracker,
Easy Redmine. Open Source Tools – MyCollab, Odoo, OpenProject, OrangeScrum,
Taiga, Tuleap. Practical implementation of agile methodologies in Android/iOS App
Development Environment.
REFERENCES
1. Kenneth S. Rubin , Essential Scrum: A Practical Guide to the Most Popular Agile
Process,
55
Process, Addison-Wesley, 2012, ISBN-13:978-0137043293
5. Henry Hayes, Agile Project Management: The Ultimate Guide to Agile Project
ManagementandSoftwareDevelopment-PlusTips&TricksforImplementingScrum!
56
23-493-0303 PROGRAMMING WITH SWIFT
COURSE DESCRIPTION
This course assesses the Swift framework and its implementations. The concept of data-
structures, operators, flow-control, arrays, properties, instances, inheritance, protocols,
generics, and extensions are applied to problems. The students get an in- depth
understanding of Swift programming and this course acts in conjunction with the iOS
app development I and II courses, to enlighten students into the world of professional
iOS development.
COURSE OUTCOMES
CO1 2 1 1 1
CO2 2 2 2 1
CO3 3 2 3 3 1
CO4 3 3 3 2
CO5 3 1 2 2 2 1
57
Module I
Introduction: History of Swift, Features, Benefits, Objective-C and Swift, Introduction
to XCode and the iOS Simulator. Data Types: Basic Data Types, Tuples, Optional
Types, Enumerations. Basic Operators: Assignment Operators, Arithmetic Operators,
Comparison Operators, Range Operators, Logical Operators, Strings and Characters:
Strings, Common String Functions, and Interoperability with NSString, Collections:
Arrays, Dictionaries, Copying the behavior of Arrays and Dictionaries.
Module II
Flow Control: Selection, Conditions, Boolean logic and IF Statements, Optionals, IF
Let Statements, Testing for nil and Optional Bindings, Switch Statements, Range
Operators; Looping: For-Loops, Nested Loops, For-in Loops, Half-Open Range
Operators, While Loops and Repeat- While Loops, Functions: Defining and Calling a
Function, Function Types, Nested Functions, Closures: Understanding Closures,
Closure Functions of Arrays, Using Closures in our Functions,Enumerations.
Module III
Structures and Classes: Structures, Classes. Properties: Stored Properties, Computed
Properties, type Properties, Property Observers, Methods: Instance Methods, Type
methods, Subscripts. Inheritance: Understanding Inheritance,Overriding,Initialization
Types of Initializers, Deinitialization, Optional Chaining, Error
Handling,Concurrency,Actors,
Module IV
Protocols and Delegates: Understanding Protocols, Protocols as Types, Protocol
Inheritance, Class-Only Protocols, Protocol Composition, Understanding Delegates.
Generics: Understanding Generics, Implement Generic Functions, Implement Generic
Functions using Multiple Parameters, Generic Types, Associated Types, Generic
Subscripts.
Module V
Extension: Extension Syntax, working with computed properties, methods, initializers
and subscripts, Adding Protocol Conformance with an Extension, Protocol Extensions,
Extensions with Generic Types, Access Control: Access levels, Access Control Syntax,
Access control to classes, structures and enumerations, Assigning
58
access levels to protocols and extensions.
Memory management: Automatic Reference Counting (ARC), Strong Reference
Cycles between Class Instances, weak references, unowned references, Memory Safety,
Understanding Conflicting Access to Memory.
REFERENCES
59
23-493-0304 IOS APP DEVELOPMENT
SWIFTUI FRAMEWORK (D-P)
COURSE DESCRIPTION
The course explains the fundamentals of iOS development using the SwiftUI framework. The core
concepts in this course are layout stacks, basic views and controls, touchers and gestures, web
services, the MVVM design pattern, SwiftUI property wrappers, and backgrounding tasks. By
evaluating iOS: Fundamentals using the SwiftUI Framework, the students can create solutions in the
production environment using SwiftUI.
COURSE OUTCOMES
CO1 1
CO2 2 1 1 1 1
CO3 2 1 1 1 2
CO4 3 2 2 3 3 2
CO5 3 3 3 3 3 3
Module I
Introduction to iOS Platform, iOS Devices and the Apple Developer Tools, UI Guidelines to IOS,
Introduction to XCode and the iOS Simulator, Exploring the iOS Technology Layers, iOS
Application Life Cycle, Cocoa Fundamentals- Application Classes, Data Type Classes and Interface
Classes, Foundation Framework, iOS Coding Standards. Introduction to Declarative UI and
Storyboard, Creating User Interfaces, Autolayout, Customizing the Interface Appearance, Designing
Rotatable and Resizable Interfaces, Stack View, Developer Guidelines and Accessibility(A11y), App,
Scene and Scene Builder, Windows.
Module II
Single View Application Template, Layout User Interface with Stacks, State handling, Protocols and
60
Delegates.
Basic views and controls: Text, Label, TextField, TextEditor, SecureField, Image, AsyncImage,
Button, Link, NavigationLink, ToolbarItem, Toggle, Map, Picker, DatePicker, ProgressView, Slider,
Stepper, Chart.Shapes.
Touches and Gestures: Multitouch Gestures Recognition, Adding and Using Gesture Recognition.
Sensing Orientation and Motion: Understanding Motion Hardware, Accessing Orientation and
Motion Data, Sensing Orientation, Detecting Acceleration, Tilt and Rotation using the Gesture
Modifier.
Module III
Web Services(Rest), Decodable, Codable and Codable, AsyncAwait, GCD(Grand Central Dispatch), task and
taskGroup, Combine, AVFoundation, System sounds and Haptic feedback, Accessing and Playing the Music
Library, Basic Animations and Transitions, NavigationSplitView. Data Sharing with Combine and
Environment Objects. Introduction to MVVM Design Pattern, Implementing MVVM with Xcode
Module IV
SwiftUI reusable components, Passing Data between Views, SwiftUI Modifiers and custom modifiers,
viewBuilder, Matched Geometry, Geometry Reader.
SwiftUI property wrappers: AppStorage, Binding, Environment, EnvironmentObject, FetchRequest,
FocusedBinding, FocusedValue,
GestureState, Namespace, ObservedObject, Published, ScaledMetric, SceneStorage, State, StateObject,
UIApplicationDelegateAdaptor.
Module V
Understanding iOS Backgrounding task, Disabling Backgrounding, Handling Background Suspension, Using
Task-Specific Background Processing, Building Universal Applications: Configuring a project as Universal,
Universal Tools and Techniques, Submission Guidelines, Test Flight.
REFERENCES
1. SwiftUI For Dummies, Wei-Meng Lee, For Dummies, ISBN-13: 978-1119771993
2. SwiftUI Cookbook: Discover solutions and best practices to tackle the most common
problems while building SwiftUI apps, Giordano Scalzo and Edgar Nzokwe, Packt
Publishing, ISBN-13: 978-1801812463
3. Pro iPhone Development with SwiftUI: Design and Manage Top Quality Apps, Wallace
Wang, Apress, 1st ed. edition (March 30, 2022), ISBN-13: 978-1484274088
4. SwiftUI for Masterminds 3rd Edition 2022: How to take advantage of Swift and SwiftUI to
create insanely great apps for iPhones, iPads, and Macs, J D Gauchat, Independently
published, 3rd edition (February 23, 2022), ISBN-13: 978-1803162783
5. SwiftUI Tutorials, Apple Inc., https://developer.apple.com/tutorials/swiftui/
6. SwiftUI Quick Start, Paul Hudson, Hacking with Swift,
https://www.hackingwithswift.com/quick-start/swiftui/
61
23-493-0305 APPLIED TECHNOLOGIES IN IOS
COURSE DESCRIPTION
The course explains the advanced concepts of iOS development. The core concepts in this course
are managed objects, controllers, encoding and decoding, serialization, map views, geolocation,
push notifications, CloudKit, and apple watch extensions. The students can design complex projects
by applying the features mentioned above.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 Apply extensions to existing android projects. Apply
CO5 Deploy the application using Map and Geolocation components. Create
CO1 2 2 2 2 1
CO2 2 2 2 3
CO3 3 2 2 2
CO4 3 3 3 1 1
CO5 3 2 3 3 3 2
Module 1
Introduction to Data Storage Mechanisms in iOS, Plist Files, File System Storage, KeyChain
Storage, Introduction to Core Data, Building Managed Object Model, Setting Up Default Data,
Displaying Managed Objects, Introducing the Fetched Results Controller, Adding, Editing, and
Removing Managed Objects, Encoding, Decoding and Serialization, JSON Encoder.
Module II
Introduction, Creating and Interacting with Map View, Overlay Views, Annotations, Polyline,
Polygon and Circles. Location Manager and Permissions,Background Location Updation.
Registering Geofences. Reacting to Geofence Events, Notifying User of Geofence Event.
Module III
Using the Address Book, Email, Social Networking, Ad Integration, Differences Between Local
and Push Notifications, App Setup, Creating Development Push SSL, Certificate, Development
62
Provisioning Profile, Custom Sound Preparation, Registering for Notifications, Scheduling Local
Notifications, Receiving Notifications, Push Notification Server, Sending the Push Notifications
Module IV
CloudKit Basics, Setting Up a CloudKit Project, CloudKit Concepts, CloudKit Basic Operations,
Subscriptions and Push, User Discovery and Management, Managing Data in the Dashboard.
Test Driven Development - Unit Testing, Writing Test cases, UI testing and Code coverage.
Module V
Types of Extensions, Understanding Extensions, API Limitations, Creating Extensions, Today
Extension, WidgetKit, WeatherKit, Passkeys, Focus filter API, Live Text API, Sharing Code and
Information between Host App and Extension, Apple Watch Extension, 3D Touch, Search, Siri,
Touch ID, Certificate Creation, Apple Pay
REFERENCES
1. Matt Neuburg , iOS 11 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics,
O'Reilly Media; 1 edition, 2017, ISBN-13: 978-1491999318
2. Christian Keur, Aaron Hillegass, iOS Programming: The Big Nerd Ranch Guide (6th Edition),
Big Nerd Ranch Guides, 2017, ISBN-13: 978-0134682334.
3. Donny Wals , Mastering iOS 11 Programming , Packt Publishing Limited; 2nd Revised edition,
2017, ISBN-13:978-1788398237
4. Matt Neuburg, Programming iOS 11: Dive Deep into Views, View Controllers, and Frameworks,
1st Edition, O'Reilly Media, January 2018, ISBN-13:978-1491999226
5. raywenderlich.com Team, Janie Clayton, Alexis Gallagher, Matt Galloway, Ben Morrow,
CosminPupaza, Steven van Impe, Swift Apprentice: Beginning Programming with Swift 4, Third
Edition, Razeware LLC, 2017, ISBN-13:978-1942878438
6. Kyle Richter, Joe Keeley, Mastering iOS Frameworks: Beyond the Basics, Addison- Wesley
Professional, 2015, ISBN-13 :9780134052526
7. Web Reference:https://developer.apple.co
63
ELECTIVE 1: WEARABLE TECHNOLOGIES IN ANDROID
COURSE DESCRIPTION
COURSE OUTCOMES
CO1 1 1 1
CO2 2 2 2 2 1 1
CO3 2 2 2 2 1
CO4 3 3 3 3 3 2
CO5 3 2 2 2 2 2
64
Module I
Introduction to Program Faces: Watch Face Code Foundation, Timing: Timing Engines
using TimeZone Times, Broadcast Receivers. WatchFace API: Implement a sample
WatchFace API Method.
Module III
Android Wear Activity Tracker, Smart Watch as Input. WatchFace Design: Vector
Graphics for Watch Faces, Bitmap Design using Raster Graphics. Multiple Mode
Assets.
Module IV
Multimedia: Telephone Call Handling, Gmail, SMS, Hangout Wear Mini Launcher,
Wear Internet Browser. Working with Fitness devices. UI Design Guidelines, Cards: -
Fragments, frames, scroll view, Confirmations.
Module V
REFERENCES
1. Ashok Kumar S, Android Wear Projects, Packt Publishing, 2017, ISBN-13: 978-
1787123229
2. Wallace Jackson, Pro Android Wearables: Building Apps for Smart watches,
Apress, 2015, ISBN-13:9781430265511
3. Siddique Hameed, Javeed Chida, Mastering Android Wear Application
65
Development
PACKT Publication, 2016, ISBN-13: 978-1785881725
4. Andres Calvo, Beginning Android Wearables with Android Wear and Google
Glass SDKs, Apress, 2016, ISBN-13:978-1484205181
5. Andres Calvo, Beginning Android Wearables, 1st edition, Apress, 2015, ISBN-
13: 978- 1484205181
6. Steven F. Daniel, Android Wearable Programming, Packt Publishing, 2015, ISBN-
13: 978-1785280153
66
ELECTIVE 2: CROSS PLATFORM DEVELOPMENT USING REACT
NATIVE
COURSE DESCRIPTION
This course provides insight into the cross-platform application development using
React Native. The fundamental differences between cross-platform, hybrid and native
applications are highlighted. The core components such as React Native environment,
user controls, testing and debugging, geolocation, camera and images, flashcards,
transitions, state management, storage, and navigation. The application of these
components in projects provides in-depth knowledge about cross-platform development
COURSE OUTCOMES
CO1 1 1 1 1 1 1
CO2 2 1 1
CO3 2 2 1 2 1
CO4 3 3 3 3 2 2
CO5 3 3 3 3 2 2
67
Module I
Module II
Setting up an environment for developing iOS and Android apps, Introduction to JSX,
Creating your First Application with create-react-app and Expo, Stateful versus
presentational components, React lifecycle methods, The folder structure. React Native
Components: Basic components: View, Layouting, Touch events, Accessibility, Text,
StatusBar, Images, and media. Basic user interaction: Button, Touchable Opacity,
Touchable Highlight, Touchable without Feedback. ActivityIndicator, Modal,
ListView, ScrollView, RefreshControl, FlatListSectionList, VirtualizedList,
Embedding web content, Handling user input, TextInput, Restricted choice inputs,
Platform-dependent components, Detecting specific platform, Extensions,
DatePickerIOS, Progress bars, Additional controls
Module III
Debugging and Testing React Native: Debugging your React Native apps, Remote
debugging, Logging, Inspecting React Native components. Testing: Introduction to the
Jest testing framework, Snapshot testing your React Native components, working with
functions, mocking modules
Module IV
Platform APIs: Using Geolocation, Accessing the User’s Images and Camera, Storing
Persistent Data with AsyncStorage, Modules and Native Code, Installing Third-Party
Components with Native Code, Writing an Objective-C Native Module for iOS, writing
a Java Native Module for Android, Cross-Platform Native Modules
68
Module V
REFERENCES
1. Vladimir Novick, React Native - Building Mobile Apps with JavaScript, PACKT
Publishing Limited, 2017, ISBN-13:978-1787282537
2. Bonnie Eisenman, Learning React Native, 2nd Edition, Building Native Mobile
Apps with JavaScript, O'Reilly Media Inc., 2017, ISBN-13: 978-9352136568
3. Eric Masiello, Jacob Friedmann, Mastering React Native, Packt Publishing, 2017,
ISBN- 13:978-1785885785
4. Stan Bershadskiy, Crysfel Villa, React Native Cookbook, Packt Publishing, 2017,
ISBN- 13:978-1786462558
5. Emilio Rodriguez Martinez, React Native Blueprints: Create eight exciting native
cross- platform mobile applications with JavaScript, Packt Publishing, 2017, ISBN-
13: 978- 1787288096
Note: In addition to the above, web references will be provided during the course.
69
ELECTIVE 3: iOS – Fundamentals using Storyboard Framework
COURSE DESCRIPTION
The course explains the fundamentals of iOS development. The core concepts in this course are data-
structures, cocoa, foundation frameworks, storyboards, MVC, developer-guidelines, user controls,
views, controllers, pop-overs and toolbars. By evaluation of the fundamentals of iOS development,
the students can design basic solutions in the production environment.
COURSE OUTCOMES
CO4 Create Story Board, MVC, Protocols and Delegates, View Create
System, Controllers, and devise solution based on it.
CO5 Design and create Universal iOS application projects based on Create
multi-scene storyboards, toolbars, and pickers.
CO1 1
CO2 2 1 1 1 1
CO3 2 1 1 1 2
CO4 3 2 2 3 3 2
CO5 3 3 3 3 3 3
Module I
Introduction to Interface Builder and Storyboard, Creating User Interfaces, Autolayout, Customizing the
Interface Appearance, Designing Rotatable and Resizable Interfaces, Programmatically Defined
Interfaces, Size Classes, and Stack View
Module II
Single View Application Template, Connecting to Code, Outlets and Actions, Building Applications,
Developer Guidelines. Touches and Gestures: Multitouch Gestures Recognition, Adding and Using
Gesture Recognition. Sensing Orientation and Motion: Understanding Motion Hardware, Accessing
Orientation and Motion Data, Sensing Orientation, Detecting Acceleration, Tilt and Rotation.
70
Module III
Web Services ,Web Views, Scrolling Views, Alert Controllers, Media Player Frameworks ,System Sound
Services, Vibrations, Accessing and Playing the Music Library, Tables and Split View Controllers and
Collection View. Introduction to MVC Design Pattern, Implementing MVC with Xcode
Module IV
Multi-scene Storyboard, Passing Data between Scenes, Segues, PopOvers, Advanced Storyboards Using
Navigation and Tab Bar Controllers: Navigation Controllers, Tab Bar Controllers, Sharing Data between
Tab Bar Scenes, Navigation Information using Table Views and Split View Controllers.
Understanding the Role of Toolbars, Exploring Pickers. Image Picker
Module V
Understanding iOS Backgrounding, Disabling Backgrounding, Handling Background Suspension, Using
Task-Specific Background Processing, Building Universal Applications: Configuring a project as
Universal, Universal Tools and Techniques, Submission Guidelines, Test Flight.
REFERENCES
1. Matt Neuberg, iOS 11 Programming Fundamentals with Swift, O′Reilly, 2017, ISBN- 13:978-
1491999318
2. SerhanYamacli , Beginner's Guide to IOS 11 App Development Using Swift 4: Xcode, Swift and
App Design Fundamentals, Createspace Independent Publishing Platform; 1 edition, 2017, ISBN-
13:978-1977891754
3. Donny Wals, Mastering iOS 11 Programming, Packt Publishing Limited, 2017, ISBN-13: 978-
1788398237
4. Molly K. Maskrey, Beginning iPhone Development with Swift 4: Exploring the iOS SDK , Apress;
4th ed. edition (27 November 2017), ISBN-13: 978-1484230718
5. Christian Keur and Aaron Hillegass, iOS Programming: The Big Nerd Ranch Guide (6th
Edition), Big Nerd Ranch Guides; 6th Edition, 2017, ISBN-13:978-0134682334.
6. Web Reference:https://developer.apple.com/
71
ELECTIVE 4: WATCH OS PROGRAMMING
COURSE DESCRIPTION
This course assesses the WatchKit and architectures that support Apple Watch
development. It includes an in-depth understanding of WatchKit, Interface controllers,
Navigation, Life Cycle, user control, localization, synchronization, notification, and
testing.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 Understand the user controls and its Understand
implementation
CO2 Understand Apple Watch and its lifecycle Analyze
CO3 Evaluate storyboard and navigation Evaluate
CO4 Understand and create Notification and Testing Create
CO5 Develop application using localization and Create
synchronization
CO1 1 1 2 2 2
CO2 2 2 2 1
CO3 3 1 2 3 3 2
CO4 3 1 2 2 3 2
CO5 3 3 3 3 3 3
Module I
WatchKit App Architecture, Interaction between Apple Watch and iPhone, Types of
Apple Watch Applications, WatchKit App Lifecycle.
Module II
Interface Controllers and Storyboard, Life Cycle of an Interface Controller, Navigation
between Interface Controllers, Hierarchical Navigation, Page-Based
72
Navigation, Passing Data between Interface Controllers.
Module III
Button, Switch, Slider, Labels, Images, Tables, Text, Emojis, Laying Out Controls,
Force Touch, Context Menu.
Module IV
Module V
REFERENCES
73
ELECTIVE 5: FLUTTER FOR BEGINNERS
COURSE DESCRIPTION
A cross-platform mobile framework called Google Flutter makes it simple to create high-performance
applications for iOS and Android. Students learn the fundamentals of the Dart programming language
and the Flutter framework through this course. Students will discover how to create the user interface
and incorporate user input features starting with setting up your development environment. Students
will Students will learn how to manage app routes with the navigator widget and how to create screen
transitions.
COURSE OUTCOMES
CO Learning Outcomes Cognitive Level
CO1 Understand the background and scope of Flutter. Understand
CO2 Familiarizing with basic building blocks of Flutter Understand
CO3 Apply basic controls to application design Apply
CO4 Apply database to Flutter application. Apply
CO5 Create basic to intermediate Flutter application Create
Module 1
Introduction: Hybrid Apps vs Native Apps, Introduction to Flutter & Dart, Scope of Flutter. Getting
started with dart: Setting up the environment, Variable and Data Types, Operators in dart, Loops and
Decision making, Numbers and String, List,Map,Enumeration, Functions, Null Safety, Asynchronous
Programming, Object Oriented Principles
Module 2
Introduction to Flutter: Setting up environment for Flutter, understanding flutter project structuring
and files, Understanding the boilerplate code, Widgets - Stateless widget and Stateful widget.
Understanding basic state management with stateful widget. Writing your first program in Flutter,
Familiarising widgets catalogue (Drawer, Material Widgets). Understanding Buttons and other
gesture recognizers (InkWell, Gesture Detectors). Managing assets , images and videos in flutter.
Adding external packages to Flutter project (Cached Network Image, Toast). Adding Lottie
animations to Flutter project. Animation Widgets in Flutter. Develop an Tween loader animation.
Working with list of data - Develop an application to convert list of data into UI. Exercise: Building
a UI clone of GPay.
Module 3
Developing an application with bottom navigation. Developing an application with Tabs.
Understanding navigation in Flutter. Building an application with multiple pages to understand
navigation. Handling Forms with Flutter – Designing Forms and Form Widgets (Radio, Dropdown,
Checkbox, TextFormFields, Styling form widgets, Slider, Switch). Sanitising data. Validating data in
form. Developing an application for reading contacts in phone using contact_service package and
74
permission_handler Getting familiarised with JSON - Understanding JSON(JSON Object , JSON
Array). Encoding and decoding JSON with dart. Building an application by reading a JSON file and
converting the data into UI.
Module 4
State management with Cubit - Understanding cubit file structuring. Equatable class Converting an
application to cubit (above application for JSON file reading). Understanding singleton class with
dart. Local Storage in Flutter - Shared preferences, Hive , Sqflite , Building a basic e-commerce app
with cubit and storing data in Shared preferences, Hive, Sqflite, Local notifications. Build flavors –
Building application for dev,staging and release flavors
Module 5
Networking in flutter - Making HTTP requests (POST,GET,PUT,DELETE) and understanding the
concepts of authentication with flutter(Dio,Fresh Dio), Network Interceptors, Flutter secure storage.
Building a release apk configurations. Firebase with flutter - Authentication, Mobile phone number
verification flutter, storing data with Firestore database, Realtime database and handling stream of
data, sending notifications, deploying a release apk to app deployment. Platform Channels -
Implementing platform channel to communicate with native code platforms (Android and iOS)
Reference:
75
ELECTIVE 6: MACHINE LEARNING FOR SOFTWARE DEVELOPERS
Course Description
The course will give the student the basic ideas and intuition behind modern machine learning methods as well
as a bit more formal understanding of how, why, and when they work. It aims to introduce methods for learning
from data.
COURSE OUTCOMES
CO1 1 1 1
CO2 2 1
CO3 2 2 2 2 1
CO4 3 2 3 3 1
CO5 3 3 3 3 3 2 3
REFERENCES
1. Introduction to Machine Learning with Python: A Guide for Data Scientists, Andreas C.
Müller & Sarah Guido, O’Reilly, 2017, ISBN: 978-1449369415.
2. Machine Learning: Mastering the Basics; an In-depth Look at Machine Learning, Fritz
Matt, Createspace Independent, 2017, ISBN: 978-1543127947.
3. Machine Learning in Action, Peter Harrington, Dreamtech Press, 2012, ISBN: 978-
1617290183.
4. Data Mining: Practical Machine Learning Tools and Techniques, 3 e., Ian H. Witten, Eibe
Frank and Mark A. Hall, Morgan Kaufmann, 2018, ISBN: 978-0128042915.
5. Learning From Data, Yaser S. Abu-Mostafa, Malik Magdon-Ismail and Hsuan-Tien Lin,
AMLBook, 2012, ISBN: 978-1600490064.
6. Machine Learning: An Algorithmic Perspective, Stephen Marsland, Chapman and
Hall/CRC, 2014, ISBN: 978-1466583283.
7. The Elements of Statistical Learning,2e., T. Hastie, R. Tibshirani, J. Friedman, Springer
Series, 2017, ISBN: 978-0387848570.
8. Pattern Recognition and Machine Learning, 2e., Christopher Bishop, Springer-verlag,
2011, ISBN: 978-0387310732.
77
ELECTIVE 7: PROGRAMMING WITH PYTHON
COURSE DESCRIPTION
This course evaluates the Python programming language. The students can apply
python scripting using data-types, loops, operators, functions, class, objects,
inheritance, overloading, exception handling, and library management in a
development environment. The data analysis module assesses data preprocessing,
descriptive statistics, file management, POtting, and visualizations. NumPy and
related libraries are used for data analytics.
COURSE OUTCOMES
Learning Outcomes Cognitive Level
CO1 Understand the fundamentals of Python and its Understand
environment
CO2 Understand syntax and semantics and advanced Understand
python integration
CO3 Understand advanced Class and Object-Oriented Understand
features and its implementation
CO4 Develop application using statistical and Create
analytical features
CO5 Design solutions based on visualization Create
CO1 1 1 1 1
CO2 2 2 2 1
CO3 2 2 2 2
CO4 3 2 3 3 3 1
CO5 3 3 3 3 3 1
78
Module 1
Introduction to Python: Scripting language, Downside, Who Use Python, What can I
do with python? Trade-off, Technical Strength. How Python Runs Programs? How You
Run Programs? Installation & Configurations, Windows Launcher, Introducing Python
Object Types: Numeric Type, The Dynamic Typing Interlude, String Fundamentals,
List and Dictionaries, Tuples, Files and Others.
Module II
Modules: The Big Picture. Module Coding Basics: Creation, Usage, Namespaces,
Reload. Module Package: Setting, File, Import, Namespaces. Advanced Module
Topics, OOP: The Big Picture. Class Coding Basics: Class, Object, Instance,
Inheritance, Constructor, Testing, Behaviour methods, Operator Overloading, Sub
classing, Customized constructor, Introspection Tools, Store Objects in database, Class
coding details.
Module III
Module IV
79
Module V
Data Wrangling Clean, Transform, Merge, Reshape: Combining and Merging Data
Sets, Reshaping and Pivoting, Data Transformation, and String Manipulation. POtting
and Visualization: A Brief matPOtlib API Primer, POtting Functions in pandas, POtting
Maps: Visualizing Haiti Earthquake Crisis Data, Python Visualization Tool Ecosystem.
Data Aggregation and Group Operations: Group By Mechanics, Data Aggregation,
Group-wise Operations and Transformations, Pivot Tables and Cross- Tabulation, Time
Series: Basics, Date Ranges, Frequencies, and Shifting, Time Zone Handling, Periods
and Period Arithmetic, Resampling and Frequency Conversion, Time Series POtting.
Financial and Economic Data Applications: Data Munging Topics, Group Transforms
and Analysis.
REFERENCES
1. Wes McKinney, Python For Data Analysis, O’Reilly Publishers, 2017, ISBN-13:
978- 1491957660
2. Mark Lutz , Learning Python, O’Reilly Publishers, 2013, ISBN-13:978-
1449355739
3. Jake VanderPlas, Python Data Science Handbook: Essential Tools for Working
withData,
Shroff/O'Reilly Publishers, 2016, ISBN-13: 978-9352134915
4. Rick van Hattem, Mastering Python, Packt Publishing Limited, 2016, ISBN-13:
978- 1785289729
5. Armando Fandango, Python Data Analysis, Packt Publishing Limited, 2017,
ISBN-13: 978-1787127487
6. Web Reference: https://www.python.org/
80
ELECTIVE 8: INTERNET OF THINGS (IOT)
COURSE DESCRIPTION
The course goal is to evaluate IoT and its related technologies. The core contents
analyzed in this course are the IoT environment, Raspberry Pi, CoAP, MQTT,
XMPP protocols, gateways, abstraction, architectures, security, and
interoperability.
COURSE OUTCOMES
CO1 1 1 1 1
CO2 2 1 2 2
CO3 2 1 2 2
CO4 3 3 3 3 1 1
CO5 2 2 2 2 1
81
Module I
IoT Overview, IoT Hardware, IoT Software, Technologies & Protocols, Common uses,
IoT – Media, Marketing, Advertising. IoT – Environmental Monitoring, IoT –
Manufacturing, IoT – Energy, Healthcare, Building, Transportation, Education,
Government, Law & Consumer Applications. IoT ThingWorx, IoT Cisco virtualized
packet core, IoT Salesforce, IoT GE PREDIX, Eclipse IoT, IoT CONTIKI, IoT Identity
Protection, IoT Liability.
Module II
Raspberry Pi: - Creating Sensor Project, actuator project, controller, camera. HTTP: -
Http Support to sensor, actuator & controller. UPnP: - Introduction, Device description
document, service description document, web interface, UPnP interface, Still image
service, using camera.
Module III
CoAP:- HTTP Binary, Add CoAP to sensor, Add CoAP to actuator, Using CoAP in
controller. MQTT: - Support for Sensor, support for actuator, support for controller.
Module IV
XMPP: - Basics, Support to a thing, additional layer of security, support to actuator,
support to camera, support to controller, Connecting it all together.
Module V
IoT Service Platform: - Selection of Platform, clayster platform, interfacing using
xmpp, creating control application. Protocol Gateways: - protocol bridging, abstraction
model, clayster abstraction model, CoAP gateway architecture. Security &
Interoperability: - Understanding risk, modes of attack, tools for security, need for
interoperability.
REFERENCES
1. Peter Waher, Learning Internet of Things, Packt Publishing, 2015, ISBN-13: 978-
1783553532
2. Adrian Mcewen,Cnik H assimally, Designing The Internet of Things, John Wiley
and Sons, 2015, ISBN-13:978-8126556861
3. ArsheepBahga, Vijay Madisetti, internet of Things: A Hands-On Approach, Orient
Blackswan Private Limited, 2015, ISBN-13:978-8173719547
4. Stephen Chin, James Weaver, Raspberry Pi with Java: Programming the Internet
of Things (IoT), McGraw-Hill Education, 2015, ISBN-13:978-0071842013
5. Madhur Bhargava, IoT Projects with Bluetooth Low Energy: Harness the power
of connected things, Packt Publishing, 2017, ISBN-13:978-1788399449
Note: In addition to the above, web references will be provided during the course
82
Elective 9: AUGMENTED REALITY FOR IOS APP DEVELOPMENT using
ARKit
Course Description:
This course is designed to teach students the fundamentals of developing augmented reality
applications for iOS devices using ARKit. Students will learn how to use ARKit to create 3D models,
place objects in the real world, and interact with them using the iOS device's camera and sensors. The
course will cover key concepts and techniques for designing and developing AR applications that are
functional, interactive, and visually compelling.
COURSE OUTCOMES
CO5 Apply user interface and user experience (UI/UX) design Apply
principles to create intuitive and user-friendly AR
applications.
CO1 3 3 3 2 1 2
CO2 2 2 2 2 1 2
CO3 3 2 2 1
CO4 3 2 1 3
CO5 3 2 1
83
Module 1
Introduction to augmented Reality, Augmented Reality applications, Introduction to ARKit and its
capabilities, Designing an Augmented Reality Experience, Setting up the development enviorment,
Creating an AR Project with SwiftUI, Building Your First ARKit App, Working with ARKit's
SceneKit and SpriteKit frameworks, Designing AR user interfaces and interaction models
Understanding ARKit’s Coordinate System, Placing Objects in AR, Interacting with AR Objects,
Using Gestures to Manipulate AR Objects, Implementing Object Occlusion
Collaborative Sessions, Image Recognition and Tracking, Plane Detection and Tracking, Motion
Tracking, Lighting and Shadows in AR
Introduction to 3D Modeling, Creating 3D Models for AR, Exporting 3D Models for AR, Importing
3D Models into ARKit
REFERENCES:
1. "Practical Augmented Reality: A Guide to the Technologies, Applications, and Human Factors
for AR and VR" by Steve Aukstakalnis and Joseph J. LaViola Jr.,Addison-Wesley
Professional,ISBN: 978-0134094236
2. "ARKit 2 by Tutorials: Creating Augmented Reality Apps in Swift 4.2" by Caroline Begbie,
Cristina Santos, et al.,Razeware LLC,ISBN: 978-1942878909
3. "Learning ARKit: Develop Augmented Reality Apps for iOS" by Joshua Newnham,
Apress,ISBN: 978-1484238250
84
ELECTIVE 10: CYBER SECURITY
Course Description:
This course provides an introduction to cyber security, covering the basic concepts, principles, and
practices of cyber security, and the common threats and vulnerabilities faced by organizations and
individuals. The course will cover topics such as network security, encryption, identity and access
management, risk management, and incident response.
COURSE OUTCOMES
CO4 Develop the skills to detect and respond to cyber security Analyse
incidents
CO1 1 3 2
CO2 2 2 2
CO3 2 2
CO4 3 2
CO5 2 2
85
Module 1: Introduction to Cyber Security
Overview of cyber security threats and vulnerabilities, Introduction to common cyber security
platforms and their security features, Overview of cyber security frameworks and regulations
Best practices for designing cyber security programs.
REFERENCES:
86
ELECTIVE 11: Introduction to Android Auto
Course Description
Familiarizes students with Android Auto SKD and its related technologies.
Course Outcomes
CO1 3 2 3
CO2 2 2 2
CO3 3 2 3
CO4 1 2 3 3
CO5 1 2 3
What is Android Auto?. Advantages of using Android Auto. Compatible devices and cars. Android
Auto app and setup. Android Auto UI overview.
87
Module 2: Navigation with Android Auto
Google Maps and Android Auto Navigation. Searching for destinations. Navigation settings and
options. Voice commands for navigation. Navigation tips and tricks.
Hands-free calling with Android Auto. Contact management. Making and receiving calls. Sending
and receiving text messages. Voice commands for communication
Playing music on Android Auto. Supported media apps. Creating playlists and managing music.
Podcasts and audiobooks on Android Auto. Voice commands for media playback.
Customizing Android Auto settings. Changing the wallpaper and display. Troubleshooting common
issues with Android Auto. Tips for optimizing Android Auto performance.
REFERENCES
1. Google, Android Auto User Guide, Google, 2022, ISBN: 978-1-63585-045-1.
2. Alan J. Pierce, Android Auto Development Essentials: Learn to Develop Android Auto
Applications Using Android Studio and Kotlin, Independently Published, 2021, ISBN: 979-
8746647982.
3. Paul Deitel, Harvey Deitel, and Alexander Wald, Android 11 App Development Essentials:
Android 11 for Android Studio and Kotlin Fundamentals, Pearson, 2021, ISBN: 978-0-13-
680197-0.
88
ELECTIVE 12: Game Development with Unity and C#
Course Description
This course introduces students to game development using Unity and C#. Students will learn how to
create 2D and 3D games, develop gameplay mechanics, implement sound and visual effects, and
deploy their games on various platforms.
Course Outcomes
CO1 2 2 1
CO2 2 2 2
CO3 2 2 3
CO4 2 2 2 2
CO5 2 2 2
89
Module 1: Introduction to Unity and C#
Overview of Unity and its features. Introduction to C# programming language. Unity's interface and
editor. Creating and manipulating game objects. Unity's scripting API.
Understanding game mechanics. Using C# scripts to create gameplay mechanics. User input and
control. Movement and physics. Collision detection and response.
Adding sound effects to games. Using Unity's audio system. Creating visual effects using particle
systems. Scripting visual effects.
Building and exporting games for different platforms. iOS and Android deployment. Web
deployment. PC deployment.
Debugging and troubleshooting techniques. Using Unity's debugging tools. Identifying and
resolving common issues.
REFERENCES:
2. Blackman, J. (2013). Unity 4 Fundamentals: Get Started at Making Games with Unity.
Peachpit Press. ISBN-10: 0321957725
3. Murray, J. (2016). C# Game Programming Cookbook for Unity 3D. Packt Publishing.
ISBN-10: 1785280550
4. Okita, H. (2017). Unity Virtual Reality Projects: Learn Virtual Reality by Developing
More than 10 Engaging Projects with Unity 2017, 2nd Edition. Packt Publishing. ISBN-
10: 1788478800
90
ELECTIVE 13: JAVA MIDDLEWARE USING SPRING BOOT
Course Description
This course is designed to teach students the fundamentals of building a Java middle tier using Spring
Boot. The course will cover topics such as RESTful web services, database connectivity, and security.
Students will gain hands-on experience building real-world applications using Spring Boot.
Course Outcomes
CO4 Design and implement RESTful web services using Spring Create
Boot
CO5 Build and deploy a complete Spring Boot application to a Create
production environment
CO1 3 1 1
CO2 3 1 2
CO3 3 2
CO4 2 2 3
CO5 2 3
91
Module 1: Introduction to Spring Boot
Introduction to Spring Framework and Spring Boot. Setting up a Spring Boot project: Build tool,
Create a project, Spring Initializer, configure dependencies, spring boot starter. Writing code:
annotations, bootstrapping your application. Spring Boot configuration: Configuring Server. Building
a simple Spring Boot application: Building package as war or jar.
Introduction to RESTful web services. Building a RESTful web service with Spring Boot: Define
endpoints, @RestController, @GetMapping, @PostMapping. Handler methods. Testing: Postman
or Curl. Handling errors and exceptions in RESTful web services: Custom error model,
@ExceptioHandler, @ControllerAdvice, Specific and Global Exceptions. Consuming RESTful web
services.
Introduction to Spring Data JPA. Configuring a data source: driver dependency, data source
properties, data source bean, JPA properties, entity manager, transaction manager. Creating and
manipulating entities with Spring Data JPA: entities and repositories. Writing custom queries with
Spring Data JPA: @Query, @NamedMethods, Native Queries, Query Methods.
Introduction to Spring Boot Actuator. Monitoring and managing Spring Boot applications with
Actuator: dependency and actuator endpoints. Deploying a Spring Boot application to a production
environment: Build, configure, deploy, start, monitor.
REFERENCES:
1. Craig Walls, "Spring Boot in Action", Manning Publications, 2016, ISBN-13: 978-
1617292545
2. Felipe Gutierrez, "Pro Spring Boot 2", Apress, 2018, ISBN-13: 978-1484236751
3. Alex Antonov, "Spring Boot Cookbook", Packt Publishing, 2016, ISBN-13: 978-1786464898
4. Mark Heckler, "Spring Boot: Up and Running", O'Reilly Media, 2018, ISBN-13: 978-
1491981470
5. Spring Boot official documentation: https://spring.io/projects/spring-boot
92