CS321 Syllabus: Software Requirements/Design Modeling

Similar documents
CS 100: Principles of Computing

Course Content Concepts

Texas A&M University-Central Texas CISK Comprehensive Networking C_SK Computer Networks Monday/Wednesday 5.

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

Foothill College Summer 2016

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Course Syllabus for Calculus I (Summer 2017)

CIS Introduction to Digital Forensics 12:30pm--1:50pm, Tuesday/Thursday, SERC 206, Fall 2015

BIODIVERSITY: CAUSES, CONSEQUENCES, AND CONSERVATION

ASTRONOMY 2801A: Stars, Galaxies & Cosmology : Fall term

Many instructors use a weighted total to calculate their grades. This lesson explains how to set up a weighted total using categories.

CS 101 Computer Science I Fall Instructor Muller. Syllabus

IST 440, Section 004: Technology Integration and Problem-Solving Spring 2017 Mon, Wed, & Fri 12:20-1:10pm Room IST 202

BUS Computer Concepts and Applications for Business Fall 2012

Syllabus ENGR 190 Introductory Calculus (QR)

Class Meeting Time and Place: Section 3: MTWF10:00-10:50 TILT 221


CS Course Missive

Online ICT Training Courseware

CS 3516: Computer Networks

Office Hours: Day Time Location TR 12:00pm - 2:00pm Main Campus Carl DeSantis Building 5136

COURSE INFORMATION. Course Number SER 216. Course Title Software Enterprise II: Testing and Quality. Credits 3. Prerequisites SER 215

Business Computer Applications CGS 1100 Course Syllabus. Course Title: Course / Prefix Number CGS Business Computer Applications

GLBL 210: Global Issues

ADMN-1311: MicroSoft Word I ( Online Fall 2017 )

POFI 1349 Spreadsheets ONLINE COURSE SYLLABUS

The University of Southern Mississippi

EDIT 576 (2 credits) Mobile Learning and Applications Fall Semester 2015 August 31 October 18, 2015 Fully Online Course

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

EDIT 576 DL1 (2 credits) Mobile Learning and Applications Fall Semester 2014 August 25 October 12, 2014 Fully Online Course

Course Syllabus for Math

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

Chromatography Syllabus and Course Information 2 Credits Fall 2016

English Policy Statement and Syllabus Fall 2017 MW 10:00 12:00 TT 12:15 1:00 F 9:00 11:00

Social Media Journalism J336F Unique ID CMA Fall 2012

MAT 122 Intermediate Algebra Syllabus Summer 2016

COURSE SYLLABUS: CPSC6142 SYSTEM SIMULATION-SPRING 2015

CSCI 333 Java Language Programming Fall 2017 INSTRUCTOR INFORMATION COURSE INFORMATION

Texas A&M University - Central Texas PSYK PRINCIPLES OF RESEARCH FOR THE BEHAVIORAL SCIENCES. Professor: Elizabeth K.

GIS 5049: GIS for Non Majors Department of Environmental Science, Policy and Geography University of South Florida St. Petersburg Spring 2011

Beginning and Intermediate Algebra, by Elayn Martin-Gay, Second Custom Edition for Los Angeles Mission College. ISBN 13:

Syllabus Fall 2014 Earth Science 130: Introduction to Oceanography

ITSC 1301 Introduction to Computers Course Syllabus

INTRODUCTION TO GENERAL PSYCHOLOGY (PSYC 1101) ONLINE SYLLABUS. Instructor: April Babb Crisp, M.S., LPC

MGMT 479 (Hybrid) Strategic Management

George Mason University Graduate School of Education Education Leadership Program. Course Syllabus Spring 2006

95723 Managing Disruptive Technologies

Class Tuesdays & Thursdays 12:30-1:45 pm Friday 107. Office Tuesdays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

Course Syllabus p. 1. Introduction to Web Design AVT 217 Spring 2017 TTh 10:30-1:10, 1:30-4:10 Instructor: Shanshan Cui

General Physics I Class Syllabus

San José State University

