ソフトウェア工学

システム開発ライフサイクル内で働く専門家、学者、学生向けのQ&A

9
1対1で上司と話し合うテーマは何ですか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 7年前に閉鎖されました。 毎週、マネージャーと30分間のミーティングをスケジュールして、ほとんど何でも話します。これまでのところ、私はそれらの一対一をあまり真剣に受け止めていません。新年の決議として、私はマネージャーと一対一で真剣に考えたいと思います。できる方法の1つは、事前に計画(質問のリストや議題を作成)することです(1対1)。 ステータスレポートを除き、1対1で上司と話し合うテーマは何ですか?一対一のアジェンダを見たことがありますか?
24 management 

3
「意見のあるソフトウェア」とはどういう意味ですか?
私は他の多くのフレームワーク/ライブラリ開発者が「私たちは考え抜かれたソフトウェアを書く」というフレーズを投げているのを見てきましたが、実際には、それは本当に何を意味しますか?「Opinionated Framework X」の著者は、特定の方法でコードを書くので、あなたが書くのと同じタイプのコードを書くべきだと言っているということですか? それは少し大げさではありませんか?

16
優れたプログラマーになるには、デバッグスキルが重要ですか?
ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 プログラマーは、他の品質とともに、優れたデバッグスキルを必要としますか?特定のプログラムでエラーを見つけることができなかったが、すべてのパズルとプログラムを解決できた応募者がいる場合、その仕事を検討する必要がありますか? 編集:-パズルは、通常の赤、青、赤青のボールのようなものです。プログラムは、配列内で連続したk個のゼロを見つけるようなものです。デバッグプログラムは、> =である必要がある条件のために失敗するものですが、代わりに>です。すべてが紙の上にあります。
24 debugging 

9
宣言型プログラミングと命令型プログラミング
命令型プログラミングに非常に満足しています。コンピューターに何をしてほしいかがわかったら、コンピューターに何をしたいのかをアルゴリズムで表現するのに問題はありません。しかし、SQLのような言語になると、頭が命令型プログラミングにあまりにも慣れているために行き詰まることがよくあります。 たとえば、band(bandName、bandCountry)、venue(venueName、venueCountry)、plays(bandName、venueName)のリレーションがあり、次のようなクエリを作成するとします。その名前の会場でプレーするその国。 例:すべての国(bandCountry)のバンドが演奏したすべての VenueNameが必要です。また、「関係」とは、SQLテーブルを意味します。 私はすぐに「venueNameごとに、すべてのbandCountriesを反復処理し、各bandCountryから、そこから派生するバンドのリストを取得します。いずれも、venueNameで再生しない場合は、次のVenueNameに移動します。繰り返しにより、venueNameを適切なVenueNamesのセットに追加します。 ...しかし、SQLでそのように話すことはできません。実際、これをどのように定式化するかを考える必要があります。他の誰かがこの問題を抱えていましたか?これをどのように克服しましたか?パラダイムシフトを理解しましたか?命令型ソリューションを宣言型ソリューションに変換するために、命令型コンセプトからSQLコンセプトへのマップを作成しましたか?良い本を読む? PS上記のクエリの解決策を探しているのではなく、解決しました。

4
開発者が絶対に知っておくべきアルゴリズムとデータ構造はどれですか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 成功するエンタープライズJava開発者になりたい。どのアルゴリズムとデータ構造をよく理解する必要がありますか?どの本を勧めますか? Java開発者として成功するには、CLRSで提供されているような高度なアルゴリズムをすべて知っている必要がありますか? 優先度の高い順に学習する必要があるトピックのリストを提案できますか? 私が知っている必要があります: 検索中? 仕分け? グラフ/ツリー? 等?

