Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS427 Topics in Software Engineering

Similar presentations


Presentation on theme: "CS427 Topics in Software Engineering"— Presentation transcript:

1 CS427 Topics in Software Engineering
Ralph Johnson: Federico Balaguer: CS427 - lecture 1

2 Topics Software architecture Architectural patterns
Enterprise architectures CS427 - lecture 1

3 Software Architecture
Software Architecture in Practice, by Len Bass, Paul Clements, and Rick Kazman Software Engineering Institute view on software architecture How architectures influence and are influenced by the organizations that create them and the systems they are part of. CS427 - lecture 1

4 Software Patterns Pattern-Oriented Software Architecture: A System of Patterns by Buschmann, Meunier, Rohnert, Sommerlad, Stal Architectural patterns, design patterns, and idioms Architectural patterns are similar to architectural styles in SAIP CS427 - lecture 1

5 Enterprise Architecture
Patterns of Enterprise Application Architecture by Martin Fowler et. al. How to build large OO business systems 51 patterns Applicable to Java, .NET, Smalltalk, etc. CS427 - lecture 1

6 Enterprise Solution Patterns Using Microsoft .NET
David Trowbridge, Gregor Holipe, James Newkirk, David Lavigne A lot like Patterns of Enterprise Application Architecture, but explaining how to apply to Microsoft platform MSFTPatternsV1.pdf CS427 - lecture 1

7 Schedule First week Next thirteen weeks presentations by me
Half-hour presentations by students on each chapter you must read each chapter BEFORE the talk project and essays discussion CS427 - lecture 1

8 Schedule for presentations
At least a week before presentations, the presenter will post a few questions At least a day before presentations, each person will answers to the presenter, no more than a page in length. Presenters can use this to determine what to talk about. Presenters grade answers CS427 - lecture 1

9 Example Questions SAIP 2: Compare and contrast software architecture with building architecture. SAIP3: What is an architectural question you have about the A-7E that the chapter did not answer? SAIP 4: Which qualities are most important? Which one is hardest to understand? CS427 - lecture 1

10 Features of good questions
Answers can be short Answers don’t require graphics Must read chapter to answer questions Answers let presenter know which part of the chapter should be emphasized CS427 - lecture 1

11 Grades on Answers 3 - Outstanding answer
2 - Good answer, read the chapter and generally understood it 1 - Did you read the chapter? If so, you didn’t understand it very well Can miss 5 answers CS427 - lecture 1

12 Project Work in groups of 4-8 people.
Build an electronic stock exchange using patterns in the class. J2EE, .NET, or Smalltalk Compare the resulting systems CS427 - lecture 1

13 Grade 25% - project 20% - presentation 15% - answers on chapters
20% - essays 10% - pattern 5% - course summary 5% - class participation CS427 - lecture 1

14 Patterns Things that repeat Architectural patterns
styles like “three tier client/server” designs like “parser/lexer/symbol table/analysis/code generation” processes like “architect also implements” CS427 - lecture 1

15 Patterns Best practices: copy other people
Techniques: enlarge your tool box Vocabulary: language for discussing architecture CS427 - lecture 1

16 Patterns Christopher Alexander - architecture theory Contributions
The Timeless Way of Building A Pattern Language Contributions balance of forces problem/solution pattern language piecemeal growth CS427 - lecture 1

17 Design Patterns Design Patterns: Elements of Reusable Software by Gamma, Helms, Johnson, and Vlissides First book on patterns of software Low-level object-oriented patterns CS427 - lecture 1

18 Finding patterns Look at things Notice similarities
Why does this similarity exist? What problem does this technique solve? CS427 - lecture 1

19 Assignment Go to class wiki (wiki.cs.uiuc.edu/cs427) and make a home page for yourself. Put your address on it. Add a link to it from the class list. Decide which chapter you would like to present. Start thinking about a project. CS427 - lecture 1


Download ppt "CS427 Topics in Software Engineering"

Similar presentations


Ads by Google