鼻子老流鼻涕是什么原因引起| 胸口痛挂什么科| cim是什么意思| 什么样的女人最吸引男人| 月经期后是什么期| 咽炎是什么原因引起的| 三点水加累读什么| 什么的歌| 缺铁性贫血有什么症状| 胆结石有什么症状有哪些| 口腔扁平苔藓是什么原因造成的| 红参对子宫有什么作用| 有什么有什么的四字词语| 开火上下结构念什么| 抖m是什么| 潦倒是什么意思| 缺钾是什么原因引起的| 子宫肌瘤吃什么中药可以消除掉| 功成名就是什么意思| 大便里面有血是什么原因| shipped是什么意思| 怀孕一个月有什么反应| 03年属什么| 盐酸多西环素片治什么病| 子宫增厚是什么原因| 吲达帕胺片是什么药| 危险是什么意思| 清华大学校长什么级别| 脏器灰阶立体成像是检查什么的| 作业是什么意思| 牙齿脱矿是什么原因| 2010属什么生肖| 滴水不漏什么意思| 黄脸婆是什么意思| 芋圆是用什么做的| 妹妹是什么意思| vave是什么意思| 纳豆是什么豆子| 猴子尾巴的作用是什么| 自杀吃什么药| 香港脚是什么意思| 见到黑猫代表什么预兆| cm是什么| 叶酸对人体有什么好处| 过度紧张会有什么症状| 解脲支原体阳性是什么病| 孕妇贫血有什么症状| 汪小菲什么星座| 备孕需要补充什么| 为什么会这样| 胃胀打嗝是什么原因| 什么颜色属水| 梦见水代表什么| 门庭冷落是什么意思| 什么水果是碱性的| 婕妤是什么意思| 5月26是什么星座| 梦见和死人一起吃饭是什么意思| 临床什么意思| 酒蒙子什么意思| 北面是什么档次的牌子| 拉肚子拉稀水吃什么药| 吃什么补羊水最快| 蝎子吃什么| 一喝牛奶就拉肚子是什么原因| 知了猴吃什么长大的| 五联什么时候打| 思源名字的寓意是什么| 吃榴莲对女人有什么好处| 身体逐渐消瘦是什么原因| 河南是什么气候| 脑干诱发电位检查是检查什么| 医院量身高为什么会矮| 刘备和刘邦什么关系| 大千世界什么意思| 子宫在什么位置| md是什么牌子| 鱼生是什么鱼| 秦始皇是芈月的什么人| 黎字五行属什么| 筷子买什么材质的好| 什么叫介入手术| 人体最大的器官是什么| 什么是吸附性义齿| 脚心痒是什么原因引起的| 一什么陆地| 一个雨一个亏念什么| 什么冰箱好| 乳腺囊肿和乳腺结节有什么区别| 眼皮老是跳是什么原因| 黄瓜和什么不能一起吃| 儿童枕头用什么枕芯好| 动物奶油是什么做的| 鸡五行属什么| 什么是奇点| cefiro是什么品牌| 为什么前壁容易生男孩| 1972年属鼠的是什么命| 元神是什么意思| 肾结石吃什么药止疼| 子时右眼跳是什么预兆| 孩子呼吸道感染吃什么药效果最好| 尿道感染是什么原因引起| 跛行是什么意思| 一只眼睛肿了是什么原因| 开是什么意思| 收尿干什么用的| 口炎读什么| 序曲是什么意思| 女性内分泌失调吃什么药| 下午六点多是什么时辰| 干燥症是什么原因引起的| 龙生九子都叫什么名字| 神经电生理检查是什么| 月经不调吃什么药效果好| 光是什么颜色| 狗又吐又拉稀吃什么药| 化疗与放疗有什么区别| 记忆力差是什么原因| 异常子宫出血是什么原因| 肾动脉彩超主要查什么| 喉咙有白点是什么原因| play是什么牌子| 怀孕生气对胎儿有什么影响| 木耳和什么不能一起吃| 月经和怀孕的症状有什么不同| 咽喉炎有什么症状| 牛奶什么时候喝| 高丽参和红参有什么区别| 狮子头是什么肉| 做梦坐飞机是什么意思| 内热外寒感冒用什么药| 婴儿黄疸母亲忌口什么| 亵玩是什么意思| 陈百强属什么生肖| 使用年限是什么意思| 碱性土壤适合种植什么| 12月20日是什么星座| 儿童手足口病吃什么药| 苹果像什么| 1946年属狗的是什么命| 公鸡为什么会啄人| 父亲节什么时候| 女人梦见棺材是什么征兆| 眉毛尾部有痣代表什么| 喝酒过敏是什么原因| 白带是什么样子的| 什么名字最霸气| 肌酐偏低有什么危害| 无名指和食指一样长代表什么| 喝咖啡困倦是什么原因| 美满霉素又叫什么名字| 香菇配什么菜炒着好吃| 尿毒症是什么原因导致的| 眼睛有黑影是什么原因| 前辈是什么意思| 虎的贵人是什么生肖| 梦到自己杀人是什么意思| 1938年属什么生肖| 就请你给我多一点点时间是什么歌| 胃胀胃不消化吃什么药| 孕妇钙片什么时间段吃最好| 小鸟喜欢吃什么食物| 尿酸高有什么症状| 细菌性感冒吃什么药效果好| 疱疹挂什么科| 绿痰吃什么药| 喉咙有痰吐出来有血是什么原因| 尿液粉红色是什么原因| 没有什么过不去| 梦见别人拉屎是什么意思| 小儿感冒吃什么药| 处暑是什么时候| 柠檬水喝了有什么好处| crt是什么意思| 脖子左侧疼是什么原因| 每天吃黄瓜有什么好处| 叶酸基因检测是什么| 牙疼吃什么好得快| 变态反应是什么意思| 湿吻是什么意思| 肉馅可以做什么美食| 正规医院减肥挂什么科| 性转是什么意思| 什么是梅尼埃病| 甲虫吃什么| 文爱 什么意思| 全脂乳粉是什么| 童心未眠什么意思| 为什么会得幽门螺旋杆菌| 什么是违反禁令标志指示| 画龙点睛是什么意思| 天天吃玉米有什么好处和坏处| 大明湖畔的夏雨荷是什么意思| 什么药可降尿酸| 什么叫骨质增生| 心脏疼痛吃什么药| 中暑吃什么药好得快| 死精是什么样的颜色| 绿色痰是什么原因| dym是什么意思| 天蝎座喜欢什么样的女生| 857是什么意思| 钾低是什么原因| 慢性非萎缩性胃炎吃什么药| 看淡一切对什么都没兴趣| 异国他乡的异是什么意思| 女人吃什么补元气最快| 不以为然什么意思| 肝痛在什么位置| 嘴甜是什么原因| 大力丸是什么药| 舌苔厚腻吃什么药| 鼻涕臭是什么原因| 小心眼什么意思| 牙痛吃什么药效果最好| 犬字旁的字和什么有关| 乳酸脱氢酶高是什么原因| 检察院是做什么的| e代表什么| 为什么人死后要盖住脸| 被马蜂蛰了用什么药| 全会是什么意思| 吃榴莲对妇科病有什么好处| 老娘们是什么意思| 什么药不能一起吃| 杯弓蛇影告诉我们什么道理| 什么水最解渴| 4月10号什么星座| 吃中药喝酒有什么影响| 脱毛膏是什么原理| 血管瘤吃什么药| 格格不入什么意思| 相识是什么意思| 失眠缺什么维生素| 女人一般什么时候容易怀孕| 什么是滑脉| 成都有什么| 麻疹是什么| 拖鞋买什么材质的好| 狮子座女和什么星座最配| 1月底是什么星座| 不现实什么意思| 外阴长什么样| 除夕是什么意思| 内能与什么因素有关| 双非是什么| 什么成荫| 脸上爱长痘痘是什么原因| 为什么长不胖一直很瘦| 伤官女是什么意思| 心肌酶能查出什么病| 眼干眼涩眼疲劳用什么眼药水| 防晒衣什么材质最防晒| 广州番禺有什么好玩的地方| 女人卵巢保养吃什么好| 膀胱炎有什么症状| 边缘性人格障碍是什么| 鸡蛋和什么不能一起吃吗| 发烧反反复复是什么原因| 情感细腻是什么意思| 日仄念什么| 草木皆兵的意思是什么| 缺钾最忌讳吃什么| 百度

