1 / 28

CSC 480 Software Engineering

CSC 480 Software Engineering. Lecture 1 August 21, 2002. Topics. Welcome to CSC 480 Course Roadmap Introduction to Software Engineering. Goals. SE activities and processes Object orientation: concepts and principles Team-based projects leading to working applications

Download Presentation

CSC 480 Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSC 480Software Engineering Lecture 1 August 21, 2002

  2. Topics • Welcome to CSC 480 • Course Roadmap • Introduction to Software Engineering CSC 480 -- Fall 2004

  3. Goals • SE activities and processes • Object orientation: concepts and principles • Team-based projects leading to working applications • Team activities and role playing • Advanced programming/system development techniques CSC 480 -- Fall 2004

  4. Textbook & References • Software Engineering: An Object-Oriented PerspectiveEric J. Braud. Wiley & Sons, 2001 • Software Development for Small Teams: An RUP-Centric ApproachGary Pollice et al. Addison-Wesley, 2003 • Introduction to the Personal Software Process(PSP), & Introduction to the Team Software Process(TSPi)Watt S. Humphrey. Addison-Wesley, 1997 & 2000 CSC 480 -- Fall 2004

  5. Special Features • Put ideas into reality conceptualization  specification  high-level and detailed design  implementation & testing  next iteration, if needed • Valuable teamwork experience • Form a team with a common set of goals • Choose a role (or roles) that can match your interest and talent • Respect differences and perform as a whole • Synergy: C(n) > n * C(1) • Healthy competition between teams CSC 480 -- Fall 2004

  6. Team Lineup – Couch • Martin Zhao, PhD • Teaching Prog, SE, DB & OOAD @ Mercer • Engaged in S/W development and integration @ two IT startups • Other background -- computer aided design and modeling • Committed to a enjoyable class experience • For both you all and me CSC 480 -- Fall 2004

  7. We Want to Know You... • Background: • Major • Courses taken • Strength/interest in computing • Programming/system development experience • Career goals • Expectations for the class CSC 480 -- Fall 2004

  8. Team Lineup – Players • Baptiste, Derrick • Boisclair, William C • Doriot, Clint • Dykes, Dawn C • Haeusler, Peggy • Haney, Ricky L • Longsdorf, Thomas W • Luong, Quang V • Michael, Jason CSC 480 -- Fall 2004

  9. Team Lineup – Players (cont’d) • Nance, Micah A • Palmer, Timothy F • Rogers, Charlie R • Roper, Adam R • Scott, Dejuan • Smith, Joshua A • Thorogood, Charles • Wesson, Jamerson D • Young, Nathan S CSC 480 -- Fall 2004

  10. Course Roadmap • Lectures • Processes & team issues (PSP, TSPi, RUP) • Methodologies (e.g., OOAD using UML) • Special topics (e.g., GUI, client-server) • Practices – Do Software Engineering! • Individual and team projects (or workshops) • Logs, documentation, and presentations CSC 480 -- Fall 2004

  11. Individual Assignments • Programs • Essential PSP training • Homework • Topics may not be directly applicable to projects in class • Workshops • Exposure to new technologies CSC 480 -- Fall 2004

  12. Team Assignments • Teams each with four or five developers • Team formation and project selection • Project kick-off and planning • Specification and design • Implementation and testing • Presentation and demonstration • Postmortem – process and peer review CSC 480 -- Fall 2004

  13. Weekly Timesheet • Track your work from Friday to Thursday • Turning in your first timesheet by 08/27 (the 2nd Friday) • Weekly Summary Form • Class cycle: Friday to Thursday • Major accomplishments (up to three) • Issues/problems (up to three) • Turn in printouts and keep your record CSC 480 -- Fall 2004

  14. Score Breakdown CSC 480 -- Fall 2004

  15. Introduction • What is Software Engineering? • What is the difference? • Computer Science vs. Software Engineering • Software Engineering vs. other engineering • What Activities are involved? CSC 480 -- Fall 2004

  16. Software • Software is not just the programs! • A software system usually consists of • Requirement documents • Design specifications (diagrams, etc) • Programs (code, executables and config data) • Installation and user manuals CSC 480 -- Fall 2004

  17. Engineering The profession in which a knowledge of the mathematical and natural sciences gained by study, experience, and practice …... -- Accreditation Board for Engineering and Technology CSC 480 -- Fall 2004

  18. Engineering The profession in which a knowledge of the mathematical and natural sciences gained by study, experience, and practice is appliedwith judgment to develop ways to utilize, economically, the materials and forces of nature for the benefit of mankind -- Accreditation Board for Engineering and Technology, 1996 CSC 480 -- Fall 2004

  19. Software Engineering • A discipline which • Applies mathematical and computer sciences • Utilizes (mostly) human intelligence, economically, for the benefit of mankind • Based on greatly wise judgment CSC 480 -- Fall 2004

  20. Software Engineering Vs. CS • CS is more one the theoretical side • Theories, methods, etc • Essential knowledge for software engineers • Software Engineering is practical • Applying CS theories and methods • Hopefully, in a formal (NOT ad hoc) way • Don’t just learn Software Engineering. Do it! CSC 480 -- Fall 2004

  21. Software Vs. Other Engineering • Software is soft • Mostly human intellectual effort • Need for physical resources (e.g. raw materials) is usually not the first priority • Products are intangible and progress may not be visible • With applications in virtual all industries, previous experience may not be easily adopted CSC 480 -- Fall 2004

  22. Essential Activities • Describing the intended software product • Designing the product • Implementing the product(i.e. programming it) • Testing the parts of the product • Integrating the parts and testing them as a whole • Maintaining the product CSC 480 -- Fall 2004

  23. Essential Activities (cont’d) • Defining the software development process to be used • Managing the development project CSC 480 -- Fall 2004

  24. The Four P’s Of SE • People • Stakeholders in different roles • Process • The way activities are carried out • Project • Activities required to produce the artifacts • Product • All the artifacts (executables, documents, etc) CSC 480 -- Fall 2004

  25. People (by whom it is done) Process (the manner in which it is done) * Project (the doing of it) Product (the application artifacts) CSC 480 -- Fall 2004

  26. Quality • Delivering quality products is at the heart of any engineering • High-quality != perfect • The key is to define the acceptance level • Methods to attain quality level: • Inspection (introduced in chapter 1) • team-oriented process for ensuring quality • applied to all stages of the process. CSC 480 -- Fall 2004

  27. Quality • Methods to attain quality level: (cont’d) • Formal methods(introduced in chapter 1) • mathematical techniques to convince ourselves and peers that our programs do what they are meant to do • applied selectively • Testing • at the unit (component) level (chapter 8) • at the whole application level (chapter 9) • Project control techniques(chapter 2) • predict costs and schedule • control artifacts (versions, scope etc.) CSC 480 -- Fall 2004

  28. Assignments • Read sections 8 & 9 • Propose answers to Ex’s 1 & 2 • 1(b): consider SE and CS • 2: give a sentence or two to describe each of the 4P’s • Propose additional questions that may be asked on materials covered in Introduction of our text CSC 480 -- Fall 2004

More Related