SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Assignment 6: Architecture Organization

Task 01: Component and Deployment Diagram

2+2 points
  • Draw a meaningful Component Diagram that demonstrates that you understand the following concepts: Component, Port, Required Interface, Provided interface.
  • Draw a meaningful Deployment Diagram that demonstrates that you understand the following concepts: Node, Connection [UML 2: “Communication Path”], Component, Dependency

Remarks:

  • You can solve the previous two parts using our Bike Rental Outlet, if you want.
  • In case the Deployment Diagram on the lecture slides was too simple for you, you find more sophisticated examples on the web.

Fixed format for the discussions in Task 02 to Task 04

During the development of software, different issues have to be resolved. The following short text describes on a very abstract level how this is done. Based on this abstract description, we present a simple format for your solution to the next three tasks.

If you are interested in another Abbott task, you may use this short text to train yourself again. Just draw your own class diagram representing the text, before you click on the link to the our class diagram. This time we only used the nouns as class candidates and all verbs as association candidates. We didn't gather any operations or attributes.

For an issue certain criteria are relevant. Proposals that address the issue are assessed by these criteria. Of course a proposal can address more than one issue. Based on the proposals a resolution has to be selected, which resolves the issue. Of course new issues might be raised by proposals. (See our class diagram summarizing this.)

Arguments can support or oppose to criteria and proposals. The can even support or oppose to the positive or negative assessment of a proposal by a criterion. (See our extended class diagram summarizing this.)


Present your solution in the following format:



Issue: <Will be given by the task>

Discussion:

<Criterion> <Criterion> <Criterion>
<Proposal> <Positive or Negative Assessment> <Positive or Negative Assessment> <Positive or Negative Assessment>
<Proposal> <Positive or Negative Assessment> <Positive or Negative Assessment> <Positive or Negative Assessment>
<Proposal> <Positive or Negative Assessment> <Positive or Negative Assessment> <Positive or Negative Assessment>

Resolution: <The resolution you suggest assessment of the proposals.>



Comments:

  • The <Proposal>s will be given by the task.
  • You have to find three or more <Criterion>s. In System Design these are typically design goals the system should meet or URPS+ requirements.
  • If it is clear whether or not a proposal positively or negatively assessed with respect to a criterion, it is enough to write :+: or :-: in the corresponding cell.
  • If the assessment needs an argument, write the argument into the cell.
  • Of course you can add arguments to <Proposal> and <Criterion> cells.
  • It might make your tables more readable, if you add color to the cells.
  • The following file formats are ok: Text, PDF, Excel

Task 02: Discuss Software Mapping

3 points

In assignment 5, task 01, we mentioned the following extension to the Bike Rental Outlet software:

  • Mobile access to the Bike Rental Outlets
    • Customers can interact with their mobile devices with the Bike Rental Outlets.
    • Special feature for GPS-enabled devices: Show the nearest Bike Rental Outlet.

We plan to write a component that allows to find Bike Rental Outlets. Yet, we don't know whether to deploy this component on the mobile devices or on the server. Discuss the issue and present it in the predefined format.

Issue:

  • Should the component responsible for finding Bike Rental Outlets be deployed on the mobile device or on the server?

Proposals:

  • Deploy the component on the mobile device.
  • Deploy the component on the server.
  • [If you have a third proposal, you can discuss it as well.]

Task 03: Discuss Data Persistence

3 points

Read section 4 of the last set of slides.

The Bike Rental Outlet software shall be able to store information about Sales, but we haven't decided how to store it. Discuss the issue and present it in the predefined format.

Issue:

  • How should the data about Sales be stored?

Proposals:

  • File
  • Relational Database
  • Object Oriented Database
  • [If you have a fourth proposal, you can discuss it as well.]

Task 04: Discuss Access Matrix Implementation

3 points

Read section 5 of the last set of slides.

We want to define the Access Control for the Bike Rental Outlet, but we haven't decided how to implement it. Discuss the issue and present it in the predefined format.

Issue:

  • How should the Access Control be implemented?

Proposals:

  • Global access table
  • Access control list
  • Capability based
teaching/lectures/oosc/2012/assignment_6.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2024