10
Web開発者またはソフトウェアエンジニアですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 7年前に閉鎖されました。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 私が自問してきた質問で、どの道を取るべきか本当に混乱しました。 ですから、今日の世界におけるこれら2つの職業の長所と短所について、皆さんの助けが必要です。Webはこの時代に起こるべき最高のものであり、ほぼ全員がWorld Wide Webでうまくいくので、Webアプリケーション開発が大好きです。また、新しいテクノロジーやWebサービスについて学習し続ける傾向があります。 一方、VB.Net、Java、C ++などで小規模ソフトウェアを開発した経験があるため、デスクトップアプリケーションでもソフトウェアエンジニアリングが好きです。 どのパスがより多くのスコープとより良い未来を持っていますか?あなたの見解は何ですか?

17
Silverlightには未来がありますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 最近、WPFとSilverlightの開発と歴史に関する記事/ブログ/コメントをいくつか読みました。一部のフォーラムでは、多くの開発者とユーザーがWPFアプリケーション(Visual Studio 2010など)のパフォーマンスを批判しています。実際、Flashと比較したSilverlightの市場シェアはそれほど高くありません。PDC 2010では、Bob Muglia氏は「Silverlightの戦略と今後の焦点が変わった...」と言っており、Microsoftは将来HTML5をプッシュしたいと考えています。 さらに、Microsoftは、HTML8がWindows 8およびWindows Phone 8(「Mango」)プラットフォームのコア部分であることを発表しました。 最近、Silverlightの学習を開始しましたが、非常に優れた強力なテクノロジーを(私の意見では)学習するために時間を費やすべきかどうかを自問する必要があります!?彼らには未来がありますか?(Windows)デスクトップ(クライアント)アプリケーションには未来がありますか?いわゆる「リッチインターネットアプリケーション」には未来がありますか?または、HTML5はソフトウェア開発の「絶対的な真実」になりますか? あなたの意見とあなたはどう思いますか?

13
ユーザーからのリクエストを管理するためにどのツールを使用していますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 7年前に閉鎖されました。 ユーザーのメールにownれているので、取得したすべてのリクエストを管理し、チームのユーザーとユーザーがそれらにアクセスして共有できるキューに入れるより良い方法を実装したいと思いますノート。電子メール、コメント、アイデアなどをドロップ/入力して簡単にアクセスできるプロジェクトの下で、複数のタスクを作成できるようなタスク管理ツールを考えています。 ユーザー、マネージャー、チームリーダー、開発者など、すべての関係者が関与できるものが必要です。私ができるツールを探しています: ユーザーは、電子メールをドラッグアンドドロップするだけで、メンテナンスまたは機能強化のリクエストを送信できます。 開発者は、各タスク/プロジェクトのキューと重み付けされた優先度を確認するだけです。 開発者のチームは、誰もがリアルタイムで作業していることを確認します。 各タスクに費やされた時間のログを保持する管理。 IIは、この問題を解決するために、よりアジャイル/スクラムの方向に目を向け始めています。私はスクラムアジャイルソフトウェアプロジェクト管理のオープンソースツールのリストを見つけました。私は時間に制限があるので、誰かがこれらを使用しましたか?私のニーズを満たすかどうかを確認するには、どれをテストする必要がありますか?TeamPulseは良い方向ですが、少し肥大化しすぎていると思います。すべての関係者にとってシンプルなものが必要です。

