📺 Develpreneur YouTube Episode

Video + transcript

Building Software - Part 1

2022-07-21 •Youtube

Detailed Notes

Welcome to another edition of Develpreneur. In this presentation, we are gonna be talking about software development. What goes into building software. Instead of this being just a run-of-the-mill discussion on SDLC, we will flip it on its head and take a different approach to software development. Previously, we have talked about things like software development SDLC, we've talked about software test life cycle, and we've given you the benchmark or textbook descriptions on these particular topics. Now let us talk about building software from an application perspective,  building a new application from scratch.

What Goes Into Building Software..., It all begins with an idea.

Our journey will take us through software development or software development as a whole, from the perspective of a business. A lot of application ideas come from a round table discussion about an idea, need, or service that the business wants to solve with software.

Common Questions Asked During Round Table Discussion:

What is the problem we want to solve? How can we solve this problem with the software? Is this something we can automate? Where will this solution have the most impact? What type of application should we develop? Overview of What Goes Into Building Software

We will cover what is our problem? Start with the problem. Break down the problem. We're gonna design an application. We're going to talk about building a prototype application we're then going to briefly cover how to test our application and then go into deploying the application. And then finally at the end of the cycle, handing off the project to the customer and what are the next steps?

Transcript Text
foreign
[Music]
welcome to another edition of developer
today we are going to be talking about
software development what goes into
building software
So today we're going to take a different
look at software development so in the
past we've talked about things like
software development sdlc we've talked
about software test life cycle and we've
given you kind of The Benchmark or
textbook descriptions on these
particular topics
so to kick off a new series I will be
covering soon talking about building
software from a application perspective
we're going to be building a new
application from scratch essentially a
classroom app
so today my idea was to kind of go
through the software development or
software development as a whole from the
perspective of a business where here we
are
we are sitting at Round Table and the
business decides we want to build
something we want to write an app we
want to solve a problem
so we're going to cover these topics
today we're going to start with you know
what is our problem start with the
problem
break down the problem we're going to
design an application we're going to
talk about building a prototype
application we're then going to briefly
cover how to test our application and
then go into deploying the application
and then finally at the end of the cycle
you know handing off the project to the
customer and what are the next steps
foreign
so let's start with the first concept
you know here we are we're a software
company we're an entrepreneur we have
this idea we either have a problem
that we want to solve or
we have a unique problem within the
company or a feature that we need to
build to service our customers
so we want to start with asking
ourselves what do we want what is it
that we need to build or what is it that
we're trying to solve so this is kind of
that first part of the software
development life cycle you know that
planning phase and this is a vital role
in the software development life cycle
where we need to sit down
either as a team or sit down as a group
or maybe a collaboration of people and
kind of walk through the ideas of what
it is that we want to do what is it that
we're trying to solve so for instance
this new series I'm going to be talking
about building this classroom app well
this concept came from the idea of
developer nerve you know we have all
these meetings and we talked about these
presentations and the different concepts
of software development uh different
areas in the industry you know devops
we've talked about mobile apps
so we had a problem so instead of us
having to constantly deploy our apps out
to like Vimeo or YouTube or say we want
to do a boot camp idea
it kind of stems to the fact that maybe
we should put together a classroom app
idea so from here instead of us meeting
in the real world given the covid and
all the constraints in today's society I
was thinking why don't we build a
classroom app a virtual app for a
classroom so that's our problem and so
now we need to sit down and Define
specifically what it is that we want to
do you know is our classroom uh idea for
you know virtual is it for on-site do we
need to have cameras do we need to have
different you know what is it that we
want to do
so you start with the problem so you
start putting together the different
pieces and ideas and you kind of
brainstorm what it is that you want
so once you have defined the problem
once you know what it is that you want
to do we need to break it down into
smaller pieces so we kind of need to
break the problem down further so here
we're kind of moving out of the planning
phase of the software development life
cycle into that Gathering requirements
phase so here we're going to break down
our idea we're going to take this
classroom app and then we need to now
break it down into its smaller pieces
for instance you know do we need to have
different users for our classroom you
know you're going to probably have
presenters you're going to have teachers
you're going to have students and do we
need to have a public facing you know
are we going to open up some of our uh
classrooms
to the public where they can watch but
not interact we may need an
administrator someone to actually add
users to our classroom application
some other things we need to think about
are like Hardware you know what type of
Hardware do we need do we are we going
to have laptops for this classroom do we
need to have any specific requirements
for the instructor or the student you
know what type of operating systems do
we need to worry about if we're building
a desktop application this is a web
application and if so you know what type
of browsers are going to support uh you
know is this going to be for you know
mobile or web uh so are you going to
need to be supporting tablets in the
cell phone
other things you need to think about or
breaking down or you know what are some
of the security constraints you know do
we need to have a login uh or do we need
to you know make sure we have those SSL
certificates if we're on the web so that
we can be accessible through web
browsers
you know what type of data storage
features do we need are we going to have
a cloud-based storage or do we need to
have any storage uh repositories you
know set up specifically GitHub or
bitbucket repositories
other things to think about once you've
kind of defined the uh functionality or
the components of the problem you now
need to break it down even further so if
we're looking to build a classroom
application and we say we want to make
it a web or even a desktop application
what is it going to look like how is it
going to enter or how's the user going
to interact with this application so
we're going to probably need things like
a login page a dashboard you know maybe
a profile so the student or the
instructor can upload photos and some
information and contacts on how to reach
them we might want to have a lesson book
or workbooks for the students where we
can assign tasks or do in class
assignments maybe some type of scheduler
for integrating with different calendars
a media manager possibly even a news and
a Blog feature
and then some other things to think
about so that so we've covered from a
futuresque problem so we broke it down
into the different roles we've talked
about some of the features we've talked
about some of the modules we could build
we also talked about some of the devices
we could support
now we need to also think about what
type of languages or what type of
architectures do we want to use to build
our software so in this breaking down of
the problem this is where we also want
to look at okay what type of resources
do we have at our disposal are we a
brand new company do we have any Tech
resources do we have anyone with any
software development skills if not then
what do we need to look for when we go
out and hire people do we need web-based
developers meaning do they have HTML
JavaScript
CSS support do we need to build
something that has a back-end support so
do we need to have C sharp do we need to
have Java do we need to have PHP Perl
python some of those things
and then some of the other things you
need to think about not just from a
programming language perspective but you
also need to think about possibly data
storage so now we could be getting into
databases so now you may need to have
some type of database architecture you
know do you need to have like MySQL do
you need to have Oracle uh postgres and
then what type of tools and things do
you need with that
and then you need to break it down just
a little bit further from that then you
start thinking about okay now here are
all the individual problems
so now we need to start breaking them
down further so now what do we need to
do do we need to go hire some developers
or do we have the developers we need do
we need to hire some testers to actually
start testing the apps that we're
building do we need to go by physical
devices you know get those mobile phones
get those desktops tablets things like
that at this phase we need to think
about those as we break down the problem
so these are just some of the things to
think about as you break down the
problem or during that requirements
Gathering phase of the software
development cycle
so now once you've discussed the problem
once you define what it is that you're
trying to build and you've broken down
all the individual components for how it
is that you want to actually build
design and put this together you now
have to go through and figure out what
you want the application to look like so
for our classroom application do we want
uh so say we want to build this as a web
application so is it going to be mobile
facing are we going to have two
different versions a browser base or a
and a handheld face or just the web
version only
you know specifically what type of uh
devices do we want so once we know the
devices and then we start designing the
application we need to make sure that we
articulate the user interface or the
interactively to our applications to be
uh user friend so we want to make sure
what we build not only meets our problem
or meets the need of the organization or
the shareholders but we also want to
make sure that it is a good fun easy to
use customer experience for the end user
so during the design phase of the
application this is where you're going
to kind of story book out the screen
you're going to kind of do some wire
diagrams put them together here and then
you're going to take those diagrams and
you're going to go out and actually
start building the application
do it right you do these wireframes up
front you're going to reduce the back
and forth time between you and the end
user and the requirement which will help
reduce the amount of time it takes to
get to Market and it will help cut down
on any mistakes that might be overlooked
during the design phase
also in the design phase when you're
looking to uh you know build the look
and feel of your application you want to
think to yourself you know what do we
want to be when we're all grown up so
you take the concept from the idea from
the
take it from the idea take it from the
requirements and then you take the
individual components and then again you
go back and you think to yourself okay
what do we want to look like at the end
so it's kind of a cohesive process as
you're going through this so these are
just some things you're going to think
about as you're designing your
application
next once you've gone through the first
three phases of the software development
life cycle you know planning
requirements Gathering design now we
want to actually build the Prototype now
we're going to put the pieces together
we are going to take all those different
components that we need and slowly start
building them out now
if we've done our due diligence and we
have laid out all the different
components that we needed from the
beginning then when we get to this piece
we are going to have a pretty good
roadmap for what it is that we need to
build so we can take all those pieces
and we put them together
now if we did not do a good job in the
beginning phases of our design process
we're going to run into things like
scope creep uh or we're going to start
running into longer development and
build times trying to put things
together because we Overlook things
which can increase the cost of our
development time so if we're trying to
get something to Market quickly we
really need to make sure that we've done
our due diligence and broken down those
pieces
for instance we don't want to start
building our classroom app and then come
to the point where we're ready to
present and realize that we forgot the
login we forgot the role-based security
so we now cannot distinguish between
that at
um that instructor versus the student so
now everyone sees all the solutions not
to mention the content so whoops we
don't want to do that you want to make
sure that you've done your due diligence
and that you have you know put together
all the pieces first so when you get to
this point you just build out the
Prototype you get something quick
and easy you start building the
front-end user phase people can start
interacting with it and then you start
building the back-end pieces
next we get into testing so as I have
here we want to test test so how do we
avoid that crash and burn so during the
software cycle as we're testing our
applications as we're building the
applications we want to make sure that
we have someone there that is testing as
each of the features slowly roll out
this way we can actually catch things
before we get to the end user so we get
into that agile style of development
where okay we develop a task we quickly
test if there's a problem roll it back
we fix it and move forward so we go
through that continuous cycle
well we're testing we're going to be
looking for some other things throughout
the process so not only as we prototype
this we're going to be looking at the
different ways we want to test the
software so if this is a web-based
application
one if we're doing any type of software
development the developers should have
some level of testing built into their
applications they need to be doing some
type of unit testing that way we know
from a development perspective when
things break when the code changes
as we roll into the user interface
testing the actual manual testing we
need to start looking at the different
types of testing tools that we need to
test our application
for instance if we're dealing with the
web-based application we can use the
browser developer tools to test our
applications we can use selenium to
write web-based tests to test our
applications we can use record playback
tools like the selenium IDE we can use
sauce Labs or we can use browser stack
to test our applications
if we are doing with a mobile app we may
have to look at using things like appium
or depending upon the language tool
you're using you might be able to use
some additional testing tools for
testing your mobile applications
if you're a desktop application you run
into some additional risks with that but
there are still some tools out there
that allow you to test desktop
applications depending on the operating
system
so here at this level we're doing that
software testing
so if we're walking through the
um
through the classroom application here
we're going to want to think about those
different components so we want to test
okay do we have that login screen are we
testing you know what how are we testing
the application are we testing it for
functionality are we testing it from a
student's perspective are we testing it
from an instructor's perspective are we
testing this from the administrator's
perspective meaning they are the person
that just goes in and sets up users
accounts and roles
whereas if you're the instructor you
want to be able to come into the
application and actually set up a new
class add students add workbooks add
assignments and so on and if you're the
student you want to make sure you can
log into the applications see the
different courses you registered for see
your progress in the course and be able
to go in watch and watch the classes do
the assignments or possibly take tests
thank you
foreign
Transcript Segments
0.42

