Miniprojekt2011. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav.



Relaterede dokumenter
Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Datatekniker med programmering som speciale

educasoft - en professionel samarbejdspartner med speciale i uddannelse!

Grundlæggende OOA - OOD

Bypassing the. Brian Marick

Lav startliste til en parturnering

Det skrå kast, en simulation

Lektion 3. Grundlæggende programmering i VR

Forelæsning Uge 3 Mandag

Software Design (SWD) Spørgsmål 1

Brugerinterfacet er blevet delt op i vinduer så der senere kan tilføjes mulighed for åbne flere lister samtidig, i en fremtidig version.

Installationsvejledning SAS Foundation 9.2 SAS Enterprise Guide 4.2. Windows Vista

Software Design (SWD) Spørgsmål 1

IBM Software Group. SOA v akciji. Srečko Janjić WebSphere Business Integration technical presales IBM Software Group, CEMA / SEA IBM Corporation

HTX, RTG. Rumlige Figurer. Matematik og programmering

Thermo Surveillance System TSS

Af: Safa Sarac Klasse 3.4 Skole: Roskilde Tekniske Gymnasium, HTX Vejleder(e): Karl B Dato: 26. marts 2012

Educasoft 2010 Side 1. Søgemaskineoptimering

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6

Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder.

Dannelse af PDF-dokumenter

Indholdsfortegnelse for kapitel 2

Datatekniker med programmering som speciale

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

ACXEL INSTALLATIONSGUIDE

Software Construction 1. semester (SWC) januar 2014 Spørgsmål 1

Programmering C RTG

OS2 Opgavefordeler. Løsningsbeskrivelse Version 2. Udarbejdet af Miracle A/S Simon Møgelvang Bang

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag

ACXEL INSTALLATIONSGUIDE

The Design Diaries PHP projekt

BlogReader Af Jonas F. Jensen.

Objects First with Java A Practical Introduction Using BlueJ

Dannelse af PDF dokumenter

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0

Introduktion til Flash, fortsat

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

FORCE Inspect Online Manual v FORCE Inspect Online Manual. 1 af 18

Dagens program. Domæner. change log- screen shots hver gang I har arbejdet med themet. Arkitekturen bag en wp blog. Hvad er widgets.

OrCAD Capture TCL IDE med Eclipse

Database for udviklere. Jan Lund Madsen PBS10107

Databaseadgang fra Java

Katrines Kælder Kasseapparat

Dannelse af PDF-dokumenter

Løsning af skyline-problemet

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing

IT og Programmering eksamens projekt

Undervisningsbeskrivelse

Dm071 / Dm072 - Obligatorisk projekt 3: Design af model

JEM1 LAB14. Journal. Jonas Lange, Martin Funding Fisker og Torben Porsgaard 11/4/2009

ITWIN1. Afsluttende projekt. PhotoDays. Benjamin Sørensen (02284) Tomas Stæhr Berg (03539)

Kursusgang 12. Oversigt: Sidste kursusgang Layout-manager Event-håndtering. Design af brugerflader 12.1

Software Dokumentation

Velkommen til. Kravspecifikation i Softwareudvikling Workshop hos Brüel & Kjær. 14. september 2012,

Forelæsning Uge 3 Mandag

WELLPLOT ARCGIS BRUGERMANUAL I G I S A P S

Introduktion. Grundlæggende programmering Lektion 1

A Profile for Safety Critical Java

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA

Informatik C robotter

Automatisk Vandingssystem

Brugervejledning til Avery Wizard for Microsoft Office. Dansk version til -

Introduktion til OO* og UML

SOFTWARE DOKUMENTATION

Astronomidata med SIMBAD. At hente og anvende data fra Internettet til at datere Hyaderne.

DM507 Algoritmer og datastrukturer

Filarkiv. Sitecore Foundry januar Version 1.2

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Accepttest-specifikation

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services

Software Design (SWD) Spørgsmål 1

Curriculum Vitae. Uddannelse: 2001 Civilingeniør fra Danmaks tekniske universitet, fagprofil: styring og regulering.

Eksempel: et ordresystem note 5 Lagdeling s. 1

Lær Python - Dag 3, modul 1 Læse og skrive filer

Øvrige kurser fra Technology College Aalborg

Forelæsning Uge 2 Torsdag

Serialization i Java

Da beskrivelserne i danzig Profile Specification ikke er fuldt færdige, foreslås:

Programmering i C Intro og grundlæggende C 5. marts 2007

applikation----x----odbc driver manager----foobar ODBC driver----foobar database

02101 Indledende Programmering Introduktion til Eclipse

SOFTWARE PROCESSES. Dorte, Ida, Janne, Nikolaj, Alexander og Erla

Generel projektbeskrivelse

Introduktion til ActionScript, fortsat

PC-baseret analyzer og equalizer

Brugervejledning til Stratasys 3Dprinting

Brugervejledning til Stratasys 3D-Printning

Tips og Tricks. Erik Wendelboe Nielsen Christian Woergaard. econocap. PTC/USER Fredericia

Synopsis. Hardi Bootlader m. Java ME

Kapitel 6 Events i C#

Lær Python - Dag 4, modul 2 Objektorienteret programmering

Undervisningsbeskrivelse

