Download presentation
Presentation is loading. Please wait.
1
Human-Centric Software Engineering
COSC 494/594, Spring 2019, Dr. Austin Henley
2
Today… My experience with SE What is SE? What is human-centric SE?
What topics will we cover? What will you get out of this? Course structure
3
Today… My experience with SE What is SE? What is human-centric SE?
What topics will we cover? What will you get out of this? Course structure
4
My SE experience In undergrad, I made $$$ by making games
5
My SE experience In grad school, I did 5 internships
6
My research Tools to make software engineers more productive
7
My research Tools to make software engineers more productive
If you’re interested, I’m hiring PhD students…
8
Survey! What are your experiences?
Internships? Full-time jobs lined up? Have you made $$$ off anything you’ve built?
9
Today… My experience with SE What is SE? What is human-centric SE?
What topics will we cover? What will you get out of this? Course structure
10
What is Software Engineering?
Software engineering is the application of a systematic, disciplined, quantifiable approach to the design, development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software. IEEE’s definition
11
What does SE consist of? Requirements Design Implementation
Verification Maintenance
12
What does SE consist of? Requirements Analysis Design Implementation
Planning Requirements Analysis Design Implementation Deployment Testing Evaluation Initial Planning
13
Software failures cost $1.1 trillion in 2016
Human error Software failures cost $1.1 trillion in 2016 [Tricentis ’17] This not only affects businesses, but everyday people as well…
14
The “Software Crisis” Since the 1960s (More like a depression)
(Standish Group) Of 28,000 projects completed in 2000… (Cutter Consortium) 2002 Study: 78% of orgs landed in court
15
Although stats improving, challenges remain…
More headlines (Oct 2013–Aug 2014) Tech Problems Plague First Day Of Health Exchange Rollout Health Exchange Tech Problems Point To A Thornier Issue It's Easy To Blame The Canadians For HealthCare.gov Problems Sebelius: Hold Me Accountable For HealthCare.gov Debacle Add Security To The List Of HealthCare.gov Tech Issues Oregon's State Exchange May Be Worse Than HealthCare.gov Could A Tech Giant Build A Better Health Exchange? Maybe Not Official In Charge Of Creating HealthCare.gov Steps Down Giving Up On Its Obamacare Exchange No Cure For Oregon's Ills Oregon Sues Oracle For "Abysmal" Healthcare Website ( ) ( )
16
You can help save the world!
Anecdotal experience: New grad? West coast tech will pay $150k salary/stock Masters degree? Expect around $200k
17
Human-Centric Software Engineering
Devs are people! All bugs are caused by people. Flawed requirements Flawed design Flawed implementation So… how do we solve humans? SE includes writing code, design patterns, program analysis, unit testing, code reviewing, etc… Devs write the code. Design patterns help devs. Program analysis points out problems caused by a dev so that the dev can fix it. Human design, implement, and test the software, and often use it too. Too often the human side of things is completely ignored.
18
Today… My experience with SE What is SE? What topics will we cover?
What will you get out of this? Course structure
19
Broadly… Understanding developer behavior
Tools to make developers more productive Evaluating tools
20
Example topics Productivity Code editors Debugging
Program comprehension Version control Continuous integration Documentation API usability Code reviewing Collaboration Software testing Software metrics Refactoring Program analysis Usability of tools End-user programming Visual languages We will look into a subset of these…
21
Today… My experience with SE What is SE? What topics will we cover?
What will you get out of this? Course structure
22
Real-world knowledge State of the practice on dev tools
State of the research on human aspects of dev Goal: make you a better developer & get that job
23
Today… My experience with SE What is SE? What topics will we cover?
What will you get out of this? Course structure
24
Course Structure Presentations Participation Project No exams
Few lectures How to evaluate dev tools? How to comprehend a large codebase?
25
Participation Class time is based around discussions
Everyone should contribute You’ll be graded on it! Discussions will be led a student Occasional in-class activities Competition: fix a small bug as fast as possible Give feedback on each other’s project May require some effort outside of class (install a tool)
26
Presentations Everyone will regularly present 10-15 minutes
Demo a tool or present a paper Each week will have a theme You have some choice in what you present Based on how many people enrolled… 1 paper presentation and 2 tool demos If you aren’t presenting… at least skim the papers!
27
Who and what gets presented?
Each Friday you can volunteer to present next week I’ll decide the topic and papers You can decide which tools to demo for the topic I’ll provide templates
28
Example weeks Monday: 2 paper presentations and discussions
Wed: 3 tool demos and discussions Fri: 2 tool demos & decide who will present next week Monday: lecture and activity
29
Project Design, implement, and evaluate a dev tool
More details to come…
30
This course is your oyster
Have an interest in a topic? Want to try an activity in-class? Prepping for the job market? Let me know! I might fit it in. This class is meant to benefit you.
31
Let’s tour the course web page https://tiny.utk.edu/cosc494
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.