This week's book giveaway is in the Agile and Other Processes forum.
We're giving away four copies of The Little Book of Impediments (e-book only) and have Tom Perry on-line!
See this thread for details.
Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

B&S starting up - GUI

 
Gary Hellman
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,

I am working on B&S also.
Hopefully will be joining in on the great discussions here!

Are any/all of you implementing a gui for all features in the DB interface? (e.g., create, delete)?

(Is that a fly on the moose?)

Thanks
 
Saheed Adepoju
Ranch Hand
Posts: 267
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to Javaranch
Well as far as i know, some posts i have read says when a user tries to click on create or delete they throw UnsupportedException but it is usually well documented in thier choice.txt! Pls ranchers correct me if i am wrong!
 
Andrew Monkhouse
author and jackaroo
Marshal Commander
Pie
Posts: 12014
220
C++ Firefox Browser IntelliJ IDE Java Mac Oracle
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Gary,

Welcome to JavaRanch and this forum.

Yes, some candidates have implemented create and delete functionality in their user GUI. But I think the majority have not.

And yes, that is a fly buzzing around the moose .

Regards, Andrew
 
Leonid Shalit
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi!
What about "unbook" functionality? There is nothing about it in assignment. However, looks like it is necessary.
 
Steve Baranski
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Leonid - "Unbook" functionality seems a bit out of scope. Some assignments (e.g., URLyBird...not sure about B&S) have a 48-hour window in which the hotel room can be reserved. Most hotels have a cancellation policy window where they won't refund a deposit, etc.

My point isn't to question your idea, but to point out that additional assumptions (and work) would be required to accommodate this feature. This work won't give you extra credit (recall instructions), but can hurt you.

I would just advise you to keep it simple. If you were uncomfortable about the lack of such a feature in the requirements, note it in the uncertainties/assumptions. You could assume that the CSRs must use manual recourse to create, delete, unbook. I didn't go that far, but it's an idea...
 
Surya De
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I thought however that we are required to implement the create method which is part of the DB interface. How would one go about creating a record without using GUI?

Surya
 
Steve Baranski
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
How would one go about creating a record without using GUI?


This should be pretty straightforward. The method signature in Data (I believe this is similar for each assignment) says you pass in a string array. Each element corresponds to a column in the DB.

The delete can happen by passing in the record number (int).

I exercised these methods with a test harness outside of my delivered code. Since most of the dates in the sample database were not "test-able" for me, my test harness created dummy data for me on demand prior to delegating to my URLyBirdLauncher class to start the app.

That's one suggestion. I'm sure there are other approaches. The bottom line is that you test if you implement the methods, and that you document (in choices.txt) if you don't.

To me, the assignment was very clear that it was unnecessary for the GUI to offer create/delete. Not as clear that we shouldn't implement on the DB side, however. Since the submission is supposedly graded by software, this seemed like an obvious spot for that to happen. Having a class name and an implementing interface (as specified in the assignment) would be pretty easy to fire up a test harness of some sort with reflection or programmatically. I wanted to stand up to the scrutiny I felt was coming.

Ultimately it is your call. Don't you love that?
 
Surya De
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for the post. What is confusing to me is how the final grading process takes place. Is there a human factor included? Like a person would sit down with your code, read your README and CHOICES files and know how to operate the program and then test out its functionality? Or is it going to be an automated software program churning through your code and scoring you? If it is a human tester, then it makes sense to have a GUI create/delete thing going on...like a popupmenu on the table, select your option, if you delete the record vanishes from display and if you create a new window opens up with a form entrylike look and voila! Simple! Logical! Clean! No room for doubt!

Cheers,
Surya
 
Andrew Monkhouse
author and jackaroo
Marshal Commander
Pie
Posts: 12014
220
C++ Firefox Browser IntelliJ IDE Java Mac Oracle
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Surya,

My understanding is that there is minimal automated testing performed - a check that files are in their correct locations, a check that your Data class implements the supplied interface, and that's about all (it was intended to go further - actually perform tests on some classes, but that didn't eventuate). After that minimal testing is complete it gets to a human assessor.

That assessor is meant to check that your assignment meets the must conditions of your instructions, and checks what you have submitted with what you have written in your exam and what you have described in your choices document. Anywhere up to this point you could get an automatic failure. Then they go into all the little checks on the code itself which is where you might start loosing points from the maximum 400.

If it is a human tester, then it makes sense to have a GUI create/delete thing going on
Personally I think that the human tester makes it more logical not to have the create/delete in the GUI. You explain why you don't have it in your choices document so they wont look for it.

Regards, Andrew
 
Surya De
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for the post Andrew. Things are getting clearer. But then you would recommend having a separate test package that exercises all the create, test and delete etc functionality instead of having it menu driven on the gui?

Cheers,
Surya

PS: I hope I didnt hijack this thread and I hope I am not asking too many questions to the point of becoming pesky like that little fly around the moose's head!
 
Leonid Shalit
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks, Steve!
I'll consider to put it as assumption in choices file.
 
Andrew Monkhouse
author and jackaroo
Marshal Commander
Pie
Posts: 12014
220
C++ Firefox Browser IntelliJ IDE Java Mac Oracle
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Surya,
But then you would recommend having a separate test package that exercises all the create, test and delete etc functionality instead of having it menu driven on the gui?
Absolutely! However I would not recomment providing the test code in the submission.
I hope I didnt hijack this thread
Close to it - but I think the questions (not just yours) are still related closely enough to the original posters questions that it doesnt make much difference whether they are posted here or whether a new topic is started. So, no problems
I hope I am not asking too many questions to the point of becoming pesky like that little fly around the moose's head!
Heh - the whole purpose of this forum is for asking questions related to the SCJD certification. So there are no problems so far.

Regards, Andrew
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic