Design with UML


Advanced Business Systems (ABS) is a consulting and staffing company providing specialized staffing and consulting services to clients in a variety of different industries. It has offices in major U.S. metro areas and has ongoing relationships with Fortune 500 companies. Its areas of services range from software development and network engineering to geo-information systems. It has fifty (50) plus regional offices in U.S. and five (5) offices in Canada. It plans to expand to other countries in the future.

When an ABS client company determines that it will need a contractor or temporary professional, it issues a staffing request against the contract it had previously negotiated with ABS. The contract manager in ABS reviews the staff request and ensures that the request is valid with its current contract with its client from the database.

•If the request is not valid, the contract manager sends the staffing request back to the client and explains the reasons and asks for the need for starting a new contract.

•If the request is valid, the contract manager will start recruiting requests by putting the request into its staffing database. The staffing request is then sent to ABS placement department.

In the placement department, the placement specialists will check the job requirements and candidates qualifications.

•If there is a qualified candidate, the specialist will notify the candidate and put a note in the database.

•If a qualified candidate cannot be found or not immediately available, the specialist notifies contract managers and recruiting department; the recruiting department starts search outside immediately.

The recruiting department normally has thirty (30) days to find an outside candidate and send the qualified candidates to the placement department to review. If an internal qualified candidate is confirmed with his / her availability, the confirmation will be sent to the arrangement department. In the arrangement department, the candidate works with the specialists to further confirm the placement details, such as starting date, location, compensation (e.g., per diem), and travel arrangement. The final confirmation will be sent to the client along with a billing schedule. If the client agrees with the arrangement, he/she acknowledges the arrangement with contract managers in the contract department. The contract manager then puts a memo into its database and closes the request.

Note: You may create and / or assume all necessary assumptions needed for the completion of this assignment.Write a three to four (3-4) page paper in which you:

1.Create a package diagram of the problem domain layer using the communication diagrams and the CRUDE matrix through the use of graphical tools in Microsoft Word or Visio, or an open source alternative such as Dia. Note: The graphically depicted solution is not included in the required page length.

2.Perform and explain the verification and validation walk-through of the package diagram.

3.Create a set of invariants for attributes and relationships and add them to the CRC cards for each class in the structural model using Object Constraint Language (OCL).

4.List the classes in the structure model. Choose one (1) class and create a contract for each method in that class. Note: Be sure to use OCL to specify the preconditions and the post conditions.

5.Create a method specification for each method using both structured English and activity diagram for the algorithm specification through the use of graphical tools in Microsoft Word or Visio, or an open source alternative such as Dia. Note: The graphically depicted solution is not included in the required page length.

6.Use at least two (2) quality resources in this assignment. Note: Wikipedia and similar Websites do not qualify as quality resources.

Sample paper

Design with UML

Package diagram

Package diagram
Package diagram

Package diagrams refer to general constructs commonly applied in grouping units together. Package diagrams eliminate the complexity found in conventional models (Dennis et al., 2015). Package diagrams normally show a number of packages only. Package diagrams have a dependency relationship. The dependency relationship is in such a way that when one package is altered in some way, the dependent package is also affected and thus needs modification. It is important to perform a verification and validation of the package diagrams. The package diagrams above were primarily based on the information provided regarding Advanced Business Systems (ABS).

An important step in the verification and validation process entails ensuring that the package diagrams reflect the problem domain highlighted in the case (Dennis et al., 2015). The appointment system depicted in the package diagram clearly fulfills this requirement. The packages used are client, contract manager, staffing database, ABS Placing Department, and the Confirmation Department. Another step in the verification and validation process involves ensuring a clear indication of the dependency relationships in the package diagram. Performing this step requires ensuring that there are clear associations depicted in the package diagram. For instance, the message-sending relationships should outline information flow.

CRC Cards

Class Name: Staffing ID TYPE: Concrete
Description: Employees who should provide services to an ABS client

Receive staffing request


Hiring practices: Contract review

Enter the request into contract database  
Forward the request to the placing department  


Review the terms and conditions of the contact


Check job requirements and candidates’ qualifications Placement
Notify the qualified candidate  
Notify the recruiting department for outside Candidate  
Insurance carrier  
Generalization: Employee  
Aggregation: Employment history  
Other Associations: Appointment  

Related: Remote Server Installation by Regional Gardens

CRC cards are important in providing information required to create a logical structure model of the particular problem under review. From the above example, each of the CRC card shows the essential elements contained in the class. CRC cards are important especially in highlighting the core properties in relation to a particular class. CRC cards are also necessary in role-playing (Bennett, McRobb, & Farmer, 2010). Over the years, analysts have used CRC cards for role-playing which helps in identification of important properties that may have been left out. Role-playing ensures that different scenarios are executed, which ensures that all missing elements are established. Role-playing is also significant in assessing the thoroughness of the presentation of the particular system.

There are a number of classes in the structure model. The structural model brings to light the static features of a particular system. The basic features entail package diagrams, deployment diagrams, classes diagrams, objects diagrams, component diagram, and the composite structure diagram. Structural models are important in that they represent the basic framework for all other components.

Placement Department
Placement Department


Method specification enables an analyst to describe in detail the particular classes and applicable methods. As such, method specification enables one to detail clearly the methods on the contracts, class diagram, and the CRC cards (Bennett, McRobb, & Farmer, 2010). Method specification often comprise of written documents that contain detailed information on how individuals should implement various methods (Dennis et al., 2015). For method specification to be successful, each of the team members must contribute in writing the specification. Method specification may take multiple formats, which depends on the type of organization. Generally, method specification entails the use of four components that highlight the information required. The four general components include message passing, algorithm specification, events, and general information.


Method Name: EmployeeSelection Class Name: SelectionDetails ID: 1
Contract ID: 10

Client places an order

Arguments Received:

Data type:

Order New order placed by clients
Type of messages and arguments sent Data type: Notes
NewOrder Order from client
Arguments Returned:

Data type:

Algorithm Specification:

Review the validity of the request from client.

IF the request is not valid, send the staffing request back to the client=explain the reasons and request starting a new order.

IF the request is valid, contract manager puts the request into the staffing database.

THEN send the staffing request to ABS placement department.

THEN check the job requirements and the candidates’ qualifications.

IF there is a qualified candidate, candidate is notified and a note put in the database.

ELSE, notify contract managers and recruiting department.



Algorithm specifications are best written using Structured English. This makes it easy to describe the entire steps in a particular process (Dennis et al., 2015). Structured English describe the in a clear manner the type of work to be performed. Organizations may use different types of Structured English.


Bennett, S., McRobb, S., & Farmer, R. (2010). Object-oriented systems analysis and design:        Using UML. Maidenhead, Berkshire: McGraw-Hill Higher Education.

Dennis, A., Wixom, B. H., Tegarden, D. P., & Seeman, E. (2015). System analysis & design: An object-oriented approach with UML. Hoboken, NJ: Wiley.

Related:Frontier Communications