Software Engineering & Architecture

Paper Code: 
CSC-144(A)
Credits: 
4
Objective: 

1. To appreciate the emerging techniques in Software Engineering.

2. To understand the concept of Software Architecture.

3. Identify the role of Software Architecture in Software Engineering

12.00
Unit I: 

Review of Software Engineering Basics: Life cycle models, Requirement Analysis and specification, Formal requirements specification, System Analysis.

Fundamental issues in Software Design: Goodness of design, cohesions, coupling.

Function & Object oriented design: Structured design. Overview of object –oriented concepts, UML, CBSE.

12.00
Unit II: 

Emerging Web technologies: Web engineering: attributes of web based system and application, web applications engineering layers, web engineering process.

Software re-engineering, s/w maintenance, process model.

Security Engineering: security concepts, risk management, design and system survivability.

 

12.00
Unit III: 

Emerging technologies: Service oriented software engineering, services as reusable components, engineering and s/w development with services.

Aspect oriented software development: The separations of concerns, aspects, join points & point cuts, S/W Engineering with aspects, Agile methods.

 

12.00
Unit IV: 

Introduction to Software Architecture:  Architecture in the Software Development Life Cycle, Future of software architecture, the role of Software Architecture and Architects in Software Engineering

Elements of Software Architecture: Components, Connectors, Data.

Creating Architecture: Understanding Quality Attributes, Achieving qualities, creating the architecture, Case Study.

 

12.00
Unit V: 

Software Architectural Styles: Pipes and Filters, data abstraction and object oriented organization, Event based, implicit invocation, Layered systems, Repositories, Interpreters, Process control, Other familiar Architectures, Heterogeneous Architectures, Reconstructing Software Architecture.

 

ESSENTIAL READINGS: 
  1. Mary Shaw, David Garlan,” Software Architecture – Perspectives on an emerging discipline”, PHI, 2006.
  2. Len Bass, Paul Clements, Rick Kazman,” Software Architecture in Practice”, Pearson Education, 2003.
  3. Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy,” Software Architecture: Foundations, Theory, and Practice”, John Wiley & Sons, Inc, 2009.
  4. Ian Somerville, “Software Engineering”, Addison Wesley, 8th Edition, 2006.
  5. C.Easteal and G.Davies,” Software Engineering Analysis and Design”, Tata McGraw Hill, 6th Edition, 2001.
  6. Pressman,” Software Engineering –A Practitioner’s Approach”, 6th Edition, 2009.
  7. Richard Fairley,” Software Engineering Concepts”, Tata McGraw Hill, 2001.
  8. Pankaj Jalote,” An Integrated Approach to Software engineering”, Narosa Publication, Third Edition, 2010.

 

Academic Year: