1 Software Engineering--Introduction. 2 1.Syllabus, grading, schedule--class + lab--will all be on www.ece.uc.edu/~cpurdywww.ece.uc.edu/~cpurdy 2.Contact.

Slides:



Advertisements
Similar presentations
Todays Agenda 1. Review Project Management Principles 2. Project Management Institute (PMI) Framework 3. PMI Processes 4. Break into Project Teams and.
Advertisements

10 Software Engineering Foundations of Computer Science ã Cengage Learning.
Copyright 2009  Develop the project charter: working with stakeholders to create the document that formally authorizes a project—the charter  Develop.
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
COURSE PREVIEW Course Name Course Director: Course Coordinator:
What do Computer Scientists and Engineers do? CS101 Regular Lecture, Week 10.
Design of Web-based Systems IS Development: lecture 10.
Chapter 15 Design, Coding, and Testing. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Design Document The next step in the Software.
1 SYS366 Week 1 - Lecture 2 How Businesses Work. 2 Today How Businesses Work What is a System Types of Systems The Role of the Systems Analyst The Programmer/Analyst.
General information CSE 230 : Introduction to Software Engineering
CS 501: Software Engineering Fall 2000 Lecture 4 Management I: Project Management.
Fundamentals of Engineering for Honors - Team Project P. 1 Spring Quarter 2003 Engineering H193 Project Notebook & Brainstorming Sketches Week 1 Day 2.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
COMP4710 Senior Design Richard Chapman. Outline What is Senior Design? What is Senior Design? Course Structure Course Structure End of Cycle Binder End.
Course Technology Chapter 3: Project Integration Management.
Section 4.0 Project Implementation. Factors that Ensure Success  Update the project plan  Stay within scope  Authorized change implementation  Providing.
Chapter 4 Database Management Systems. Chapter 4Slide 2 What is a Database Management System (DBMS)?  Database An organized collection of related data.
Planning. SDLC Planning Analysis Design Implementation.
Welcome to CMPE003 Personal Computer Concepts: Hardware and Software Winter 2003 UC Santa Cruz Instructor: Guy Cox.
Project Management and Scheduling
Systems Analysis and Design: The Big Picture
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 3 Slide 1 Chapter 15 System Implementation.
Computer Network Fundamentals CNT4007C
FINAL DEMO Apollo Crew, group 3 T SW Development Project.
Computers & Employment By Andrew Attard and Stephen Calleja.
1 Chapter 4: Project Integration Management. 2 Learning Objectives Describe an overall framework for project integration management as it relates to the.
Best Practices By Gabriel Rodriguez
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 2 (Chapter 2) Information System Building Blocks.
Course Introduction Software Engineering
SCSC 311 Information Systems: hardware and software.
AGENDA Introduction to Virtual Mechanic Demo Architectural diagram and summary QA steps and user acceptance testing Bugs in the software Feedback from.
Software Requirements Engineering CSE 305 Lecture-2.
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
1.  Describe an overall framework for project integration management ◦ RelatIion to the other project management knowledge areas and the project life.
Software Engineering Management Lecture 1 The Software Process.
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
How to start Milestone 1 CSSE 371 Project Info There are only 8 easy steps…
Slide 1 Project Management Chapter 4. Slide 2 Objectives ■ Become familiar with estimation. ■ Be able to create a project workplan. ■ Become familiar.
Applied Software Project Management
INFO 424 Team Project Practicum Week 2 - Launch report, Project tracking, Review report Glenn Booker Notes largely from Prof. Hislop.
CS 501: Software Engineering Fall 1999 Lecture 6 Management I: Project Management.
Introduction Fall 2001 Foundations of Computer Systems Prerequisite:91.166* or * Section A Instructor: Dr. David Hutchinson Office:
CEN First Lecture CEN 4010 Introduction to Software Engineering Instructor: Masoud Sadjadi
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
System Users and Developers
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
T Iteration Demo Tikkaajat [PP] Iteration
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
~ pertemuan 4 ~ Oleh: Ir. Abdul Hayat, MTI 20-Mar-2009 [Abdul Hayat, [4]Project Integration Management, Semester Genap 2008/2009] 1 PROJECT INTEGRATION.
1 Software Engineering--Introduction. 2 1.Syllabus, grading, schedule--class + lab--will all be on 2.Contact.
Team-Based Development ISYS321 Managing the Information Systems Project.
Computer Networks CNT5106C
1 Sean Aluoto Anthony Keeley Eric Werner. 2 Project Plan Overview Project Lifecycle model Time line Deliverables Organization plan Risk management Design.
Engineering H193 - Team Project Gateway Engineering Education Coalition P. 1Spring Quarter Lab Day – Controller Lab 1 Brief Follow-up from Wednesday Grading.
Systems Analysis Lecture 5 Requirements Investigation and Analysis 1 BTEC HNC Systems Support Castle College 2007/8.
PERTEMUAN-2 Chapter 2. Project Selection and Management
Computer Network Fundamentals CNT4007C
Software Engineering--Introduction
Computer Networks CNT5106C
Overview of System Engineering
Computer Networks CNT5106C
homework assignment due Feb 23
CS 8532: Advanced Software Engineering
Computer Networks CNT5106C
Software Testing Lifecycle Practice
Presentation transcript:

1 Software Engineering--Introduction

2 1.Syllabus, grading, schedule--class + lab--will all be on 2.Contact information: C. Purdy / P. Janga (TA) 3. Java--to be learned in lab--you will develop basic skills, “expert” status not required 4. teams--we will form these by next Monday--3-4 per team 5. project--most will be done in lab 6. passing 493/495: you must pass both classes; if you fail one, you will receive an F in both; otherwise you will receive a separate grade in each of these classes 7. grading: 493 | cell phones--for each call you get in class, you lose 3 points on your final grade 9. Electronic communication (text messages, laptops, etc.): NOT ALLOWED in lecture as these distract from class discussions 10. Reading assignments: please read BEFORE class & be ready to discuss in class (there will generally be “low stakes writing” for these) 11.Group work / individual work: we will do a lot of each--follow rules for each assignment. 12.Lab sections: formally there are 2 lab sections. In practice we will treat these as one big section. Most weeks we will ALL meet in 890 Rhodes for about 1 hour of discussion, then each team will work together. I will be available to work with you most of the time and Mr. Janga will also be available. Course Administration

3 assignment (due WEEK 3 in lab): Team assignment In lab your team will specify, design, implement, and test a (java) program consisting of at least one component built by each team member. Use this mini-project to explore the planning and management concepts which you will apply to the quarter project. Based on your experiences with this mini-project, fill in DETAILED answers to the questions below. This will be CHAPTER 1, RESOURCES AND PLANNING, for your quarter project report. RESOURCES: List all personnel and skills of each (Java experience, software project experience, good writing skills, etc.) List the number of hours each team member has available to devote to the project over the quarter. List all hardware and software resources that will be used for development. PLANNING: Describe the team organization. List who will be assigned to oversee each of the following: documentation; testing; version control and backups; productivity; overall management (number of managers depends on team organization chosen). Describe how the team members will communicate and coordinate their work. Give the time and place of weekly team meetings (at least one meeting per week is required). Describe completely the process model you will follow and explain why this model is appropriate for the project and for your available resources. Describe completely how you will handle version control and backups. Give the formulas you will use for calculating productivity (you must measure individual and team time spent and you must measure how much you have produced—weekly and overall)—see update on next slide Describe your plan for testing. As we will discuss later, it is important that each component be tested by someone who is not the author. It is also important that you follow an incremental plan for integrating components into your system, testing the whole system each time a new component is integrated. As you develop components, you should also be building up a set of test cases which can be run each time a change is made to the system. Provide a RISK TABLE for your project (see lecture notes) Provide both a GANTT CHART and TRACKING DOCUMENT for your project (see lecture notes). You can build the Gantt chart using the project development schedule given on the web page for 495. Describe the CODING STANDARDS you will use (see lecture notes). Describe how you will produce up-to-date documentation (content and form—online?) in parallel with the project. First “Project”Assignment (Preview)

4 The lectures and assignments in this course will focus on developing knowledge and skills for: effective teamwork project management software development "lifelong learning" In this course we will be concentrating on the process of developing software, not on technical skills in specialized areas such as database management, wireless computing, etc. The skills we will learn can also be applied to hardware projects and to mixed hardware / software projects. Course Themes

5 People, Product, Process--> Project

6 Software Life Cycle

7 People (Stakeholders)—Roles, Goals, Functions RoleResponsibility CustomerHigh level requirements, project scope UserWhat tasks must system carry out? What is level of expertise? Business ManagerOrganize, track work Technical ManagerManage technical issues DeveloperDesign, implement, test Technical WriterDocumentaion, manuals Goals / Functions – conflicts?

8 Questions to Think About some points to ponder: "software crisis"--systems become more and more complex: --what can we automate? --how can we verify/ test such complex systems? "hardware/software" boundary --how can we do "co-design"? --where is the boundary? types of software systems --how do important application-specific systems differ? --what impact do differences have on development? --which systems will be most important in the coming years?

9 Important System Types Some Common System Types—what is the same/different? Databases Communication systems Entertainment systems Web-based applications Medical systems Manufacturing / transportation systems Simulation programs to support engineering and science Parallel/distributed applications Embedded systems Intelligent systems / robots Utility software for computer systems (compilers, e.g.) Utility software for general users (spreadsheets, e.g.)

10 References

11 “Mythical Man-Month”

12 Why is Managing Programming Hard?

13 System Architect

14 Separate Architecture, Implementation

15 Process Model

16 Productivity