Software Engineering - PowerPoint PPT Presentation

software engineering n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Software Engineering PowerPoint Presentation
Download Presentation
Software Engineering

play fullscreen
1 / 15
Software Engineering
151 Views
Download Presentation
charo
Download Presentation

Software Engineering

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Software Engineering COSC 4460 Class 4 Cherry Owen

  2. Chapter 4An Architecture-Centric Process • The architecture is the foundation of the system. • The architecture shows various views of the system. • The architecture leaves out details which are not necessary to understand the overall system.

  3. Purpose of the Architecture • Understand the system at a high level • Organize the development • Foster reuse • Evolve the system

  4. Architectural Baseline • baseline is released at the end of the elaboration phase • consists of a set of approved artifacts • represents an agreed upon basis for further development • can be changed only through a formal procedure such as configuration management or change management

  5. What Makes Up the Architecture? • Deployment diagram • Significant subsystems • Relationships of significant subsystems • Most significant classes within each subsystem • Interfaces, collaborations and dependencies • Screen and report design (user interface)

  6. Use Cases and Architecture • Find out what the user needs and wants to do with the system. • Write preliminary use cases. • Consider the architecture. • Refine and add to the use cases.

  7. A Skeleton of a System • The architecture is the big picture of how we will put things together, so everybody has a guideline to know where their part fits in.

  8. Defining an Architecture • Look at the architecture for a general application of the type you are doing. • Pick nodes, operating systems, middleware, database, legacy systems, standards and policies, and do a deployment model. • Pick the most architecturally significant use cases (what is significant depends on the goal of the application.) • Capture requirements, analysis, design, implement and test for the selected use cases.

  9. Adaptability • The use cases must be adapted to the architecture already in place. • We must know what already exists and fit the new use cases into it. • Therefore, an architecture must allow for easily adding functionality with minimal effect on the rest of the system.

  10. Iterations • Iterate through the workflows several times until at the end of the elaboration phase you have a baseline architecture. • This will be a skeleton of the system with a few software "muscles." • The baseline is a working system that covers the essential functionality of the system according to user priorities. • The baseline also addresses the most serious risks.

  11. Feedback • The operational architecture baseline provides a working demonstration to which workers (developers, testers, users) can provide feedback.

  12. Architecture Patterns • A pattern is a solution to a commonly occurring design problem. • Often patterns are presented using standard documentation templates. • The templates assign a name to a pattern. • They present a summary of the problem. • Some architectural patterns: • Layers, Pipes & Filters, Broker

  13. Issues in Architecture • high performance • high quality • highly functional • testable • user-friendly • reliable • highly available • accurate • expandable • change-tolerant • robust • maintainable • portable • secure • safe • economical

  14. Experience shows that less than 10% of the classes in a system are relevant to the architecture.

  15. Architect Qualifications • Know the domain in which she works. • Must work knowledgeable with all stakeholders. • Has knowledge of software process and all parts of software development. • Is not the project manager, but has total management support.