AbTLinux configManager F elix Cillessen A lex Rachmann R ogier de Leeuw FAR beyond RE RE
About Time Linux toolset <ul><li>The configManager acts as a service provider to the packageManager by gathering and deliv...
Context configManager <ul><li>Configuration: A state of all configuration files of a package at a given time. </li></ul><u...
Mission, Vision, Value <ul><li>Mission </li></ul><ul><ul><li>Deliver well documented requirements as extension for AbTLinu...
Business rules packageManager is always the actor for the configManager configManager itself never performs any write acti...
Overview of all Use Cases
Identify configuration files <ul><li>Configuration files of a package are discovered. </li></ul><ul><li>BCoE: </li></ul><u...
Heuristic for identifying configuration files <ul><li>The file has to be in text-format, not in a binary format. </li></ul...
Interlude: Content of configuration files <ul><li>Package foo v1 has no configuration files. </li></ul><ul><li>Package foo...
Identify configuration files (scenario) <ul><li>configManager identifies possible configuration of foo v3 files by their f...
Provide configuration item <ul><li>One or more (could be all) items of a configuration are requested and returned </li></ul>
Provide configuration item (scenario 1) <ul><li>configManager gathers the values of SERVER and PROTOCOL of foo v3 </li></u...
Provide configuration item (scenario 2) <ul><li>configManager tries to gather the values of SERVER and PROTOCOL of package...
Provide configuration item (scenario 3) <ul><li>configManager gathers all items of foo v3 by using the wildcard *, in this...
Provide differences overview <ul><li>The items of two configurations are compared </li></ul><ul><li>This comparison can be...
Provide differences overview (scenario 1) <ul><li>configManager reads the files foo.ini and foo.conf of foo version 2 (Out...
Provide differences overview (scenario 2) <ul><li>configManager reads the files foo.ini and foo.conf of foo version 3 (Out...
Provide summary <ul><li>Provides information about a configuration, listed according to configuration files. </li></ul><ul...
ORM of Use Case “Provide summary”
Domain Model
Non-functionals <ul><li>Data integrity </li></ul><ul><li>Integrability </li></ul><ul><li>Reliability </li></ul><ul><li>Ext...
Questions?
Thank you! On behalf of the FAR beyond RE group Our best wishes for this Xmas and a happy new year
Upcoming SlideShare
Loading in …5
×

Use Cases Configuration Manager, proposal

1,055 views

Published on

Result of the course \"Requirements Engineering\" at the RU Nijmegen

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,055
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Use Cases Configuration Manager, proposal

  1. 1. AbTLinux configManager F elix Cillessen A lex Rachmann R ogier de Leeuw FAR beyond RE RE
  2. 2. About Time Linux toolset <ul><li>The configManager acts as a service provider to the packageManager by gathering and delivering information about configurations </li></ul>
  3. 3. Context configManager <ul><li>Configuration: A state of all configuration files of a package at a given time. </li></ul><ul><li>Configuration file: File that contains parameters and settings used by the package. </li></ul><ul><li>Package: A Linux package consists of one or more programs with associated documentation that will perform a specific function either for the operating system or add additional capabilities. </li></ul>
  4. 4. Mission, Vision, Value <ul><li>Mission </li></ul><ul><ul><li>Deliver well documented requirements as extension for AbTLinux for developing the configManager. </li></ul></ul><ul><li>Vision </li></ul><ul><ul><li>A document based on a precise framework according to a modern way of software engineering. </li></ul></ul><ul><li>Values </li></ul><ul><ul><li>The main value is the clear documentation using Use Cases, goal analysis and ORM. </li></ul></ul><ul><ul><li>To facilitate the stakeholders to get a clear and shared understanding of the functionality of the configManager before it is actually build. </li></ul></ul>
  5. 5. Business rules packageManager is always the actor for the configManager configManager itself never performs any write actions The configManager is an information delivery service for the packageManager
  6. 6. Overview of all Use Cases
  7. 7. Identify configuration files <ul><li>Configuration files of a package are discovered. </li></ul><ul><li>BCoE: </li></ul><ul><li>configManager identifies possible configuration files. </li></ul><ul><li>configManager creates a list of possible configuration files. </li></ul><ul><li>configManager returns this list. </li></ul>
  8. 8. Heuristic for identifying configuration files <ul><li>The file has to be in text-format, not in a binary format. </li></ul><ul><li>Standard names should be used. </li></ul><ul><li>Standard extensions should be used. </li></ul><ul><li>Standard directories should be used. </li></ul>
  9. 9. Interlude: Content of configuration files <ul><li>Package foo v1 has no configuration files. </li></ul><ul><li>Package foo v2 has 2 configuration files, content of foo.ini is </li></ul><ul><ul><li>SERVER=www.foo.com </li></ul></ul><ul><li>Package foo v3 has 2 configuration files, content of foo.ini is </li></ul><ul><ul><li>SERVER=www.foo.org </li></ul></ul><ul><ul><li>PROTOCOL=http </li></ul></ul><ul><li>Package foo v4 has the same configuration files as foo v3. </li></ul>
  10. 10. Identify configuration files (scenario) <ul><li>configManager identifies possible configuration of foo v3 files by their format (textcode) and extensions, in this scenario </li></ul><ul><ul><li>Foo.ini </li></ul></ul><ul><ul><li>Foo.conf </li></ul></ul><ul><li>configManager creates a list out of these two. </li></ul><ul><li>configManager returns this list. </li></ul>
  11. 11. Provide configuration item <ul><li>One or more (could be all) items of a configuration are requested and returned </li></ul>
  12. 12. Provide configuration item (scenario 1) <ul><li>configManager gathers the values of SERVER and PROTOCOL of foo v3 </li></ul><ul><li>configManager returns the chosen items SERVER = www.foo.org and PROTOCOL = http </li></ul>
  13. 13. Provide configuration item (scenario 2) <ul><li>configManager tries to gather the values of SERVER and PROTOCOL of package foo v1 </li></ul><ul><li>The configManager returns the message “Package foo version 1 has no configuration.” </li></ul>
  14. 14. Provide configuration item (scenario 3) <ul><li>configManager gathers all items of foo v3 by using the wildcard *, in this case SERVER and PROTOCOL </li></ul><ul><li>configManager returns the chosen items SERVER = www.foo.org and PROTOCOL = http </li></ul>
  15. 15. Provide differences overview <ul><li>The items of two configurations are compared </li></ul><ul><li>This comparison can be done between </li></ul><ul><ul><li>Two stored configurations (inside a tar.gz. file) </li></ul></ul><ul><ul><li>One stored configuration (tar.gz.) and an installed configuration (e. g. home directory) </li></ul></ul>
  16. 16. Provide differences overview (scenario 1) <ul><li>configManager reads the files foo.ini and foo.conf of foo version 2 (Outcome SERVER = www.foo.com) </li></ul><ul><li>configManager reads the files foo.ini and foo.conf of foo version 3 (Outcome SERVER = www.foo.org PROTOCOL = http) </li></ul><ul><li>The differences are returned. &quot;The configuration of package foo version 2 has a different value of the item SERVER than the configuration of the package foo version 3. (foo version 2: SERVER = www.foo.com; foo version 3 SERVER =www.foo.org) The configuration of package foo version 3 has an item that is not defined in the configuration of package foo version 2 (PROTOCOL = http).&quot; </li></ul>
  17. 17. Provide differences overview (scenario 2) <ul><li>configManager reads the files foo.ini and foo.conf of foo version 3 (Outcome: SERVER = www.foo.com PROTOCOL = http) </li></ul><ul><li>configManager reads the files foo.ini and foo.conf of foo version 4. (Outcome: SERVER = www.foo.org PROTOCOL = http) </li></ul><ul><li>The message &quot;There are no differences between the configuration of foo version 3 and configuration of foo version 4.&quot; is returned. </li></ul>
  18. 18. Provide summary <ul><li>Provides information about a configuration, listed according to configuration files. </li></ul><ul><ul><li>Properties of a file: size, last changed by, last changed at, created by, created at, number of items, text code, location </li></ul></ul>
  19. 19. ORM of Use Case “Provide summary”
  20. 20. Domain Model
  21. 21. Non-functionals <ul><li>Data integrity </li></ul><ul><li>Integrability </li></ul><ul><li>Reliability </li></ul><ul><li>Extensibility </li></ul>
  22. 22. Questions?
  23. 23. Thank you! On behalf of the FAR beyond RE group Our best wishes for this Xmas and a happy new year

×