OOSD Syllabus PDF

Title OOSD Syllabus
Author Anonymous User
Course OBJECT ORIENTED SOFTWARE ENGINEERING
Institution Vellore Institute of Technology
Pages 10
File Size 273.5 KB
File Type PDF
Total Downloads 58
Total Views 128

Summary

Syllabus...


Description

Course code CSE4028 Pre-requisite

Object Oriented Software Development CSE3001 – Software Engineering

L T P J C 2 0 2 4 4 Syllabus version

Course Objectives (Cobs): 1. To teach the student the essential and fundamental aspects of object oriented concepts along with their applications 2. To teach the student to analyse, design and implement object-oriented software systems by means of a mid-sized project. 3. To learn software development life cycle for Object-Oriented solutions for Real-World Problems. 4. To learn various modelling techniques to model different perspectives of object-oriented software design (UML). 5. Students will learn the application of software architectures in various settings, including the application of design patterns, frameworks and toolkits Expected Course Outcome (Cos): On completion of this course, the student will be able to 1. Identify and select suitable Process Model for the given problem and have a thorough understanding of various Software Life Cycle models 2. Analyse the requirements of a given software project and produce requirement specifications (SRS). 3. Design the Usecase Diagrams, Sequence Diagrams, Class Diagram, State Diagrams, and Deployment Diagrams by applying the UML Standards. 4. Apply the knowledge of object-oriented modelling concepts and design methods with a clear emphasis on Unified Modelling Language (UML) for a moderately realistic object oriented system. 5. Apply various software architectures, including frameworks and design patterns, when developing software projects. 6. Apply the various Testing, Deployment and Configuration Management strategies for their projects. Student Learning Outcomes (SLO): Programme Outcomes (PO):

2,12,17 1,2,5,6,7,9

Module:1

INTRODUCTION TO SOFTWARE 4 hours SLO: 2 DEVELOPMENT The Challenges of Software Development – An Engineering Perspective – Object-Orientation - Iterative Development Processes Module:2 PROCESS MODELS 3 hours SLO: 2 Life cycle models – Unified Process – Iterative and Incremental – Workflow – Agile Processes Module:3

MODELING – OO SYSTEMS

4 hours

SLO: 2

Requirements Elicitation – Use Cases – Unified Modeling Language, Tools Module:4 ANALYSIS 4 hours SLO:12 Analysis Object Model (Domain Model) – Analysis Dynamic Models – Non-functional requirements – Analysis Patterns. Module:5 DESIGN 4 hours SLO: 2 System Design, Architecture – Design Principles - Design Patterns – Dynamic Object Modeling – Static Object Modeling – Interface Specification – Object Constraint Language Module:6 DESIGN PATTERNS 5 hours SLO: 12 Introduction – Design Patterns in Smalltalk MVC – Describing Design patterns –Catalog of Design Patterns- Organizing the Catalog –How Design Patterns Solve Design Problems – How to select a Design Pattern – How to use a Design Pattern – What makes a pattern? – Pattern Categories – Relationship between Patterns – Patterns and Software Architecture 4 hours IMPLEMENTATION, DEPLOYMENT AND SLO: 12 MAINTENANCE Mapping Design (Models) to Code – Testing - Usability – Deployment – Configuration Management – Maintenance Module:7

Module:8 RECENT TRENDS Recent Trends in Object oriented Software Development Total Lecture hours:

2 hours

30 hours

Text Book(s) 1. Carol Britton and Jill Doake, A Student Guide to Object-Oriented Development (Oxford: Elsevier, 2005). Reference Books 1. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, ―Design patterns: Elements of Reusable object-oriented software‖, Addison-Wesley, 1995. 2 Bernd Bruegge, Alan H Dutoit, Object-Oriented Software Engineering, 2nd ed, Pearson Education, 2004. 3.

Ivar Jacobson, Grady Booch, James Rumbaugh, The Unified Software Development Process, Pearson Education, 1999.

4.

Alistair Cockburn, Agile Software Development 2nd ed, Pearson Education, 2007.

