CS 846: Human Aspects of Software Engineering Reid Holmes

Similar documents
Software Development and Evolution

Implementing and Maintaining Microsoft SQL Server 2008 Integration Services

Understanding and Addressing Architectural Challenges of Cloud- Based Systems

A Report on The Capability Maturity Model

Masters in Information Technology

What methods are used to conduct testing?

Software Project Models

Masters in Computing and Information Technology

Chap 1. Introduction to Software Architecture

Agile Project Management. Jan Pool NioCAD University of Stellenbosch 16 April 2008

International Journal of Computer Engineering and Applications, Volume V, Issue III, March 14

Professional Development Ladder

Fundamentals of LoadRunner 9.0 (2 Days)

Java: Learning to Program with Robots. Chapter 11: Building Quality Software

School of Computer Science

Core Ideas of Engineering and Technology

Masters in Human Computer Interaction

SCDHSC0437 Promote your organisation and its services to stakeholders

Predictive and Prescriptive Analytics An Example: Advanced Sales & Operations Planning

Supporting Software Development Process Using Evolution Analysis : a Brief Survey

Masters in Human Computer Interaction

COMP9321 Web Application Engineering

Implementing a Data Warehouse with Microsoft SQL Server MOC 20463

COURSE OUTLINE MOC 20463: IMPLEMENTING A DATA WAREHOUSE WITH MICROSOFT SQL SERVER

Masters in Advanced Computer Science

Requirements Engineering: Elicitation Techniques

THE OPEN UNIVERSITY OF TANZANIA FACULTY OF SCIENCE TECHNOLOGY AND ENVIRONMENTAL STUDIES BACHELOR OF SIENCE IN DATA MANAGEMENT

Development Methodologies

Masters in Artificial Intelligence

Optimizing IV&V Benefits Using Simulation

9 Keys to Effectively Managing Software Projects

Masters in Networks and Distributed Systems

Software Development Best Practices

Information Visualization WS 2013/14 11 Visual Analytics

Java Programming (10155)

Text Mining - Scope and Applications

Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction

Der Mythos vom Re-Use

Chapter 1 Introduction

Effective Team Development Using Microsoft Visual Studio Team System

Software Requirements

Software Test Plan (STP) Template

How To Get A Computer Science Degree At Appalachian State

CS4507 Advanced Software Engineering

Implementing a Data Warehouse with Microsoft SQL Server

H5RE 04 (SCDHSC0437) Promote Your Organisation and Its Services to Stakeholders

Bachelor Program in Analytical Finance, 180 credits

Software Development using. Architecture-Driven. Acme and ArchJava. Marwan Abi-Antoun. Software Research Seminar (SSSG)

CLOUD COMPUTING CONCEPTS FOR ACADEMIC COLLABORATION

SCHOOL OF ENGINEERING Baccalaureate Study in Engineering Goals and Assessment of Student Learning Outcomes

ERIE COMMUNITY COLLEGE COURSE OUTLINE A. COURSE NUMBER CS WEB DEVELOPMENT & PROGRAMMING I AND TITLE:

A Case Study in the Design of a Restaurant Management System

The First Online 3D Epigraphic Library: The University of Florida Digital Epigraphy and Archaeology Project

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture

COURSE 20463C: IMPLEMENTING A DATA WAREHOUSE WITH MICROSOFT SQL SERVER

Implementing a Data Warehouse with Microsoft SQL Server

HOW WILL BIG DATA AFFECT RADIOLOGY (RESEARCH / ANALYTICS)? Ronald Arenson, MD

Reporting Scrum Project Progress to Executive Management through Metrics. Introduction. Transparency into Projects

2014 New Jersey Core Curriculum Content Standards - Technology

Advanced Software Engineering. Software Development Processes

YIIP1100 PROJECT MANAGEMENT

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University

State of Practice in Modeling and Model-Driven Development