10
最近、.NETフレームワークを想定/要求することは合理的ですか?
バックグラウンド: 私は、ユーザーに機密データを含むダウンロードパッケージを提供する必要があるプロジェクトを持っています。データを暗号化する必要があります。ダウンロードした後、表示できるようにする必要があります(編集の必要はありません)。この質問では、データを一連の静的htmlファイルとして概算します。データは機密性が高いため、ディスク上にある場合は常に暗号化する必要があります。 2つのファイルを含むzipファイルをユーザーに提供するダウンロードオプションをユーザーに提供することを検討しています。 データファイル(おそらく、舞台裏で暗号化されたzipファイルを使用します)と彼らが要求したデータ パスフレーズの入力を適切に促し、データの復号化と埋め込みWebブラウザーを介した表示を処理するデータを表示するアプリケーション。 さらなる詳細: ユーザーは当社の管理下にはありません。彼らは消費者です。 この質問では、クロスプラットフォームについては心配していません。これはWindowsについてです。Macユーザー向けに個別にダウンロードします。 すでに質問に行きます: 作成する必要があるアプリケーションについては、そのアプリケーションが.NET winformsアプリケーションであることが妥当かどうかを内部で議論しています。単一の.exeが必要であり、ダウンロードを適度に小さくする必要があります(例:100k)。 .NETフレームワークを使用しますか(特に.NETの最新バージョンを使用する必要はありません。2.0で十分です)。 Windows Updateが原因で、ほとんどの消費者がマシン上に.NETを持っていると仮定するのは合理的ですか? それを持っていない人にインストールするように頼むのは合理的ですか? 100%のユーザーが.NETをインストールするわけではないことを知っています。本当の問題は、この日と年齢でそれを持っているように頼むことが合理的かどうかです。 PS誰が実際に.NETを既にインストールしているかの何パーセントの信頼できる統計を知っていますか?

16
最も頻繁に使用される設計パターンは何ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 8年前に閉鎖されました。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 どのデザインパターンが最も人気があると思いますか?

15
プログラマーとしての雇用を検討しているときに、インターネットフェアゲームで誰かが公開するものはありますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 8年前に閉鎖されました。 (元々Stack Overflowに投稿されていましたが、そこで閉じられ、ここでより関連性があります) だから私たちは最初に技術的な役割のために男にインタビューし、彼はかなり良かった。2回目のインタビューの前に、私たちは彼をGoogleで検索し、MySpaceページを見つけました。明確にするために、それが彼のページ(名前、写真、一致する伝記情報など)であることは間違いありません。 コンテンツは完全に個人的なものであり、彼の職業能力や態度とはまったく関係ありませんでした。 彼らに仕事を提供するかどうかを考えるとき、これを考慮することは公平ですか? ほとんどの場合、私の応答は、誰かの私生活で何が起こっているかということです。しかし、インターネットとそれが提供する可能性を理解することを(暗黙的または明示的に)公言する技術者にとって、明らかに判断の重大な誤りを発見できるような方法で物事を投稿していますか? 編集:明確化-本質的にはポルノに関するかなりグラフィックな解説でした(しかし、私たちは非学術的な性質のものです)。私は実際、特定の事件よりも一般的な概念に興味があります。なぜなら、人々が自分自身をますますオンラインにするにつれて、それは将来もっと見られると思われるものだからです。 私の懸念は主に彼に関するものではなく、彼がそのようなこと(彼は白人、ストレート、男性であり、その意味で地球上の差別の最後の可能性のある犠牲者である)についてどのように感じているかではなく、非常に単純な検索(基本的に彼の名前)これらのことを返し、クライアントもそれを行うことができます。私たちは比較的保守的な業界で働いています。

17
本、記事を書く、または会議で発表する価値があるかどうかを評価するにはどうすればよいですか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 6年前に閉鎖されました。 私は本、記事、または会議のプレゼンテーションを書くことをどのように評価すべきかを理解しようとしています。 本を書くのは大変な仕事です。雑誌で記事を書いたり、会議で発表するのと同じです。彼らは時間を必要とし、あなたはあちこちで間違いを犯すかもしれません(悪いレビュー、あなたを馬鹿と呼ぶ人もいます) $ 5Kのデポジットを支払うと、その後は追加の販売ロイヤリティを受け取ることはほとんどありません)。 それでは、どのようにメリットを評価する必要がありますか?あなたがこれを以前にやったことがあれば、私は声を出して答えを感謝します。本を書くのは時間的にコミットしたい以上のことなので、書かないかもしれませんが、会議でプレゼンテーションをしたり、雑誌に短い記事を書いたりするのは面倒でしょうか?

