cse4939-09a - University of Connecticut
Download
Report
Transcript cse4939-09a - University of Connecticut
CSE 4939 (293)
CSE Design Laboratory
Prof. Alexander A. Shvartsman
Computer Science & Engineering Department
The University of Connecticut
371 Fairfield Way, Unit 2155
Storrs, CT 06269
[email protected]
http://www.engr.uconn.edu/~aas
(860) 486-2672
Acknowledgment: Based on a presentation by Prof. S. A. Demurjian, Jr.
CSE 4939
Course Goals
CSE 4939 (293): The “Second” Project Based Course
Follows CSE 261, 262, 263, 265, 268, 269
Similar Goals and Objectives but…
You control project - “Group Independent Study”
You make decisions, resolve problems, etc.
You apply your coursework and experiences
What is the Instructor’s Role?
Guide teams on potential project topics
Provide structural framework for the course
Present requirements for specifications, provide templates
Facilitate/organize meetings, respond to questions, etc.
CSE 4939
CSE 4939 Course Philosophy
CSE 4939: senior-level, team-based, design-oriented,
writing-intensive, implementation-heavy course
Demonstrate ability
to work as a group
with minimal or no guidance
Team organizes, plans, specifies, designs,
prototypes, implements, tests, reports, delivers!
Periodic updates
Current web repositories are highly recommended
CSE 4939
Course Process and Overview
Identify Problem
Develop Specifications
Interactions and Feedback
Explore Design Alternatives
Detailed Design and Testing
Implementation & Integration
Team Interactions and
Dynamics
Setting and Meeting
Milestones
Evaluating Success/Failure
CSE 4939
CSE Lab 1 (40XX / 26X)
First time through
Lots of guidance
Suggestions & advice
Instructor as manager
CSE 4939 (293)
Second Time
Minimal Guidance
Instructor as mentor,
facilitator, coordinator
Major design experience
- Implement / evaluate
Texts and Class Materials
Primarily project-specific – gathered by the team
CSE 4939 web site (tbe)
Assignments and auxiliary documents
Legacy CSE 293 web site at
www.engr.uconn.edu/~steve/Cse293/cse293.html
Older course materials made available on-line
Other examples of class materials/texts
Software Download: Acrobat reader, ghostview/ghostscript
Together Control Center - UML Tool
UML Explained, K. Scott, Addison Wesley
CSE 4939
Milestones with Dates
(Initial Schedule Subject to Change)
Project Proposal – 3 days after 1st class
Functional Specification – 3rd Class
Revised Specification – 4th class
High Level Design – 5th class
Detailed Design Extract(s) – 6th class
Development/Mgmt. Plan – 7th class
Release 1 / Report /Presentation – 9th class
Release 2 / Report /Presentation – 11th class
Release 2 / Report /Presentation –13th class
Final Report/User Manual – End of Semester
Final Student Assessment – End of Semester
CSE 4939
6
Specification!
Typical discussion
User to developer:
“The system is not operating as specified!”
Developer to user:
“No, the system is behaving exactly as specified!”
How can they both be right?
How to avoid this?
CSE 4939
7
Example: Using UML
Typical project will be UML Based
UML is a Language for Specifying, Visualizing, Constructing,
and Documenting Software Artifacts
What Does a Modeling Language Provide?
Model Elements: Concepts and Semantics
Notation: Visual Rendering of Model Elements
Guidelines: Hints and Suggestions for Using Elements in
Notation
References and Resources
Web: www.rational.com/uml/documentation.html
“The Unified Modeling Language Reference Manual”,
Addison-Wesley.
CSE 4939
UML Modeling Constructs/Diagrams
Static vs. Dynamic Perspectives
A Diagram is a View Into a Model
Presented From the Aspect of a Particular
Stakeholder
Provides a Partial Representation of the System
Is Semantically Consistent With Other Views
In the UML, There Are Nine Standard Diagrams
Static Views: Use Case, Class, Object, Component,
Deployment
Dynamic Views: Sequence, Collaboration,
Statechart, Activity
CSE 4939
9
UML Modeling Constructs/Diagrams
Classification by Capability/Timeline
Use-Case Diagrams
Class and Object Diagrams
Behavior Diagrams
Statechart Diagrams
Activity Diagrams
Interaction Diagrams
Sequence Diagram
Collaboration Diagram
Implementation Diagrams
Component Diagram
Deployment Diagram
CSE 4939
Relationship Between
Models and Diagrams
Use Case
Use Case
Diagrams
Sequence
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Collaboration
Diagrams
Diagrams
Scenario
Scenario
Diagrams
Statechart
Diagrams
Diagrams
CSE 4939
Use Case
Use Case
Diagrams
Use Case
Diagrams
Diagrams
State
State
Diagrams
Class
Diagrams
Diagrams
State
State
Diagrams
Object
Diagrams
Diagrams
State
State
Diagrams
Component
Diagrams
Diagrams
Models
Component
Component
Diagrams
Deployment
Diagrams
Activity
Diagrams
Diagrams
11
Semester Requirements
Summary
CSE 4939
Teams of 3 to 5 students
“W” course means 15 pages/team member
Revisions cycles count towards page total
Web-Page for each Team with all materials
Use of IDE or equivalent (e.g., Visual Studio,
Eclipse, etc.)
Source Code Control (Subversion or equivalent)
Team and Individual Contributions
Documentation
Packages/Requirements
All Written Documents and Specifications must be
submitted in PDF format
All Project Presentations Must be Done Using
Powerpoint (PPT)
Where multiple files are involved / needed submit
zipped files
Submissions via email to instructor (alternatives tbs)
CSE 4939
Projects Considered in the Past
Social/professional networking
Car dealership infosystem
People soft replacement
Online Poker package with statistics
Marklin Digital Trains
Atari 800 Renovation
Web-Based Journal Editor
Auditory Perception of Alphabet Letters
Heating System Design and Engineering
CSE 4939
Project/Team Web
Page/Documentation
Each Team MUST Develop a Web Page for their Project
See Links for Former Projects as Examples
Use To Post On-Going Documents
Augment Web Page with Detailed Design Documents
E.g., Together CC Generates Documentation
Frame Based HTML Resembles Java Doc
Make Sure you Select “All” Diagrams
Documentation of Java with Java Doc
Utilize Together Architect
Utilize IDE
CSE 4939
First Class: Tasks
Choosing Teams: 3-5 people
Self-Organized Teams
Instructor Approves Teams
Meet & Brainstorming
Remainder of Class
Exchange Email and Phone Numbers
Discuss Project Ideas
Visit Prior Web Pages
First Project Due Thursday – Expect Feedback on Friday
First Project Presentation – 2nd class
20 to 30 minutes per team
Copy of Slides/Create & Post on Web Page
CSE 4939