GithubHelp home page GithubHelp logo

course's Introduction

Course

CSC 510 introduces students to the discipline of developing useful and high-quality software-based systems. Students will be exposed to the techniques needed for the practice of effective software engineering as well as the skills required to succeed as a software professional.

See the Syllabus for details on classroom policies and evaluation.

Objectives

By the end of the course, you should be able to accomplish the following objectives:

  • Implement software engineering practices in a team project.
  • Identify practices related to software process.
  • Decide how to test a system and measure coverage.
  • Compare and contrast design techniques and architectural patterns.
  • Measure the quality of software code.
  • Build tools for supporting software engineering tasks.
  • Evaluate evidence related to a software practice.
  • Identify configuration management practices for improving maintanance of software
  • Apply deployment practices and patterns.

Students are expected to gain practical exposure to tools, processes, and principles of software engineering through hands-on projects while understanding models and research ideas behind the tools and processes. Lectures will include workshop style learning experiences, where students get to work on a problemset and receive feedback from the instructor and other classmates.

Slack

Schedule

The following schedule is subject to change.

Class Topics Resources Assignments
Aug 18 Agile Processes HW0
Aug 23 Bootcamp: Basics
Aug 25 Bootcamp: REST HW1
Aug 30 Bots
Sep 1 Workshop: Slack bot
Sep 6 Design MILESTONE: DESIGN
Sep 8 Workshop: Design roundtables
Sep 13 Architecture Patterns
Sep 15 Patterns, APIs, Frameworks HW2
Sep 20 Web Basics
Sep 22 Workshop: Selenium Testing MILESTONE: BOT
Sep 27 Testing
Sep 29 Workshop: Unit Tests + Mocking HW3
Oct 4 No class
Oct 6 Fall Break
Oct 11 Program Analysis, Metrics
Oct 13 Workshop: Complexity HW4
Oct 18 Empirical Software Engineering
Oct 20 Workshop: Data Analysis MILESTONE: SERVICE
Oct 25 Interviews
Oct 27 Workshop: Mock Interviews
Nov 1 Configuration Management
Nov 3 Workshop: Ansible, Vagrant HW5
Nov 8 Continuous Deployment
Nov 10 Microservices + Infrastructure MILESTONE: DEPLOY
Nov 15 TBD/Guest
Nov 17 TBD/Guest
Nov 22 Workshop: Docker
Nov 24 Thanksgiving
Nov 29 Productivity (PSP+SSP) MILESTONE: REPORT
Dec 1 Demos
Dec 6 Exam (8:00AM--10:00AM)

course's People

Contributors

chrisparnin avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.