Most ebook files are in PDF format, so you can easily read them using various software such as Foxit Reader or directly on the Google Chrome browser.
Some ebook files are released by publishers in other formats such as .awz, .mobi, .epub, .fb2, etc. You may need to install specific software to read these formats on mobile/PC, such as Calibre.
Please read the tutorial at this link. https://ebooknice.com/page/post?id=faq
We offer FREE conversion to the popular formats you request; however, this may take some time. Therefore, right after payment, please email us, and we will try to provide the service as quickly as possible.
For some exceptional file formats or broken links (if any), please refrain from opening any disputes. Instead, email us first, and we will try to assist within a maximum of 6 hours.
EbookNice Team
Status:
Available4.7
32 reviews
ISBN 10: 0443137390
ISBN 13: 9780443137396
Author: Raul Sidnei Wazlawic
Object-Oriented Analysis and Design for Information Systems, Second Edition clearly explains real object-oriented programming in practice. Expert author Raul Sidnei Wazlawick explains concepts such as object responsibility, visibility, and the real need for delegation in detail. The object-oriented code generated by using these concepts in a systematic way is concise, organized and reusable.The patterns and solutions presented in this book are based in research and industrial applications. You will come away with clarity regarding processes and use cases and a clear understanding of how to expand a use case. Wazlawick clearly explains how to build meaningful sequence diagrams. Object-Oriented Analysis and Design for Information Systems illustrates how and why building a class model is not just placing classes into a diagram. You will learn the necessary organizational patterns so that your software architecture will be maintainable. The Second Edition includes all new content shifting the focus of the book to agile software development, including Scrum software project management, BPMN diagrams, user stories, and Python code examples.
1 : Introduction
Abstract
Keywords
Key topics in this chapter
1.1 This book
1.2 Object-oriented systems development
1.3 Agile software development
1.4 Discussion
Questions
2 : General view of the system
Abstract
Keywords
Key topics in this chapter
2.1 Introduction to general view of the system
2.2 Early effort estimation
2.3 Acceptance criteria
2.4 Completing the general view of the system
2.5 Product backlog
2.6 Business use cases
2.6.1 Business actors and business workers
2.6.2 Automation opportunities
2.7 Discussion
Questions
3 : Business modeling
Abstract
Keywords
Key topics in this chapter
3.1 Introduction to business modeling
3.2 Business Process Modeling and Notation
3.2.1 Tasks
3.2.2 Gateways
3.2.3 Pools and lanes
3.2.4 General recommendations
3.3 State-dependent aspects of a business
3.4 Discussion
Questions
4 : High-level requirements
Abstract
Keywords
Key topics in this chapter
4.1 Introduction to high-level requirements
4.2 System actors
4.3 System use cases
4.3.1 Single session
4.3.2 Interactive
4.3.3 Consistent result
4.3.4 Essential and concrete
4.3.5 Brief
4.3.6 System boundary
4.4 How to find system use cases in the business use case model?
4.5 How to find system use cases in BPMN diagrams?
4.6 How to find system use cases in machine state diagrams?
4.7 Requirements
4.7.1 Requirements challenges
4.7.2 Evident and hidden functional requirements
4.7.3 Nonfunctional and supplementary requirements
4.7.4 Logical and technological nonfunctional requirements
4.7.5 Permanent and transient nonfunctional requirements
4.7.6 Mandatory and desired requirements
4.7.7 Supplementary requirements
4.8 Preliminary conceptual model
4.8.1 Finding concepts by examining system use cases
4.8.2 Finding new use cases using the CRUDL pattern
4.9 Discussion
Questions
5 : Use case-based project planning
Abstract
Keywords
Key topics in this chapter
5.1 Introduction to effort estimation
5.2 Ad hoc techniques
5.3 Parametric techniques
5.4 User story points
5.4.1 Two ways to estimate story points
5.4.1.1 Selecting from the whole set of stories
5.4.1.2 Planning poker
5.4.2 What to consider when estimating story points
5.4.2.1 Effort
5.4.2.2 Complexity
5.4.2.3 Risk
5.5 Linear time
5.6 Estimating the duration of the sprints
5.7 Defining use case priority
5.8 Monitoring a project
Questions
6 : Expanded use cases
Abstract
Keywords
Key topics in this chapter
6.1 Introduction to expanded use cases
6.2 Main flow
6.3 Alternate flows
6.3.1 Scenarios
6.3.2 Variants
6.3.3 Exception handling
6.4 Writing recommendations
6.4.1 Essential versus real use case
6.4.2 Explicit information
6.4.3 Identification and selection
6.4.4 Mandatory, complementary, and unsuitable steps
6.5 Included use cases and fragments
6.6 Other sections of an expanded use case
6.6.1 Stakeholders
6.6.2 Preconditions
6.6.3 Success postconditions
6.6.4 Open issues
6.7 Expansion of stereotyped use cases
Questions
7 : System operations
Abstract
Keywords
Key topics in this chapter
7.1 Introduction to system operations
7.2 Elements of a sequence diagram
7.3 Expanded use cases as system sequence diagrams
7.4 Connecting the interface to the façade controller
7.5 Stateful and stateless
7.6 Alternate flows in system sequence diagrams
7.7 Discussion
Questions
8 : Conceptual modeling: fundamentals
Abstract
Keywords
Key topics in this chapter
8.1 Introduction to conceptual modeling
8.2 Attributes
8.2.1 Attribute types
8.2.2 Initial values
8.2.3 Derived attributes
8.2.4 Enumerations
8.2.5 Primitive types
8.3 Concepts
8.3.1 Unique attributes
8.3.2 System control class
8.4 Associations
8.4.1 Role multiplicity
8.4.2 Association direction
8.4.3 Derived association
8.4.4 Derived association with filter
8.4.5 Aggregation and composition
8.4.6 n -ary associations
Questions
9 : Conceptual modeling: data structures and organization
Abstract
Keywords
Key topics in this chapter
9.1 Collections
9.1.1 Set
9.1.2 Ordered set
9.1.3 Bag
9.1.4 Sequence
9.1.5 Map
9.1.6 Partition
9.1.7 Relation
9.2 Organization of the conceptual model
9.2.1 Generalization, specialization, and inheritance
9.2.2 Association classes
9.3 Modal classes
9.3.1 Stable transition
9.3.2 Monotonic increasing transition
9.3.3 Nonmonotonic transition
9.4 Invariants
Questions
10 : From use cases to conceptual model
Abstract
Keywords
Key topics in this chapter
10.1 Iterative construction of the conceptual model
10.2 How to find concepts and attributes
10.3 Dependent and independent concepts
10.4 How to find associations
10.5 Example of iterative construction of the conceptual model
Questions
11 : Conceptual modeling: patterns
Abstract
Keywords
Key topics in this chapter
11.1 Introduction to conceptual model patterns
11.2 High cohesion 1
11.3 Specification classes
11.4 Quantity
11.4.1 Different units
11.4.2 Unit conversion
11.5 Measure
11.6 Strategy
11.7 Composite 2
11.8 Organizational hierarchy
11.9 Object joining
11.9.1 Copy and replace
11.9.2 Superseding
11.9.3 Essence/appearance
11.9.4 Undoing a join
11.10 Account/transaction
11.10.1 Multilegged transactions
11.10.2 Memo movements and memo accounts
11.11 Range or interval
11.12 Temporal patterns
11.12.1 Effectivity
11.12.2 History
11.12.3 Temporal
11.12.4 Bitemporal
11.13 Discussion
Questions
12 : Functional modeling with object constraint language contracts
Abstract
Keywords
Key topics in this chapter
12.1 Introduction to functional modeling
12.2 Preconditions
12.2.1 Parameter guarantee
12.2.2 Semantic and syntactic preconditions
12.2.3 Complementary constraints
12.2.4 Precondition assurance
12.3 Exceptions
12.4 Preconditions and exceptions versus invariants
12.5 Query return
12.6 Postconditions
12.6.1 Changing an attribute value
12.6.2 Creating an instance
12.6.3 Destroying an instance
12.6.4 Adding a link
12.6.5 Removing a link
12.6.6 Replacing a link
12.6.7 Well-formed postconditions
12.6.8 Combination of expressions
12.6.9 Former values
12.6.10 Postconditions covering collections of objects
12.6.11 Postconditions and real-world events
12.7 Pattern contracts for CRUDL
12.7.1 Contract for create
12.7.2 Contract for update
12.7.3 Contract for delete
12.7.4 Contract for retrieve
12.7.5 Contract for listing
12.8 Discussion
Questions
13 : Domain tier design
Abstract
Keywords
Key topics in this chapter
13.1 Introduction to domain tier design
13.2 Object responsibility distribution
13.3 Visibility
13.3.1 Visibility by association
13.3.1.1 Visibility to a single object
13.3.1.2 Visibility to multiple objects
13.3.1.3 Visibility by association with ordered roles
13.3.1.4 Visibility by association with qualifiers
13.3.1.5 Visibility by association with association class
13.3.1.6 The influence of preconditions on visibility by association
13.3.2 Visibility by parameter
13.3.3 Locally declared visibility
13.3.4 Global visibility
13.4 Dynamic modeling based on postconditions
13.4.1 Creating instances
13.4.2 Destroying instances
13.4.3 Adding, removing, and replacing links
13.4.4 Modifying attributes
13.4.5 Conditional postconditions
13.4.6 Exceptions
13.4.7 Postconditions over collections
13.5 Delegation and low coupling
13.6 Design class diagram
Questions
Chapter 14 : Code generation
Abstract
Keywords
Key topics in this chapter
14.1 Introduction to code generation
14.2 Unidirectional associations
14.2.1 Unidirectional association to 1 and 0..1
14.2.2 Unidirectional association to set
14.2.3 Unidirectional to bag
14.2.4 Unidirectional to sequence
14.2.5 Unidirectional to ordered set
14.2.6 Unidirectional to array
14.2.7 Unidirectional qualified association
14.2.8 Unidirectional association with association class
14.3 Bidirectional associations
14.3.1 Mutual friends
14.3.2 Unidirectional implementation
14.3.3 Association proxy
14.4 Delegated methods and system operations
Questions
15 : Testing
Abstract
Keywords
Key topics in this chapter
15.1 Introduction to testing
15.2 Functional testing
15.2.1 Equivalence partitioning
15.2.2 Limit value analysis
15.3 Stubs
15.4 Drivers
15.5 Test-driven development
15.6 Unit testing with TDD
15.6.1 Testing methods related to a public mandatory and immutable attribute
15.6.2 Testing methods related to a public, mandatory, and mutable attribute
15.6.3 Testing methods related to a derived attribute with more than one valid class
15.6.4 Testing after requirements change
15.6.5 A top-down approach to minimize the need of unnecessary tests
15.7 Use case testing
Questions
16 : Interface tier design
Abstract
Keywords
Key topics in this chapter
16.1 Introduction to interface tier design
16.2 View containers
16.3 View components
16.3.1 Details
16.3.2 List
16.3.3 Form
16.4 Flows
16.4.1 Navigation flow
16.4.2 Data flow
16.4.3 Parameter binding
16.5 Web interface patterns
16.5.1 Cascade index
16.5.2 Filtered index
16.5.3 Guided tour
16.5.4 Viewpoints
16.5.5 Overview plus detail
16.5.6 Top-level navigation
16.6 Connecting the IFML model with system operations
16.6.1 IFML models for CRUDL operations
16.6.2 Use case interface modeling with IFML
Questions
17 : Data persistence
Abstract
Keywords
Key topics in this chapter
17.1 Introduction to data persistence
17.2 Object-relational mapping
17.2.1 Classes and attributes
17.2.1.1 Number sequence generator
17.2.1.2 Index selection
17.2.2 Associations
17.2.2.1 Many-to-many associations
17.2.2.2 One-to-many associations
17.2.2.3 One-to-one associations
17.2.2.4 Ordered associations
17.2.2.5 Associations representing bags
17.2.2.6 Qualified associations
17.2.2.7 Association classes
17.2.2.8 n -ary associations
17.2.2.9 Façade controller associations
17.2.3 Inheritance
17.2.3.1 Implementing the entire hierarchy in a single table
17.2.3.2 Each concrete class as a single table
17.2.3.3 Each class in a single table
17.3 Saving and loading objects
17.3.1 Virtual proxy
17.3.1.1 Virtual data structures
17.3.1.2 Lazy load
17.3.2 Brokers and materialization
17.3.3 Caches
17.3.3.1 Commit and rollback
17.3.3.2 Cache control in a multiuser server
difference between object oriented analysis and design
system design in object oriented analysis and design
object-oriented analysis and design foundations & concepts
object-oriented analysis and design with applications pdf
object-oriented analysis and design (ooad)
Tags: Raul Sidnei Wazlawic, Information Systems, Object Oriented