foreign

7.23

[Music]

27.24

welcome to another edition of developer

29.34

today we are going to be talking about

31.26

software development what goes into

33.78

building software

36.239

So today we're going to take a different

38.64

look at software development so in the

42.18

past we've talked about things like

43.5

software development sdlc we've talked

45.96

about software test life cycle and we've

48.3

given you kind of The Benchmark or

51.059

textbook descriptions on these

53.52

particular topics

55.26

so to kick off a new series I will be

58.5

covering soon talking about building

61.199

software from a application perspective

64.46

we're going to be building a new

67.799

application from scratch essentially a

70.56

classroom app

72.06

so today my idea was to kind of go

75.36

through the software development or

78.06

software development as a whole from the

80.64

perspective of a business where here we

83.7

are

84.96

we are sitting at Round Table and the

87.36

business decides we want to build

88.92

something we want to write an app we

91.32

want to solve a problem

93.479

so we're going to cover these topics

95.1

today we're going to start with you know

96.9

what is our problem start with the

98.88

problem

99.84

break down the problem we're going to

102.18

design an application we're going to

104.46

talk about building a prototype

106.079

application we're then going to briefly

108.659

cover how to test our application and

111.119

then go into deploying the application

112.92

and then finally at the end of the cycle

115.439

you know handing off the project to the

