Start med at løse opgaver uden at tænke på persistens (at data skal gemmes og ikke kun ligge i memory - du skal ikke bruge database)
Adskil "kernen" / modelklasser og UI - de første i et selvstændig ClassLibrary og det sidste som WebForm i tom Web Application projekt.
Start med "kernen" - skitser en domain model og tilføj øvrige programklasser
og fordel basis-metoder på disse - lave SD diagram hvor der en smule
kompleksitet som støtte - evt. også en operationskontrakt.
Afprøv metoder med faste data fra knapper på en webform - en knap for hver
afprøvning
Tilføj DataContract for på klasser, hvis objekter gemmes på disk og DataMember på felter / properties der skal gemmes.
Brug tricket med en klasse GlobaleData og static data til at "holde" på objekter mens programmet afvikles (denne klasse kan også bruges til at indlæse og gemme modellens objekter - husk det er nemt hvis der er eet der "samler").
Du kan nu starte med at tilføje noget brugergrænseflade, der kan nyttiggøre
din model/kerne - brug et tomt web-projekt og webforms.
Du får undervejs også mulighed for at skitsere diverse use-cases og skitser til
brugergrænseflade (evt. SSD'er) idet du selv afgør behov for detaljeringsgrad.
Tænk i små simple skærmbilleder med enkel funktionalitet - en god
indgangsvinkel er de skal kunne ses i browseren på en telefon (fx 400x600
punkter)
Udbyg din "kerne" med funktionalitet efterhånden som du for behov i forhold til
funktioner i brugergrænsefladen - skitser gerne SD'er beskriv med lidt korte
operationskontrakter hvor det er en smule kompliceret
Det er centralt af have fokus på hvordan man fordeler opgaven på metoder på de
enkelte klasser.
Du kan enten selv agere bruger eller finde nogen i omgangskredsen der kan, da det er hverdags opgaver de fleste kan have glæde af.
Alle opgaverne tænkes som enkeltbruger løsninger - der skal tages højde for flere bruger systemet samtidigt.
Der ønskes et lille system, hvor man kan registrere hver gang man tanker benzin og så få diverse oversigter over forbrug for en periode, hvor meget man kører pr. liter osv.
Som udgangspunkt kan man have en enkelt bil objekt, der kan fungere som "kartotek" for de enkelte registreringer.
Opgaven kan evt. udvides så man har flere biler og således et kartotek med biler, der hver især har deres egne registreringer.
Tips. man kan enten udnytte at man kan få at vide hvor mange elementer der er i en liste og bruge index (position) for at hente et bestemt element og hermed få fat på sidst aflæste km-tæller, eller man kan gemme den sidste aflæsning i selve bil objektet. Hvis man for hver registrering gemmer både sidste km-tæller og den nye er det let at beregne, men fylder lidt mere - hvis man ikke gør skal man have fat på 2 registreringer (aktuel og foregående) for at kunne beregne km-tal.
Der ønskes et lille system, hvor man kan registrere hver gang man indtager et
måltid (mad/drikke) og herunder et kalorietal.
Det skal være muligt at få en oversigt over måltider inden for en periode,
herunder det samlede kalorietal.
Systemet kan udvides så der også registreres motion med kalorieforbrug og
regnskab for dette.
Systemet kan så også udvides med beregning for det samlede resultat af plus- og
minus-siden.
Der ønskes et lille system, hvor man kan registrere opgaver der skal laves
med en prioritet.
Det skal være muligt at få en oversigt over opgaverne og markere når de er
udført.
Der ønskes et lille system, hvor man kan registrere sine familiemedlemmer,
venner mfl. (personer) og for hver af disse kan registrere et antal ønsker (data
om hver af disse - ønske-objekter).
Det skal være muligt at registre de gaver man så ender med at give. Det skal
også være muligt at redigere og fjerne ønskerne, så de ikke bare hobes op.
Det skal være muligt at få en oversigt over gaver og ønsker for en udvalgt
person.
Det skal også være muligt at få en oversigt over personerne.
Der ønskes et lille system, hvor man kan registrere sit tidsforbrug samt en
lille note om hvad der er lavet.
Det skal være muligt at få en oversigt over de registreringer der er for en
angiven periode, samt det akkumulerede tidsforbrug.
Systemet kan udvides med at brugeren kan oprette kategorier og så tilknytte
sin tids registrering til en kategori. Det skal så være muligt at få
registreringer for en periode for en bestemt kategori og det akkumulerede
forbrug for denne.
Der ønskes et lille system, hvor man kan registrere bøger. Man skal kunne
registrere om man har købt bogen (ejer den), typen (papir/ebog/lydbog) og man
skal kunne registre om man har læst den - evt. kommentar.
Det skal være muligt at få forskellige oversigter over bøgerne - fx. dem man
ejer men ikke har læst.
Det skal være muligt at søge efter en bog, så man kan se om man allerede ejer
den / har læst den, hvis man fx ser et godt tilbud og ikke kan huske det.
Samme problemstilling som boglisten men i stedet for film.
Der ønskes et lille system, hvor man kan registrere det man skal købe ind.
Det skal være muligt at man kan gemme informationer om varer, så man ikke skal
indtaste data om dem hver gang man laver indkøbslisten, men at man kan udvælge
disse.
Under indkøbsturen skal man dels kunne se de indkøb, der skal foretages samt
også kunne markere når de er gjort - så man kan se både dem der mangler og dem
der er foretaget (behøver ikke være samme skærmbillede).
Man skal efterfølgende kunne få en oversigt over indkøbsture og de indkøb der
blev foretaget på denne.