Jeffrey Church and Roger Ware, Industrial Organization: A Strategic Approach, edition 1. It is available for free in PDF format.

HCI 440: Introduction to User-Centered Design Winter Instructor Ugochi Acholonu, Ph.D. College of Computing & Digital Media, DePaul University

Social Media Marketing BUS COURSE OUTLINE

Introduction to Information System

Visual Journalism J3220 Syllabus

Demography and Population Geography with GISc GEH 320/GEP 620 (H81) / PHE 718 / EES80500 Syllabus

CRITICAL THINKING AND WRITING: ENG 200H-D01 - Spring 2017 TR 10:45-12:15 p.m., HH 205

Spring 2016 Stony Brook University Instructor: Dr. Paul Fodor

SYLLABUS- ACCOUNTING 5250: Advanced Auditing (SPRING 2017)

Chemistry 106 Chemistry for Health Professions Online Fall 2015

CS177 Python Programming

EDUC 2020: FOUNDATIONS OF MULTICULTURAL EDUCATION Spring 2011

TU-E2090 Research Assignment in Operations Management and Services

Syllabus Foundations of Finance Summer 2014 FINC-UB

Data Structures and Algorithms

Mktg 315 Marketing Research Spring 2015 Sec. 003 W 6:00-8:45 p.m. MBEB 1110

Visualizing Architecture

Page 1 of 8 REQUIRED MATERIALS:

INTRODUCTION TO SOCIOLOGY SOCY 1001, Spring Semester 2013

MATH 108 Intermediate Algebra (online) 4 Credits Fall 2008

Strategic Management (MBA 800-AE) Fall 2010

STUDENT MOODLE ORIENTATION

Counseling 150. EOPS Student Readiness and Success

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

Pitching Accounts & Advertising Sales ADV /PR

COMP 3601 Social Networking Fall 2016

Course Syllabus Chem 482: Chemistry Seminar

Connect Mcgraw Hill Managerial Accounting Promo Code

Prerequisite: General Biology 107 (UE) and 107L (UE) with a grade of C- or better. Chemistry 118 (UE) and 118L (UE) or permission of instructor.

POFI 2401 Word Processing Syllabus. MW 9AM-11:30AM TTH 8:30AM-11AM Friday By Appointment

MTH 215: Introduction to Linear Algebra

Texas A&M University - Central Texas PSYK EDUCATIONAL PSYCHOLOGY INSTRUCTOR AND CONTACT INFORMATION

COURSE WEBSITE:

ITSC 2321 Integrated Software Applications II COURSE SYLLABUS

Class Mondays & Wednesdays 11:00 am - 12:15 pm Rowe 161. Office Mondays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

BA 130 Introduction to International Business

FINN FINANCIAL MANAGEMENT Spring 2014

The Heart of Philosophy, Jacob Needleman, ISBN#: LTCC Bookstore:

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Introduction. Chem 110: Chemical Principles 1 Sections 40-52

Activities, Exercises, Assignments Copyright 2009 Cem Kaner 1

George Mason University Graduate School of Education Program: Special Education

Required Text: Oltmanns, T. & Emery, R. (2014). Abnormal Psychology (8th Edition) ISBN-13: ISBN-10:

DEPARTMENT OF THE AIR FORCE AIR UNIVERSITY (AETC)

Android App Development for Beginners

CENTRAL MAINE COMMUNITY COLLEGE Introduction to Computer Applications BCA ; FALL 2011

CLASS EXPECTATIONS Respect yourself, the teacher & others 2. Put forth your best effort at all times Be prepared for class each day

Course Policies and Syllabus BUL3130 The Legal, Ethical, and Social Aspects of Business Syllabus Spring A 2017 ONLINE

Transcription:

