Cooperation and Communication

"The most efficient and effective method of conveying information to and within a development team is face-to-face conversation." -- The Agile Manifesto

Lesson 1: Release it!

For lesson 1, please read:
The flattening of the software release process

Lesson 2: Breaking down silos

For lesson 2, please read:
Breaking down silos
Breaking Down Silos with Cross-Functional Teams

Lesson 3: Using Slack

For lesson 3, please go through these Slack guides:

Other Readings
Quiz

    The most essential element of employing DevOps is...?

    1. making cultural change in an organization
    2. finding the right tools
    3. having as many operations people as developers
    4. building silos between the teams

    Testing should be done on...?

    1. only the most crucial code in the application
    2. all of the application code
    3. all of the application code AND all of the infrastructure code
    4. none of the above

    Who should have "ownership" (be able to change) parts of a product in an agile team?

    1. only the creator of that part
    2. anyone on the team
    3. only the project supervisor
    4. only the system administrator

    The study of software includes...?

    1. software engineering on a small group scale
    2. the use of programming languages
    3. individual and group projects
    4. all of the above

    We want to script our environment so that...?

    1. environments are always in a known state
    2. we lessen the chance that knowledge is locked in team members' heads
    3. deployments are more predictable and repeatable
    4. all of the above

    To learn writing correct software one needs to start by...?

    1. writing code
    2. learning theoretical basis of software engineering
    3. learning abstract algebra
    4. learning the design of compilers

    What is our main tool for communication in our course?

    1. git
    2. Docker
    3. Kubernetes
    4. Slack

    Each member of a cross-functional team needs to...?

    1. write tests
    2. write scripts
    3. version
    4. all of the above

    To have a solid understanding of computer systems one needs...?

    1. practical understanding of programming
    2. theoretical understanding of programming
    3. both A and B
    4. NOT to understand programming

    The DevOps dashboard...?

    1. shows how each change affects the entire system in every stage in the progression to deploying to production
    2. is another name for the kanban board
    3. provides real-time information on the software system
    4. both A and C