117.36

customer and what are the next steps

120.36

foreign

121.74

so let's start with the first concept

123.78

you know here we are we're a software

126.18

company we're an entrepreneur we have

129.239

this idea we either have a problem

132.48

that we want to solve or

134.94

we have a unique problem within the

138.239

company or a feature that we need to

140.34

build to service our customers

142.62

so we want to start with asking

144.599

ourselves what do we want what is it

147.06

that we need to build or what is it that

149.64

we're trying to solve so this is kind of

152.7

that first part of the software

154.08

development life cycle you know that

155.519

planning phase and this is a vital role

158.58

in the software development life cycle

160.019

where we need to sit down

163.08

either as a team or sit down as a group

166.14

or maybe a collaboration of people and

169.14

kind of walk through the ideas of what

171.3

it is that we want to do what is it that

174.36

we're trying to solve so for instance

177.12

this new series I'm going to be talking

179.28

about building this classroom app well

181.62

this concept came from the idea of

183.72

developer nerve you know we have all

185.7

these meetings and we talked about these

187.5

presentations and the different concepts

189.36

of software development uh different

191.58

areas in the industry you know devops

194.459

we've talked about mobile apps

197.04

so we had a problem so instead of us

201

having to constantly deploy our apps out

203.159

to like Vimeo or YouTube or say we want

