Software Design Architecture Comparison
(Difference between revisions)
m |
(pasted in background reading (from research)) |
||
Line 19: | Line 19: | ||
Include helpful hints to faculty here. | Include helpful hints to faculty here. | ||
+ | |||
+ | |||
+ | |||
+ | Background reading: | ||
+ | * https://en.wikipedia.org/wiki/Software_design | ||
+ | * https://en.wikipedia.org/wiki/Software_design_pattern | ||
+ | * http://www.openu.ac.il/personal_sites/download/galezer/SoftwareDesign.pdf | ||
+ | ** This paper describes how they had to get students to re-think how they write code. The students needed to think more outside of the syntax of the actual language, and more toward software design / repeatable design patterns that dont depend on the coding language. | ||
+ | ** I am looking at this paper and thinking about the various tasks or activities that they show were done in their classroom. I may be able to use these ideas. | ||
+ | ** “It should be re-emphasized that practical programming does not play a central role in the unit. At the end of the year students and teachers realized that programming in itself is not the main goal.” | ||
+ | * http://stackoverflow.com/questions/268231/how-to-learn-good-software-design-architecture | ||
+ | * http://cc2e.com/ | ||
+ | * [http://cc2e.com/File.ashx?cid=336 Code Complete Book] - Design chapter | ||
+ | ** ‘Design’ is similar to my definition of ‘software-architecture’, except that design can pervade into lower levels of classes and routines and code | ||
+ | * [http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612 Gof Design Patterns] | ||
+ | * [http://www.blackwasp.co.uk/gofpatterns.aspx GoF Design Patterns Explained] | ||
+ | * [http://michael.hahsler.net/research/patterns_oss2004/OSS_patterns_preprint.pdf Research Paper: Design patterns in open source] | ||
+ | * Book: [http://www.aosabook.org/en/index.html Architecture of Open Source Applications] - from Tom | ||
+ | ** http://www.aosabook.org/en/eclipse.html | ||
+ | ** https://wiki.eclipse.org/Learn_About_Eclipse | ||
+ | ** http://www.eclipse.org/articles/Whitepaper-Platform-3.1/eclipse-platform-whitepaper.pdf | ||
+ | ** htp://www.eclipse.org/eclipse/ | ||
+ | * Openstack Oslo - from email to listserv | ||
+ | ** https://wiki.openstack.org/wiki/Oslo#Principles | ||
+ | ** https://wiki.openstack.org/wiki/Oslo#Design_Proposals | ||
+ | ** http://specs.openstack.org/openstack/oslo-specs/ | ||
+ | |||
Revision as of 16:54, 4 February 2016
Title | Software Design and Architecture Comparison (Eclipse vs Openstack) |
Overview | Students will research existing software design documents and resources for both projects and then write a report detailing their differences and helpfulness to various levels of developers. |
Prerequisite Knowledge | What topics and tools does the student need to know prior to beginning this activity? |
Learning Objectives | What should the student be able to do after completing completed this activity?. |
Background:
Is there background reading material?
Are there other activities the student should have done first?
What is the rational for this activity?
Include helpful hints to faculty here.
Background reading:
- https://en.wikipedia.org/wiki/Software_design
- https://en.wikipedia.org/wiki/Software_design_pattern
- http://www.openu.ac.il/personal_sites/download/galezer/SoftwareDesign.pdf
- This paper describes how they had to get students to re-think how they write code. The students needed to think more outside of the syntax of the actual language, and more toward software design / repeatable design patterns that dont depend on the coding language.
- I am looking at this paper and thinking about the various tasks or activities that they show were done in their classroom. I may be able to use these ideas.
- “It should be re-emphasized that practical programming does not play a central role in the unit. At the end of the year students and teachers realized that programming in itself is not the main goal.”
- http://stackoverflow.com/questions/268231/how-to-learn-good-software-design-architecture
- http://cc2e.com/
- Code Complete Book - Design chapter
- ‘Design’ is similar to my definition of ‘software-architecture’, except that design can pervade into lower levels of classes and routines and code
- Gof Design Patterns
- GoF Design Patterns Explained
- Research Paper: Design patterns in open source
- Book: Architecture of Open Source Applications - from Tom
- Openstack Oslo - from email to listserv
Directions:
What should the student do?
Deliverables:
What will the student hand in?
Assessment:
How will the activity be graded?
How will learning will be measured?
Include sample assessment questions/rubrics.
Criteria | Level 1 (fail) | Level 2 (pass) | Level 3 (good) | Level 4 (exceptional) |
---|---|---|---|---|
The purpose of the project | ||||
Why the project is open source |
Comments:
What should the instructor know before using this activity?
What are some likely difficulties that an instructor may encounter using this activity?
Additional Information:
ACM Knowledge Area/Knowledge Unit | What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge |
ACM Topic | What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf |
Level of Difficulty | Is this activity easy, medium or challenging? |
Estimated Time to Completion | How long should it take for the student to complete the activity? |
Materials/Environment | What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.? |
Author | Nick Yeates |
Source | Is there another activity on which this activity is based? If so, please provide a link to the original resource. |
License | Creative Commons CC-BY |
Suggestions for Open Source Community:
Suggestions for an open source community member who is working in conjunction with the instructor.
This work is licensed under a Creative Commons Attribution 4.0 International License