cse4939-08-intro - University of Connecticut
Download
Report
Transcript cse4939-08-intro - University of Connecticut
CSE 4939 W
CS & E 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
Based on materials of Prof. S. A. Demurjian, Jr.
August 2008
Course Goals
CSE 4939: The “Second” Project Based Course
Follows CSE 261, 262, 263, 265, 268, 269 (old numbers)
Similar Goals and Objectives But…
You Control Project -- “Group Independent Study”
You Make Decisions, Resolve Problems, etc.
You Apply your Coursework/Experiences
What is the Instructor’s Role?
Provide potential project topic(s), accept team proposals
Serve as a manager and evaluator
Organize meetings, available for questions, etc.
Approve direction, suggest alternatives, evaluate results
August 2008
Course Philosophy
CSE 4939
August 2008
Demonstrate Ability
to Work as a Group
with Minimal or No Guidance
Team:
Organizes, Plans, Scopes, Designs, Prototypes,
Documents, and Delivers!
Periodic updates
Maintenance of current web repositories
Course Process and Overview
Identify Problem
Develop Detailed Specification
Interactions and Feedback
Explore Design Alternatives
Detailed Design and Testing
Implementation and Integration
Team Interactions and
Dynamics
Setting and Meeting
Milestones
Evaluating Success/Failure
August 2008
CSE 26X (old numbers)
First Time Through
Lots of Guidance
Suggestions/Advice
Instructor as Hands-On Manager
CSE 4939
Second Time
Minimal Guidance
Instructor
- Mentor and Troubleshooter
- Coordinate Major Design
- Experience
- Evaluate Results
Texts and Class Materials
Primarily project-specific – gathered by the team
CSE 4939 web site will be at
www.engr.uconn.edu/~aas/cse4939/cse4939.html
Course materials made available on-line
Previous course example, assignments, documents at
http://www.engr.uconn.edu/~steve/Cse293/cse293.html
Other examples of team-specific class materials/texts
www.togethersoft.com
www.eclipse.org
Together Control Center - UML Tool
UML Explained, K. Scott, Addison Wesley
Tempo from www.veromodo.com – more ambitious
August 2008
Milestones with Dates
(Initial Schedule Subject to Change)
Project 1: Project Proposal – 3 days after 1st class
Project 2: Initial Specification – 3rd Class
Project 3: Part I - Revised Specification – 4th class
Project 3: Part II – Initial Design – 5th class
Project 3: Part III - Revised Design – 6th class
Project 4: Prototyping/Mgmt. Plan – 6th class
Project 4: Proto/Dev-t Report 1/Presentation – 9th class
Project 4: Proto/Dev-t Report 2/Presentation – 11th class
Project 4: Proto/Dev-t Report 3/Presentation –13th class
Project 4: Final Report/User Manual – End of Semester
Project 4: Final Student Assessment – End of Semester
August 2008
6
Specification: What Is It? And Where?
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?
August 2008
7
Projects Using UML
Typical project may 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, 1999.
August 2008
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
August 2008
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
August 2008
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
August 2008
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
See requirements on web page
Summary
August 2008
Teams of 5 or 6 students
W course means 15 pages/team member
Revisions cycles count towards page total
Web-Page for each Team with all materials
BLOG for each team member
Use of IDE (e.g., Visual Studio, Eclipse, etc.)
Source Code Control (Subversion)
Preliminary
Documentation Requirements
All Project Specifications (Written Documents) Must be Done
using:
MS Word (unless there is an acceptable reason not to)
All Project Presentations Must be Done Using Powerpoint (PPT)
Help yourselves: Utilize Samples on Web Page for UML
and CT Insurance Dept. Link for Guide
Submit Both Hard Copy and Electronic Versions
Hard Copy Produced on Laser Printer
Electronic as a Directory zipped
TeamNameProjX.zip
August 2008
Additional Project Ideas
Consistent read/write data service for networks
Talk to me
Use experimental IDE for the (new) Tempo language to model
and simulate Internet Supercomputing
Talk to me
Toy train control system: Marklin Digital Trains
Talk to Prof. Demurjian
Traffic monitoring with the help of USB GPS systems
Talk to Prof. Demurjian
Connecticut November 2008 Election hardware audit
Talk to me
August 2008
14
Example Project: Web Auction System
Design an online community-based auction-type web-portal
based on a novel price discrimination technology that
enables considerably better discount opportunities for
buyers as well as
maximization of profit margin for sellers.
The methodology is new, different from E-bay, Priceline, etc.
It was developed recently by a Prof. Kiayias in collaboration
with RSA Security and is currently considered for
commercialization.
The system will be web-based and include
(1) front end for sellers and buyers,
(2) reputation system,
(3) market coordination.
August 2008
15
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
For example, 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
August 2008
Today’s Tasks
Choosing Teams - 3 Teams of 5-6 people
Self-Organized Teams
Instructor Sets Teams
Meet & Brainstorming
Remainder of Class
Exchange Email and Phone Numbers
Discuss Project Ideas
Visit Prior Web Pages
First Project Due – 3 days after first class at 9am - Expect
Feedback by End of Day
First Project Presentation – 2nd class
5 to 10 minutes per team
Copy of Slides/Create & Post on Web Page
August 2008