An Ectropic Example The alarm clock in ECo
- Slides: 25
An Ectropic Example: The alarm clock, in ECo. DE, ad nauseam • Order of Operations: – I. Object Oriented Analysis (OOA). – II. Object Oriented Design (OOD). – III. Object Oriented Programming (OOP). • This is a User Interface Walkthrough of the ECo. DE (pronounced “echcoed”) design tool using the alarm clock example.
Starting ECo. DE From the workspace, type “Ectropic. Design start. ” -Select new design.
The Main Window Note: -You start in Analysis mode. - In this mode, you can create new Scenarios and CRC Cards. New CRC Cards New Scenarios
Object Oriented Analysis i. e. (Analysis Mode) – 1. Create scenarios for use that satisfy specific goals. – 2. Brainstorm objects in the domain. – 3. Apply responsibilities to objects (or several objects via collaborators) that implement scenarios.
OOA #1 – Create Scenarios How will the alarm clock operate? 1. Set the current time • • 2. Update time • • • 3. User sets the time in the display The internal time changes Time advances one second The internal time changes The display updates Change modes - Display the time in military or standard time • • • User switches the display mode The internal representation of time changes The display updates
OOA #1 – Create Scenarios How will the alarm clock operate? (cont. ) 4. Create/Edit alarms with individual actions • • Set the alarm time and action Save the alarm 5. Execute alarms at the appropriate time • • 6. When a second advances, check all alarms against the current time Execute all alarms that apply Remove alarms • User selects the appropriate alarm and removes it
OOA #1 – Create Scenarios 1. Create a new Scenario New Scenario - Note: The naming convention does not allow punctuation in most elements of ECo. DE
OOA #1 – Create Scenarios 2. Open the Scenario, add responsibilities - Note: When you add design notes, you must save that screen with “alt-s” or you will lose your notes. CRC Cards to be named later Design notes not saved yet
OOA #1 – Create Scenarios 3. Finish all your Scenarios - Note: You can also yellow button (“rightclick” in Windows) on items for more detailed menus. “Right-Click -Able”
OOA #2 – CRC Cards (Brainstorm Objects) Objects (post-filtering) for the alarm clock: – Clock – Alarm – Seconds. Ticker – Time
OOA #2 – Create CRC Cards 1. Create a new CRC Card New CRC Card
OOA #2 – Create CRC Cards 2. Open the CRC Card, add responsibilities -Note: These responsibilities should map to the scenario responsibilities they satisfy. In fact, you can select the responsibilities we created earlier in the scenarios.
OOA #2 – Create CRC Cards 3. Finish creating CRC Cards and begin assigning Responsibilities -Note: “Time” became “Internal. Time” and “Alarm” became “Alarm. Setting” because ECo. DE does not let you create classes that already exist in Squeak. You could create the CRC Cards, but you cannot generate them.
OOA #3 – Assign Responsibilities 1. Assign collaborators and new responsibilities to accomplish our tasks -Note: Because we add “Execute all alarms that match current time” to Alarm. Clock, Alarm. Setting now needs “Execute alarm action”
OOA #3 – Assign Responsibilities 2. Break responsibilities into atomic units -Note: “The internal time changes” has been divided into “Set time” and “Set mode”. This change was made in the scenarios as well.
OOA # 3 – Assign Responsibilities 3. Ensure that all responsibilities in the Scenarios have been assigned to a CRC Card. -Note: We have adjusted responsibility names to reflect the reduction into atomic units.
Object Oriented Design i. e. (Design Mode) – 1. Assign method names to responsibilities. – 2. Use ECo. DE notes to build a UML class diagram. – 3. Check design integrity and make any necessary changes.
OOD # 1 – Assign Method Names 1. Switch to Design Mode Button -Note: The color changes.
OOD # 1 – Assign Method Names 2. Open CRC Cards and assign all your responsibilities a method name. -Note: You will be prompted for a method category (within the class) and a description (general comments).
OOD # 2 – Build UML Class Diagram Use your design to build a UML Class Diagram. -Note: This is a very limited design with glaring flaws. How would you design the Alarm Clock?
OOD # 3 – Integrity Check (Re)-Check the integrity of your design. -Note: The most basic checks will be made when you switch to Program Mode, but do not rely on ECo. DE to find flaws in your design. Program Mode Button
Object Oriented Programming i. e. (Program Mode) – 1. Generate Classes and Method Stubs. – 2. Ensure that you have met your design goals.
OOP # 1 – Generate Classes 1. Switch to Program Mode -Note: (At the top) In the left hand frame are CRC Cards and in the right hand frame are classes that ECo. DE has generated for this design. CRC Cards Generate d Classes
OOP # 1 – Generate Classes 2. Select the CRC Cards and click the “Code” button. -Note: You will be prompted for parent class and instance variables. -Note: I generated “Clock” before “Alarm. Clock” so I could specify “Clock” as the parent class of “Alarm. Clock”. “Code” this CRC Card
OOP # 2 – Ensure Design Goals At this point, you can open classes, browse classes, and open scenarios within program mode. This is how you can make sure the scenario requirements are met and the classes implement them how you want them too. GOOD LUCK!! Open Class Brows e Class
- Secuencia eco planar
- Suppose we want to develop software for an alarm clock
- Burglar alarm flowchart
- Saan ginagamit ang tunog ng alarm clock
- Crc cards example
- Clock face riddle
- Energy transformation in alarm clock
- Energy transformation in alarm clock
- Basic classes for the alarm clock in embedded system
- Priority donation pintos
- My alarm yelled at me this morning figure of speech
- Energy transformation in alarm clock
- Clock personification
- Dharma initiative alarm clock
- The oldest source of energy
- Raspberry pi smart alarm clock
- Fast clock to slow clock synchronization
- 100 minute clock to 60 minute clock
- Android alarm app example
- Hát kết hợp bộ gõ cơ thể
- Frameset trong html5
- Bổ thể
- Tỉ lệ cơ thể trẻ em
- Voi kéo gỗ như thế nào
- Tư thế worms-breton
- Hát lên người ơi