University of Colorado
Software Design as an Abstraction
This course provides comprehensive training for those willing to master the skills of a professional software designer who can come up with abstract design ideas.| Length | 3 to 4 weeks |
| Price | Free |
| Subject | Design, Computer Science |
| Level | Intermediate |
| Languages | English |
| Video Transcripts | English |
About this Course
The design step in developing software has some unique characteristics. First of all, it’s the only step where drawing pictures of things is the norm. Why is that? What do pictures do that other representations cannot do? Pictures have varying levels of detail; pictures have context. Pictures…paint a picture. Why are these things important? In this course, too, we begin looking at other disciplines (building architecture is a favorite one) for lessons on design.
The design step in developing software has some unique characteristics. First of all, it’s the only step where drawing pictures of things is the norm. Why is that? What do pictures do that other representations cannot do? Pictures have varying levels of detail; pictures have context. Pictures…paint a picture. Why are these things important? In this course, too, we begin looking at other disciplines (building architecture is a favorite one) for lessons on design.
What you'll learn
*Contrasted to design as a step in the software development process, a look at design as an abstract representation of the project.
*Design considerations to make when users are involved.
*Design considerations to make when users are not involved
*When to create a database in third-normal form, and when not to.
*When and how design patterns are useful and when they are not.
*Choose languages and operating systems wisely because you will have to live with them.
*A comprehensive course assessment comprising of 5 quizzes. Each assessment contains a randomized set of questions from different modules of the course.
Course syllabus
Week 1: Who needs abstractions?
Week 2: Focus on the Users
Week 3: What if there are no users?
Week 4: Advanced database design
Week 5: The Good and Bad of Design Patterns
Week 6: Language choices
Week 7: Final Exam
Meet the instructors
Albert Glock
Instructor
Computer Science
