Understand the fundamentals of startup fundraising, valuation, investors, and risk profiles.
Project Type: University lecture
Understand funding research, managing intellectual property, and the role of the university.
Understand how to manage research projects at a university to turn them into startups.
Understand startups as a search process for a viable business model.
Understand how the cloud both empowers and fights commercial open source.
Understand commercial open source firms, including their products and services.
Understand open source projects, their communities, and their economic importance.
Understand open source software, its licenses, and how companies use it correctly.
Understand what a business model is and how to design one using the business model canvas.
Understand software vendors, their business models, and how they differ from consultancies.
Understand software products as structured into core, basic, and whole product.
Understand the software industry, its history, players, and their strategies.
Learn about object oriented frameworks by putting together the different pieces of this course.
Learn how to break down class relationships into collaboration models to better handle design complexity.
Learn how to wisely choose between design alternatives using the important example of object creation.
Understand the type object pattern and learn how to handle model-level vs. instance-level information.
Understand design patterns and learn how to use them in system design.
Understand the fundamental difference between objects and values and learn how to implement value types efficiently.
Learn how to deal with faults, errors, and failures in class and component design.
Learn design by contract to better define the relationship between class (interfaces) and their clients.
Understand subtyping and inheritance and learn how to build extensible class hierarchies.
Understand the difference between abstract and implementation state and learn how to design and work with classes and interfaces.
Learn the fundamental vocabulary of professionals when talking about the methods of a class.