1 UIS702C: Object Oriented Modeling and Design (4-0-0)(4 Credits, 52 Hours) Course Objectives: 1. To understand the object oriented concepts for designing object oriented models. 2. To understand the use of UML (Unified Modeling Language) for object oriented analysis and design. 3. To describe the step by step object oriented methodology of software development from problem statement through analysis, system design, and class design. 4. To understand the issues for implementing object oriented designs or models. 5. To understand the concept of different patterns for constructing software architectures through object oriented models. 6. To understand the problems, communicating with application experts, modeling enterprises, preparing documentation, and designing programs by using object oriented models. Course Outcomes: 1. Demonstrate the ability to apply the knowledge of object oriented concepts for solving system modeling and design problems. 2. Design and implement object oriented models using UML appropriate notations. 3. Ability to apply the concepts of object oriented methodologies to design cleaner softwares from the problem statement. 4. Apply the concept of domain and application analysis for designing UML Diagrams. 5. Comprehend the concept of architectural design approaches for system design and implementation issues for object oriented models. 6. Illustrate the concept of patterns for constructing software architectures. Topic Outcomes: 1. Exhibit the ability to apply the knowledge of Object Oriented Concepts to system analysis and design. 2. Illustrate the concepts of object oriented analysis and design through object oriented models. 3. Demonstrate the concept of modeling as a design technique for solving real time problems.
27
Embed
UIS702C: Object Oriented Modeling and Design (4-0-0)(4 Credits, … sem.pdf · To understand the use of UML (Unified Modeling Language) for object oriented analysis and design. 3.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
UIS702C: Object Oriented Modeling and Design
(4-0-0)(4 Credits, 52 Hours)
Course Objectives:
1. To understand the object oriented concepts for designing object oriented models.
2. To understand the use of UML (Unified Modeling Language) for object oriented analysis and design.
3. To describe the step by step object oriented methodology of software development from problem statement through analysis, system design, and class design.
4. To understand the issues for implementing object oriented designs or models.
5. To understand the concept of different patterns for constructing software architectures through object oriented models.
6. To understand the problems, communicating with application experts, modeling enterprises, preparing documentation, and designing programs by using object oriented models.
Course Outcomes:
1. Demonstrate the ability to apply the knowledge of object oriented concepts for solving system modeling and design problems.
2. Design and implement object oriented models using UML appropriate notations.
3. Ability to apply the concepts of object oriented methodologies to design cleaner softwares from the problem statement.
4. Apply the concept of domain and application analysis for designing UML Diagrams.
5. Comprehend the concept of architectural design approaches for system design and implementation issues for object oriented models.
6. Illustrate the concept of patterns for constructing software architectures.
Topic Outcomes:
1. Exhibit the ability to apply the knowledge of Object Oriented Concepts to system analysis and design.
2. Illustrate the concepts of object oriented analysis and design through object oriented models.
3. Demonstrate the concept of modeling as a design technique for solving real time problems.
2
4. Analyze the problem scenario and identify classes/ objects and their properties, associations, generalization, and inheritance in class
model.
5. Demonstrate the capability to design and implement the class models using UML appropriate notations.
6. Illustrate the types of event and state diagram behaviors for constructing state diagram.
7. Explain the concept of nested states and diagrams, signal generalization, and concurrency in state modeling.
8. Analyze and construct the state models for solving real time problems using UML notations.
9. Illustrate the knowledge of interaction models and their relationships for developing project document.
10. Demonstrate the ability to apply the knowledge of software development stages and life cycles for developing software’s.
11. Illustrate the system conception through problem statement for solving real time problems.
12. Demonstrate the knowledge of domain analysis for keeping right requirements and domain classes for implementing projects.
13. Illustrate the state and interaction models through domain analysis to design and implementation.
14. Demonstrate the ability to apply the knowledge of application analysis for solving problems.
15. Illustrate the system design or system architectures approaches in terms of performance, data storage, control strategies, global
resources, and software control strategies.
16. Demonstrate the ability to apply the knowledge of architectures for solving the application problems through system design.
17. Exhibit the ability to apply the concept of class design for placing correct class models in software development.
18. Demonstrate the knowledge of algorithms, refactoring operations, optimizing classes, and adjusting inheritance during class design.
19. Apply the knowledge of implementation of object oriented modeling for designing programs, relational databases, and document
preparation.
20. Demonstrate the concept of Testing to measure quality of software.
21. Identify and use the appropriate patterns for solving problems.
22. Analyze the different communication patterns through object oriented models.
3
Mapping (Co-relations) of CO’s with PO’s
Title of the Subject : Object Oriented Modeling
and Design
Sem: 7
Code: UIS702C
Credits:04
Sl.
No.
Course Outcomes IS –
PO -
1
IS –
PO-
2
IS –
PO-
3
IS -
PO-
4
IS -
PO-
5
IS -
PO-6
IS -
PO-
7
IS -
PO-
8
IS -
PO-
9
IS -
PO_1
0
IS -
PO_1
1
IS -
PO_1
2
1
Demonstrate the ability to apply the knowledge of
object oriented concepts for solving system
modeling and design problems.
- - - 3 3 - - - - 1
2
2
2 Design and implement object oriented models using
UML appropriate notations. - - - 3 3 - - - - 3
2
1
3
Ability to apply the concepts of object oriented
methodologies to design cleaner softwares from the
problem statement.
- - - 2 3 - - - - 3
3
2
4 Apply the concept of domain and application analysis
for designing UML Diagrams. - - - 3 3 - - - - 3
3
2
5
Comprehend the concept of architectural design approaches for system design and implementation issues for object oriented models.
- - - 3 3 - - - - 3
3
2
6 Illustrate the concept of patterns for constructing
software architectures. - - - 2 2 - - - - 3
2
1
4
UNIT - I
INTRODUCTION, MODELING CONCEPTS, CLASS MODELING: What is Object Orientation? What is OO development? OO themes; Evidence for usefulness of OO development; OO modeling history. Modeling as Design Technique: Modeling; abstraction; the three models. Class Modeling: Object and class concepts; Link and associations concepts; Generalization and inheritance; A sample class model; Navigation of class models; Practical tips. Advanced Class Modeling: Advanced object and class concepts; Association ends; N-ary associations; Aggregation; Abstract classes; Multiple inheritance; Metadata; Reification; Constraints; Derived data; Packages; Practical tips. 12 Hours
UNIT - II
STATE MODELING, ADVANCED STATE MODELING, INTERACTION MODELING, PROCESS OVERVIEW: State Modeling: Events, States, Transitions and Conditions; State diagrams; State diagram behavior; Practical tips.Advanced State Modeling: Nested state diagrams; Nested states; Signal generalization; Concurrency; A sample state model; Relation of class and state models; Practical tips.Interaction Modeling: Use case models; Sequence models; Activity models. Use case relationships; Procedural sequence models; Special constructs for activity models. Process Overview: Development stages; Development life cycle 13 Hours
UNIT - III
SYSTEM CONCEPTION, DOMAIN ANALYSIS, APPLICATION ANALYSIS, SYSTEM DESIGN - 1: System Conception: Devising a system concept; Elaborating a concept; Preparing a problem statement. Domain Analysis: Overview of analysis; Domain class model; Domain state model; Domain interaction model; Iterating the analysis. Application Analysis: Application interaction model; Application class model; Application state model; Adding operations. System Design -1: Overview of system design; Estimating performance; Making a reuse plan; Breaking a system in to sub-systems; Identifying concurrency; Allocation of sub-systems; Management of data storage; Handling global resources; Choosing a software control strategy. 13 Hours
UNIT - IV
SYSTEM DESIGN - 2, CLASS DESIGN, IMPLEMENTATION MODELING AND DESIGN PATTERNS: System Design -2: Handling boundary conditions; Setting the trade-off priorities; Common architectural styles; Architecture of the ATM system as the example. Class Design: Overview of class design; Bridging the gap; Realizing use cases; Designing algorithms; Recursing downwards, Refactoring; Design optimization; Reification of behavior; Adjustment of inheritance; Organizing a class design; ATM example.
5
Implementation Modeling: Overview of implementation; Fine-tuning classes; Fine-tuning generalizations; Realizing associations; Testing. Design patterns: What is a pattern and what makes a pattern? Pattern categories; Relationships between patterns; Pattern description. Communication Patterns: Forwarder-Receiver; Client-Dispatcher-Server; Publisher-Subscriber. 14 Hours Text Books : 1. Michael. Blaha, James. Rumbaugh “Object-Oriented Modeling and Design
with UML”, 2nd Edition, Pearson Education, 2005. 2. Frank. Buschmann, Regine. Meunier, Hans. Rohnert, Peter. Sommerlad,
Michael. Stal, “Pattern Oriented Software Architecture A System of Patterns”, Volume.1, John Wiley and Sons, 2008.
Reference
Books
: 1. Ali. Bahrami, “Object Oriented Systems Development”, McGraw-Hill, 2008. 2. Grady. Booch “Object-Oriented Analysis and Design with Applications”, 3rd
Course Name : Linux Internals Course Code: UIS035E
Course Credits : 03 Hours/week : 03
Course Instructor: Dr. Bharati. M. Reshmi
Course Objectives:
Study will concern all of Linux subsystems: processes, threads and scheduling; memory management; interrupt handling; device drivers; file system and block layer; synchronization and time management.
In addition, specific techniques for programming in that particular environment that is the kernel will be studied.
16
Mapping (Co-relations) of COs with POs
S.N Course Outcomes
IS –
PO
-1
IS –
PO
-2
IS –
PO
-3
IS -
PO
-4
IS -
PO
-5
IS -
PO
-6
IS -
PO
-7
IS -
PO
-8
IS -
PO
-9
IS -
PO
_10
IS -
PO
_11
IS -
PO
_12
Tota
l
HML’s
CO-1
Explain the ability to comprehend classic Unix
and Linix kernels, building Linux kernel.
03
03
02
08
CO-2
Describe the role, functions and
implementation of processes, threads and
scheduling.
03
03
02
08
CO-3
Discuss the role, functions and specific
programming techniques used to implement
system calls and interrupt handing inside the
kernel. 03
03
02
08
CO-4 Describe the functionality, architecture and
the main characteristic of implementation of
synchronization and timer management.
17
03
03
02 08
CO-5 Discuss concept of memory management,
virtual file system and block I/O layer and their
design and implementation.
03
03
02
08
C0-6
Analyze correct and well documented
advanced C code using low level UNIX/Linux
system calls and know where to look for
platform specific programming information
and be familiar with reading and using man
page info as well other standards reference
materials
03
03
02
02
10
18
UIS035E - Linux Internals
UNIT I (10 hrs)
Introduction to Linux kernel: History of Unix, Introduction to Linux, Overview of operating systems and
kernels, Linux versus classic Unix kernels, Linux kernel versions, The Linux kernel development
community.
Getting started with the kernel: Obtaining the kernel source, the kernel source tree, building the
kernel.
Process management: The process, , process descriptor and the task structure, process creation, the
Linux implementation of threads, process termination.
Process Scheduling: Multitasking, Linux’s Process Scheduler , The Linux Scheduling Algorithm , The Linux
Scheduling Implementation, Process Selection, The Scheduler Entry Point , Sleeping and Waking
UpPreemption and Context Switching, Real-Time Scheduling Policies , Scheduler-Related System Calls.
UNIT II (10 hrs)
System calls: Communicating with the Kernel , APIs, POSIX, and the C Library,Syscalls, System Call
Handler, System Call Implementation, System Call Context.
Interrupts and Interrupt Handlers: Interrupts, Interrupt Handlers, Top Halves Versus Bottom Halves,
Registering an Interrupt Handler, Writing an Interrupt Handler, Interrupt Context , Implementing
Interrupt Handlers, /proc/interrupts ,
Interrupt Control.
Bottom Halves and Deferring Work: Bottom Halves, Softirqs, Tasklets, Work Queues.
UNIT III (10 hrs)
An Introduction to Kernel Synchronization: Critical Regions and Race Conditions, Locking, Deadlocks,