کتاب تحلیل و طراحی شیء‌گرا برای سیستم‌های اطلاعاتی: مدل‌سازی با BPMN، OCL، IFML و پایتون اثر Raul Sidnei Wazlawick

عنوان:

Object-Oriented Analysis and Design for Information Systems

نویسنده:

Raul Sidnei Wazlawick

انتشارات:

Morgan Kaufmann

سال انتشار:

2024

حجم:

12.7MB

دانلود

معرفی کتاب: " تحلیل و طراحی شیء‌گرا برای سیستم‌های اطلاعاتی: مدل‌سازی با BPMN، OCL، IFML و پایتون"

کتاب تحلیل و طراحی شیء‌گرا برای سیستم‌های اطلاعاتی نوشته رائول سیدنی وازلاویک، راهنمایی جامع و عملی برای درک عمیق اصول برنامه‌نویسی شیء‌گرا در توسعه نرم‌افزارهای اطلاعاتی است. این کتاب مفاهیمی مانند مسئولیت شیء (Responsibility)، دیدپذیری (Visibility) و واگذاری مسئولیت (Delegation) را با جزئیات کامل توضیح می‌دهد و نشان می‌دهد چگونه استفاده صحیح از این مفاهیم منجر به تولید کدی مختصر، سازمان‌یافته و قابل استفاده مجدد می‌شود.

الگوها و راهکارهای ارائه‌شده در این کتاب، بر پایه تحقیقات علمی و تجربیات صنعتی شکل گرفته‌اند. پس از مطالعه این کتاب، درک روشنی از فرآیند تحلیل سیستم‌ها و سناریوهای کاربرد (Use Cases) خواهید داشت و یاد می‌گیرید که چگونه آن‌ها را به‌درستی گسترش دهید.

مباحث کلیدی کتاب:

  • مدل‌سازی کلاس‌ها بر پایه مسئولیت‌ها، نه صرفاً ترسیم نمودار
  • ایجاد نمودارهای توالی (Sequence Diagrams) معنادار و کاربردی
  • تقسیم صحیح مسئولیت بین اشیاء با واگذاری منطقی
  • افزایش نگهداری‌پذیری و پایداری معماری نرم‌افزار

ویژگی‌های ویرایش دوم:

  • پوشش توسعه چابک (Agile) با استفاده از فریم‌ورک Scrum
  • استفاده از نمودارهای BPMN برای مدل‌سازی فرآیندهای کسب‌وکار
  • آموزش نحوه نوشتن User Storyها برای تیم‌های Agile
  • ارائه مثال‌هایی کاربردی با کدنویسی در زبان Python

این کتاب یک مرجع کاربردی و دقیق برای: تحلیلگران سیستم، معماران نرم‌افزار، توسعه‌دهندگان، و دانشجویان رشته‌های مهندسی نرم‌افزار و سیستم‌های اطلاعاتی است که به دنبال یادگیری طراحی شیء‌گرا در دنیای واقعی هستند.

فهرست مطالب

  • 1. Introduction
  • Abstract
  • 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
  • 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.7 Discussion
  • Questions
  • 3. Business modeling
  • Abstract
  • Key topics in this chapter
  • 3.1 Introduction to business modeling
  • 3.2 Business Process Modeling and Notation
  • 3.3 State-dependent aspects of a business
  • 3.4 Discussion
  • Questions
  • 4. High-level requirements
  • Abstract
  • Key topics in this chapter
  • 4.1 Introduction to high-level requirements
  • 4.2 System actors
  • 4.3 System use cases
  • 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.8 Preliminary conceptual model
  • 4.9 Discussion
  • Questions
  • 5. Use case-based project planning
  • Abstract
  • 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.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
  • Key topics in this chapter
  • 6.1 Introduction to expanded use cases
  • 6.2 Main flow
  • 6.3 Alternate flows
  • 6.4 Writing recommendations
  • 6.5 Included use cases and fragments
  • 6.6 Other sections of an expanded use case
  • 6.7 Expansion of stereotyped use cases
  • Questions
  • 7. System operations
  • Abstract
  • 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
  • Key topics in this chapter
  • 8.1 Introduction to conceptual modeling
  • 8.2 Attributes
  • 8.3 Concepts
  • 8.4 Associations
  • Questions
  • 9. Conceptual modeling: data structures and organization
  • Abstract
  • Key topics in this chapter
  • 9.1 Collections
  • 9.2 Organization of the conceptual model
  • 9.3 Modal classes
  • 9.4 Invariants
  • Questions
  • 10. From use cases to conceptual model
  • Abstract
  • 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
  • Key topics in this chapter
  • 11.1 Introduction to conceptual model patterns
  • 11.2 High cohesion
  • 11.3 Specification classes
  • 11.4 Quantity
  • 11.5 Measure
  • 11.6 Strategy
  • 11.7 Composite
  • 11.8 Organizational hierarchy
  • 11.9 Object joining
  • 11.10 Account/transaction
  • 11.11 Range or interval
  • 11.12 Temporal patterns
  • 11.13 Discussion
  • Questions
  • 12. Functional modeling with object constraint language contracts
  • Abstract
  • Key topics in this chapter
  • 12.1 Introduction to functional modeling
  • 12.2 Preconditions
  • 12.3 Exceptions
  • 12.4 Preconditions and exceptions versus invariants
  • 12.5 Query return
  • 12.6 Postconditions
  • 12.7 Pattern contracts for CRUDL
  • 12.8 Discussion
  • Questions
  • 13. Domain tier design
  • Abstract
  • Key topics in this chapter
  • 13.1 Introduction to domain tier design
  • 13.2 Object responsibility distribution
  • 13.3 Visibility
  • 13.4 Dynamic modeling based on postconditions
  • 13.5 Delegation and low coupling
  • 13.6 Design class diagram
  • Questions
  • 14. Code generation
  • Abstract
  • Key topics in this chapter
  • 14.1 Introduction to code generation
  • 14.2 Unidirectional associations
  • 14.3 Bidirectional associations
  • 14.4 Delegated methods and system operations
  • Questions
  • 15. Testing
  • Abstract
  • Key topics in this chapter
  • 15.1 Introduction to testing
  • 15.2 Functional testing
  • 15.3 Stubs
  • 15.4 Drivers
  • 15.5 Test-driven development
  • 15.6 Unit testing with TDD
  • 15.7 Use case testing
  • Questions
  • 16. Interface tier design
  • Abstract
  • Key topics in this chapter
  • 16.1 Introduction to interface tier design
  • 16.2 View containers
  • 16.3 View components
  • 16.4 Flows
  • 16.5 Web interface patterns
  • 16.6 Connecting the IFML model with system operations
  • Questions
  • 17. Data persistence
  • Abstract
  • Key topics in this chapter
  • 17.1 Introduction to data persistence
  • 17.2 Object-relational mapping
  • 17.3 Saving and loading objects
  • Questions
  • Bibliography
  • Index

مشخصات

نام کتاب

Object-Oriented Analysis and Design for Information Systems

نویسنده

Raul Sidnei Wazlawick

انتشارات

Morgan Kaufmann

تاریخ انتشار

2024

ISBN

9780443137396

تعداد صفحات

937

زبان

انگلیسی

فرمت

pdf

حجم

12.6MB

موضوع

object‑oriented‑analysis‑design