206.159

to do a boot camp idea

208.5

it kind of stems to the fact that maybe

210.72

we should put together a classroom app

212.819

idea so from here instead of us meeting

216.12

in the real world given the covid and

218.879

all the constraints in today's society I

222.9

was thinking why don't we build a

224.879

classroom app a virtual app for a

227.04

classroom so that's our problem and so

230.22

now we need to sit down and Define

232.92

specifically what it is that we want to

235.26

do you know is our classroom uh idea for

239.04

you know virtual is it for on-site do we

242.459

need to have cameras do we need to have

244.379

different you know what is it that we

246.599

want to do

247.92

so you start with the problem so you

250.08

start putting together the different

251.76

pieces and ideas and you kind of

253.98

brainstorm what it is that you want

256.5

so once you have defined the problem

259.079

once you know what it is that you want

261.359

to do we need to break it down into

264.36

smaller pieces so we kind of need to

267.36

break the problem down further so here

270.419

we're kind of moving out of the planning

273.479

phase of the software development life

275.16

cycle into that Gathering requirements

277.139

phase so here we're going to break down

280.32

our idea we're going to take this

282.6

classroom app and then we need to now

284.759

break it down into its smaller pieces

286.86

for instance you know do we need to have

290.16

different users for our classroom you

293.82

know you're going to probably have

295.139

presenters you're going to have teachers

296.94

you're going to have students and do we

299.4

need to have a public facing you know

301.02

are we going to open up some of our uh

304.139

classrooms

305.82

to the public where they can watch but

307.68

not interact we may need an

309.9

administrator someone to actually add

312.18

users to our classroom application

315.24

some other things we need to think about

316.86

are like Hardware you know what type of

319.44

Hardware do we need do we are we going

321.06

to have laptops for this classroom do we

323.4

need to have any specific requirements

326.22

for the instructor or the student you

329.1

know what type of operating systems do

330.96

we need to worry about if we're building

332.22

a desktop application this is a web

334.979

application and if so you know what type

337.02

of browsers are going to support uh you

339.72

know is this going to be for you know

341.699

mobile or web uh so are you going to

344.639

need to be supporting tablets in the

346.68

cell phone

347.699

other things you need to think about or

350.16

breaking down or you know what are some

352.44

of the security constraints you know do

354.18

we need to have a login uh or do we need

356.819

to you know make sure we have those SSL

358.62

certificates if we're on the web so that

360.479

we can be accessible through web

361.919

browsers

362.94

you know what type of data storage

364.5

features do we need are we going to have

366.12

a cloud-based storage or do we need to

368.039

have any storage uh repositories you

371.16

know set up specifically GitHub or

373.44

bitbucket repositories

376.62

other things to think about once you've

379.5

kind of defined the uh functionality or

383.58

the components of the problem you now

385.62

need to break it down even further so if

388.02

we're looking to build a classroom

389.52

application and we say we want to make

392.039

it a web or even a desktop application

394.5

what is it going to look like how is it

396.72

going to enter or how's the user going

398.4

to interact with this application so

400.8

we're going to probably need things like

402.24

a login page a dashboard you know maybe

405.24

a profile so the student or the

407.88

instructor can upload photos and some

409.68

information and contacts on how to reach

412.38

them we might want to have a lesson book

414.72

or workbooks for the students where we

416.94

can assign tasks or do in class

419.819