Sammenlign og byt. Et eksempel på dokumentering af et program

dintprog Manual Revision: 1241 August 24, 2010 I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4

EasyBrand produktbeskrivelse

Hvordan laver jeg mit eget kort på ArcGIS Online?

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Dansk Ride Forbund Stævnesystem 2 Installationsvejledning

Undervisningsbeskrivelse

Transkript:

Miniprojekt2011 Projektbeskrivelse Der skal fremstilles en lille java application på PC, hvor brugeren kan foretage interaktioner med en simpel database på disken via et grafisk brugerinterface. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav. Fra en komma/semikolon separeret (CSV) fil på disken f.eks. dannet fra Excel - skal der indlæses en række poster (rækker og søjler). Hver række indholder data om en enkelt person (id,navn,alder,vægt) og skal indsættes i et nyt objekt af klassen Person. Når alle personobjekter er dannet fastholdes disse i en person-liste. Alle person-navne listes på en Gui og middelværdi af alder og vægt skal ligeledes vises på gui. Start af indlæsning af CSV-fil (filnavn og separator) sker via en knap på Gui. Følgende er givet: 1. To komponenter i systemet er uliciteret 2. Håndtering af databasen er leveret som en jar fil indeholdende relevante klasser med interface SAP (Service Access Point) samt tilhørende dokumentation: Sysio.jar 3. Der er også leveret en anden komponent, som indeholder nogle klasser og tilhørende dokumentation: Common.jar. Disse klasser anvendes af alle komponenter. Udvikling Udfra projektbeskrivelsen uddrages til OOA(Objekt Orienteret Analyse). Analyse betyder: Hvad handler det om? 1. Krav til grundlæggende arkitektur 2. Krav til interface til aktører 3. Krav til systemfunktioner OOA ender med en klasser til den grundlæggende arkitektur og funktioner og prototyper af interface s Derpå udføres OOD (Objekt Orienteret Design). Design betyder: Hvordan laver vi systemet?, og til sidst OOP (Objekt Orienteret Programmering) hvor der kodes. Arkitekturkrav Et diagram som viser kravene til den fysiske udlægning af projektet i samspil med omgivelserne arkitektur tung

Figur 1: UML Deployment diagram dannet udfra arkitekturkrav fom kan identificeres i problembeskrivelse. De rødlige komponenter er leveret af underleverandører. SAP, jar Ui komponenten (den grønlige) i Figur 1 og andre komponenter i System-node skal udvikles og kommunikationer findes. Krav til interface s Her formulers krav til de grænseflader som skal anvendes mod alle aktører (actor s) Gui interface Figur 2: Mug up af gui. Krav til brugerfladens i/o er hermed fastlagt. Naturligvis bør de enkelte komponenter beskrives ganske kort. Alle i/o komponenter skal forbindes til hver deres funktionelle karv.

Disk interface Interfacet er standard til disk i PC og tilgang sker gennem operativsystemet via Java API og JVM. Funktionelle krav til systemet Vi fastholder krav på høj abstraktion v.h.a. UML Use Case diagrammer. Alle diagrammerne skal kunne understøtte gui-brugerfladen. ( Vi anvender Omondo 3.2 og ikke version 3.3 da vi dermed får nogle pænere tegninger og pæne links.) UML Use case diagram(s) - (Eclipse Omondo 3.2) Figur 3 UML Use Case diagram for system Use case, actor, forward-/backward trace, systemkrav, testvektorer. UML activity diagram(s) (Eclipse Omondo 3.2)

Figur 4 UC1 og UC3 Figur 5 UC2

Figur 6 UC4 Function list (no UML diagram) Function list for activity diagrams Use Activity FunctionName Decription Used in # Case design UC1 FetchList getpersonlist 1 AvarageAge calculateaverageage() With person list calculate average 2 age. AvarageWeigh calculateaverageweight() With person list calculate average 3 t weight. DisplayAge displayavarageage() Display average age 4 DisplayWeight displayavarageweight() Display average weight 5 UC3 DisplayList displaypersonlist() Display all person s values 6 UC4 ClearListArea clearavaragevalues() clearpersondisplay() UC2 CreatePersonL ist createpersonlist() Clear person list display. Clear average values Read lines one by one from file, make person object and add this into a person list outsource OpenFile openfile() Open file and create streams. outsource CloseFile closefile() Close file outsource ReadTokens readlines() Read all lines from file and process. Close file after last line. Use process: createpersonandaddtolist() outsource MakePersonA dd2list addpersontolist Decode a single line and form a person object and add person object to the person list. outsource 7 8 Classes Vi skal udvikle nogle komponenter til indsættelse i deploymentdiagrammet og anvende 2 externe component (se deployment diagram). Egentlig skal vi blot finde klasser, men vi vil gerne have indflydelse på design forløbet, idet vi ønsker en bestemt indkabsling.

Figur 7 Første version af et klassediagram 1. Common og Sysio er pakker leveret af underleverandør(er) som jar filer 2. Vi har valgt følgende klasser a. Gui som ansvarlig for al i/o mellem bruger og system. b. Calculate til at foretage beregninger. c. Application til at administrere systemet,herunder fødsel, start og død. *********************************Slut på OOA************************************