湘粤警方破网络私彩诈骗案 摧毁利用私彩网站诈骗窝点

Object and connection organization in a diagram Download PDF

Info

Publication number
US10013241B2
US10013241B2 US14/065,845 US201314065845A US10013241B2 US 10013241 B2 US10013241 B2 US 10013241B2 US 201314065845 A US201314065845 A US 201314065845A US 10013241 B2 US10013241 B2 US 10013241B2
Authority
US
United States
Prior art keywords
ghosted
row
objects
diagram
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US14/065,845
Other versions
US20140282028A1 (en
Inventor
Terry M. Bleizeffer
Nicholas C. Hawkes
Aimin WU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US14/065,845 priority Critical patent/US10013241B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BLEIZEFFER, TERRY M., HAWKES, NICHOLAS C., WU, Aimin
Publication of US20140282028A1 publication Critical patent/US20140282028A1/en
Priority to US16/021,392 priority patent/US20180314500A1/en
Application granted granted Critical
Publication of US10013241B2 publication Critical patent/US10013241B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons

Definitions

  • Embodiments of the inventive subject matter generally relate to the field of computers, and, more particularly, to organization of objects and connections in a diagram.
  • a method includes presenting, on a display, a diagram.
  • the presenting of the diagram includes presenting, on the display, a first row that defines a location where objects of a first object type can be created, wherein a first ghosted object of a first object type is displayed in the first row.
  • the first ghosted object represents a first creatable object of the first object type.
  • the presenting of the diagram includes presenting, on the display, a second row that defines a location where objects of a second object type can be created.
  • the method also includes responsive to a first input to create a first object of the first object type in the first row, creating the first object of the first object type.
  • the method includes graphically changing the first ghosted object into the first object. Also in response to the first input, the method includes presenting, on the display, a second ghosted object of the second object type in the second row, wherein the second ghosted object represents a second creatable object of the second object type. Additionally, in response to the first input, the method includes presenting, on the display, a first ghosted connection between the first object and the second ghosted object.
  • FIG. 1 depicts a flowchart for creating a diagram that includes objects and connections between the objects for defining relationships, according to some embodiments.
  • FIG. 2 depicts a diagram having a number of rows for different object types, according to some embodiments.
  • FIG. 3 depicts the diagram of FIG. 2 after a first object is created in a first row, according to some embodiments.
  • FIG. 4 depicts the diagram of FIG. 3 after a second object is created in a second row, according to some embodiments.
  • FIG. 5 depicts a diagram having a number of objects and connections based on selection of a first object, according to some embodiments.
  • FIG. 6 depicts the diagram of FIG. 5 after a different object is selected, according to some embodiments.
  • FIG. 7 depicts a diagram having a number of objects and connections and including card flipping for presenting objects in a row, according to some embodiments.
  • FIG. 8 depicts a grid view for detailing objects of a particular object type, according to some embodiments.
  • FIG. 9 depicts a computer system, according to some embodiments.
  • a diagram e.g., a topographical diagram
  • the diagram includes a number of swimlane rows for specific object types. Accordingly, each row can display a specific object type. Therefore, there can be a one-to-one relationship between the number of rows and the number of object types can be displayed in the diagram.
  • an object that can be created (a ghosted object) in one row can be shown as connectable with an object in another row.
  • This ghosted connection between a ghosted object in one row and an object in another row shows a clear relationship between the object and an object that can be created (the ghosted object).
  • FIG. 1 depicts a flowchart for creating a diagram that includes objects and connections between the objects for defining relationships, according to some embodiments.
  • a flowchart 100 of FIG. 1 is described in reference to the diagrams depicted in FIGS. 2-8 .
  • the operations of the flowchart 100 can be performed by software, firmware, hardware or a combination thereof.
  • the operations are described as being performed by a diagram module.
  • An example of the diagram module is depicted in FIG. 9 (which is described in more detail below).
  • the operations of a flowchart 100 start at block 102 .
  • FIG. 2 depicts a diagram having a number of rows for different object types, according to some embodiments.
  • the example object types in FIGS. 2-8 relate to network objects in a network (e.g., environments, clouds, hypervisors, etc.). However, embodiments are applicable to any type of objects.
  • FIG. 2 depicts a diagram 200 that includes three rows.
  • a row 202 is for an environment profile for a network and is for displaying objects of object type A (environment profile).
  • a row 204 is for cloud groups for a network and is for displaying objects of object type B (cloud group).
  • a row 206 is for hypervisors for a network and is for displaying objects of object type C (hypervisor). Operations of the flowchart 100 continue at block 104 .
  • the diagram module presents, on the display, a ghosted object of an object type in a row, wherein the ghosted object represents a creatable object of the object type.
  • a ghosted object 208 is displayed in the row 202 .
  • a ghosted object is an object that can be created by a user.
  • the ghosted objects provide guidance for the user in what objects can be created based on the objects currently being displayed in the diagram. Accordingly, the user can begin by creating an object of the object type A (environmental profile object).
  • first ghosted object can be displayed in any of the rows. Also, while depicted as only display one first ghosted object, in some embodiments, multiple first ghosted objects can be displayed in different rows. Operations of the flowchart 100 continue at block 106 .
  • the diagram module determines whether there is input to create an object of the object type for the ghosted object that is displayed.
  • a pop-up dialog allows the user to create the object.
  • the newly created object is shown and additional objects can be created (as described below). If there is not input to create the object, operations of the flowchart 100 continue at block 106 to continue waiting. If there is input to create the object, operations of the flowchart 100 continue at block 108 .
  • FIG. 3 depicts the diagram of FIG. 2 after a first object is created in a first row, according to some embodiments.
  • FIG. 3 depicts the diagram 200 after the ghosted object 208 shown in FIG. 2 is changed to an object 208 . Therefore, a creatable object (the ghosted object 208 ) is changed to a created object (the object 208 ) based on input from the user to create the object. Operations of the flowchart 100 continue at block 110 .
  • the diagram module graphically changes the ghosted object into the object.
  • the diagram module graphically changes the ghosted object 208 to the object 308 . Operations of the flowchart 100 continue at block 112 .
  • the diagram module presents a ghosted object in a different row that is connectable to the first object.
  • the diagram module presents a ghosted object 312 in the row 204 .
  • the ghosted object 312 is displayed in response to the creation of the object 308 because the object 308 is connectable with an object of the object type B that is within the row 204 .
  • an environmental profile object is connectable to a cloud group object. Operations of the flowchart 100 continue at block 114 .
  • the diagram module presents a ghosted connection between the object and the ghosted object in the different row.
  • the diagram module presents a ghosted connection 314 to illustrate to the user that the object 308 can be connected to the ghosted object 312 after the user has changed the ghosted object 312 into an object.
  • the diagram module presents a ghosted object 310 in the row 202 .
  • the user can create another object of the object type A.
  • the object 308 is not connectable to the ghosted object 310 .
  • all objects of a particular object type can be created in a same row. For example, an object type B is only created in the row 204 and cannot be created in the row 202 or the row 206 .
  • FIG. 4 depicts the diagram of FIG. 3 after a second object is created in a second row, according to some embodiments.
  • FIG. 4 depicts the diagram 200 after the ghosted object 312 shown in FIG. 3 is changed to an object 412 . Therefore, a creatable object (ghosted object 312 ) is changed to a created object (the object 412 ) based on input from the user to create the object.
  • the diagram module graphically changes the ghosted object 312 to the object 412 .
  • the diagram module presents a ghosted object 420 in the row 206 .
  • the ghosted object 420 is displayed in response to the creation of the object 412 because the object 412 is connectable with an object of the object type C that is within the row 206 .
  • a cloud group object is connectable with a hypervisor object.
  • the diagram module presents a ghosted connection 422 to illustrate to the user that the object 412 can be connected to the ghosted object 420 after the user has changed the ghosted object 420 into an object.
  • the diagram module presents a ghosted object 416 in the row 204 .
  • the user can create another object of the object type B.
  • the object 412 is not connectable to the ghosted object 416 . While illustrated that objects are connected and connectable to objects in adjacent rows below, some embodiments are not so limited. For example, in some embodiments objects are connected or connectable with objects in non-adjacent rows and/or connected or connectable to objects in rows above. Also, while these structures that are defined for a specific object type are depicted as swimlane rows, some embodiments can include other types of structures for specific object types (e.g., swimline columns).
  • FIG. 5 depicts a diagram having a number of objects and connections based on selection of a first object, according to some embodiments.
  • FIG. 5 depicts the diagram of FIG. 4 after a second object is created in the row 204 and a second object is created in the row 206 .
  • the object 516 is created adjacent to the object 412 in the row 204 .
  • the objects 412 and 516 can represent different cloud group objects.
  • FIG. 5 depicts the diagram 200 after the ghosted object 416 shown in FIG. 4 is changed to the object 516 .
  • a creatable object (ghosted object 416 ) is changed to a created object (the object 516 ) based on input from the user to create the object.
  • the diagram module graphically changes the ghosted object 416 to the object 516 .
  • the diagram module presents a ghosted object 530 in the row 204 . Accordingly, the user can create another object of the object type B.
  • an object 532 is created adjacent to an object 520 in the row 206 .
  • the objects 520 and 532 can represent different hypervisor objects.
  • the diagram module presents a ghosted object 534 in the row 206 . Accordingly, the user can create another object of the object type C.
  • an object in each row can be selected.
  • the object 308 is selected for the row 202 .
  • the object 412 is selected for the row 204 .
  • the object 520 is selected for the row 206 .
  • the connections and the ghosted connections are shown.
  • the connections and ghosted connections below the unselected objects are not shown. Rather, for the unselected objects, a circled number is positioned below the unselected object. The circled number represents the number of connections that the object is connected in the row below.
  • the object 308 in the row 202 is selected. Therefore, the connection 414 between the object 308 and the object 412 is shown. Also, a connection 518 between the object 308 and the object 516 is shown. Additionally, a ghosted connection 536 is shown between the object 308 and the ghosted object 530 .
  • the object 412 is selected. Therefore, a connection 522 between the object 412 and the object 520 is shown. Also, a connection 538 between the object 412 and the object 532 is shown. Additionally, a ghosted connection 536 is shown between the object 308 and the ghosted object 530 .
  • the object 520 is selected.
  • a connection 522 between the object 412 and the object 520 is shown.
  • a connection 538 between the object 412 and the object 532 is shown.
  • a ghosted connection 540 is shown between the object 412 and the ghosted object 534 .
  • the object 520 is selected. However, in this example there is not a row below the row 206 for another object type. Therefore, no connections or ghosted connections are shown for the object 520 .
  • a circled number 542 is positioned below the unselected object 516 in the row 204 . The circled number 542 has a value of one, which represents the number of connections that the unselected object has with objects in the row 206 .
  • FIG. 6 depicts the diagram of FIG. 5 after a different object is selected, according to some embodiments.
  • FIG. 6 depicts how the diagram 200 changes in response to the user selecting a different object.
  • the user has selected the object 516 . Therefore, the object 412 is unselected.
  • the connections and ghosted connections for the row 204 are updated.
  • the connection 522 , the connection 538 , and the ghosted connection 540 for the object 412 are removed in FIG. 6 .
  • the connections and ghosted connections for the selected object are displayed.
  • the display module adds a connection 602 from the object 516 to the object 532 .
  • the display module also adds a ghosted connection 604 from the object 516 to the ghosted object 534 .
  • the circled number 542 is removed, thereby being replaced with the connections and ghosted connections for the object 516 because the object 516 is now selected.
  • a circled number 606 is positioned below the unselected object 412 in the row 204 .
  • the circled number 606 has a value of two, which represents the number of connections that the unselected object has with objects in the row 206 . Therefore, even though the connections are not shown for the unselected object 412 , the user is able to see the number of connections for unselected object 412 .
  • the rows of the diagram 200 can include card-flipping for the different objects in a row.
  • FIG. 7 depicts a diagram having a number of objects and connections and including card flipping for presenting objects in a row, according to some embodiments.
  • FIG. 7 depicts the diagram 200 in which the row 204 includes card-flipping for representing the objects therein.
  • the row 204 includes a card 700 , a card 702 , a card 704 , a card 706 , and a card 708 .
  • Each of the cards 700 - 708 includes an object of the object type B.
  • the row 204 also includes a ghosted object 799 .
  • the card 704 is currently selected.
  • the card 704 is fully displayed along with the object therein.
  • the other cards are stacked on each other as shown. In response to the user selecting a different card in the row 204 , that card is fully displayed while the other cards are stacked.
  • the card 704 is selected, its connections and ghosted connections to the objects in the row 206 are displayed. Therefore, the connections and ghosted connection for the object in the card 704 and the objects in the row 206 are displayed.
  • the card 704 is connected to the object 520 through a connection 718 .
  • the card 704 is connected to the object 532 through a connection 720 .
  • the diagram 200 also includes connections between the cards and the object 308 in the row 202 .
  • the object 308 is connected to the card 700 through a connection 712 .
  • the object 308 is connected to the card 702 through a connection 710 .
  • the object 308 is connected to the card 704 through a connection 714 .
  • each of the cards that are not selected can include a circled number in or near the card that represents the number of connections to objects in the row below.
  • the cards can also display additional information.
  • the cards can include symbols that indicate whether additional configuration is necessary for the object and/or if there are any issues with the objects to which the object is connected.
  • the diagram 200 can be switched to a standard grid view to show details for a particular object type.
  • FIG. 8 depicts a grid view for detailing objects of a particular object type, according to some embodiments.
  • FIG. 8 depicts a grid 800 that is displayed in response to a user selecting one of the rows of a particular object type.
  • the user selected the row 206 to provide a more detailed grid view of each of the objects of the object type C (hypervisors).
  • the user can select a row to display in a grid view by selecting the name at the beginning of the row.
  • the user could select the portion of the row 206 that includes the name of the object type—hypervisors.
  • aspects of the present inventive subject matter may be embodied as a system, method or computer program product. Accordingly, aspects of the present inventive subject matter may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present inventive subject matter may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
  • a computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
  • a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof.
  • a computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
  • Computer program code for carrying out operations for aspects of the present inventive subject matter may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • LAN local area network
  • WAN wide area network
  • Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
  • the computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • FIG. 9 depicts a computer system, according to some embodiments.
  • a computer system includes a processor 901 (possibly including multiple processors, multiple cores, multiple nodes, and/or implementing multi-threading, etc.).
  • the computer system includes a memory 907 .
  • the memory 907 may be system memory (e.g., one or more of cache, SRAM, DRAM, zero capacitor RAM, Twin Transistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM, etc.) or any one or more of the above already described possible realizations of machine-readable media.
  • the computer system also includes a bus 903 (e.g., PCI, ISA, PCI-Express, HyperTransport?, InfiniBand?, NuBus, etc.), a network interface 905 (e.g., an ATM interface, an Ethernet interface, a Frame Relay interface, SONET interface, wireless interface, etc.), and a storage device(s) YY09 (e.g., optical storage, magnetic storage, etc.).
  • the computer system includes a display 942 , which can be representative of a display to display the diagrams depicted in FIGS. 2-8 as described herein.
  • the computer system also includes a diagram module 940 to creating and updating of the diagrams, as described herein.
  • Some or all of the operations of the diagram module 940 may be implemented with code embodied in the memory and/or processor, co-processors, other cards, etc. Any one of these operations may be partially (or entirely) implemented in hardware and/or on the processor 901 .
  • the operations may be implemented with an application specific integrated circuit, in logic implemented in the processor 901 , in a co-processor on a peripheral device or card, etc.
  • realizations may include fewer or additional components not illustrated in FIG. 9 (e.g., video cards, audio cards, additional network interfaces, peripheral devices, etc.).
  • the processor 901 , the storage device(s) 909 , the network interface 905 , the memory 907 , the page turn module 940 , and the display 942 are coupled to the bus 903 .
  • the memory 907 may be coupled to the processor 901 .

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

A method includes presenting, on a display, a diagram. The presenting of the diagram includes presenting a first row that defines a location where objects of a first object type can be created, wherein a first ghosted object of a first object type is displayed in the first row. The first ghosted object represents a first creatable object of the first object type. The presenting of the diagram includes presenting a second row that defines a location where objects of a second object type can be created. The method also includes responsive to a first input to create a first object of the first object type in the first row, creating the first object of the first object type. Also in response to the first input, the method includes graphically changing the first ghosted object into the first object and presenting a second ghosted object of the second object type in the second row.

Description

RELATED APPLICATIONS
This application is a Continuation of and claims the priority benefit of U.S. application Ser. No. 13/834,542 filed Mar. 15, 2013.
BACKGROUND
Embodiments of the inventive subject matter generally relate to the field of computers, and, more particularly, to organization of objects and connections in a diagram.
There are a number of approaches that allow users to create a diagram of multiple, interconnected objects. Some conventional approaches include standard canvas and palette design patterns. However, these current approaches have a number of drawbacks. For example, initially the canvas is blank, thereby providing no guidance on where the user should begin. Also, the relationship between two different types of objects may be not apparent. Additionally, with these conventional approaches, a user may need to attempt to create a connection between two objects to see if a connection is even possible. The creating of the connection between two objects may be a separate step. Also with these conventional approaches, the canvas may be free form, thereby making the diagrams difficult to read because only the object icons provide visual distinction between different types of objects.
SUMMARY
In some embodiments, a method includes presenting, on a display, a diagram. The presenting of the diagram includes presenting, on the display, a first row that defines a location where objects of a first object type can be created, wherein a first ghosted object of a first object type is displayed in the first row. The first ghosted object represents a first creatable object of the first object type. The presenting of the diagram includes presenting, on the display, a second row that defines a location where objects of a second object type can be created. The method also includes responsive to a first input to create a first object of the first object type in the first row, creating the first object of the first object type. Also in response to the first input, the method includes graphically changing the first ghosted object into the first object. Also in response to the first input, the method includes presenting, on the display, a second ghosted object of the second object type in the second row, wherein the second ghosted object represents a second creatable object of the second object type. Additionally, in response to the first input, the method includes presenting, on the display, a first ghosted connection between the first object and the second ghosted object.
BRIEF DESCRIPTION OF THE DRAWINGS
The present embodiments may be better understood, and numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
FIG. 1 depicts a flowchart for creating a diagram that includes objects and connections between the objects for defining relationships, according to some embodiments.
FIG. 2 depicts a diagram having a number of rows for different object types, according to some embodiments.
FIG. 3 depicts the diagram of FIG. 2 after a first object is created in a first row, according to some embodiments.
FIG. 4 depicts the diagram of FIG. 3 after a second object is created in a second row, according to some embodiments.
FIG. 5 depicts a diagram having a number of objects and connections based on selection of a first object, according to some embodiments.
FIG. 6 depicts the diagram of FIG. 5 after a different object is selected, according to some embodiments.
FIG. 7 depicts a diagram having a number of objects and connections and including card flipping for presenting objects in a row, according to some embodiments.
FIG. 8 depicts a grid view for detailing objects of a particular object type, according to some embodiments.
FIG. 9 depicts a computer system, according to some embodiments.
DESCRIPTION OF EMBODIMENT(S)
The description that follows includes exemplary systems, methods, techniques, instruction sequences and computer program products that embody techniques of the present inventive subject matter. However, it is understood that the described embodiments may be practiced without these specific details. For instance, although examples refer to objects related to a network, embodiments are applicable to any type of objects that includes connections between for defining relationships. In other instances, well-known instruction instances, protocols, structures and techniques have not been shown in detail in order not to obfuscate the description.
Some embodiments present, on a display, a diagram (e.g., a topographical diagram) that defines a number of objects of different object types and relationships among the number of objects. In some embodiments, the diagram includes a number of swimlane rows for specific object types. Accordingly, each row can display a specific object type. Therefore, there can be a one-to-one relationship between the number of rows and the number of object types can be displayed in the diagram. Also in some embodiments, to assist the user in understanding the connectability among object types, an object that can be created (a ghosted object) in one row can be shown as connectable with an object in another row. This ghosted connection between a ghosted object in one row and an object in another row shows a clear relationship between the object and an object that can be created (the ghosted object). These embodiments remove the need for a palette and do not require users to create connections between the objects. Also, such embodiments provide a clear initial guidance when creating a diagram and assist the user in developing an accurate mental model of the various object types.
FIG. 1 depicts a flowchart for creating a diagram that includes objects and connections between the objects for defining relationships, according to some embodiments. A flowchart 100 of FIG. 1 is described in reference to the diagrams depicted in FIGS. 2-8. The operations of the flowchart 100 can be performed by software, firmware, hardware or a combination thereof. For the flowchart 100, the operations are described as being performed by a diagram module. An example of the diagram module is depicted in FIG. 9 (which is described in more detail below). The operations of a flowchart 100 start at block 102.
At block 102, a diagram module presents, on the display, N number of rows that define locations where objects of N number of object types, respectively, can be created. To help illustrate, FIG. 2 is now described. FIG. 2 depicts a diagram having a number of rows for different object types, according to some embodiments. The example object types in FIGS. 2-8 relate to network objects in a network (e.g., environments, clouds, hypervisors, etc.). However, embodiments are applicable to any type of objects. FIG. 2 depicts a diagram 200 that includes three rows. A row 202 is for an environment profile for a network and is for displaying objects of object type A (environment profile). A row 204 is for cloud groups for a network and is for displaying objects of object type B (cloud group). A row 206 is for hypervisors for a network and is for displaying objects of object type C (hypervisor). Operations of the flowchart 100 continue at block 104.
At block 104, the diagram module presents, on the display, a ghosted object of an object type in a row, wherein the ghosted object represents a creatable object of the object type. With reference to FIG. 2, a ghosted object 208 is displayed in the row 202. In some embodiments, a ghosted object is an object that can be created by a user. The ghosted objects (as described herein) provide guidance for the user in what objects can be created based on the objects currently being displayed in the diagram. Accordingly, the user can begin by creating an object of the object type A (environmental profile object). Also, while depicted as having a first ghosted object being displayed in the top row, in some embodiments, the first ghosted object can be displayed in any of the rows. Also, while depicted as only display one first ghosted object, in some embodiments, multiple first ghosted objects can be displayed in different rows. Operations of the flowchart 100 continue at block 106.
At block 106, the diagram module determines whether there is input to create an object of the object type for the ghosted object that is displayed. With reference to FIG. 2, in some embodiments, after clicking on a link below the ghosted object, a pop-up dialog allows the user to create the object. After the pop-up dialog, the newly created object is shown and additional objects can be created (as described below). If there is not input to create the object, operations of the flowchart 100 continue at block 106 to continue waiting. If there is input to create the object, operations of the flowchart 100 continue at block 108.
At block 108, the diagram module creates the object based on the ghosted object. To help illustrate, FIG. 3 is now described. FIG. 3 depicts the diagram of FIG. 2 after a first object is created in a first row, according to some embodiments. FIG. 3 depicts the diagram 200 after the ghosted object 208 shown in FIG. 2 is changed to an object 208. Therefore, a creatable object (the ghosted object 208) is changed to a created object (the object 208) based on input from the user to create the object. Operations of the flowchart 100 continue at block 110.
At block 110, the diagram module graphically changes the ghosted object into the object. With reference to FIGS. 2 and 3, the diagram module graphically changes the ghosted object 208 to the object 308. Operations of the flowchart 100 continue at block 112.
At block 112, the diagram module presents a ghosted object in a different row that is connectable to the first object. With reference to FIG. 3, the diagram module presents a ghosted object 312 in the row 204. The ghosted object 312 is displayed in response to the creation of the object 308 because the object 308 is connectable with an object of the object type B that is within the row 204. For this example, an environmental profile object is connectable to a cloud group object. Operations of the flowchart 100 continue at block 114.
At block 114, the diagram module presents a ghosted connection between the object and the ghosted object in the different row. With reference to FIG. 3, the diagram module presents a ghosted connection 314 to illustrate to the user that the object 308 can be connected to the ghosted object 312 after the user has changed the ghosted object 312 into an object. Also in this example, in response to creating the object 308 in the row 202, the diagram module presents a ghosted object 310 in the row 202. Accordingly, the user can create another object of the object type A. Of note, the object 308 is not connectable to the ghosted object 310. As described, all objects of a particular object type can be created in a same row. For example, an object type B is only created in the row 204 and cannot be created in the row 202 or the row 206.
Operations of the flowchart 100 continue at block 106 where the diagram module waits for another input to create an object from a ghosted object. The operations at block 106-114 can continue until the diagram 200 is complete or the user terminates operations by the diagram module. To help illustrate, FIG. 4 is now described. FIG. 4 depicts the diagram of FIG. 3 after a second object is created in a second row, according to some embodiments. FIG. 4 depicts the diagram 200 after the ghosted object 312 shown in FIG. 3 is changed to an object 412. Therefore, a creatable object (ghosted object 312) is changed to a created object (the object 412) based on input from the user to create the object. With reference to FIGS. 3 and 4, the diagram module graphically changes the ghosted object 312 to the object 412.
Also, the diagram module presents a ghosted object 420 in the row 206. The ghosted object 420 is displayed in response to the creation of the object 412 because the object 412 is connectable with an object of the object type C that is within the row 206. For this example, a cloud group object is connectable with a hypervisor object.
Additionally, the diagram module presents a ghosted connection 422 to illustrate to the user that the object 412 can be connected to the ghosted object 420 after the user has changed the ghosted object 420 into an object. Also in this example, in response to creating the object 412 in the row 204, the diagram module presents a ghosted object 416 in the row 204. Accordingly, the user can create another object of the object type B. Of note, the object 412 is not connectable to the ghosted object 416. While illustrated that objects are connected and connectable to objects in adjacent rows below, some embodiments are not so limited. For example, in some embodiments objects are connected or connectable with objects in non-adjacent rows and/or connected or connectable to objects in rows above. Also, while these structures that are defined for a specific object type are depicted as swimlane rows, some embodiments can include other types of structures for specific object types (e.g., swimline columns).
Some diagrams can have multiple objects of each object type. To help illustrate, FIGS. 5-6 are now described. FIG. 5 depicts a diagram having a number of objects and connections based on selection of a first object, according to some embodiments. FIG. 5 depicts the diagram of FIG. 4 after a second object is created in the row 204 and a second object is created in the row 206. In particular, the object 516 is created adjacent to the object 412 in the row 204. The objects 412 and 516 can represent different cloud group objects. FIG. 5 depicts the diagram 200 after the ghosted object 416 shown in FIG. 4 is changed to the object 516. Therefore, a creatable object (ghosted object 416) is changed to a created object (the object 516) based on input from the user to create the object. With reference to FIGS. 4 and 5, the diagram module graphically changes the ghosted object 416 to the object 516. Also in this example, in response to creating the object 516 in the row 204, the diagram module presents a ghosted object 530 in the row 204. Accordingly, the user can create another object of the object type B. Also, an object 532 is created adjacent to an object 520 in the row 206. The objects 520 and 532 can represent different hypervisor objects. Also in this example, in response to creating the object 532 in the row 206, the diagram module presents a ghosted object 534 in the row 206. Accordingly, the user can create another object of the object type C.
Also as shown in FIG. 5, an object in each row can be selected. In this example, the object 308 is selected for the row 202. The object 412 is selected for the row 204. The object 520 is selected for the row 206. As shown, for the selected objects in a row, the connections and the ghosted connections are shown. For the unselected objects in a row, the connections and ghosted connections below the unselected objects are not shown. Rather, for the unselected objects, a circled number is positioned below the unselected object. The circled number represents the number of connections that the object is connected in the row below.
To illustrate in FIG. 5, the object 308 in the row 202 is selected. Therefore, the connection 414 between the object 308 and the object 412 is shown. Also, a connection 518 between the object 308 and the object 516 is shown. Additionally, a ghosted connection 536 is shown between the object 308 and the ghosted object 530. In the row 204, the object 412 is selected. Therefore, a connection 522 between the object 412 and the object 520 is shown. Also, a connection 538 between the object 412 and the object 532 is shown. Additionally, a ghosted connection 536 is shown between the object 308 and the ghosted object 530. In the row 206, the object 520 is selected. Therefore, a connection 522 between the object 412 and the object 520 is shown. Also, a connection 538 between the object 412 and the object 532 is shown. Additionally, a ghosted connection 540 is shown between the object 412 and the ghosted object 534. In the row 206, the object 520 is selected. However, in this example there is not a row below the row 206 for another object type. Therefore, no connections or ghosted connections are shown for the object 520. Also depicted in FIG. 5, a circled number 542 is positioned below the unselected object 516 in the row 204. The circled number 542 has a value of one, which represents the number of connections that the unselected object has with objects in the row 206.
Therefore, even though the connections are not shown for the unselected object 516, the user is able to see the number of connections for unselected object 516. Such embodiments enable the diagram 200 to provide information about the relationships among the objects without displaying all of the connections at a same time. To illustrate, FIG. 6 depicts the diagram of FIG. 5 after a different object is selected, according to some embodiments. FIG. 6 depicts how the diagram 200 changes in response to the user selecting a different object. In this example, the user has selected the object 516. Therefore, the object 412 is unselected.
In response to the selection by the user, the connections and ghosted connections for the row 204 are updated. In particular, the connection 522, the connection 538, and the ghosted connection 540 for the object 412 (that were depicted in FIG. 5 for the object 412) are removed in FIG. 6. Also, the connections and ghosted connections for the selected object (the object 516) are displayed. In particular, the display module adds a connection 602 from the object 516 to the object 532. The display module also adds a ghosted connection 604 from the object 516 to the ghosted object 534.
Also in response to the selection by the user, the circled number 542 is removed, thereby being replaced with the connections and ghosted connections for the object 516 because the object 516 is now selected. Also depicted in FIG. 6, a circled number 606 is positioned below the unselected object 412 in the row 204. The circled number 606 has a value of two, which represents the number of connections that the unselected object has with objects in the row 206. Therefore, even though the connections are not shown for the unselected object 412, the user is able to see the number of connections for unselected object 412.
For increased scalability, the rows of the diagram 200 can include card-flipping for the different objects in a row. To illustrate, FIG. 7 depicts a diagram having a number of objects and connections and including card flipping for presenting objects in a row, according to some embodiments. FIG. 7 depicts the diagram 200 in which the row 204 includes card-flipping for representing the objects therein. The row 204 includes a card 700, a card 702, a card 704, a card 706, and a card 708. Each of the cards 700-708 includes an object of the object type B. The row 204 also includes a ghosted object 799. In this example, the card 704 is currently selected. The card 704 is fully displayed along with the object therein. The other cards are stacked on each other as shown. In response to the user selecting a different card in the row 204, that card is fully displayed while the other cards are stacked.
Because the card 704 is selected, its connections and ghosted connections to the objects in the row 206 are displayed. Therefore, the connections and ghosted connection for the object in the card 704 and the objects in the row 206 are displayed. The card 704 is connected to the object 520 through a connection 718. The card 704 is connected to the object 532 through a connection 720. Also, there is a ghosted connection 722 between the card 704 and the ghosted object 534. The diagram 200 also includes connections between the cards and the object 308 in the row 202. The object 308 is connected to the card 700 through a connection 712. The object 308 is connected to the card 702 through a connection 710. The object 308 is connected to the card 704 through a connection 714. Also, there is a ghosted connection 716 between the object 308 and the ghosted object 799.
While card flipping is only shown for one row, the card flipping can be incorporated into any number of rows in the diagram. In some embodiments, the displaying of the circled numbers illustrated in FIGS. 5-6 can be combined with the card flipping illustrated in FIG. 7. Accordingly, each of the cards that are not selected can include a circled number in or near the card that represents the number of connections to objects in the row below. Also, the cards can also display additional information. For example, the cards can include symbols that indicate whether additional configuration is necessary for the object and/or if there are any issues with the objects to which the object is connected.
In some embodiments, the diagram 200 can be switched to a standard grid view to show details for a particular object type. To illustrate, FIG. 8 depicts a grid view for detailing objects of a particular object type, according to some embodiments. FIG. 8 depicts a grid 800 that is displayed in response to a user selecting one of the rows of a particular object type. In this example, the user selected the row 206 to provide a more detailed grid view of each of the objects of the object type C (hypervisors). For example, the user can select a row to display in a grid view by selecting the name at the beginning of the row. In this example with reference to FIG. 7, the user could select the portion of the row 206 that includes the name of the object type—hypervisors.
As will be appreciated by one skilled in the art, aspects of the present inventive subject matter may be embodied as a system, method or computer program product. Accordingly, aspects of the present inventive subject matter may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present inventive subject matter may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present inventive subject matter may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present inventive subject matter are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the inventive subject matter. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
FIG. 9 depicts a computer system, according to some embodiments. A computer system includes a processor 901 (possibly including multiple processors, multiple cores, multiple nodes, and/or implementing multi-threading, etc.). The computer system includes a memory 907. The memory 907 may be system memory (e.g., one or more of cache, SRAM, DRAM, zero capacitor RAM, Twin Transistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM, etc.) or any one or more of the above already described possible realizations of machine-readable media. The computer system also includes a bus 903 (e.g., PCI, ISA, PCI-Express, HyperTransport?, InfiniBand?, NuBus, etc.), a network interface 905 (e.g., an ATM interface, an Ethernet interface, a Frame Relay interface, SONET interface, wireless interface, etc.), and a storage device(s) YY09 (e.g., optical storage, magnetic storage, etc.). The computer system includes a display 942, which can be representative of a display to display the diagrams depicted in FIGS. 2-8 as described herein. The computer system also includes a diagram module 940 to creating and updating of the diagrams, as described herein. Some or all of the operations of the diagram module 940 may be implemented with code embodied in the memory and/or processor, co-processors, other cards, etc. Any one of these operations may be partially (or entirely) implemented in hardware and/or on the processor 901. For example, the operations may be implemented with an application specific integrated circuit, in logic implemented in the processor 901, in a co-processor on a peripheral device or card, etc.
Further, realizations may include fewer or additional components not illustrated in FIG. 9 (e.g., video cards, audio cards, additional network interfaces, peripheral devices, etc.). The processor 901, the storage device(s) 909, the network interface 905, the memory 907, the page turn module 940, and the display 942 are coupled to the bus 903. Although illustrated as being coupled to the bus 903, the memory 907 may be coupled to the processor 901.
While the embodiments are described with reference to various implementations and exploitations, it will be understood that these embodiments are illustrative and that the scope of the inventive subject matter is not limited to them. In general, techniques for organization of objects and connections in a diagram as described herein may be implemented with facilities consistent with any hardware system or hardware systems. Many variations, modifications, additions, and improvements are possible.
Plural instances may be provided for components, operations or structures described herein as a single instance. Finally, boundaries between various components, operations and data stores are somewhat arbitrary, and particular operations are illustrated in the context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within the scope of the inventive subject matter. In general, structures and functionality presented as separate components in the exemplary configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements may fall within the scope of the inventive subject matter.

Claims (6)

What is claimed is:
1. A method for displaying a diagram, the method comprising:
providing a user interface (UI) for organizing and creating the diagram utilizing a swim lane style row structure for representing types and relationships between different objects and for presenting ghosted objects for use in creation of new objects, wherein the UI further comprises:
presenting visible rows upon entry to the UI, wherein each row represents a specific object type, with a first ghosted object on a first row pre-connected with a selected first non-ghosted object from a second row using a first ghosted connection;
responsive to a user selection of the first ghosted object for creation, creating a second non-ghosted object to replace the first ghosted object and presenting a connection between the first non-ghosted object and the second non-ghosted object as a first non-ghosted connection; and
responsive to a user selection of a third non-ghosted object in the same row as the first non-ghosted object, removing at least the second non-ghosted object and first non-ghosted connection, and displaying a number in proximity to the first non-ghosted object, the number representing a number of connections between the first non-ghosted object and a first set of one or more objects connected to the first non-ghosted object that were removed, and adding a second set of one or more objects connected to the third non-ghosted object and one or more connections to the second set of one or more objects.
2. The method of claim 1, further comprising, responsive to selection of the first ghosted object, presenting a menu including a menu entry, which upon selection, creates the second non-ghosted object.
3. The method of claim 1, further comprising, responsive to selection of a third object in a third row, automatically presenting one or more child objects of the third object.
4. The method of claim 1, further comprising providing a card flipping interface, wherein a row of the UI includes a plurality of non-ghosted objects included in the card flipping interface and at least one ghosted object excluded from the card flipping interface, the plurality of non-ghosted objects including a first selected object, wherein the card flipping interface includes fully displaying the first selected object as connected to the first ghosted object using the first ghosted connection, and partially displaying a remainder of the plurality of non-ghosted objects in at least one stack in the row and without any ghosted connections.
5. The method of claim 1, wherein the diagram represents a cloud environment.
6. The method of claim 1, wherein providing the UI for organizing and creating the diagram comprises providing the UI for organizing and creating a topographical diagram.
US14/065,845 2025-08-06 2025-08-06 Object and connection organization in a diagram Active 2025-08-06 US10013241B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/065,845 US10013241B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram
US16/021,392 US20180314500A1 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/834,542 US9940107B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram
US14/065,845 US10013241B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/834,542 Continuation US9940107B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/021,392 Continuation US20180314500A1 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Publications (2)

Publication Number Publication Date
US20140282028A1 US20140282028A1 (en) 2025-08-06
US10013241B2 true US10013241B2 (en) 2025-08-06

Family

ID=51503005

Family Applications (3)

Application Number Title Priority Date Filing Date
US13/834,542 Expired - Fee Related US9940107B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram
US14/065,845 Active 2025-08-06 US10013241B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram
US16/021,392 Abandoned US20180314500A1 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/834,542 Expired - Fee Related US9940107B2 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Family Applications After (1)

Application Number Title Priority Date Filing Date
US16/021,392 Abandoned US20180314500A1 (en) 2025-08-06 2025-08-06 Object and connection organization in a diagram

Country Status (2)

Country Link
US (3) US9940107B2 (en)
CN (1) CN104050150B (en)

Families Citing this family (1)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US9940107B2 (en) 2025-08-06 2025-08-06 International Business Machines Corporation Object and connection organization in a diagram

Citations (23)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US5432897A (en) * 2025-08-06 2025-08-06 Nippon Steel Corporation Method and an apparatus for editing tree structures in display
US5742284A (en) * 2025-08-06 2025-08-06 Hewlett-Packard Company Object based system comprising weak links
US5786816A (en) * 2025-08-06 2025-08-06 Araxsys, Inc. Method and apparatus for graphical user interface-based and variable result healthcare plan
US5943050A (en) * 2025-08-06 2025-08-06 International Business Machines Corporation Digital image capture control
US6002399A (en) 2025-08-06 2025-08-06 Apple Computer, Inc. Apparatus and method for creating diagrams
US6687485B2 (en) * 2025-08-06 2025-08-06 Thinksmark Performance Systems Llc System and method for providing help/training content for a web-based application
US20040059816A1 (en) 2025-08-06 2025-08-06 Hitachi, Ltd. Computer management system and management program
US20040189717A1 (en) * 2025-08-06 2025-08-06 Carli Conally Intelligent drill-down for graphical user interface
US6836275B1 (en) 2025-08-06 2025-08-06 Sanavigator, Inc. Method for distinguishing between single and multiple connections in a network topology
US20050188302A1 (en) * 2025-08-06 2025-08-06 Pitney Bowes Incorporated Computing system for graphically manipulating production print streams
US20060271884A1 (en) * 2025-08-06 2025-08-06 Cogniscape, Llc Methods for defining queries, generating query results and displaying same
US7148892B2 (en) * 2025-08-06 2025-08-06 Microsoft Corporation 3D navigation techniques
US20070036403A1 (en) 2025-08-06 2025-08-06 Microsoft Corporation Object association in a computer generated drawing environment
CN101216929A (en) 2025-08-06 2025-08-06 广东威创视讯科技股份有限公司 Image processing method
US20090249213A1 (en) 2025-08-06 2025-08-06 Atsushi Murase User interface providing information system topology presentation
CN101617499A (en) 2025-08-06 2025-08-06 艾利森电话股份有限公司 Self-Forming Network Management Topology
US20110016429A1 (en) * 2025-08-06 2025-08-06 Fuji Xerox Co., Ltd. Information processing apparatus, information processing method and computer readable medium
US20110209094A1 (en) * 2025-08-06 2025-08-06 Salesforce.Com, Inc. Systems and methods for implementing customized drop-down menus
US20110282873A1 (en) * 2025-08-06 2025-08-06 Jan Mirus Mind Map with Data Feed Linkage and Social Network Interaction
CN102257472A (en) 2025-08-06 2025-08-06 微软公司 Data visualization interactivity architecture
CN102907069A (en) 2025-08-06 2025-08-06 国际商业机器公司 Method and system for executing a graphics application
US20140067406A1 (en) 2025-08-06 2025-08-06 Eugene A. Hyatt Facilitating a transaction among a surgical provider, an item provider, and a payor
US20140282026A1 (en) 2025-08-06 2025-08-06 International Business Machines Corporation Object and connection organization in a diagram

Patent Citations (24)

* Cited by examiner, ? Cited by third party
Publication number Priority date Publication date Assignee Title
US5742284A (en) * 2025-08-06 2025-08-06 Hewlett-Packard Company Object based system comprising weak links
US5432897A (en) * 2025-08-06 2025-08-06 Nippon Steel Corporation Method and an apparatus for editing tree structures in display
US5943050A (en) * 2025-08-06 2025-08-06 International Business Machines Corporation Digital image capture control
US6002399A (en) 2025-08-06 2025-08-06 Apple Computer, Inc. Apparatus and method for creating diagrams
US5786816A (en) * 2025-08-06 2025-08-06 Araxsys, Inc. Method and apparatus for graphical user interface-based and variable result healthcare plan
US6836275B1 (en) 2025-08-06 2025-08-06 Sanavigator, Inc. Method for distinguishing between single and multiple connections in a network topology
US7148892B2 (en) * 2025-08-06 2025-08-06 Microsoft Corporation 3D navigation techniques
US6687485B2 (en) * 2025-08-06 2025-08-06 Thinksmark Performance Systems Llc System and method for providing help/training content for a web-based application
US20040059816A1 (en) 2025-08-06 2025-08-06 Hitachi, Ltd. Computer management system and management program
US20040189717A1 (en) * 2025-08-06 2025-08-06 Carli Conally Intelligent drill-down for graphical user interface
US20050188302A1 (en) * 2025-08-06 2025-08-06 Pitney Bowes Incorporated Computing system for graphically manipulating production print streams
US20060271884A1 (en) * 2025-08-06 2025-08-06 Cogniscape, Llc Methods for defining queries, generating query results and displaying same
US20070036403A1 (en) 2025-08-06 2025-08-06 Microsoft Corporation Object association in a computer generated drawing environment
CN101617499A (en) 2025-08-06 2025-08-06 艾利森电话股份有限公司 Self-Forming Network Management Topology
US20100142409A1 (en) 2025-08-06 2025-08-06 Liam Fallon Self-Forming Network Management Topologies
CN101216929A (en) 2025-08-06 2025-08-06 广东威创视讯科技股份有限公司 Image processing method
US20090249213A1 (en) 2025-08-06 2025-08-06 Atsushi Murase User interface providing information system topology presentation
CN102257472A (en) 2025-08-06 2025-08-06 微软公司 Data visualization interactivity architecture
US20110016429A1 (en) * 2025-08-06 2025-08-06 Fuji Xerox Co., Ltd. Information processing apparatus, information processing method and computer readable medium
US20110209094A1 (en) * 2025-08-06 2025-08-06 Salesforce.Com, Inc. Systems and methods for implementing customized drop-down menus
US20110282873A1 (en) * 2025-08-06 2025-08-06 Jan Mirus Mind Map with Data Feed Linkage and Social Network Interaction
CN102907069A (en) 2025-08-06 2025-08-06 国际商业机器公司 Method and system for executing a graphics application
US20140067406A1 (en) 2025-08-06 2025-08-06 Eugene A. Hyatt Facilitating a transaction among a surgical provider, an item provider, and a payor
US20140282026A1 (en) 2025-08-06 2025-08-06 International Business Machines Corporation Object and connection organization in a diagram

Non-Patent Citations (6)

* Cited by examiner, ? Cited by third party
Title
"CN Application No. 201410098139.4 Office Action", dated Jun. 24, 2016, 5 pages.
"U.S. Appl. No. 13/834,542 Final Office Action", dated Jul. 13, 2017, 20 pages.
"U.S. Appl. No. 13/834,542 First Action Pre Interview Summary", dated Sep. 1, 2015, 5 pages.
"U.S. Appl. No. 13/834,542 First Action Summary Office Action", dated Feb. 5, 2016, 18 pages.
"U.S. Appl. No. 13/834,542 Office Action", dated Feb. 7, 2017, 16 pages.
U.S. Appl. No. 13/834,542, filed Mar. 15, 2013, Bleizeffer, Terry M., et al.

Also Published As

Publication number Publication date
CN104050150B (en) 2025-08-06
CN104050150A (en) 2025-08-06
US20140282028A1 (en) 2025-08-06
US20180314500A1 (en) 2025-08-06
US9940107B2 (en) 2025-08-06
US20140282026A1 (en) 2025-08-06

Similar Documents

Publication Publication Date Title
KR101733943B1 (en) Hierarchically-organized control galleries
US8810576B2 (en) Manipulation and management of links and nodes in large graphs
US9870362B2 (en) Interactive data-driven presentations
US8560971B2 (en) Management of selected and nonselected items in a list
US8893050B2 (en) Assembly and output of user-defined groupings
US9575639B2 (en) Compound controls
US20090319882A1 (en) DataGrid User Interface Control With Row Details
US20140129985A1 (en) Touch based selection of graphical elements
US20160092081A1 (en) Methods, systems, and computer readable media for generating a visual overlay
US20180081862A1 (en) Techniques for mixed-initiative visualization of data
US20120159351A1 (en) Multiple reviews of graphical user interfaces
CN105786920A (en) Method and device for presenting interface label
EP3289479B1 (en) Rendering graphical assets natively on multiple screens of electronic devices
US20180314500A1 (en) Object and connection organization in a diagram
US8914423B2 (en) Mapping data elements in a user interface
US20140289701A1 (en) Enhanced Timelines in Application Development Environments
US20130311936A1 (en) Contextual rendering in displaying objects
CN113342413B (en) Method, apparatus, device, medium, and article for processing components
CN117763640A (en) User interaction method, device and storage medium applied to Revit
WO2020069638A1 (en) Page navigation with tree menu
CN113590110A (en) Frame construction method, device and equipment

Legal Events

Date Code Title Description
AS Assignment 百度 讲到这里,它还是一台揽胜,一台很是全能的路虎。

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BLEIZEFFER, TERRY M.;HAWKES, NICHOLAS C.;WU, AIMIN;SIGNING DATES FROM 20130313 TO 20130314;REEL/FRAME:031500/0853

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

气血两亏是什么意思 皮疹是什么原因引起的 生丝是什么 一个壳一个心念什么 身上发抖是什么原因
2006年属什么生肖 液蜡是什么 什么人适合吃人参 急是什么结构 脾胃虚是什么症状
眼睛黄是什么原因 心脏早搏是什么症状 韬光养晦下一句是什么 gp什么意思 咳嗽喝什么茶
印堂发亮预兆着什么 吃什么药能来月经 甲骨文是什么朝代的 六月初六是什么节 大象鼻子为什么那么长
槑是什么意思hcv7jop4ns6r.cn 什么食物维生素A含量高hcv7jop5ns2r.cn 浮生若梦是什么意思96micro.com 睡觉时胳膊和手发麻是什么原因jasonfriends.com 梦见死人是什么兆头hcv9jop2ns3r.cn
经常中暑的人体内缺什么hcv9jop7ns2r.cn 淼念什么hcv9jop3ns4r.cn 什么虫子咬了像针扎一样疼hcv8jop2ns0r.cn 子宫内膜异位是什么原因造成的hcv9jop5ns5r.cn 别见怪是什么意思hcv8jop9ns4r.cn
吃什么有助于骨头愈合hcv8jop3ns8r.cn 游弋是什么意思hcv9jop7ns5r.cn 鸭肉和什么一起炖好吃hcv8jop5ns7r.cn 什么入伏hcv8jop6ns1r.cn 减脂吃什么hcv8jop7ns0r.cn
晋升是什么意思helloaicloud.com 空气刘海适合什么脸型hcv8jop4ns9r.cn 春节吃什么hcv7jop9ns7r.cn 2021年是什么年hcv9jop3ns1r.cn 二月开什么花hcv8jop0ns4r.cn
百度