Mode of Evaluation: CAT 1, CAT 2 & FAT List of Challenging Experiments (Indicative) SLO: 1,5,6,9,13,17 1. Lab (Indicative List of Experiments (in the areas of ) 1 Introduction and project definition 2 Software requirements Specification 3 Introduction to UML and use case diagrams 4 System modelling (DFD and ER) 5 OO analysis: discovering classes 6 Software Design: software architecture and object oriented design 7 Flow of events and activity diagram 8 State Transition Diagram 9 Component and deployment diagrams 10 Software testing (RFT,SCM Tools)

PO: 1,3,5,7,9 30 hours

Project # Generally a team project [5 to 10 members] 60 # Concepts studied in XXXX should have been used [Non-Contact # Down to earth application and innovative idea should have been attempted hrs] # Report in Digital format with all drawings using software package to be submitted. [Ex. 1.Internet banking 2. Implementation and testing of Insurance Project] # Assessment on a continuous basis with a min of 3 reviews. Projects may be given as group projects The following is the sample project that can be given to students to be implemented Projects may be given as group projects 1. Implementing E Learning Portal 2. Implementing Students Portal for a University 3. Implementing ERP Systems 4. Requirements and planning for Health applications 5. Maintenance and testing for Banking Applications 6. Developing Mobile applications by using OO concepts Mode of evaluation: Review 1, Review 2 & FAT Recommended by Board of Studies DD-MM-YYYY Approved by Academic Council No. xx Date

DD-MM-YYYY

CO-PO MAPPING:

COs CO1 CO2 CO3 CO4 CO5 CO6

PO1 * -

PO2 * * *

PO5 * * -

PO6 * * * -

PO7 * -

PO9 * *

Knowledge Areas that contain topics and learning outcomes covered in the course

Knowledge Area

Total Hours of Coverage

Software Development Fundamentals

12

Programming Languages (PL)

9

Software Engineering (SE)

9

Body of Knowledge coverage

[List the Knowledge Units covered in whole or in part in the course. If in part, please indicate which topics and/or learning outcomes are covered. For those not covered, you might want to indicate whether they are covered in another course or not covered in your curriculum at all. This section will likely be the most time-consuming to complete, but is the most valuable for educators planning to adopt the CS2013 guidelines.]

KA

Knowledge Unit

Topics Covered

Hours

SDF

Algorithm Design

Fundamental design concepts and principles

4

SDF

Fundamental Data Structures

Abstract data types and their implementations, References and aliasing, Linked lists, Strategies for choosing the appropriate data structure

4

SDF

Development Methods

Program Correctness, Modern Programming Environments, Debugging Strategies

4

PL

Object-Oriented Programming

Object-oriented design, Definition of classes: fields, 9 methods, and constructors, Subclasses, inheritance, and method overriding, Dynamic dispatch: definition of method-call, Subtyping, Object-oriented idioms for encapsulation, Using collection classes, iterators, and other common library components

SE

Software Design

Design Patterns

9

Total hours

30

Where does the course fit in the curriculum? [In what year do students commonly take the course? Is it compulsory? Does it have prerequisites, required following courses? How many students take it?]

This course is a   

Elective Course. Suitable from 4th semester onwards. Knowledge of any one programming language is essential.

What is covered in the course?

Software Development models, Analysis and Design. Design Patterns: Decorator Design Patterns: Template Method Implementation and Deployment of software in JAVA or .Net

Part 1: Introduction to Software Development It introduces what is Software Development and its life cycle, challenges in Software Development and Architectures.

Part II: Software Analysis and Design This section covers the need of Analysis and Desing, hand-on exposure to Analyze Requirements and to Design a Software by using appropriate tools Part III: Implementation and Deployment This section deals implementing and deploying the software in Clients place and risks involved in the same. It also focuses about the maintenance phase of a software. What is the format of the course? [Is it face to face, online or blended? How many contact hours? Does it have lectures, lab sessions, discussion classes?]

This Course is designed with 100 minutes of in-classroom sessions per week, 60 minutes of video/reading instructional material per week, 100 minutes of lab hours per week, as well as 200 minutes of non-contact time spent on implementing course related project. Generally this course should have the combination of lectures, in-class discussion, case studies, guest-lectures, mandatory off-class reading material, quizzes.

How are students assessed? [What type, and number, of assignments are students are expected to do? (papers, problem sets, programming projects, etc.). How long do you expect students to spend on completing assessed work?]



Students are assessed on a combination group activities, classroom discussion, projects, and continuous, final assessment tests.



Additional weightage will be given based on their rank in crowd sourced projects/ Kaggle like competitions.



Students can earn additional weightage based on certificate of completion of a related MOOC course.

Additional topics [List notable topics covered in the course that you do not find in the CS2013 Body of Knowledge]

Other comments [optional]

Session wise plan Student Learning Outcomes Covered: 2,12,17

Class Hour

Topic Covered

levels of mastery

Reference Book

2

The Challenges of Software Development

Usage

1

1

An Engineering Perspective – ObjectOrientation

Usage

1,

1

Iterative Development Usage Processes

1

1

Life cycle models

Usage

1

1

Unified Process – Iterative and Incremental

Familiarity

1

1

Usage

1

Familiarity

1

Usage

1

Usage

1

Usage

1

2

Workflow – Agile Processes Requirements Elicitation – Use Cases Unified Modeling Language, Tools Analysis Object Model (Domain Model) Analysis Dynamic Models – Nonfunctional requirements Analysis Patterns

Usage

1

2

System Design,

2

2 1

1

Lab Hour

1,2,3

Remarks

1

1

Architecture – Design Principles - Design Patterns Dynamic Object Assessment Modeling – Static Object Modeling Interface Specification Usage – Object Constraint Language

1,2,3

4

2

Introduction – Design Patterns in Smalltalk MVC – Describing Design patterns – Catalog of Design Patterns- Organizing the Catalog

Usage

4

2

How Design Patterns Usage Solve Design Problems – How to select a Design Pattern – How to use a Design Pattern

4

1

What makes a pattern? – Pattern Categories – Relationship between Patterns – Patterns and Software Architecture

1

Mapping Design (Models) to Code – Testing

1

Usability – Deployment –

2

Configuration Management – Maintenance

2 30 Hours (2 Credit hours /week  15 Weeks schedule)

Recent Trends 30 Hours (2 Credit hours / week )...


Similar Free PDFs
OOSD Syllabus
  • 10 Pages
Syllabus
  • 10 Pages
Syllabus
  • 17 Pages
Syllabus
  • 10 Pages
Syllabus
  • 7 Pages
Syllabus
  • 3 Pages
Syllabus
  • 11 Pages
Syllabus
  • 7 Pages
Syllabus
  • 6 Pages
Syllabus
  • 12 Pages
Syllabus
  • 4 Pages
Syllabus
  • 2 Pages
Syllabus
  • 4 Pages
Syllabus
  • 3 Pages
Syllabus
  • 2 Pages