Re: [Swazoo-devel] SiteRegistry renamed, SUnit tests
Brought to you by:
jbacanskas,
mivsek
From: Joseph B. <jba...@ho...> - 2000-09-29 15:46:29
|
Hi: Janko - Two quick observations, (I just got home and have over 100 emails!!!) firstly: The examples in WikiWorks are in HTTPServer, not the abstact superclass, NetworkServer; secondly: in WikiWorks had tests the way Swazoo does, you would not have experienced any problems, because you would have had example code. Janko's experience points up what I was saying earlier, because Swazoo has tests, people unfamiliar with the code can get it ported and running. WikiWorks, without tests, gave you great difficulty. The other problem you will have with wiki is that it will be very difficult for you to know "when you are done" whereas, Jerry Bell knew he had a successful Dolphin port of Swazoo as soon as all of the tests ran. I agree that the packaging of Swazoo could be improved. I think that we packaged it the way we did because it was "the simplest thing that could possibly work" at the time. Clearly, that is no longer true. I propose the following: 1. Put the tests in a separate parcel, which has SUnit as a prereq. 2. Janko, since you made the big changes, you should bring the tests up to date with your current code, so that they all run successfully and that and new behavior is covered by new tests 3. We look at the result and decide whether we should write some short instructions. For an example of what I mean, see the WikiWorksGS instructions. As to the class rename, I already made my comments and will abide by whatever the team decides. Janko Mivsek wrote: > Hi, > > Benny & Wendy Sadeh wrote: > > > > Janko, > > I can hardly contribute anything lately to the effort, but still, here are my 2 p... > > > > Joseph has outlined his reservations very eloquently, and I agree with them all very strongly. > > My motivation to do rename was bad experiences with putting > WikiWorks in action. Me and Peter van Rooijen tried to test > WikiWorks and to study it for possible integration with > Swazoo. But, how to start this thing? Ok, let we explore > Wiki class first. Nothing. Where the heck are some examples? > After looking around all classes we discovered examples in > NetworkServer. This is IMHO completely inappropriate place > for examples. > > Therefore I decided to care a lot in Swazoo to be as easy as > possible to use. Just load the parcel and call one obvious > method and your server is running! I think that we must care > a lot of usability issues here if we like Swazoo to become a > standard, well known server for a whole Smalltalk community. > > That's also a reason that I propose to put SUnit test in a > separate parcel. For SUnit tests you need the SUnit parcels > and it is quite difficult to find it from first place. I had > this experience when I had a Swazoo-Aida presentation at > Gemstone. I had a Swazoo parcel with me, but not SUnit. > Thanks to Joe help providing me a SUnit I was able to make a > presentation. Therefore, Its better to have only one Swazoo > parcel, which can work without any more prerequisites from > plain VW image. If you like, you can load tests parcel > anytime later. Maybe we can tweak parcel loading to test if > SUnit is presented and load test parcel automatically then. > > > regarding renaming SiteRegistry to Swazoo. > > you can still achieve your goal by using the Facade pattern. basically having the Swazoo class "fronting" for SiteRegistry and others. > > since you know GemStone, look at the class System as an example of using Facade. > > Ok, let we do this way: > > Swazoo > sites <SiteRegistry> > servers <OrderedCollection> > > SiteRegistry > sites > > SiteRegistry will be responsible for site registration, > finding by hostname, configuring from sites.cfg etc. > > Swazoo responsibilities will be start/stop of sites, > autostart after image startup and finding/starting the right > HTTPServers for each Site. All site specific behavior will > be delegated through Swazoo to SiteRegistry. Is that ok? > > > > regards, and see you @ oopsla, > > Benny > > > > > Hi, > > > > > > Here is a copy of my conversation with Joe. Comments please > > > :) > > > > > > Joseph Bacanskas wrote: > > > > > > Off the top of my head, I think that a class' name should > > > describe > > > what it is/does. The name SiteRegistry, describes what the > > > class is/does as it interacts with the rest of Swazoo. It > > > seems that naming the Class Swazoo points new users to a > > > possible starting place when exploring the application. > > > > > > I think that the tests served several functions; one of > > > which was to document how the system works. The tests show > > > how each function needed for the app are > > > performed. Without them, it's a lot harder to understand > > > how all of the pieces work together, and impossible to know > > > when a developer is finished. > > > > > > I know I'm really pounding on the idea of SUnit tests, but > > > they have several functions which are now no longer being > > > performed. We want the application to be > > > more robust and more understandable every time we change > > > the code. We want the tests to document how the system is > > > used. We want the tests to show people who are trying to > > > port Swazoo to other Smalltalks that when their port passes > > > the tests, they are done. > > > > > > BTW - I'm getting on a plane to GemStone soon, and won't see > > > this > > > account until Friday. > > > Please reply to jo...@ge.... > > > > > > Also, should we move this to the mailing list so that others > > > can > > > participate? > > > > > > Thanks again for working so hard on this project; I truely > > > appreciate you efforts. You are > > > moving things forward at a great pace! > > -- > Janko Mivsek > Systems Architect > EraNova d.o.o. > Pod hribom 55 > SI-1000 Ljubljana > Slovenia > phone: +386 1 5816 232 > fax: +386 1 5816 231 > jan...@er... > www.eranova.si > _______________________________________________ > Swazoo-devel mailing list > Swa...@li... > http://lists.sourceforge.net/mailman/listinfo/swazoo-devel -- Thanks!! Joseph Bacanskas [|] --- I use Smalltalk. My amp goes to eleven. |