Documents Found!
As seen in
Less Work, Better Grades
Join
Course Hero
Access
best resources
Ace
your classes
Ace your courses with Course Hero!
|
|
|
Study Smarter, Score Higher
Here are the top 5 related documents
...The DASH Prototype: Logic Overhead and Performance
Daniel Lenoski, James Laudon, Truman Joe, David Nakahira, Luis Stevens, Anoop Gupta and John Hennessy
Abstract: The fundamental premise behind the DASH project is that it is feasible to build large-...
...Appears in the Proceedings of the 26th International Symposium on Computer Architecture (ISCA 26), 1999.
Is SC + ILP = RC?
Chris Gniady, Babak Falsa, and T. N. Vijaykumar School of Electrical & Computer Engineering Purdue University 1285 EE Building...
... Tera Hardware-Software Cooperation
Gail Alverson
Preston Briggs Susan Coatney Richard Korry Tera Computer Company
Abstract
Simon Kahan
The development of Tera's MTA system was unusual. It respected the need for fast hardware and large shared mem...
...JUNE 1993
WRL Technical Note TN-36
Combining Branch Predictors
Scott McFarling
digi tal
Western Research Laboratory 250 University Avenue Palo Alto, California 94301 USA
The Western Research Laboratory (WRL) is a computer systems research group ...
Document Content (unformatted)
Course Hero has millions of student submitted documents similar to the one
below including study guides, homework solutions, papers, exam answer keys and textbook solutions.
Analysis Object-Oriented Requirements analysis and domain analysis precede design So far we've looked at requirements analysis--understanding what the customer wants Domain analysis understands the customer's problem--by identifying the classes comprising a problem domain. Design explores their contents, from outside in What's the difference between traditional or structured analysis and OO analysis? Result of OO analysis is a representation of the classes of a problem domain (not functions) Identifying classes is category-formation Objects simulate some slice of the world which a computer system models Objects are a natural construct for simulation Classes of objects are a natural way to organize classes Infants learn to recognize objects and how to categorize them in their first few months A key insight of the child psychologist Piaget; cognitive scientists have done further work Adults rely on categorization to understand the world around them We create new categories all the time, for example, new makes of cars A problem with categories, however, is that they can be fuzzy and hard to define precisely Natural kinds: how do you define an elephant? a game? Prototypes: people see how close objects match a prototypical member of a category Why is the fuzziness of natural kinds a problem for OOSE? It's hard to be precise about defining categories That's why we need a methodology for OOSE Some categories are directly observable in requirements Others are more abstract, implicit or arising from implementation needs Candidate classes include: Tangible things referred to by common nouns in requirements specification or application domain (i.e., cookie, factory, triangle) Events with associated information (i.e., flight, game). Abstract data stores (i.e., buffer, tree, hash table) External interface ports (i.e., terminal, printer, window, menu) Complex processes or operations (i.e., sort, edit command) Note: verbs can also be classes! Especially processes than store state information. One might think of a scanner as an operation on tokens of class STRING But a scanner's behavior probably deserves its own abstraction As a subclass of STRING? Can anything be a class? What isn't a class? Indeed, category-formation is a fundamental human activity But there are practical limits: classes should have content, storing state information Simple operations (e.g., QUIT) Proper nouns (these are instances of classes, not classes) Classes with just one or two routines (probably not worth classifying) Redundant classes (merge synonyms, reuse classes in libraries) 1 Again: develop a glossary of terms--Why would this be especially helpful to OO analysis? Brief dictionary-like definitions denoting how the term is used in domain Defining terms explicates the domain knowledge that you are modeling Terms can help with the discovery of classes and their structure Maintain glossary files throughout development, finally as documentation Responsibility-Driven Design (See multimedia from The Universal Machine on CRC cards) Developed by Beck and Cunningham at Tektronix, see http://c2.com/doc/oopsla89/paper.html This is the same Beck that later wrote the book pioneering Extreme Programming. CRC cards are now part of XP. Fowler introduces CRC and end of chapter 4 (3rdedition) Key idea: objects have responsibilities, as if they were simple agents (or actors in scenarios) Anthropomorphism of class responsibilities gets away from thinking about classes as just data holders; "object think" focuses on their active behaviors Each object is responsible for specific actions -- client can expect predictable behaviors Responsibility also implies independence: to trust an object to behave as expected is to rely upon its autonomy and modularity Harder to trust objects easily caught up in dependencies caused by global variables and side effects. CRC (Class Responsibility Collaborator) cards are "low tech": ordinary index cards Each card represents a class of objects. Each card has three components: Class Name creates the vocabulary of our analysis Use nouns as class names, so you begin to think of them as simple agents. Even classes that you might think of verbs or actions can be made into nouns; e.g., "reading a card" becomes CardReader, a class of object (agent) that manages bank cards. Use pronounceable names. If you cannot read aloud, it is not a good name. Use capitalization (or underscores) to initialize class names and to demarcate multi-word names, such as CardReader rather than CARDREADER or card_reader. We feel that this convention is easier to read and to type. Avoid obscure, ambiguous abbreviations: e.g., is TermProcess something that terminates or something that runs on a terminal? Try not to use digits within a name--better for instances than classes of objects. 2 Responsibilities section describes a class's behaviors -- describe what is to be done, not how! Use short verb phrases, e.g.: "reads card" or "look up words" Constraints of an index card are a good measure of appropriate complexity: if you cannot fit enough tasks on a card, maybe you need to divide tasks between classes? The Collaborators section list important suppliers and possibly clients of a class Why are classes that supply services more important here? Because suppliers are necessary for the description of responsibilities As you write down responsibilities for a class, add any suppliers needed for them For example "read dictionary" obviously implies that a "dictionary" as a collaborator Developing CRC cards is first a process of discovering classes and their responsibilities People naturally cut up the world in terms of categories of objects In object-oriented analysis, one discovers new categories relevant to a problem domain Designing for responsibility involves simulation -- objects model a world interacting behaviors An analyst can prototype a system by running a simulation of objects and their behaviors Once you've developed a set of CRC cards, you're ready to run simulations, or or structured walkthrough scenarios -Playing "what if" lets you simulate scenarios that illustrated expected use of a system let each person be responsible for simulating one or more classes now you can "execute" a scenario by having each object, run at the right time Start a simulation with the construction of an object of a class, then run one of its behaviors (a responsibility of that class) This behavior may in turn pass control to some collaborator -- another class Simulation becomes visible as an exchange of behavior and control from one card to another You may discover missing or incompletely described responsibilities IMO, it really should be called responsibility-driven analysis, rather than design. Why? When is activity most useful? See Coad & Nicola handout, (pp. 44-45): Notice the use of first person scenarios Coad & Nicola call this the "I'm alive principle": Objects can be better understood by thinking about them and talking about them in the first person--"I know my own ____ and I can ___ myself." Similarly, Kent Beck talks about the need for anthropomorphism in responsibility-driven design What goes in the blanks? (attributes and behaviors) Why is putting these scenarios in the first person a good idea? How is this similar to responsibility-driven design? BTW, Coad & Nicola (on reserve) spice up their text with a lot of these common sense principles Appendix C, starting on p. 549, lists all the principles found in this book I'll read a few: you reflect them back to me in your words and comment 3 Class diagrams (handout from Coad & Yourdon, p. 44-45, see Fowler: p. 56 in 2nd edition, 36 in 3rd edition: http://www.cse.lehigh.edu/~glennb/oose/figs/class4-1.jpg) Meyer: circles represent classes; unlabeled lines connecting classes represent relations Coad: boxes represent classes; connecting lines have gate-like markings on them UML: boxes represent classes; lines are associations, to which more information may added be Heuristic: don't put labels on the relations yet at first Semantics of relations tends to be vague E.g., "is a" can mean SUBTYPE ("a square is a polygon") or INSTANCE-OF ("George is a square") or IDENTICAL-TO ("The morning star is the evening star") or PROPERTY-OF ("A circle is round") or ROLE-OF ("George is President") or MADE-OF ("My house is brick") or simply EXISTS ("to be or not to be"). (In many languages, there is no "is" at all.) Let the meaning of relations emerge from what they relate Vagueness is natural: start off vague, get more specific gradually UML supports this heuristic by starting with simple undirected lines (associations) Fowler advocates starting with conceptual perspective, ignoring implementation Later, add detail to your relationship structures OOA typically distinguishes two relations: is-a and has-a Meyer calls these inheritance and client/supplier Coad and Yourdon call these generalization/specialization and whole/part UML calls these generalization and association or aggregation or composition Implemented in C++ and Java by inheritance and data members Generalizations extract commonality among specializations: Meyer uses double-line; Coad/Yourdon use lines bisected by semi-circle; UML uses arrow Generalization drawn above specializations in a hierarchy or lattice Examples on pp. 87-88: Aircraft hierarchy, Person lattice Client-supplier/association/whole-part relations are typically part or members of a class Meyer and UML use single line, Coad & Yourdon use line bisected by triangle Coad & Yourdon and UML add numbers at connection ends to show multiplicity E.g., Manager -1------ * -> Employee (1 to many relation; 0 to many, 1 to 1 also common) This notation originates in Extended Entity-Relation models (EER) Lines connecting relations and classes indicate functionality, e.g.: 1:1 -- MANAGER <--1-- HEAD_OF --1--> DEPARTMENT 1:N -- MANAGER <--1-- SUPERVISES --N--> EMPLOYEE N:M -- EMPLOYEE <--N-- ASSIGNED_TO --M--> PROJECT Note that these EER labels the relations themselves (more than just 2 relations!) Similarly, UML lets you put a role name at one end of an association E.g., Manager ----------- sales rep -> Employee (Employee's role is sales rep) 4 More notation (for analysis or design?) Coad, Yourdon & Nicola, describe five activities of OOA (see handout) 1) Class-&-object -- describing problem domain in terms of classes of objects 2) Structure -- describing relationships between classes 3) Subject -- organizing classes into clusters (UML packages) 4) Attributes -- describing data held by objects 5) Services -- describing behaviors that objects can perform Which of these five activities are analysis and which are design? What do you think? 1) Classes represented by boxes, with class name in the top section Extra gray box surrounding a class denotes that it is a concrete class, otherwise it's abstract An abstract class has one or more operations that must be implemented by subclasses What does this notation tell you about class Count? UML represents an abstract class by italicizing the class name or adding the label {abstract} 2) Structure, represented by lines connecting classes In Coad notation, semicircle means gen/spec (e.g., Count generalizes IntegerCount) triangle represents whole-part (e.g., Button is part of CountViewContainer) thin black line represents object association (e.g., DisplayBox holds 1 Count) Thick line represents message scenario (e.g., Count sends a message "A1" to DisplayBox: display my value) In UML, simple line is an association (with notation for multiplicity, role names, constraints) See Fowler, ch 5 (p. 68) for more details: e.g., {ordered} is a representation constraint http://www.cse.lehigh.edu/~glennb/oose/figs/agg6-6.jpg, agg6-7 Arrow denotes navigability (e.g., Polygon and Circle refer to Point but not vice versa) A black-filled diamond denotes a composition (a part, unique to this whole--see p. 86) A white-empty diamond denotes an aggregation (a part, but not unique to this whole) E.g., A Point may appear in only one Polygon or Circle but a Style could appear in both 3) Subject represented by larger gray boxes containing classes E.g., one box is HIC (human interaction component) and second is PDC (problem domain) UML has packages, denoted by box with smaller box on top, in separate diagrams Note that this is decomposition (breaking a problem down) but not functional decomposition Provide larger granularity for design and implementation, prior to integration Seems to me that subject/package design is a design rather than an analysis activity 4) Attributes (properties, fields) and 5) services (behaviors, methods, UML operations) Coad & Yourdon and UML have similar structure within classes Attributes (in middle section) could be represented as associations or whole/part relations Typically, attributes are simple types and single-valued UML lets you include information about default values and visibility (+,-,#), (but I recommend you hold off on these details until design stage) Services or URL operations (at bottom section) represent methods or procedures Again, UML has a bit more notation, for information about default values and visibility E.g., + balanceOn(date:Date): Money Again, I recommend you hold off on these details until design 5 Modeling dynamic behaviors with sequence and collaboration diagrams (See Fowler, chapter 5) Class diagrams describe static relationships between classes, but what about modeling dynamic behavior? Interaction diagrams model how groups of object collaborate in some behavior Typically, an interaction diagram captures the behavior of a single use case Example use case (http://www.cse.lehigh.edu/~glennb/oose/figs/UseCaseOrderEntry.htm): An Order Entry window sends a "prepare" message to an Order Order sends "prepare" to each Order Line on the Order Each Order Line checks the given Stock Item: if true, remove Stock Item and deliver If Stock Item falls below reorder level, then Stock Item requests reorder Sequence diagram (http://www.cse.lehigh.edu/~glennb/oose/figs/seq5-1.jpg): Vertical line is called an object's lifeline, representing an object's life during interaction Object deletion denoted by X, ending a lifeline Horizontal arrow is a message between two objects Order of messages sequences top to bottom Messages labeled with message name, optionally arguments and control information Control information, in brackets, may express conditions, such as [hasStock], or iteration Returns (dashed lines) are optional; use them to add clarity Sequence diagrams can also represent concurrent processes: Figure 5-3 (http://www.cse.lehigh.edu/~glennb/oose/figs/seq5-3.jpg) UML 1 models asynchronous messages as horizontal lines with half arrow heads UML 2 makes this distinction by not filling an arrowhead Fowler prefers older notation. Why? Which do you prefer? After setting up Transaction Coordinator, invoke concurrent Transaction Checkers If a check fails, kill all the Transaction Checker processes Note use of comments in margin When is this a good idea? for documentary purposes Collaboration diagram is a second way to model interactions of objects http://www.cse.lehigh.edu/~glennb/oose/figs/collab5-4.jpg Objects are rectangular icons, e.g., Order Entry Window, Order, etc. Messages are arrows between icons, e.g., prepare() Numbers on messages indicate sequence; also spatial layout helps show flow Which do you prefer: sequence or collaboration diagrams? Fowler now admits he doesn't use collaboration diagrams, demoting them to ch 15 Interaction diagrams show flow clearly, but are awkward when modeling alternatives UML notation for control logic has changed in UML 2, but Fowler isn't impressed Fowler recommends using CRC cards to begin modeling scenarios Then document with UML sequence (or interaction) diagrams Use sequence diagrams to show collaborations among many objects Use state diagrams to show the behavior of a single object across many use cases 6
Find millions of documents here - Study Guides, Homework Solutions, Papers, Exam Answer Keys and more.
Course Hero has millions of course related materials that will enable you to learn better,
faster and get an A in all your courses.
Below is a small sample set of documents:
Below is a small sample set of documents:
Lehigh >> IBE >> 098 (Fall, 2004)
7 7 15 11 9 12 17 12 18 18 14 18 18 19 19 19 25 22 19 23 7 10 11 15 11 Number Treatments Observation per Treatment Iterations Trt 1 Data Trt 2 Data Trt 3 Data 0.1559124 0.870140802 0.610588053 0.013331039 0.51867223 0.590801448 0.610310055 0.94...
Lehigh >> CSE >> 432 (Fall, 2008)
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank Cost estimates: when and why When does a contractor estimate costs for building a house? Before construction begins, let alone payment Takes into account subcontracts for foundation, framing, ...
Lehigh >> IBE >> 098 (Fall, 2004)
A Quick Review of Hypothesis Testing In this lecture we will quickly review the following The basic one sample T test as an example The decision procedure Type I and Type II error OC curves and sample size selection Practical vs. statistical signific...
Lehigh >> CSE >> 432 (Fall, 2008)
Abstract data types What does abstract` mean? From Latin: to pull out`-the essentials To defer or hide the details Abstraction emphasizes essentials and defers the details, making engineering artifacts easier to use I don`t need a mechanic`s ...
Lehigh >> IBE >> 098 (Fall, 2004)
IE 410 Notes for Lecture 3 THE ANALYSIS OF VARIANCE (or ANOVA) One Sample T-test: H0: = 0 Two-Sample T-test: H0: 1 = 2 (Two populations have the same mean) Example: Which tennis ball brand bounces higher, Penn or Wilson? Get (say) 3 balls of eac...
Lehigh >> CSE >> 432 (Fall, 2008)
Assertions in Java (JDK 1.4) Jarret Raim updated by Glenn Blank What is an assertion? An assertion is a statement in Java that enables you to test your assumptions about your program. Each assertion contains a boolean expression that you believ...
Lehigh >> IBE >> 098 (Fall, 2004)
IE 410 Lecture 4 Details of the ANOVA In this lecture we will: Discuss power and the F stat Learn about SS and degrees of freedom Learn about decomposition of SS\'s Try to understand Cochran\'s theorem Recall The F statistic: n ( yi. y.) F0 MStrt MSE ...
Lehigh >> CSE >> 432 (Fall, 2008)
CSE432: Object-Oriented Software Engineering Objectives What do you hope to learn in this course? Here are my list of course objectives: To investigate principles of object-oriented software engineering, from analysis through testing To lea...
Lehigh >> IBE >> 098 (Fall, 2004)
Location City Rock Montgomery Little Phoenix Sacramento Denver Hartford Washington Dover City Tallahassee Atlanta Des Moines Boise Rouge Springfield Indianapolis Topeka Frankfort Baton Boston Annapolis Augusta Lansing St. Paul City Jefferson Jackson ...
Lehigh >> CSE >> 432 (Fall, 2008)
LehighUML Project John Pequeno, Adam Balgach, Sally Moritz & Professor Glenn Blank Extreme Programming XP Method Iterative Development Iterations measured in minutes to weeks of iteration dependent on project type. LehighUML Iterations of 1 to 3...
Lehigh >> IBE >> 098 (Fall, 2004)
Cash Flows, Interest Rates and the Time Value of Money Definitions Project : an investment opportunity generating cash flows over time Cash Flow: the movement of money (in or out) of a project Interest: used to move money through time for compari...
Lehigh >> CSE >> 432 (Fall, 2008)
J2EE Structure & Definitions Catie Welsh CSE 432 http:/www.developer.com/java/ejb/article.php/1434371 http:/java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html J2EE Breakdown Web Clients contain 2 parts Dynamic Web pages containing HTML, XML W...
Lehigh >> IBE >> 098 (Fall, 2004)
Forecasting Part I Forecasting Trying to predict the future behavior of some process/variable based on past data Fundamental to business planning Most business decisions based to some extent on forecasts Key forecasts in business: Future deman...
Lehigh >> CSE >> 432 (Fall, 2008)
Exceptions in Java What is an exception? An exception is an error condition that changes the normal flow of control in a program Exceptions in Java separates error handling from main business logic Based on ideas developed in Ada, Eiffel and C...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University April 25, 2005 Outline Stateful network processor applications Course re...
Lehigh >> CSE >> 432 (Fall, 2008)
Why software engineering? Demand for software is growing dramatically Software costs are growing per system Many projects have cost overruns Many projects fail altogether Software engineering seeks to find ways to build systems that are on time ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398 Lab#2 Part II: A Multicasting Multimedia Demo CSE398: Network Systems Design, Lehigh University Instructor: Dr. Liang Cheng, Assistant Professor, Computer Science and Engineering Lab Assistant: Yaoyao Zhu, Ph.D. student in Computer Science and...
Lehigh >> CSE >> 432 (Fall, 2008)
Design patterns Glenn D. Blank Definitions A pattern is a recurring solution to a standard problem, in a context. Christopher Alexander, a professor of architecture. Why would what a prof of architecture says be relevant to software? \"A patte...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 2, 2005 Outline Recap TCP, UDP, application layer protocols Co...
Lehigh >> CSE >> 432 (Fall, 2008)
From use cases to classes (in UML) A use case for writing use cases Use case: writing a use case Actors: analyst, client(s) Client identifies and write down all the actors. Analyst writes down all the actors. Client identifies the use cases, i.e., g...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 21, 2005 Outline Recap Packet processing algorithms (Problem 5....
Lehigh >> CSE >> 432 (Fall, 2008)
Requirements specification CSE432 Object-Oriented Software Engineering Requirements analysis and system specification Why is this the first stage of most life cycles? Need to understand what customer wants first! Requirements analysis says: \"Make...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 23, 2005 Outline Recap Protocol software Hardware architecture...
Lehigh >> CSE >> 432 (Fall, 2008)
JUnit A tool for test-driven development History Kent Beck developed the first xUnit automated test tool for Smalltalk in mid-90\'s Beck and Gamma (of design patterns Gang of Four) developed JUnit on a flight from Zurich to Washington, D.C. Ma...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 30, 2005 Outline Recap Scaling a network processor Examples of co...
Lehigh >> CSE >> 432 (Fall, 2008)
Classes in C+ C+ originally called \"C with classes\": Swedish connection: Bjarne Stoustrup borrowed from Simula (\'67) Simulating classes of real world objects C+ continues to evolve: Version 1.0 released by AT&T in 1986 Version 2.0 in 1990 ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University April 04, 2005 Outline Recap Examples of commercial network processors D...
Lehigh >> CSE >> 432 (Fall, 2008)
Object Oriented Testing Based on notes from James Gain (jgain@cs.uct.ac.za) Plus Glenn Blanks elaborations and expansions Objectives To cover the strategies and tools associated with object oriented testing Analysis and Design Testing Class Tests ...
Lehigh >> CSE >> 398 (Spring, 2005)
Lab on Traffic Monitoring and Throughput Measurement using TTCP CSE398: Network Systems Design, Lehigh University Instructor: Dr. Liang Cheng, Assistant Professor, Computer Science and Engineering Lab Assistant: Yaoyao Zhu, Ph.D. student in Computer ...
Lehigh >> CSE >> 432 (Fall, 2008)
Unified Modeling Language (UML) for OO domain analysis CSE432 Prof Glenn Blank Notation wars Early 90s: 6-10 different notations Bertrand Meyer: circles and arrows Distinguishes inheritance and client/supplier relationships Grady Booch: clouds,...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 16, 2005 Outline Recap Traditional protocol processing systems Sta...
Lehigh >> CSE >> 432 (Fall, 2008)
JDBC Java DataBase Connectivity CSE432 Object Oriented Software Engineering What is JDBC? \"An API that lets you access virtually any tabular data source from the Java programming language\" JDBC Data Access API JDBC Technology Homepage What\'...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering state engi...
Lehigh >> CSE >> 432 (Fall, 2008)
Software process life cycles CSE 432: Object-Oriented Software Engineering Software and entropy A virtue of software: relatively easy to change Otherwise it might as well be hardware Nevertheless, the more complex a software system gets, the...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 23, 2005 Outline Recap Packet processing functions Protocol so...
Lehigh >> CSE >> 432 (Fall, 2008)
Grouping objects Arrays, Collections and Iterators 1.0 Main concepts to be covered Arrays Collections Iterators 2 Requirement to group objects Many applications for collections of objects: Personal organizers Library catalogs Student-recor...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University April 13, 2005 Outline Recap APP550 processor architecture Classificatio...
Lehigh >> CSE >> 432 (Fall, 2008)
AWT and Swing Most GUI class libraries in C+ are platform specific Different hardware capabilities Subtle differences between the \"look-and-feel\" of various Windowing operating systems Swing can observe various OS look-and-feel conventions Ab...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University January 19, 2005 Outline Recap/discussion Encapsulation, delay Encoding...
Lehigh >> CSE >> 432 (Fall, 2008)
Object-oriented design CSE 432: Object-Oriented Software Engineering Goals of OO analysis (quick review) What are the two main goals of OO analysis? 1) Understand the customer\'s requirements 2) Describe problem domain as a set of classes and rela...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 7, 2005 Outline Recap Computer hardware architecture Fetch and ...
Lehigh >> CSE >> 432 (Fall, 2008)
Components COM, ActiveX, JavaBeans CORBA and SOAP Brad Cox\'s IC analogy Software components should be like integrated circuits (ICs) Or plumbing components? 1. 2) 3) 4) 5) 6) Why? What are our desiderata for software components? Bertrand ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 23, 2005 Outline Recap Complexity of network processor design Lab ...
Lehigh >> CSE >> 432 (Fall, 2008)
Microsoft .NET Object Oriented Software Engineering Based on a presentation by Murat Can Ganiz Agenda .NET C# .NET vs. J2EE (C# vs. Java) Any .NET or C# programmers here? 2 Definition. \"Microsoft .NET is a set of Microsoft software te...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398 Lab#2 Part I: Connecting Two LANs with Routers and Switches CSE398: Network Systems Design, Lehigh University Instructor: Dr. Liang Cheng, Assistant Professor, Computer Science and Engineering Lab Assistant: Yaoyao Zhu, Ph.D. student in Comput...
Lehigh >> CSE >> 432 (Fall, 2008)
e Xtreme Programming Outline Traditional life cycle vs. XP XP motto: \"embrace change\" How does this attitude compare with that implicit with traditional waterfall software life cycle? XP values XP practices Pair programming An XP development road...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University April 11, 2005 Outline Recap Reminder: homework due today Overview of Ag...
Lehigh >> CSE >> 432 (Fall, 2008)
Team Organization and Project Management Based on Hans Van Vliet, Software Engineering: Principle and Practice, chapters 5 and 8 Glenn D. Blank Brooks\' law (1975) Adding manpower to a late project only makes it later. Why? As team gets larger, ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 21, 2005 Outline Recap Second generation network systems Third gen...
Lehigh >> CSE >> 197 (Fall, 2006)
Search Engine Optimization Andy Powers, Avenue A | Razorfish December 7, 2006 Who I am Andy Powers andy.powers@avenuea-razorfish.com 267-295-7033 Lehigh \'05, CSB Senior project with Prof. Davison Philadelphia Associate Analyst, Search Engine...
Lehigh >> CSE >> 398 (Spring, 2005)
Lab on Firewall, Ethereal, ICMP and ARP in SANDBOX lab (PL112) CSE398: Network Systems Design, Lehigh University Instructor: Dr. Liang Cheng, Assistant Professor, Computer Science and Engineering Lab Graduate Assistant: Yaoyao Zhu March 16th, 2005 In...
Lehigh >> CSE >> 197 (Fall, 2006)
Module II Overview Why SEM? Goal Analysis How good is my site? Site Analysis PLANNING: Things to Know BEFORE You Start. How good is my search? Measure SEM performance How to do it? Strategic Planning How to sell it? SEM Proposal Fall 2006 Davis...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Assistant Professor, Lehigh University January 24, 2005 Outline Recap Encoding, framing, e...
Lehigh >> CSE >> 197 (Fall, 2006)
Module II Overview Why SEM? Goal Analysis How good is my site? Site Analysis PLANNING: Things to Know BEFORE You Start. How good is my search? Measure SEM performance How to do it? Strategic Planning How to sell it? SEM Proposal Fall 2006 Davis...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University April 06, 2005 Outline Recap APP550 network processor architecture SPA ...
Lehigh >> CSE >> 197 (Fall, 2006)
Module II Overview Why SEM? Goal Analysis How good is my site? Site Analysis PLANNING: Things to Know BEFORE You Start. How good is my search? Measure SEM performance How to do it? Strategic Planning How to sell it? SEM Proposal Fall 2006 Davis...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 28, 2005 Outline Recap Network processor architectures Issues in ...
Lehigh >> CSE >> 197 (Fall, 2006)
Choose Your Keyword It is now time to \"position\" your web site! Keyword planning the first real step in SEM campaign - True for both organic and paid placement search! In this chapter, we will conduct keyword planning step by step - Generate ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University January 17, 2005 Outline Course information NSF: Pre-test and lab-log N...
Lehigh >> CSE >> 197 (Fall, 2006)
How Search Marketing Works How to get started with search marketing How and why to optimize for organic search How and why to get listed in directories How and why to utilize paid placement Fall 2006 Davison/Lin CSE 197/BIS 197: Search Engine...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Assistant Professor, Lehigh University January 26, 2005 Outline Recap Switching and forwar...
Lehigh >> CSE >> 197 (Fall, 2006)
Search Engine Strategies: Road Map Why SEM? How Search Engine Works How SEM Works How Searchers work INTRO: What is SEM PLANNING: Things to Know BEFORE You Start. EXECUTION: How to Make SEM Work Fall 2006 Davison/Lin CSE 197/BIS 197: Search Engi...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering do not fragment\"? Some concepts. Pa...
Lehigh >> CSE >> 197 (Fall, 2006)
Attract Links to Your Site Links are the largest factor in determining a page\'s reputation This chapter covers: Why search engines value links Your link-building philosophy Step-by-step link building for your site Fall 2006 Davison/Lin CSE ...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering forwarding (Chapter 9) Switching...
Lehigh >> CSE >> 197 (Fall, 2006)
Optimize Your Content Need to create content that is both what search engines need, and what searchers want to see. This chapter covers: What search engines look for The philosophy of writing for search Step-by-step optimization of your searc...
Lehigh >> CSE >> 398 (Spring, 2005)
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 9, 2005 Outline Recap Packet processing algorithms (Chapter 5) ...
Lehigh >> CSE >> 197 (Fall, 2006)
Optimize Your Paid Search Program In this section, we discuss: - Types of Paid Search - Planning Paid Search - Paid Search Optimization step-by-step guide to implement a paid search campaign Fall 2006 Davison/Lin CSE 197/BIS 197: Search Eng...
Lehigh >> ECE >> 108 (Spring, 2007)
ECE 108 Signals and Systems Spring 2007, Instructor: Tiffany Li Homework 10 Given: April 9, 2007 Due: April 16, 2007, before class 1. Read and study Sections 10.1, 10.2, 10.3, 10.5 2. Do problems: (pages 663) 10.2-1 (b)(c) 10.3-2 (a)(b) 10.5-2 1 ...
Lehigh >> CSE >> 197 (Fall, 2006)
How Searchers Work Understanding how searchers work is essential to creating compelling content and ads We will discuss Visitor behavior The searcher\'s intent The searcher\'s click The searcher\'s follow-through Fall 2006 Davison/Lin CSE 197...
What are you waiting for?