assignments maybe some type of scheduler

422.94

for integrating with different calendars

425.16

a media manager possibly even a news and

428.52

a Blog feature

430.56

and then some other things to think

432.06

about so that so we've covered from a

435.979

futuresque problem so we broke it down

438.66

into the different roles we've talked

440.639

about some of the features we've talked

443.34

about some of the modules we could build

445.979

we also talked about some of the devices

447.72

we could support

449.4

now we need to also think about what

452.22

type of languages or what type of

454.74

architectures do we want to use to build

456.9

our software so in this breaking down of

460.02

the problem this is where we also want

462.06

to look at okay what type of resources

464.46

do we have at our disposal are we a

467.22

brand new company do we have any Tech

469.68

resources do we have anyone with any

471.96

software development skills if not then

475.5

what do we need to look for when we go

477.84

out and hire people do we need web-based

480.3

developers meaning do they have HTML

482.52

JavaScript

484.199

CSS support do we need to build

487.139

something that has a back-end support so

489.24

do we need to have C sharp do we need to

491.039

have Java do we need to have PHP Perl

493.62

python some of those things

496.02

and then some of the other things you

497.639

need to think about not just from a

499.08

programming language perspective but you

501.3

also need to think about possibly data

503.819

storage so now we could be getting into

505.62

databases so now you may need to have

507.479

some type of database architecture you

509.46

know do you need to have like MySQL do

511.44

you need to have Oracle uh postgres and

514.38

then what type of tools and things do

515.88

you need with that

517.44

and then you need to break it down just

519.599

a little bit further from that then you

522

start thinking about okay now here are

524.339

all the individual problems

526.68

so now we need to start breaking them

529.019

down further so now what do we need to

531.6

do do we need to go hire some developers

534.06

or do we have the developers we need do

536.399

we need to hire some testers to actually

538.14

start testing the apps that we're

540.3

building do we need to go by physical

542.399

devices you know get those mobile phones

545.279

get those desktops tablets things like

547.38

that at this phase we need to think

549.06

about those as we break down the problem

551.64

so these are just some of the things to

553.98

think about as you break down the

556.14

problem or during that requirements

558.839

Gathering phase of the software

560.7

development cycle

562.86

so now once you've discussed the problem

565.56

once you define what it is that you're

567.24

trying to build and you've broken down

569.94

all the individual components for how it

572.7

is that you want to actually build

574.68

design and put this together you now

577.44

have to go through and figure out what

580.32

you want the application to look like so

582.36

for our classroom application do we want

585.24

uh so say we want to build this as a web

587.64

application so is it going to be mobile

589.86

facing are we going to have two

591.18

different versions a browser base or a

594.12

and a handheld face or just the web

596.279

version only

597.959

you know specifically what type of uh

600.48

devices do we want so once we know the

603.48

devices and then we start designing the

605.88

application we need to make sure that we

608.48

articulate the user interface or the

612.54

interactively to our applications to be

615.42

uh user friend so we want to make sure

617.7

what we build not only meets our problem

620.94

or meets the need of the organization or

623.64

the shareholders but we also want to

625.86

make sure that it is a good fun easy to

629.579

use customer experience for the end user

632.76

so during the design phase of the

635.519

application this is where you're going

637.38

to kind of story book out the screen

640.079

you're going to kind of do some wire

642.959

diagrams put them together here and then

645.3

you're going to take those diagrams and

646.8

you're going to go out and actually

647.82

start building the application

651.3

do it right you do these wireframes up

653.82

front you're going to reduce the back

656.279

and forth time between you and the end

658.74

user and the requirement which will help

661.019

reduce the amount of time it takes to

663.959

get to Market and it will help cut down

667.2

on any mistakes that might be overlooked

670.32

during the design phase

672.54

also in the design phase when you're

675.06

looking to uh you know build the look

678.3

and feel of your application you want to

680.22

think to yourself you know what do we

682.079

want to be when we're all grown up so

684.18

you take the concept from the idea from

688.019

the

689.22

take it from the idea take it from the

690.959

requirements and then you take the

693.54

individual components and then again you

696.3

go back and you think to yourself okay

698.04

what do we want to look like at the end

700.62

so it's kind of a cohesive process as

703.62

you're going through this so these are

705.12

just some things you're going to think

706.26

about as you're designing your

708.48

application

710.519

next once you've gone through the first

714

three phases of the software development

715.74

life cycle you know planning

718.16

requirements Gathering design now we

721.74

want to actually build the Prototype now

723.54