Human Resource Development in Small and Medium-Sized Enterprises. Preliminary Consideration. Summary

Rapid Prototyping of Computer Systems , *, , *, Units Carnegie Mellon University. Course Syllabus Spring 2013

SWX: The Software Extension to the PMBOK Guide for Project Management

Case Study: Allina Health Giving the Patients a Voice through Patient Advisory Councils (PACs) Allina Health System, Minneapolis, MN

NEW YORK CITY COLLEGE OF TECHNOLOGY -CUNY

Program Visualization for Programming Education Case of Jeliot 3

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program

Google Analytics 101

Units 3 and 4 Informatics Implementation program April to May 2015 VCAA and Digital Learning and Teaching Victoria (DLTV)

ATLAS.ti 6 Distinguishing features and functions

HIGHLIGHT PROGRESSION WHETHER IT BE IN SCHOOL, LEADERSHIP, OR WORK.

Transcription:

CS 846: Human Aspects of Software Engineering Reid Holmes

What is Programming? CS 846: HUMAN ASPECTS OF SOFTWARE ENGINEERING

What is Programming? The process of transforming a mental plan of desired actions for a computer into a representation that can be understood by the computer -- Jean-Michel Hoc and Anh Nguyen-Xuan

What is Software Engineering? CS 846: HUMAN ASPECTS OF SOFTWARE ENGINEERING

What is Software Engineering? The establishment and application of scientific, economic, social, and practical knowledge in order to invent, design, build, maintain, research, and improve software that is reliable and works efficiently on real machines. Wikipedia Mashup

Why Human Aspects? CS 846: HUMAN ASPECTS OF SOFTWARE ENGINEERING

Why Human Aspects? The vast majority of software is written by humans. Development tools and techniques should help them better understand and perform their daily tasks. Me

Program comprehension Topic List information needs, code navigation, working sets, code search Software evolution refactoring, program differencing, reverse engineering Development tools & environments team awareness, delta debugging, visualization, DOI models, task-centric development Quantitative and qualitative means of evaluating software engineering research experiments, case studies

Program comprehension Topic List information needs, code navigation, working sets, code search Software evolution refactoring, program differencing, reverse engineering Development tools & environments team awareness, delta debugging, visualization, DOI models, task-centric development Quantitative and qualitative means of evaluating software engineering research experiments, case studies

Assessment Seminar: 20% Seminar Paper Reviews: 10% Project: 40% Project reviews: 20% Participation: 10%

Presentations ~1-2 presentations* ~30 minute talk ~30 minute discussion 1 paper summary / week Submit by email 0800 day of class I will go first (next week)

Paper Summary Summary should be ~500-1000 words long. Submit by email; subject: CS846 Review Why did the authors write this paper? What did they do? How did they validate their work? What are the strengths and weaknesses of the approach and its validation? What did you learn from this paper?

Project Reviews Assess projects like a program committee Everyone will read and review several papers Reviews organized via Easychair http://easychair.org Program committee meeting in the last class Up to you whether we accept papers acceptance has no bearing on your grade

Project The project will be a major part of the course. You will build a development tool that addresses a problem you have experienced writing software. The output of your project will be a research paper (~6-10 pages). Groups are encouraged (up to 3 people). Project proposal will be due soon (Jan 28). 1 page description of the problem you are trying to solve. 15 minute project presentations (March 25).

Software Tool Identify a real problem faced by developers Model a solution Implement the tool that addresses your model of the problem Perform a preliminary evaluation of the tool Users would be great here, but given time constraints qualitative scenarios would work

To Do 1) Get an easychair.org account (free) 2) Choose 2 papers you would like to present Insert into Google doc (by Jan 16 @ 0800) 3) Start thinking about projects

Next Week Two very high-level papers: Fred Brooks Jr., No Silver Bullet. IEEE Computer, 1987. W. Wayt Gibbs, Software s Chronic Crisis. Scientific American, 1994. Both available online