Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for...

10
Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    1

Transcript of Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for...

Page 1: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

Introduction to the Class Projectand Computing Facilities

CSCI 599 – Software Engineering for Embedded Systems

September 3, 2002

Page 2: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

Class Project Logistics• 10 teams of 3 students• 1 PocketPC per student

– wireless support– NexiCams (as needed)– keyboards (as needed)– YBIYBI

• Prism-MW– Java – EVC++

• Prism-DE if desired• DRADEL if desired

Page 3: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

Embedded Systems Lab• Located in KAP 103• 12 Windows machines

– JDK– MS Visual Studio– MS Office– ethernet connections– wireless setup

• Use for the class only!– combination lock to the Lab– each student must read the USC Ethics Code– will be required to sign a declaration of fair use– the Lab will be checked periodically after-hours

Page 4: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

What You Will Be Able to Do

Page 5: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

What You May Choose to Do

Page 6: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

How Much Prism?

Overall Design of Prism-MW – YES!

ComponentThreadConnectorThread

ArchitectureAdapter

Notification Request

Message

Se rializab le

IScaffo ld

Connector

IArch ite ctu re

Arch ite ctu re Eve n tConstan ts

ICompone n t

Peer

Component

IConne cto r #top

#bo ttom

#side

AdminComponent

Architecture

Brick

#scaffo ld

Address top Id

bo ttomId

side Id

A

D

CB

Page 7: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

How Much Prism?

Prism-MW API – YES!

Architecture

Architecture()Architecture(name : String)Architecture(name : String, n : int)start() : voidstop() : voidshutdown() : voidhandle(r : Request) : voidhandle(n : Notification) : voidaddComponent(comp : Component) : voidaddConnector(conn : Connector) : voidweld(conn : Connector, comp : Component) : voidweld(comp : Component, conn : Connector) : voidweld(conn1 : Connector, conn2 : Connector) : voidremoveComponent(comp : Component) : voidremoveConnector(conn : Connector) : voidsetThreadCount(n : int) : voidgetThreadCount() : intthreadFunction() : voidnotifyArchitecture() : voidsearchFIFO(f : SynchronizedFIFO, o : Object) : Object

Component

Component(name : String)Component()Component(name : String, junk : String)send(r : Request) : voidsend(n : Notification) : void

ComponentThread

ComponentThread()ComponentThread(s : String)run() : void

Connector

Connector()Connector(name : String)handle(r : Request) : voidhandle(n : Notification) : void

ConnectorThread

ConnectorThread(n : String)

Message

Message()Message(name : String)name() : StringaddParameter(parameterName : String, parameterValue : Object) : voidhasParameter(Name : String) : booleanremoveParameter(Name : String) : voidgetParameter(Name : String) : Object

Notification

Notification()Notification(Name : String)

Request

Request()Request(Name : String)

Page 8: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

How Much Prism?

Internal Design of Prism-MW – Perhaps

Component BComponent A

Component D

R1

N1

R2

R3

N2

send

Req

uest

hand

leR

eque

stConnector C

Thread Pool

R

X R

Page 9: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

Assigning Project Teams

• You may form 3-person teams– no exceptions unless class size is not a multiple of 3

• Mail me and the TA– team name (optional)– team member names– team member USC ID numbers

• Otherwise, you will be assigned to a team during Week 4

Page 10: Introduction to the Class Project and Computing Facilities CSCI 599 – Software Engineering for Embedded Systems September 3, 2002.

Project Details

• To be discussed in class during Week 4

• Will rely on the principles of software architecture

• Will leverage Prism

• Will require substantial design and implementation

• Will be fun!