Online Courses and Tutorials

Onlinecourses.tech provides you with the latest online courses information by assisting over 45,000 courses and 1 million students.

Learn programming, marketing, data science and more.

Get started today

Skip to main content

Теория отраслевых рынков (Industrial Organization)

About this course: Курс посвящен факторам, влияющим на размер компаний и структуру рынка. Почему на одних рынках преобладают малые компании, а на другом крупные? Продавцы принимают решения стратегически, однако их стимулы в свою очередь зависят от структуры рынка и от предшествующих решений. Как разделить между зоной предопределенных и свободных решений? Например, сговор как модель ценового поведения – предопределен структурой рынка или служит результатом свободного волеизъявления? Способны ли укоренившиеся на рынке продавцы препятствовать входу новичков, защищая свою рыночную долю и свою прибыль? Каковы лучшие способы предотвращения ценовых сговоров продавцов? Нужно ли (или по крайней мере желательно) запрещать или ограничивать слияния между крупными продавцами? Есть ли необходимость для государственной политики налагать ограничения на условия договоров между производителем и дистрибьютором? Как в этих условиях должна быть организована государственная политика (применение антимоноп…

Software Architecture for the Internet of Things

Software Architecture for the Internet of Things

About this course: This course will teach you how to design futureproof systems that meet the requirements of IoT systems: systems that are secure, interoperable, modifiable and scalable. Moreover, you'll learn to apply best-in-class software architecture methods to help you design complex IoT and other applications. Lastly, you'll come to understand the business impact of the technical decisions that you make as an IoT system architect. You'll learn all about software architecture in the next 5 weeks! In the first week, you'll discover why having a well-designed architecture is important and which challenges you might come across while developing your architecture. By the end of the second week, you'll already be able to write your own requirements! In the third and fourth week, you will learn how to correctly write quality attributes and quality attribute scenarios for a specific case. In the last week, you'll learn to describe your own patterns and tactics and see how they're used in an Android framework.

Who is this class for: You're at the right address if you're a software engineer, embedded systems engineer or a technical manager who aspires to connect their career to the internet of the future: the Internet of Things. Our blended learning approach offers you the best of both worlds: you can learn online whenever you want to, but can still get hands-on coaching from industry experts. Although useful for professionals, this course is meant for first year Master students in Electrical Engineering or Computer Science. Note that as a consequence, quiz questions are more like exam questions where you have to construct the answer based on the principles that are taught in the web lectures, rather than to recall the literal text of the teacher.

Created by:  EIT Digital

  • Frank Gielen
    Taught by:  Frank Gielen, Professor
    UGent/IBCN: Internet Based Communication Networks
Commitment5 weeks of study, 2-3 hours/week
Language
English
How To PassPass all graded assignments to complete the course.
User Ratings
Average User Rating 4.2See what learners said
Syllabus
WEEK 1
Getting to know Software Architecture
This module will introduce you to the world of software architecture. We'll define what SA actually is, why it is important and talk about some of the challenges faced in modern Software Engineering. This course is also part of a Blended Master Programme in Internet of Things through Embedded Systems.
6 videos5 readings
  1. Video: Welcome to Software Architecture for IoT
  2. Reading: How to navigate through this course
  3. Reading: Learning objectives per week
  4. Reading: Want more software architecture?
  5. Discussion Prompt: IoT and you
  6. Video: Challenges in Modern Software Engineering
  7. Video: What is Software Architecture?
  8. Video: Why is software architecture important? (1)
  9. Video: Why is software architecture important? (2)
  10. Reading: How business goals drive architectural design
  11. Discussion Prompt: Business goals
  12. Video: The role of the software architect
  13. Reading: Software Architecture in practice: 1, 2, 3
Graded: Challenges in modern software engineering
Graded: The role of the Software Architect
WEEK 2
Design process and software requirements
Creating good software starts with a solid understanding of the requirements that will have an influence on the software. In this module, we will discuss both functional and non-functional requirements, such as quality attributes, business requirements and constraints.
5 videos5 readings
  1. Video: The Software Architecture Design Process
  2. Video: Software requirements
  3. Video: Documenting Requirements
  4. Discussion Prompt: IoT project: requirements
  5. Video: What is the ADD process?
  6. Reading: ADD paper
  7. Video: Software Architecture in the Development Process
  8. Reading: Enabling agility through architecture
  9. Discussion Prompt: Design process
  10. Reading: Optional: ADD applied example
  11. Discussion Prompt: Designing architectures in the real world
  12. Reading: UberGoogle?
  13. Reading: Software architecture in practice: 4, 16, 17
Graded: Requirements
Graded: Documenting requirements
Graded: Attribute driven design
Graded: The place of software architecture in the software development process
Graded: UberGoogle Requirements
WEEK 3
Quality Attributes
Up till now, we have been talking about quality in an informal way. However, if you want to build systems that support the required qualities you will need a way to express those quality attributes and understand how you can achieve them. After this module you should be able to formulate your own quality requirements. We will also study 2 qualities that are especially relevant for Internet of Things: interoperability and modifiability.
5 videos2 readings
  1. Video: What are quality attributes?
  2. Video: The nature of quality attributes
  3. Video: What are QAS?
  4. Video: QA - Interoperability
  5. Video: QA - Modifiability
  6. Discussion Prompt: Quality attributes
  7. Discussion Prompt: IoT project: quality attributes
  8. Reading: The missing towels problem
  9. Reading: Software Architecture in practice: 5, 6, 7
Graded: Quality Attributes
Graded: Quality attribute scenarios
Graded: Interoperability
Graded: The Missing Towels
WEEK 4
Tactics
In the fourth week, we will explain how architectural tactics can help you create a software architecture that achieves the predefined requirements. This is what needs to be done in step three of the ADD - remember? We'll start of by learning about the difference between tactics and patterns. We will give some examples of tactics to achieve interoperability and modifiability. We will discuss the MVC pattern and its relation to the modifiability tactics. Lastly, we'll discuss how MVC is being used in Android.
5 videos1 reading
  1. Video: What are tactics? How do they differ from patterns?
  2. Video: Different types of tactics
  3. Video: Tactic - Modifiability
  4. Reading: Modifiability - tactics and patterns pt. 1
  5. Video: Introduction to DYAMAND
  6. Video: Problems and solutions
Graded: Tactics
WEEK 5
Patterns
In this last week, we will explain how architectural patterns can help you create a software architecture that achieves the predefined requirements. Patterns are closely related to tactics, as we saw last week. First, we'll look at different types of patterns. Then, we'll learn how to combine tactics and patterns. We'll conclude this last week with a case study: DYAMAND's requirements and their architecture.
5 videos2 readings
  1. Video: Different types of patterns
  2. Video: Combining Tactics and Patterns
  3. Reading: Modifiability - tactics and patterns pt. 2
  4. Discussion Prompt: IoT project: tactics and patterns
  5. Discussion Prompt: Where to find patterns and tactics
  6. Video: DYAMAND's requirements
  7. Video: DYAMAND's architecture (1)
  8. Video: DYAMAND's architecture (2)
  9. Reading: Software Architecture in practice: 13
  10. Discussion Prompt: DYAMAND case study reflection
Graded: Patterns
How It Works
Coursework
Coursework
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from Your Peers
Help from Your Peers
Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
Certificates
Certificates
Earn official recognition for your work, and share your success with friends, colleagues, and employers.
Creators
EIT Digital
EIT Digital is a pan-European education and research-based open innovation organization founded on excellence. Its mission is to foster digital technology innovation and entrepreneurial talent for economic growth and quality of life. By linking education, research and business, EIT Digital empowers digital top talents for the future. EIT Digital provides online "blended" Innovation and Entrepreneurship education to raise quality, increase diversity and availability of the top-level content provided by 20 reputable universities of technology around Europe. The universities all together deliver a unique blend of the best of technical excellence and entrepreneurial skills and mindset to digital engineers and entrepreneurs at all stages of their careers. The academic partners support Coursera’s bold vision to enable anyone, anywhere, to transform their lives by accessing the world’s best learning experience. This means that EIT Digital gradually shares parts of its entrepreneurial and academic education programmes to demonstrate its excellence and make it accessible to a much wider audience. EIT Digital’s online education portfolio can be used as part of blended education settings, in both Master and Doctorate programmes, and for professionals as a way to update their knowledge. EIT Digital offers an online programme in 'Internet of Things through Embedded Systems'. Achieving all certificates of the online courses and the specialization provides an opportunity to enroll in the on campus program and get a double degree. These are the courses in the online programme:
Learn more about this course

Comments

Popular posts from this blog

An Introduction to Interactive Programming in Python (Part 1)

About this course: This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse. In part 1 of this course, we will introduce the basic elements of programming (such as expressions, conditionals, and functions) and then use these elements to create simple interactive applications such as a digital stopwatch. Part 1 of this class will culminate in building a version of the classic arcade game "Pong".
Who is this class for: Recommended Background - A knowledge o…

Introduction to Data Science in Python

About this course: This course will introduce the learner to the basics of the python programming environment, including how to download and install python, expected fundamental python programming techniques, and how to find help with python programming questions. The course will also introduce data manipulation and cleaning techniques using the popular python pandas data science library and introduce the abstraction of the DataFrame as the central data structure for data analysis. The course will end with a statistics primer, showing how various statistical measures can be applied to pandas DataFrames. By the end of the course, students will be able to take tabular data, clean it,  manipulate it, and run basic inferential statistical analyses. This course should be taken before any of the other Applied Data Science with Python courses: Applied Plotting, Charting & Data Representation in Python, Applied Machine Learning in Python, Applied Text Mining in Python, Applied Social Ne…

Learn to Program and Analyze Data with Python

About This Specialization This Specialization builds on the success of the Python for Everybody course and will introduce fundamental programming concepts including data structures, networked application program interfaces, and databases, using the Python programming language. In the Capstone Project, you’ll use the technologies learned throughout the Specialization to design and create your own applications for data retrieval, processing, and visualization. Created by: 5 courses Follow the suggested order or choose your own. Projects Designed to help you practice and apply the skills you learn. Certificates Highlight your new skills on your resume or LinkedIn. Courses

Archive