Professional Documents
Culture Documents
1.
,#)*
customer
+
contractor
/et &'(
-#8 + Addendum Inter!ace subcontractor )+ )) Subcontractor )+ Site0ine The numbers are corresponding to the use case ID. A actors shou d use Inter!ace c ass to communication "ith other. That inc udes !i ing !orm# send re$uest# send $uote and so on. %ender
2.
A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
A ternati%e
1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
. Customer in!ormation modi!3 Customer# customer in!ormation modi!ier Concrete Customer in!ormation changer# database 4ame# address# phone number modi!3 inter!ace This use case begins "hen a registered customer "ant to change its pro!i e in!ormation. The customer enters its customer ID and pass"ord# c ic6 the 70og In8 button on the s3stem "eb page. A pro!i e data "i be brought to the user in a !orm o! editab e data entries. A!ter the customer ma6es changes# it c ic6 the 7submit8 button. I! no data error !ound# a 7success8 message "i send to the customer. 49A + &ep 3 &'( Addendum Customer# pro<ect in!ormation modi!ier Concrete &'(# customer Speci!ication modi!3 inter!ace This use case begins "hen a registered customer recei%e the &'( addendum !rom constructor. The customer shou d rep 3 the &'( addendum= Ans"er the $uestion# c ari!3 the speci!ication. 49A
A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
A ternati%e
1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
, Send &'( addendum Contractor #%ender or subcontractor# &'( addendum sender Concrete &'(# contractor# subcontractor Speci!ication &'( addendum inter!ace This use case begins "hen the contractor has $uestions on the arge &'(s or the @ender has $uestions on re$uest !or prices. 1pon receipt o! &'(s# i! the contractor has $uestions need to c ear on &'(s and it is be!ore the due date# the contractor "i send the customer an addendum !or c ari!ication. The customer "i send bac6 the response o! the addendum. I! the %ender has $uestions on the re$uest !or prices# it a so send an addendum to the contractor. I! it is be!ore the due date# and the contractor can ans"er it# the contractor send the response bac6 to the %ender. I! the addendum in%o %es $uestions !or the customer# the contractor use the send &'( addendum use case to customer 49A 6 (uer3 abor Contractor# abor $uer3 Concrete Contractor# &'(# database "or6 sites# e$uipment >site ine?# standard# t3pe. (uer3 database inter!ace This use case begins "hen contractor $uer3 abor cost. A!ter contractor recei%es the &E( !rom customer# Contractor "i $uer3 abor cost !rom contractor5s database according to customer5s &'(. 49A
A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
A ternati%e
1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
Send &'( to %ender Contractor# &'( sender Concrete Contractor E$uipment# standard. &'( to %ender inter!ace This use case begins "hen the contractor send the re$uest to %ender to as6 the price o! materia . I! the materia >e$uipment? need to be prepared b3 contractor# the contractor need to send the &'( o! materia to %endor according to the &'( !rom customer. 49A 8 Send materia Addendum @ender# materia addendum sender concrete @ender speci!ication @endor inter!ace This use case begins "hen the %endor has $uestions on the arge re$uest !or prices sent b3 the contractor. 1pon receipt o! &e$uest 'or ;rices# i! the %endor has $uestions need to c ear on &';s and it is be!ore the due date# the %endor "i send the contractor an addendum !or c ari!ication. The contractor "i send bac6 the response o! the addendum. I! the contractor cannot ans"er the $uestions and need to contact the customer# the contractor use the 7send &'( addendum8 use case to re$uest !or addendum. 1pon the receipt o! the addendum !rom the customer# the contractor sends its o"n addendum bac6 to the %endor. 49A
A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
A ternati%e
1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
A Ca cu ate tota cost Contractor# subContractor# ca cu ator concrete Contractor# &'(# Subcontractor# Site Bateria cost# abor cost 49A This use case begins "hen contractor get the materia cost and abor cost. A!ter contractor get materia cost !rom %ender# abor cost !rom o"n database. The contractor ca cu ates the tota cost. 49A )* Send $uote to customer Contractor# $uote sender concrete Contractor# customer# inter!ace Tota cost Sender inter!ace The contractor sends the $uote >inc ude materia cost# abor cost and other !ee? to customer in order to response the &'( !rom customer. 49A )) Send &'( to subcontractor Contractor# &'( sender Concrete Contractor# subcontractor Description o! pro<ect &'( inter!ace In some case# the contractor can not !inish "ho e pro<ect b3 itse !. So the contractor need to send the &'( to subC contractor b3 !i ing the &'( !orm. 49A
A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description A ternati%e
1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description A ternati%e 1se Case ID 1se Case Tit e Actor 2 &o e T3pe Corresponding C asses Corresponding Attribute Corresponding Inter!ace 1se Case Description
)2 Send &'( Addendum to subcontractor Contractor# &'( Addendum sender Concrete Contractor# subcontractor#Inter!ace Addendum &'( Addendum inter!ace The contractor need to ans"er the $uestion or c ari!3 the speci!ication a so <ust i6e customer did. 49A ). Send $uote to contractor SubContractor# $uote sender Concrete Contractor# subContractor# inter!ace Tota cost Sender inter!ace The subcontractor sends the $uote >inc ude materia cost# abor cost and other !ee? to contractor in order to response the &'( !rom contractor 49A )+ Ca cu ate the Cost !rom Site ine Contractor# SubContractor# $uote sender Concrete Contractor# subContractor# inter!ace# Site0ine# Addendum Cost !or each site ine Ca cu ator inter!ace The contractor >subcontractor? ca cu ates the cost >materia and abor? according to the in!ormation in the Site0ine. The site0ine can be updated b3 customer through Addendum. 49A
A ternati%e
3.
CRC cards
Class: Customer (RFQ issuer) Responsibility Collaborators Issue &'( and addendum Client Contractor Addendum Inter!ace
Server Input Customer In!o Dui d&'( Issue&'( Dui dAddendum Issue Addendum
Class: RFQ (price/cost aggregator) Responsibility Collaborators Dui d &'( spread sheet and Client database !rom the customer5s Addendum input Customer Contractor
Class: Addendum (modification controller) Responsibility Collaborators Ba6e updates to the pre%ious Client &'( Customer
Contractor (respond to RFQ) Responsibility Collaborators &e$uest (uote based on Client &'( and return to the Customer customer &'( Addendum
Class: SubContractor Responsibility &e$uest (uote based on &'( and return to the Contractor
Class: Interface Responsibility ;ro%ide Inter!ace !or customer# Contractor# %ender# subcontractor to input in!ormation# communicate# or $uer3 !rom database
Server 'i &'(!orm 'i customerIn!ormation &'(ToContractor (uer30abor &'(ToSubContractor (uoteToCustomer AddendumtoCustomer AddendumtoContractor (uoteToContractor
Class diagram
Interface FillRFQform() FillcustomerInformation() RFQToContractor() QueryLabor() RFQToSubContractor() AddendumtoCustomer() AddendumtoContractor() QuoteToContractor() opname() create
RFQ number customerID description date total_amount bondin&_re'uirement o-er#ead ta. addSite() updateFromAddendum() calculateQuatation() 1
Contractor ID !ame Address "#one $mail 1 RecordCustomerInfoInDatabase() Re'uestQuoteFrom(endor() Re'uestLaborQuote() 1 CalculateQuote() %er&eAddendumToRFQ() SendQuoteToCustomer() )etSiteInfo() 1
handler *++,
assotiated with Addendum RFQ_number Date Description pdateRFQ() Add pdateDetail() pdateSite() 1
/Quote1Re'ues tor
Contains
Request quote
1++, Site site_number site_name site_city site_state site_country total_site_amount AddSiteInfo() pdateSiteInfo() AddSiteLine() pdateSiteLine()
*++,
SubContractor
Class Diagram Description R!" is the &e$uest 'or (uotation !orm the user !i ed at the c ient. It "i be sent to the contractor and be hand ed b3 contractor. 'or e%er3 &'(# it contains in!ormation about the customer ID# description o! the pro<ect# the date and other genera in!ormation about the &'(. &'( is composed o! se%era Site# and siteCspeci!ic in!ormation are "rapped in the Site c ass.
Ehen an addendum is recei%ed re ating the this &'(# the contractor "i trigger the update !unction o! &'( and merge the addendum to the &'(. Addendum is to update the pre%ious &'(. 1sers ha%e to speci!3 the origina number o! &'(# so that the update can be merged to the origina &'(. A short description o! the addendum describes the ma<or updates. Site C ass is created !rom the &'(. The detai o! &'( is retrie%ed !rom the user inter!ace# and then added to the Site c ass. A Site ma3 contains se%era site ines# and the Site0ine c ass contains detai ed in!ormation !or each product or ser%ice re$uired. The creation and updating o! site ine is managed b3 the Site c ass Site$ine c ass is a data oriented c ass# it contains detai ed in!ormation !or each product or ser%ice re$uested in &'(. 1pon recei%ing o! &'(# C%ntract%r ana 3se the &'(# and send corresponding $uest to subconstractors. Ca cu ate the returned resu t !rom the subcontractors# !orm the resu t in a standard !ormat# then return it to the customer. 1pon recei%ing o! addendum# the contractor !ind the &'( this addendum is associate "ith# merge the update and bui d a ne" &'(. Su&C%ntract%rs inc ude parts pro%iders and ser%ice prodi%ers. Contractor c ass "i oo6up the subcontractor c ass !or detai ed in!ormation !or the speci!ic subconstractor. The subcontractor is responsib e !or re$uest the $uotes o! re$uested products or ser%ices. 'nter(ace is the "eb inter!ace that the customer can access and !i in the &'( !orm# ma6es updates b3 the addendum !orm.
).
A.
Metam%dels
CRC card metam%del A C&C card can be conceptua iFed as an inde: card that inc udes the !o o"ing items= )? Each card represents one c ass 2? Each c ass represented on each card has one ro e# that is one tas6 that is its responsibi it3 to e:ecute. .? Each ro e entai s one responsibi it3 that the c ass is created to e:ecute. +? Each C&C card ists a other c asses that the primar3 c ass associates or co aborates "ith. i. Co aborations consist o! c ient c asses that the primar3 c ass pro%ides ser%ices !or. ii. Co aborations a so consist o! the speci!ic ser%ices pro%ided b3 the primar3 c ass to the c ient c asses. *. Use Case diagram metam%del A use case diagram is a combination o! use cases and actors as !o o"s=
,? 1se cases# "hich are descriptions o! acti%ities that the s3stem# and its users9actors engage in. i. This a so inc udes a description o! the re ationships among the %arious use cases in the s3stem. 6? A use case diagram inc udes actors# "hich are GperhapsH endCusers# or other s3stems "hich are outside o! the s3stem boundaries co%ered b3 the use case diagram. i. A description o! the actors entai s a description o! the re ationships bet"een actors and use cases# and among actors. C. A&stract class metam%del Abstract c asses can be %isua iFed in the !o o"ing manner= -? Abstract c asses are intentiona 3 incomp ete. 8? The3 are not used to generate ob<ects. A? The3 are a "a3s a GpureH superc ass. )*? The3 must ha%e concrete subc asses. i. The3 can generate ea! c asses I that ha%e direct instances ii. The3 can generate nonC ea! c asses "hich act as superc ass to generate 3et other c asses in the c ass hierarch3. D. Class Diagram metam%del C ass diagrams are an abstraction o! rea it3 and encompass the !o o"ing items= ))? Descriptions o! the c asses in%o %ed9in the s3stem. i. C asses each ha%e a meaning!u name. ii. C asses ha%e attributes "hich describe the %arious %a ues that instances o! the c ass can assume. iii. Deha%iors# operations# or methods# "hich describe the ser%iceGsH the c ass o!!ers. )2? Descriptions o! ob<ects# or instantiations o! c asses. ).? Tagged %a ues "hich can !or most purposes be considered constraints )+? ;ac6ages# "hich can be seen as subs3stems# composed o! a number o! c asses pro%iding the subs3stems ser%ices. ),? C ass diagrams shou d detai inheritance !rom superc asses to subc asses. )6? C ass diagrams mode associations bet"een c asses# "hich inc ude= i. A meaning!u name. ii. Bu tip icit3 iii. Cardina it3 i%. Association attributes %. Association c asses# i! necessar3 I "hen the association has attributes and beha%iors. %i. Associations are t3pica 3 binar3# but ma3be ternar3 or higher degree in e:treme 3 rare cases
+.
C. Ee !ound it he p!u to de!ine the s3stem boundaries "hen "e "ere creating the use case and c ass diagrams G0ecture ,# si des )- 2 )8H. This a so he ped us to identi!3 associations bet"een the c asses in the s3stem. D. Ee used the AJO9ATO ru es to determine the aggregation re ationships !rom site ine to site to &'(. E. Ee used the K1ses5 re ationship to describe a number o! the re ationships in our s3stem# such as &'(CAddendum# &'(CContractor# and ContractorCSubcontractor G0ecture )*# s ide 2+H.
-.
M%del Essentials
A. Ee ha%e attempted to 6eep the mode s simp e# in that there are - uses cases and si: c asses identi!ied !or our s3stem at the present time. D. Ee ha%e a so attempted to be comp ete in the construction o! the mode . Lo"e%er# there is sti a good possibi it3 at this stage that "e ha%e missed an important# or e%en critica e ement or e ements. C. Stabi it3 I stabi it3 is a topic that has rea 3 not been addressed 3et in our mode . Ee ha%e up to this point attempted to capture the essence o! "hat the bidding s3stem is supposed to do. D. The mode shou d be testab e# and that shou d pro%ide c ues as to comp eteness and possib 3 some degree o! the stabi it3 o! the s3stem. E. The mode is Gat east to our mindsH c ear or eas3 to understand. It captures the basic idea o! "hat the bidding s3stem is supposed to do# and a3s out the basic !unctiona ities. '. The mode s and diagrams used here are in genera $uite %isua # and not entire 3 te:tua in nature# so it shou d be re ati%e 3 straight!or"ard !or those un!ami iar "ith the s3stem to $uic6 3 gain an understanding o! the purpose o! the s3stem.