cisc 322
play

CISC 322 Software Architecture Lecture 21: Final Review Emad - PowerPoint PPT Presentation

CISC 322 Software Architecture Lecture 21: Final Review Emad Shihab Course Content Requirements Architectural Styles Architecture Recovery Design Patterns Project Scheduling Software Estimation Requirements


  1. CISC 322 Software Architecture Lecture 21: Final Review Emad Shihab

  2. Course Content ■ Requirements ■ Architectural Styles ■ Architecture Recovery ■ Design Patterns ■ Project Scheduling ■ Software Estimation

  3. Requirements

  4. Requirements ■ What are SW requirements? – Specification of what should be implemented ■ Where requirements come from? ■ What is the process used to come up with SW requirements? ■ Types of requirements? What are requirement specification documents? What do they contain?

  5. Quality Attributes ■ Often know as – ilities – Performance – Scalability – Modifiability – Availability – …

  6. Architectural Styles

  7. What we should know ■ Repository ■ Pipe-and-Filter ■ Object Oriented ■ Implicit Invocation ■ Layered ■ You should know advantages and disadvantages of each ■ How to apply these when architecting large software systems

  8. Architecture Recovery

  9. Architecture Terminology and Views ■ Conceptual vs. Concrete vs. Reference ■ For each type of architecture: – How do we derive it? – What is it used for? ■ Architectural views – Stakeholders – concerns

  10. Design Patterns

  11. Classifying Design Patterns ■ Structural : concern the process of assembling objects and classes ■ Behavioral : concern the interaction between classes or objects ■ Creational : concern the process of object creation

  12. Design Patterns Covered ■ Structural ■ When would you use – Adapter a specific pattern – Façade ■ The structure and – Composite participants of the ■ Behavioral pattern – Iterator – Template – Observer – Master-Slave ■ Creational – Singleton

  13. Project Scheduling

  14. Project Scheduling ■ Work Breakdown Structures – Phase based approach – Product based approach – Hybrid approach ■ Critical Path – How to determine it – Early, late start and finish – Activity slack

  15. Project Scheduling ■ PERT – Optimistic, average and pessimistic estimates ■ Probabilistic network analysis – How likely is a project to finish within X weeks ■ Project crashing

  16. Cost Estimation

  17. Cost Estimation ■ Software Productivity – LOC vs. FP vs. OP ■ Estimation techniques – Algorithmic cost modeling – Expert judgment – Estimation by analogy – Parkinson’s Law – Pricing to win

  18. Cost Estimation - COCOMO ■ COCOMO 81 ■ COCOMO II – Early prototyping model (base on OP) – Early design model (based on FP -> LOC) – Reuse model – Post-architecture level ■ COCOMO example

  19. Final Exam Logistics ■ Dec 14 @ 2:00 PM ■ Grant Hall ■ 3 hour exam ■ Bring your calculators ■ I will provide basic formulas, if needed

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend