1 / 17

Agenda

Join the CSc.4350/CSc.6350 Software Engineering course to gain proficiency in analysis, design, and team collaboration in building complex software systems. Learn UML, modeling methods, and managerial knowledge through lectures and a team project.

ruggieri
Download Presentation

Agenda

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. Agenda • Syllabus • Class project • Project topics • Finish questionnaire (5 minutes) • Self-introduction to help team formation

  2. CSc 4350 / CSc 6350SOFTWARE ENGINEERING • Instructor: Xiaolin Hu • Web: www.cs.gsu.edu/~cscxlh • Email: xhu@cs.gsu.edu • Phone: 404-463-9857 • Office: One Park Tower 1438 • Hours: Mon, Wed 2:40pm-4:10pm or by appt • TAs:Altun, Gulsah galtun@student.gsu.edu Zhuang, Jianwei jzhuang1@student.gsu.edu • Course Web Page:http://www.cs.gsu.edu/~cscxlh/CSC4350_6350/csc4350_6350.htm

  3. Textbooks • Textbook (Required) • Bernd Bruegge and Allen DutoitObject-Oriented Software Engineering: Using UML, Patterns, and Java (2nd edition) Prentice Hall, 2004 • Available from Bookstore. • Optional Readings • Martin FowlerUML Distilled (3rd edition) Addison-Wesley, 2004 • Shari L. Pfleeger Software Engineering, Theory and Practice Prentice Hall, 1998 • Other Recommended Books • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides: “Design Patterns”, Addison-Wesley, 1996. • Grady Booch, James Rumbaugh, Ivar Jacobson, “The Unified Modeling Language User Guide”, Addison Wesley, 1999. • K. Popper, “Objective Knowledge, an Evolutionary Approach, Oxford Press, 1979.

  4. Requirements for this Class • You are proficient in a programming language, but you may have no experience in analysis or design of a system • You want to learn more about the technical aspects of analysis and design of complex software systems • You wan to acquire experience to work on a “real” project in a “real” team setting environment • You have passed Data Structures course

  5. Objectives of the Class • Comprehend and appreciate Software Engineering: • Build complex software systems in the context of frequent change • Understand how to • produce a high quality software system within time • while dealing with complexity and change • Acquire technical knowledge • Acquire managerial knowledge • Acquire team work experience on software development

  6. Acquire Technical Knowledge • Understand System Modeling • Learn UML (Unified Modeling Language) • Learn different modeling methods: • Use Case modeling • Object Modeling • Dynamic Modeling • Issue Modeling • Component-Based Software Engineering • Learn how to use Design Patterns and Frameworks

  7. Understand the Software Lifecycle Process vs Product Learn about different software lifecycles Greenfield Engineering, Interface Engineering, Reengineering Acquire Managerial Knowledge

  8. Emphasis is on team-work • Participate in collaborative design • Work as a member of a project team, assuming various roles • Create and follow a project and test plan • Create the full range of documents associated with a software product • Complete a project on time

  9. Course format • A Single Semester Course • Lectures: Theoretical foundations and background • Project: Learn how to apply them in practice • Lectures and Project work are interleaved • A Team Project Course • Student teams will be working on projects of their choice • Cheating Rule • You cheat if you do not acknowledge the contribution made by others.

  10. Electronic Communication • Web Page: www.cs.gsu.edu/~cscxlh/CSC4350_6350/csc4350_6350.htm • Project deadlines, samples, links, discussion, etc. • WebCT: • Grades • Team communication (message board, etc.) • Electronic delivery of documents and programs • Signup to WebCT if you haven’t done so already from www.gsu.edu

  11. Class Policies • Policy on academic honesty • Last date for withdrawal • Final exam • Attendance • Others

  12. Grading 43506350 Midterm 20% 20% Quizzes 10% 10% Project 40% 40% Final Exam 30% 20% Term Paper 10% Project Grading Deliverables 42% Final Report 20% Presentation 23% Peer Evaluation 10% Attendance at presentations 5% • Letter Grade • A: 90+ • B: 80-89 • C: 70-79 • D: 60-69 • R: 59 and below

  13. Class Project • The project must not be trivial, but at the same time it should not be too ambitious, so that you can complete on time.At least 4000 (four thousand) lines of code are required. This includes reasonable amount of comment lines as well. • The project must be coded in either Java or C++. • The system must be easy to test; thus, interactive systems are required. • The project will include 6 Deliverables, a final report, a 5 minutes Intermediate presentation, and a 30 minutes final presentation.

  14. Project Milestones (Deliverables) • Team and Project selection (send email to xhu@cs.gsu.edu before Aug 31) • Team Description & Project Management (due Sep 3rd) • Requirements Elicitation Report • Analysis Report • System Design Report • Object Design Report • Rationale Management and User’s Guide • Final Project Report (including testing, code, and all the previous documents) (Reports 2-7 are graded, 7% each, total of 42%, final report 20%)

  15. What do you have to do right now? • Form a team of up to 4 people • Appoint a team coordinator, choose a team name, decide on a project topic (problem) to work on. • Team coordinator contacts the instructor by email at xhu@cs.gsu.edu: • Name of the team (acronym) • Team members’ names, email addresses, web pages (if there are),whether undergrad/MS/Ph.D student, what year in school • Project topic (see suggested topics, next slide) Coordinator also CC this message to all team members. Teams and their projects will be announced in the course web page as soon as they are reviewed and approved by the instructor. • Every student prepares his/her resume (to be included in the documentation)

  16. Team and Project Selection (due Sep 3) Team coordinator submits 1st report on Sep 3 at the beginning of the class): • Team Description • Team name, team members’ names and contact information (email, web, etc.), team coordinator selected • Roles: Who is client, who is developer (for the first phase) • Project Description • Project topic, a few paragraphs describing the problem • Programming Language of Choice (Java or C++, Java preferred) • Team Members’ Resumes • Signed Copy of the Contract • A Gantt chart describing the project schedule • More detailed requirements will be announced on the class web.

  17. Suggested Project Topics • Student registration system • Interactive text editor • Personal finances manager • A car racing game system • Flight reservation • A computerized system for a Medical Office or an Insurance Company • Hotel reservation system • Some kind of training system • A game of life simulation (requirements will be discussed with group that selects this topic). • A shopping system – perhaps something like Amazon.com. • System for a small company to track customer/vendor databases, sales orders; audit trails • Menu driven inventory control system for a small business • Personal calendar maintainer • A computerized system for a Mechanical Workshop (Car Repairs) NOTE: All database development for any topic chosen will and must be done using the programming language “chosen”. No DBMS allowed.

More Related