CS321 Syllabus: Software Requirements/Design Modeling CS 321 gives an introduction to principles and techniques used in software engineering: Course Outcomes An understanding of all phases of the software engineering lifecycle (requirements, design, implementation, testing, deployment, maintenance). An understanding of several software lifecycle models including both prescriptive and agile models and knowledge of tradeoffs among these models. An ability to create and use UML models to develop and document software analysis and design artifacts. An understanding of fundamental project management and leadership issues for software teams. An ability to apply software engineering methods to address the requirements and design phases of a large software project. Prerequisite CS 321 will have a software engineering project that requires student to participate in working teams where students organize, manage, and practice a software engineering project. This will be a design project with some prototype implementation. See the project page for more details. CS 321 includes Writing Intensive (WI) activities that, together with those of CS 306, meet the GMU WI Requirements in the BS CS Program (http://wac.gmu.edu). This means you will write 1750 graded words (or about 7 standard pages). You will get feedback on this writing, and be able to resubmit revisions based on the feedback. For this course, part of the writing will include an individual essay on your experiences working with your team. C or better in CS211 Comment [GG1]: Syllabus contains WI statement Comment [GG2]: Students are required to write 1750 words (this course is ½ of the CS WI course requirement). Comment [GG3]: Syllabus describes that the instructor will provide feedback on writing. Comment [GG4]: Students are required to write at least 1 assignment (this course is ½ of the CS WI course requirement). Professor Contact Information Dr. Kinga Dobolyi Office: Engineering (Rm. 4440) Email: kdobolyi@gmu.edu Phone: 703 993 4198 http://www.cs.gmu.edu/~kdobolyi/cs321/ Office Hours: Tuesday 12:00pm 2:00pm, Thursday 12:00pm 1:00pm, or by appointment. Please email the professor at least 48 hours in advance when seeking an appointment. https://cs.gmu.edu/~kdobolyi/cs321/ Page 1 of 11

TA Contact Information Textbook Please see Piazza for GTA information None required. Course Tools Discussion board: Piazza Subversion (SVN) tools (free): Tortoise SVN - SVN client for Windows only SCPlugin - SVN client for Mac OSX (but NOT Snow Leopard) svn - command line (Windows version in link) (Mac version built in to OSX) UML Tools: Netbeans with UML plugin Violet UML (free) - Open source UML tool - Simple, looks good, but sometimes hard to get exactly what you want ArgoUML (free) - Open Source UML tool - Previous classes did not like this tool, but it has more features than Violet IBM Rational Software Architect - Very mature UML and architecture tool Project Scheduling Tools: OpenProj (free) - Open source version of MS Project Microsoft Project - Industry standard project scheduling tool Email I will use email to send information about the course, ask questions, etc... You must check your GMU email account. If you prefer to use another account, that is okay, just forward your GMU email to your preferred account. Quizzes (20%) In-class assignments (5%) Project assignments (40%) Essay (10%) Final Exam (25%) Comment [GG5]: Syllabus describes grading criteria for all major writing assignments. Final course grades are calculated as follows: Grading A+ (>= 98.0%) A (>= 92.0%) A (>= 90.0%) B+ (>= 88.0%) B (>= 82.0%) B (>= 80.0%) C+ (>= 78.0%) C (>= 72.0%) C (>= 70.0%) D (>= 60.0%) F (< 60.0%) Contesting of grades on any/all submissions must be requested within one week of the item's return. No grade changes will be considered subsequent to that deadline, or after the final exam meeting. https://cs.gmu.edu/~kdobolyi/cs321/ Page 2 of 11

Group members must participate equally in project assignments; the professor reserves the right to assign a zero to any student for any deliverable retroactively, if it turns out that nothing of academic merit was contributed to the assignment by any individual. It is up to students to prove their participation on deliverables, and the professor will examine ONLY svn logs in the event of any disputes of participation. Make sure you are using svn, and using it through your login. This course uses a flipped classroom approach. I have provided links to content on Youtube as a supplement to materials. The linked content is not owned by me, nor was it created by me, therefore I don't have any rights or control over what exists in the videos - view them at your own risk. Having said that, these are the popular and useful videos I found on Youtube for various lecture topics. Feel free to look for ones on your own, or let me know if you found a better one than anything I linked. If you do not want to view the videos, you do not have to; the slides contain all the information you're responsible for for quizzes, and the in-class exercises will allow you to practice the material and ask questions. Class Participation Students are expected to attend and actively engage in lectures. Most lectures will involve completing reading assignments at home and being prepared to take a quiz in class. Lectures are also used to solve in-class examples and work on the semester project. Lectures will not generally be used to introduce or review material, as that should be done in reading (or watching videos) at home. Groupwork will make up a large part of the students' grades. Students are expected to participate equally and fully in group assignments. Each deliverable will require students to complete the deliverable all, or in part, individually at first. The instructors will examine these individual assignments and adjust points for groupwork if students are found to not contribute adequately to draft deliverables. This class will have a large discussion-based component. I expect discussions to be civil, polite, and reasonable. Any student that acts in a rude, offensive, or disrespectful manner towards another student or the professor will automatically have their final grade in the course dropped half a letter grade without warning. Late Policy All assignments must be received by the deadline (submitted on Blackboard by 11:55pm on the date due if not otherwise noted). No late assignments will be accepted. All project assignments must be submitted online, through your team's repository, by 11:55pm on the day they are due. Quizzes We will have a short, five minute quiz at the beginning of almost every lecture, on reading material assigned for that day. The quizzes will be open-book, individual assignments, and will take the place of a midterm exam. https://cs.gmu.edu/~kdobolyi/cs321/ Page 3 of 11

Final Exam The final exam is closed book/notes. Honor Code All students are expected to abide by the GMU Honor Code. This policy is rigorously enforced. All class-related assignments are considered individual efforts unless explicitly expressed otherwise (in writing). Review the university honor code and present any questions regarding the policies to instructor. Cheating on any assignment will be prosecuted and result in a notification of the Honor Committee as outlined in the GMU Honor Code. Learning Disabilities Students with a learning disability or other condition (documented with GMU Office of Disability Services) that may impact academic performance should speak with professor ASAP to discuss accommodations. Other Useful Resources Counseling and Psychological Services (CAPS): (703) 993-2380 Writing Center: A114 Robinson Hall; (703) 993-1200 Ask a Librarian through the University Libraries Tentative Class schedule Date (start of week) Lecture Topics and Notes Readings and homework (to be completed by dates posted - everything is due at 11:55pm unless otherwise noted) 9/1 Class overview, project overview Spend 10 minutes in class trying to find a team. [10:30am section] Software engineering overview Read the Boehm paper for next class 9/3 Quiz on Boehm paper Boehm paper on software engineering Team Due (9/7): Complete the Team Formation deliverable (submitted through Piazza) found on the project page Individual Due https://cs.gmu.edu/~kdobolyi/cs321/ Page 4 of 11

(9/8): Prepare Use Cases topics (watch video, review slides) 9/8 Quiz on use cases In-class use cases exercises (found at end of slides) Use Case Introduction video Use Cases use case template (9/9): Use case homework - finish exercises from class, if (9/10): Prepare Requirements topics (review slides) 9/10 Quiz on requirements In-class requirements exercises (found at end of slides) Requirements (9/11): Requirements homework - finish exercises from class, if (9/15): Prepare class diagram topics (watch video, review slides) 9/15 Quiz on class diagrams In-class class diagrams exercises (found at end of slides) Class diagram introduction video Static analysis modeling (class diagrams) (9/16): Class diagram homework - finish exercises from class, if Team: Due (9/18): complete use cases diagram and descriptions https://cs.gmu.edu/~kdobolyi/cs321/ Page 5 of 11

9/17 Version control demo - take notes! Work on team assignments for use case diagrams Work on team assignments for use case descriptions deliverables, if Watch appropriate version control video as : Mac/command line (start at 2:16, go to 4:45 video), or Windows GUI (video) 9/22 Work on team assignments for requirements Team: Due (9/23): complete Requirements deliverable, if (9/24): Prepare dynamic analysis topics (watch videos, review slides and reading) 9/24 Quiz on dynamic analysis diagrams In-class dynamic analysis diagrams exercises (found at end of slides) Swimlane diagram video (first 5 minutes only) State diagram video (starting at minute 5:30) Sequence diagram tutorial chapter (through figure 10) (sorry, Youtube videos were horrible) Dynamic analysis modeling (9/25): Dynamic analysis diagram homework - finish exercises from class, if 9/29 Work on team assignments for class diagrams Team: Due (9/30): finish Class diagram deliverable, if (10/1): Prepare design topics (watch videos, review slides and https://cs.gmu.edu/~kdobolyi/cs321/ Page 6 of 11

reading) 10/1 Quiz on design In-class design exercises (found at end of slides) Factory Design Pattern video (stop at 2:30) Singleton Design Pattern video (stop at 3:40) Visitor Design Pattern video (stop at 9:00) Single Responsibility Principle video (stop at 4:30) Interface Segregation Principle video (stop at 4:30) Design 10/6 Work on team assignments for dynamic analysis diagrams 10/8 Continue to work on team assignments for dynamic analysis diagrams Team: Due (10/9): finish Dynamic analysis deliverables, if (10/15): Prepare management topics (watch videos, review slides and reading - only starred links) 10/15 Quiz on management (just starred items) Software Scheduling video* Project Management and Scheduling* schedule example Prescriptive software process models Agile software process models Individual Due (10/20): Imagine you have the method String triangletype(int side1, int side2, int side3). Write an exhaustive set of test cases, as you would have done for CS211, for this method. https://cs.gmu.edu/~kdobolyi/cs321/ Page 7 of 11

10/20 In-class testing exercises Start Testing techniques (10/22): Study testing topics from today 10/22 Quiz on testing Finish Testing techniques Unit testing demo (if necessary) 10/27 In-class pair programming 10/29 In-class pair programming, system and unit testing Team: Due (10/30): finish Implementation, if Team: Due (10/30): finish System and Unit Test cases, if (11/3): Read Findbugs paper for next class (11/5): Watch metrics video (slides will be discussed in class) (11/7): Run the Findbugs tool on the source code provided by the professor for the semester project. How many bugs did it flag? For https://cs.gmu.edu/~kdobolyi/cs321/ Page 8 of 11

11/3 Quiz on Findbugs Static analysis example research paper: Findbugs each bug, describe the warning, and then decide if it should be fixed, or not, and why. Write a 250 minimum word summary of your experiences reading the Findbugs paper and using the tool (part of this summary should address the questions just posed). Submit your assignment on BB (8 points) 11/5 Quiz on metrics video Software metrics video Metrics (11/10): Read readability paper for next class. 11/10 Quiz on readability paper Metrics example research paper: readability Individual: (Due 11/12): Prepare risk topics (watch videos, review slides and reading) 11/12 Quiz on risks In-class risk exercises Risk Management Risk management paper Individual Due (11/13): Risk management homework - finish exercises from class, if (11/17): essay outline in class (see project page) https://cs.gmu.edu/~kdobolyi/cs321/ Page 9 of 11

11/17 Technical writing instruction; Example of high-quality writing Review essay outline in class - meet with professor to discuss writing (5 pts) Comment [GG6]: Syllabus describes that the instructor will provide feedback on writing. 11/19 Begin essay writing in class - meet with professor to discuss writing (5 pts) Comment [GG7]: Syllabus indicates multiple class sessions that address different writing strategies. Comment [GG8]: Syllabus indicates required draft deadline with sufficient time for thoughtful faculty feedback and for student revision. 11/24 Work on essays - meet with professor to discuss writing if you've not met yet Individual: (Due 12/1): Prepare refactoring topics (watch videos, review slides and reading) Individual: (Due 12/3 - in class): essay draft 12/1 Quiz on refactoring Refactoring Introduction video 15 refactoring demos in Eclipse Refactoring and Code Smells 12/3 Guest speaker James Dressel from Agilex 12/8 Begin final review Sample final 1 Sample final 2 Sample final 3 12/10 Finish final review Final Exam: see the standard time on the George Mason Academic Calendar. The exam will be given in the regular classroom. In addition to the exam, your team should bring a laptop to demo your https://cs.gmu.edu/~kdobolyi/cs321/ Page 10 of 11

semester project. https://cs.gmu.edu/~kdobolyi/cs321/ Page 11 of 11