28
あなたが働いてきた最高のマネージャーに共通する特徴は何ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 8年前に閉鎖されました。 ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 私はスコット・ハンセルマンとロブ・コネリーのポッドキャスト「この開発者の生活」を聞いてきました。 最新のエピソードでは、人格特性について説明します。 1.0.4-平均であること。 業界で人々が意味することは何ですか?アグレッシブはどうですか?自信がある?違いは何ですか?むしろ、上司や禅師のためのドリル軍曹を持っていますか?サイラ・リチャードソンとジャイルズ・バウケットと話をします。 あなたが働いてきた最高のマネージャーに共通する特徴は何ですか? 編集:明確にするために、いくつかの近い投票があったので、私は開発者のマネージャーに共通の特性があるかどうかに興味がありますが、必ずしも他の職業のマネージャーが必要とする特性ではありません。 これがプログラミング関連かどうかについては、プログラミングについてではないサイトでこの質問をしたくありません。率直に言って、私は生でスープの缶を作る人に興味がありません。開発者がマネージャーから何を望んでいるかに興味があるので、マネージャーから欲しい。
24 management 

6
アクセス制御層の前に検証層を持つことは問題ありませんか
私はAPI構造のWebアプリケーションを作成していますが、このアプリケーションには独自の仕事をしているさまざまなレイヤーがあります。 最初のレイヤーはユーザー入力を検証する検証レイヤーであり、検証に合格した場合は2番目のレイヤー(アクセス制御レイヤー)に移動します。そうでない場合はエラーメッセージを返します 2番目の層は、ユーザーが実行したいタスクを実行する許可を持っているかどうかを確認するアクセス制御です。ユーザーが許可を持っている場合、要求を次の層に移動します。 3番目のレイヤーは、アプリケーションのロジックがあるコントローラーレイヤーです。 私の質問は、アクセス制御の前に検証レイヤーを持つことはOKですか?ユーザーが許可されていないタスクを実行しようとしており、検証エラーメッセージを送信している場合はどうなりますか?ユーザーはリクエストをエンドポイントに送信し、検証レイヤーと話します。検証に合格すると、メッセージが表示されます。You can't access this! 私には奇妙に感じますが、このようにうまくいくのでしょうか、それともインフラストラクチャの他の選択肢は何でしょうか?

2
マルチテナントDBには複数のデータベースまたは共有テーブルがありますか?
マルチテナントデータベースです: 顧客/テナントごとに異なる(同一の)データベース/スキーマを持つDBサーバー。または 顧客/テナントが同じテーブル内でレコードを共有するデータベース/スキーマを持つDBサーバー? たとえば、上記のオプション#1では、たとえばにMySQLサーバーmydb01.example.comがあり、customer1その中にデータベースがあります。このcustomer1データベースには、たとえば、特定の顧客(顧客#1)のアプリケーションを駆動する10個のテーブルがあります。またcustomer2、まったく同じ10個のテーブルを持つデータベースがありますが、顧客#2のデータのみが含まれている場合があります。customer3データベース、データベースなどがある場合がありますcustomer4。 上記のオプション#2では、たとえば、myapp_db10個のテーブル(上記と同じもの)を持つ単一のデータベース/スキーマのみが存在します。しかし、ここでは、すべての顧客のデータがこれらの10個のテーブル内に存在するため、顧客はテーブルを「共有」します。また、アプリケーション層では、ロジックとセキュリティにより、どの顧客がこれらの10個のテーブルのどのレコードにアクセスできるかを制御し、顧客#1がアプリにログインして顧客#3のデータなどを表示しないように細心の注意を払っています。 これらのパラダイムのうち、従来の「マルチテナント」DBを構成するものはどれですか?どちらでもない場合、マルチテナントDBとは何かの例を(上記のシナリオを使用して)提供してくれますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.