Chapter 3 Classes and Objects 3
2.1 The Nature of Objects 4
2.2 Relationships among Object 7
2.3 The Nature of Classes 10
2.4 Relationships among Classes 11
2.5 Interplay of Classes and Objects 14
2.6 Identifying Classes and Objects 15
2.7 Importance of Proper Classification 18
2.8 Key abstractions and Mechanism 19
Chapter 3 Classes and Objects 3
2.1 The Nature of Objects 4
2.2 Relationships among Object 7
2.3 The Nature of Classes 10
2.4 Relationships among Classes 11
2.5 Interplay of Classes and Objects 14
2.6 Identifying Classes and Objects 15
2.7 Importance of Proper Classification 18
2.8 Key abstractions and Mechanism 19
Internet and World Wide Web How To Program (5th Edition)hengoofga
Internet & World Wide Web How to Program, 5/e is appropriate for both introductory and intermediate-level client-side and server-side programming courses. The book is also suitable for professionals who want to update their skills with the latest Internet and web programming technologies.
Â
Internet and World Wide Web How to Program, 5e introduces students with little or no programming experience to the exciting world of Web-Based applications.
The data design action translates data objects into data structures at the software component level.
Data Design is the first and most important design activity. Here the main issue is to select the appropriate data structure i.e. the data design focuses on the definition of data structures.
Data design is a process of gradual refinement, from the coarse "What data does your application require?" to the precise data structures and processes that provide it. With a good data design, your application's data access is fast, easily maintained, and can gracefully accept future data enhancements.
Agreement Protocols, Distributed Resource Management: Issues in distributed File Systems, Mechanism for building distributed file systems, Design issues in Distributed Shared Memory, Algorithm for Implementation of Distributed Shared Memory.
Course material from my Object-Oriented Development course.This presentation covers the analysis phases and focuses on class discovery, domain modeling, activity diagrams, and sequence diagrams.
Internet and World Wide Web How To Program (5th Edition)hengoofga
Internet & World Wide Web How to Program, 5/e is appropriate for both introductory and intermediate-level client-side and server-side programming courses. The book is also suitable for professionals who want to update their skills with the latest Internet and web programming technologies.
Â
Internet and World Wide Web How to Program, 5e introduces students with little or no programming experience to the exciting world of Web-Based applications.
The data design action translates data objects into data structures at the software component level.
Data Design is the first and most important design activity. Here the main issue is to select the appropriate data structure i.e. the data design focuses on the definition of data structures.
Data design is a process of gradual refinement, from the coarse "What data does your application require?" to the precise data structures and processes that provide it. With a good data design, your application's data access is fast, easily maintained, and can gracefully accept future data enhancements.
Agreement Protocols, Distributed Resource Management: Issues in distributed File Systems, Mechanism for building distributed file systems, Design issues in Distributed Shared Memory, Algorithm for Implementation of Distributed Shared Memory.
Course material from my Object-Oriented Development course.This presentation covers the analysis phases and focuses on class discovery, domain modeling, activity diagrams, and sequence diagrams.
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
3. Owning a hammer doesn't make one an
architect
Knowing an object-oriented language (such as Java) is a necessary but
insufficient first step to create object systems. Knowing how to "think in
objects" is also critical.
The UML is not OOA/D or a method, it is simply notation.
How should responsibilities be allocated to classes of objects? How should
objects interact? What classes should do what? These are critical questions in
the design of a system.
4. What Is Analysis and Design
Design emphasizes a conceptual solution that fulfills the requirements, rather
than its implementation. Ultimately, designs can be implemented.
=> Do the thing right.
Analysis emphasizes an investigation of the problem and requirements, rather
than a solution. It is a broad term, best qualified, as in requirements analysis
(an investigation of the requirements) or object analysis (an investigation of the
domain objects).
=> Do the right thing.
5. What Is Object-Oriented Analysis and Design
OOD: Defining software objects and how they collaborate to fulfill the
requirements.
Ex. Book software object may have a title attribute and a getChapter method.
OOA: Finding and describing the objects - or concepts - in the problem domain.
Ex. Book, Library, Patron. (跟 Software object 無關)
7. 這不是OO的產出,只是寫故事。
Play a Dice Game: A player picks up and rolls the dice. If the dice face value
total seven, they win; otherwise, they lose.
8. Define a Domain Model
● Object-oriented analysis is concerned with creating a description of the
domain from the perspective of classification by objects. A decomposition
of the domain involves an identification of the concepts, attributes, and
associations that are considered noteworthy. (分類法,找出概念、屬性跟關
係)
● A domain model is not a description of software objects; it is a
visualization of concepts in the real-world domain. (真實世界的概念)
12. 因為 play message 是丟給 DiceGame,所以 DiceGame 需要有 method play
而 Die Class 需要 roll 跟 getFaceValue 兩個方法
描述 Class 而不是真實世界
13. 使用UML的三種角度
1. Conceptual perspective the diagrams are interpreted as describing things
in a situation of the real world or domain of interest.
2. Specification (software) perspective the diagrams (using the same
notation as in the conceptual perspective) describe software abstractions
or components with specifications and interfaces, but no commitment to a
particular implementation (for example, not specifically a class in C# or
Java). <<實務上不常用>>
3. Implementation (software) perspective the diagrams describe software
implementations in a particular technology (such as Java).
16. Use Cases
Use cases 是文字的故事,不是 Diagrams
Process Sale:
A customer arrives at a checkout with items to purchase. The cashier
uses the POS system to record each purchased item. The system
presents a running total and line-item details. The customer enters
payment information, which the system validates and records. The system
updates inventory. The customer receives a receipt from the system and
then leaves with the items.
什麼故事:Some actor using a system to meet goal.
17. Definition: Actors, Scenarios and Use Cases
● An actor is something with behavior, such as a person (identified by role),
computer system, or organization; for example, a cashier.
● A scenario is a specific sequence of actions and interactions between
actors and the system; it is also called a use case instance.
● A use case is a collection of related success and failure scenarios that
describe an actor using a system to support a goal.
18. Scenarios example - Handle Returns (退貨處理)
Main Success Scenario:
A customer arrives at a checkout with items to return. The cashier uses the
POS system to record each returned item ...
Alternate Scenarios:
If the customer paid by credit, and the reimbursement (退款) transaction to
their credit account is rejected, inform the customer and pay them with cash.
If the item identifier is not found in the system, notify the Cashier and
suggest manual entry of the identifier code (perhaps it is corrupted).
If the system detects failure to communicate with the external accounting
system, ...
19. Use Cases 討論
● Use Cases 是文字故事
● Use Cases 跟物件導向沒有關係,寫下 Uses Cases 並不是在做OOA
● Use Cases are a key requirements input to classic OOA/D
● Use Cases emphasize the user goals and perspective (User-centric)
“Who is using the system, what are their typical scenarios of use, and what
are their goals?” (誰在什麼情境使用此系統,為了完成什麼事情)
20. 三種 Actors
Primary actor: has user goals fulfilled through using services of the system. <
收銀員>
Why: To find user goals, which drive the use cases.
Supporting actor: provides a service (ex. information) to the system. <自動付款
認證服務>
Why: To clarify external interfaces and protocols
Offstage actor: has an interest in the behavior of the use case. <稅務局>
Why: To ensure the all necessary interests are identified and satisfied.
27. Guidelines
1. Write in an Essential UI-Free Style (Root-goal, keep the user interface out
and focus on actor intent)
2. Write Terse Use Cases (刪掉贅詞)
3. Write Black-Box Use Cases (不考慮內部的運作,只在乎系統的
responsibilities,What 而不是 How)
4. Take an Actor and Actor-Goal Perspective
5. How to Find Use Cases
6. What Tests Can Help Find Useful Use Cases
29. 4. Take an Actor and Actor-Goal Perspective
Write requirements focusing on the users or actors of a system, asking about
their goals and typical situations.
Focus on understanding what the actor considers a valuable result.
30. 5. How to Find Use Cases
1. 選擇 system boundary (大框框)
2. 找出所有的 primary actors
3. 找出每個 primary actor 的 Goal
4. Define User Cases satisfy the goals of the primary actors
Actor-Goal List
33. 5.4 Define Use Cases
● 一個 Goal 寫一個 Use Case <CRUD例外>
● Use Case 的名稱類似 Goal :
○ Goal: process a sale
○ Use Case: Processs Sale
● Use Case 從動詞開始
34. 6. What tests can help find useful use cases
1. The Boss Test
2. Elementary Business Process (EBP) Test: A task performed by one person in
one place at one time, in response to a business event, which adds measurable
business value and leaves the data in a consistent state
3. The Size Test:3~10 steps
38. System Sequence Diagram
Clarify the input and output system events
related to our system
System Sequence Diagrams:
● 一個特定的scenario,所有
系統都當作黑盒子
● actor generate events
● 重點在抓出從 actor 穿越
system boundary 的 Event
UC已經描述外部的actor怎麼跟系統互動
39. SSD for a Process Sale scenario
Simple cash-only success
scenario of Process Sale
45. Domain Model, aka. Conceptual Model
A domain model is a visual representation of real-world
conceptual classes, not of software components in a
domain of interest. It is not a set of diagrams describing
software classes, or software objects with responsibilities.
- domain objects or conceptual classes
- associations between conceptual classes
- attributes of conceptual classes
Class Diagram 只用這些
48. Domain Model 不是在 Model Software Component
不要出現這些
● Software artifacts, such as a window or a database, unless the domain
being modeled is of software concepts, such as a model of graphical user
interfaces.
● Responsibilities or methods
49. Conceptual Class Identification
● The central task is to identify conceptual classes related to the scenarios
under design.
● It is better to overspecify a domain model with lots of fine-grained
conceptual classes than to underspecify it.
1. Use a conceptual class category list
2. Identify noun phrases
3. Analysis patterns [Fowler96] <<Transaction Pattern>>
尋找的策略
52. Domain Modeling Guidelines
1. List the candidate conceptual classes using the Conceptual Class
Category List and noun phrase identification techniques related to the
current requirements under consideration.
2. Draw them in a domain model.
3. Add the associations necessary to record relationships for which there is a
need to preserve some memory.
4. Add the attributes necessary to fulfill the information requirements.
53. Common Mistake
Perhaps the most common mistake when creating a domain model is to
represent something as an attribute when it should have been a concept.
If we do not think of some conceptual class X as a number or text
in the real world, X is probably a conceptual class, not an attribute.
如果還是不確定,將它當作 concept,domain model 中很少有attribute
56. From analysis to design
Use Case SSD
Domain
Model
Design
Model
use case diagram
and descriptions
sequence diagram conceptual class
diagram (state diagram)
class diagram