Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword or section
Like this

Table Of Contents

1.1 What is Software Engineering?
1.1 What is Software Engineering?
1.1.1 Why Software Engineering Is Difficult
1.1.2 Book Organization
1.2 Software Engineering Lifecycle
1.2.1 Symbol Language
1.2.2 Requirements Analysis and System Specification
1.2.3 Object-Oriented Analysis and the Domain Model
1.2.4 Object-Oriented Design
1.3 Case Studies
1.3.1 Case Study 1: From Home Access Control to Adaptive Homes
1.3.2 Case Study 2: Personal Investment Assistant
1.4 Object Model
1.4.1 Relationships and Communication
1.4.2 Example
1.4.3 Design of Objects
1.5 Student Team Projects
1.5.1 Project 1: Virtual Biology Lab for Mitosis
1.5.2 Project 2: Restaurant Automation
1.5.3 Project 3: Traffic Monitoring
1.5.4 Stock Market Investment Fantasy League
Stock Market Investment Fantasy League System
1.5.5 Web-based Stock Forecasters
1.5.6 Remarks about the Projects
1.6 Summary and Bibliographical Notes
2.1 Software Development Methods
Object-Oriented Software Engineering
2.1 Software Development Methods
2.1.1 Agile Development
2.2 Requirements Analysis and Use Cases
2.2.1 Types of Requirements
2.2.2 Use Cases
2.2.3 Requirements Elicitation through Use Cases
2.2.4 Modeling System Workflows
2.2.5 Risk Analysis and Reduction
2.2.6 Why Software Engineering Is Difficult (1)
2.3 Analysis: Building the Domain Model
2.3.1 Identifying Concepts
2.3.2 Concept Associations and Attributes
2.3.3 Contracts: Preconditions and Postconditions
2.4 Design: Assigning Responsibilities
2.4.1 Design Principles for Assigning Responsibilities
2.4.2 Class Diagram
2.4.3 Why Software Engineering Is Difficult (2)
2.5 Software Architecture
2.6 Implementation
2.7 Summary and Bibliographical Notes
3.1 What is a System?
3.1.1 World Phenomena and Their Abstractions
3.1.2 States and State Variables
3.1.3 Events, Signals, and Messages
3.1.4 Context Diagrams and Domains
3.1.5 Systems and System Descriptions
3.2 Notations for System Specification
3.2.1 Basic Formalisms for Specifications
3.2.3 UML Object Constraint Language (OCL)
3.2.4 TLA+ Notation
3.3 Problem Frames
3.3.1 Problem Frame Notation
3.3.2 Problem Decomposition into Frames
3.3.3 Composition of Problem Frames
3.3.4 Models
3.4 Specifying Goals
3.5 Summary and Bibliographical Notes
Software Measurement and Estimation
4.1 Fundamentals of Measurement Theory
4.1.1 Measurement Theory
4.2 What to Measure?
4.3 Measuring Complexity
4.3.1 Cyclomatic Complexity
4.4 Measuring Module Cohesion
4.4.1 Internal Cohesion or Syntactic Cohesion
4.4.2 Semantic Cohesion
4.5 Psychological Complexity
4.5.1 Algorithmic Information Content
4.6 Summary and Bibliographical Notes
5.1 Indirect Communication: Publisher- Subscriber
5.1.1 Applications of Publisher-Subscriber
5.1.2 Control Flow
5.1.3 Pub-Sub Pattern Initialization
5.2 More Patterns
5.2.1 Command
5.2.2 Proxy
5.3 Concurrent Programming
5.3.1 Threads
5.3.2 Exclusive Resource Access—Exclusion Synchronization
5.3.4 Concurrent Programming Example
5.4 Broker and Distributed Computing
5.4.1 Broker Pattern
5.4.2 Java Remote Method Invocation (RMI)
5.5 Information Security
5.5.1 Symmetric and Public-Key Cryptosystems
5.5.2 Cryptographic Algorithms
5.5.3 Authentication
5.6 Summary and Bibliographical Notes
6.1 Structure of XML Documents
6.1.1 Syntax
6.1.2 Document Type Definition (DTD)
6.1.3 Namespaces
6.1.4 XML Parsers
6.2 XML Schemas
6.2.1 XML Schema Basics
6.2.2 Models for Structured Content
6.2.3 Datatypes
6.2.4 Reuse
6.2.5 RELAX NG Schema Language
6.3 Indexing and Linking
6.3.1 XPointer and Xpath
6.3.2 XLink
6.4 Document Transformation and XSL
6.5 Summary and Bibliographical Notes
7.1 Components, Ports, and Events
7.2 JavaBeans: Interaction with Components
7.2.1 Property Access
7.2.2 Event Firing
7.2.3 Custom Methods
7.3 Computational Reflection
7.3.1 Run-Time Type Identification
7.3.2 Reification
7.3.3 Automatic Component Binding
7.4 State Persistence for Transport
7.5 A Component Framework
7.5.1 Port Interconnections
7.5.2 Levels of Abstraction
7.6 Summary and Bibliographical Notes
8.1 Service Oriented Architecture
8.2 SOAP Communication Protocol
8.2.1 The SOAP Message Format
8.2.2 The SOAP Section 5 Encoding Rules
8.2.3 SOAP Communication Styles
8.2.4 Binding SOAP to a Transport Protocol
8.3 WSDL for Web Service Description
8.3.1 The WSDL 2.0 Building Blocks
8.3.2 Defining a Web Service’s Abstract Interface
8.3.3 Binding a Web Service Implementation
8.3.4 Using WSDL to Generate SOAP Binding
8.3.5 Non-functional Descriptions and Beyond WSDL
8.4 UDDI for Service Discovery and Integration
8.5 Developing Web Services with Axis
8.5.1 Server-side Development with Axis
8.5.2 Client-side Development with Axis
8.6 OMG Reusable Asset Specification
8.7 Summary and Bibliographical Notes
9.1 Aspect-Oriented Programming
9.3 Autonomic Computing
9.4 Software-as-a-Service (SaaS)
9.5 End User Software Development
9.6 The Business of Software
9.7 Summary and Bibliographical Notes
A.1 Introduction to Java Programming
B.1 Socket APIs
B.2 Example Java Client/Server Application
B.3 Example Client/Server Application in C
B.4 Windows Socket Programming
C.1 HTTP Messages
C.2 HTTP Message Headers
E.1 Core DOM Interfaces
F.1 Model/View/Controller Design Pattern
F.2 UI Design Recommendations
Acronyms and Abbreviations
0 of .
Results for:
No results containing your search query
P. 1
Book SE Marsic

Book SE Marsic

Ratings: (0)|Views: 15|Likes:

More info:

Published by: Chandramouli Kolavasi on Jun 09, 2011
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





You're Reading a Free Preview
Pages 8 to 109 are not shown in this preview.
You're Reading a Free Preview
Pages 117 to 136 are not shown in this preview.
You're Reading a Free Preview
Pages 144 to 347 are not shown in this preview.
You're Reading a Free Preview
Pages 355 to 368 are not shown in this preview.
You're Reading a Free Preview
Pages 376 to 389 are not shown in this preview.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->