SOFTWARE ENGINEERING

Please fill the Google form for Home Assignments by 12/9/2021 till 5 pm .

Topic finalization will be done by First come first serve basis.

Reserve your topic as soon as possible.

Only one member has to fill the form.



Software Engineering Paradigms


  1. Software Engineering Paradigms: Overview of Software Engineering, Software Process Framework, Traditional Process Models

  2. Process Models: Code-and-Fix, Waterfall Model, Rapid Application Development, Incremental Models, Evolutionary Models, Iterative Development

  3. The Unified Process, Cleanroom Methodology, Component-Based Software Engineering, CMMI, Software Engineering Principles and Practices

  4. Requirements Engineering Tasks, Requirement Elicitation Techniques, Software Requirements: Functional, Non- Functional, Domain Engineering activities

  5. Requirements Characteristics and Characterization, Eliminating Requirement Ambiguities, Resolution and Conflict Identification, Requirement Qualities, Requirement Specification

  6. Requirement Traceability, Requirement Prioritization, Relationship of Requirement Engineering to other Framework Activities

  7. System Scope Determination and Feasibility Study, Statement of Work Generation, Requirements Verification and Validation, Requirement Maturity, Technical Reviews, Stakeholder Management



Overview of Agile Methodology

  1. Overview of Agile Methodology: Introducing Agile in Practice, Landscape of Agile and Planned Methods

  2. Agile Challenges in Practice, Composite Agile Method and Strategy (CAMS), Composite Agile and IT: Enablement, Development, and Maintenance

  3. Collaborative- Agile Business Management, Business Analysis and Composite Agile

  4. CAMS Project Management and ICT Governance, Agile Adoption in Organizations

  5. Time-Boxing, Kanban, and Theory of Constraints, Lean IT, Pair Programming

  6. Extreme Programming, DSDM, User Requirements in the context of Agile



The Scrum


  1. The Scrum: Scrum Origins: What Is Scrum? Scrum Origins, Why Scrum?

  2. Scrum Framework, Agile Principles, Overview, Variability and Uncertainty

  3. Sprints., Requirements and User Stories, Product Backlog, Estimation and Velocity

  4. Technical Debt, Roles: Product Owner, Scrum Master, Development Team, Scrum Team Structures, Managers

  5. Planning: Scrum Planning Principles, Portfolio Planning

  6. Envisioning (Product Planning), Release Planning (Longer-Term Planning)

  7. Planning Sprinting: Sprint, Sprint Execution, Sprint Review, Sprint Retrospective, Scrum and Service Industry


System Behavior Specification:


  1. System Behavior Specification: Static Behavior: Use Cases, Use Case Diagram Components, Use Case Diagram

  2. Actor Generalization, Include and Extend, Template for Use Case Narrative

  3. Building Domain Model, and capturing system behavior in use cases, Use cases and User Stories

  4. Dynamic Behavior: Sequence diagrams, object lifelines and message types, Modeling collections multi objects, Refining sequence diagrams

  5. Collaboration diagrams, States, events and actions, Nested machines and concurrency, Modifying the object model to facilitate states

  6. Modeling methods with activity diagrams, Activity Diagrams: Decisions and Merges, Synchronization, Iteration, Partitions, Parameters and Pins, Expansion Regions

  7. Swimlanes, concurrency and synchronization, Communication Diagram, Interaction Overview Diagrams, Timing Diagrams


Software Architecture Design and Configuration Management

  1. Analysis Concepts, Analysis Methods, The Design Model, Design Qualities, Characteristics of Design activities, Design Principles, Cohesion and Coupling

  2. Software Architecture Vs Software Design, Software Reuse, Design Heuristics, User Interface Design: Rules, User Interface Analysis and Steps in Interface Design, Design Evaluation, Source Code Management

  3. Foundations of Software Architecture, Reference Architectures, Architectural Design: Software Architecture, Data Design and Architectural Design, Views, Viewpoints, Perspectives

  4. Conceptual Architecture View, Module Architecture View, Execution Architecture View, Code Architecture View

  5. Architecture styles: data-flow, object oriented, layered, data-centered, call and return, Repository, Pipe-Filter, Peer-Peer, Publish-Subscribe, Client-Server, Two-Tier, Three-Tier, N-Tier

  6. Heterogeneity in Architecture, Categorizing classes: entity, boundary and control , Modeling associations and collections, Preserving referential integrity, Achieving reusability

  7. Reuse through delegation, Identifying and using service packages, Improving reuse with design Packages and interfaces: Distinguishing between classes/interfaces, Exposing class and package interfaces.


Project Management Principles and Design Patterns:,


  1. Design Patterns: Introduction to Design Pattern, Describing Design Patterns, Catalogue of Design Patterns Creational Patterns

  2. Abstract Factory, Builder, Factory Method, Prototype, Singleton, Structural Patterns: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy

  3. Behavioral Patterns: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy

  4. Template Method, Visitor, Antipatterns, Applications of Design Patterns, Project Management Activities

  5. Structures and Frameworks, Teamwork, Leadership, Project Planning, Project Scheduling, Risk Analysis

  6. Introduction to Function Points, Empirical Estimation, COCOMO II model.