we're going to put the pieces together

724.86

we are going to take all those different

727.2

components that we need and slowly start

729.66

building them out now

732.24

if we've done our due diligence and we

734.88

have laid out all the different

736.2

components that we needed from the

737.76

beginning then when we get to this piece

740.82

we are going to have a pretty good

742.62

roadmap for what it is that we need to

745.079

build so we can take all those pieces

747.66

and we put them together

749.399

now if we did not do a good job in the

752.88

beginning phases of our design process

754.92

we're going to run into things like

756.899

scope creep uh or we're going to start

759.779

running into longer development and

761.82

build times trying to put things

763.74

together because we Overlook things

765.66

which can increase the cost of our

768.6

development time so if we're trying to

770.16

get something to Market quickly we

772.139

really need to make sure that we've done

773.459

our due diligence and broken down those

775.32

pieces

776.42

for instance we don't want to start

778.32

building our classroom app and then come

780.899

to the point where we're ready to

782.399

present and realize that we forgot the

784.38

login we forgot the role-based security

786.3

so we now cannot distinguish between

788.7

that at

790.26

um that instructor versus the student so

792.72

now everyone sees all the solutions not

795.6

to mention the content so whoops we

799.019

don't want to do that you want to make

800.22

sure that you've done your due diligence

801.8

and that you have you know put together

805.32

all the pieces first so when you get to

808.32

this point you just build out the

809.82

Prototype you get something quick

812.459

and easy you start building the

814.139

front-end user phase people can start

815.88

interacting with it and then you start

818.04

building the back-end pieces

820.5

next we get into testing so as I have

824.519

here we want to test test so how do we

828.06

avoid that crash and burn so during the

831.6

software cycle as we're testing our

833.639

applications as we're building the

835.26

applications we want to make sure that

837.42

we have someone there that is testing as

841.26

each of the features slowly roll out

843.42

this way we can actually catch things

846.839

before we get to the end user so we get

849.66

into that agile style of development

851.519

where okay we develop a task we quickly

854.1

test if there's a problem roll it back

856.199

we fix it and move forward so we go

858.72

through that continuous cycle

861.42

well we're testing we're going to be

863.76

looking for some other things throughout

866.639

the process so not only as we prototype

869.699

this we're going to be looking at the

871.38

different ways we want to test the

873

software so if this is a web-based

875.94

application

877.019

one if we're doing any type of software

879.6

development the developers should have

882.779

some level of testing built into their

885.06

applications they need to be doing some

886.92

type of unit testing that way we know

889.199

from a development perspective when

891.48

things break when the code changes

893.82

as we roll into the user interface

897

testing the actual manual testing we

899.339

need to start looking at the different

900.72

types of testing tools that we need to

903.06

test our application

904.92

for instance if we're dealing with the

906.839

web-based application we can use the

910.68

browser developer tools to test our

913.199

applications we can use selenium to

915.72

write web-based tests to test our

917.279

applications we can use record playback

919.8

tools like the selenium IDE we can use

922.86

sauce Labs or we can use browser stack

925.019

to test our applications

926.639

if we are doing with a mobile app we may

929.399

have to look at using things like appium

931.5

or depending upon the language tool

934.019

you're using you might be able to use

935.699

some additional testing tools for

937.259

testing your mobile applications

939.24

if you're a desktop application you run

942.12

into some additional risks with that but

944.339

there are still some tools out there

945.66

that allow you to test desktop

947.399

applications depending on the operating

949.68

system

950.759

so here at this level we're doing that

953.88

software testing

955.56

so if we're walking through the

959.759

um

960.779

through the classroom application here

963.54

we're going to want to think about those

965.699

different components so we want to test

968.04

okay do we have that login screen are we

970.68

testing you know what how are we testing

972.959

the application are we testing it for

974.88

functionality are we testing it from a

978.06

student's perspective are we testing it

980.339

from an instructor's perspective are we

982.74

testing this from the administrator's

985.079

perspective meaning they are the person

987.48

that just goes in and sets up users

989.519

accounts and roles

992.22

whereas if you're the instructor you

994.32

want to be able to come into the

995.519

application and actually set up a new

998.16

class add students add workbooks add

1001.339

assignments and so on and if you're the

1003.38

student you want to make sure you can

1004.699

log into the applications see the

1006.86

different courses you registered for see

1009.079

your progress in the course and be able

1011.3

to go in watch and watch the classes do

1015.259

the assignments or possibly take tests

1029.14

thank you

1032.539

foreign