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
